Create an IP Association

post

/ip/association/

Creates an association between an IP address and the vcable ID of an instance.

Required Role: To complete this task, you must have the Compute_Operations role. If this role isn't assigned to you or you're not sure, then ask your system administrator to ensure that the role is assigned to you in Oracle Cloud My Services. See Modifying User Roles in Managing and Monitoring Oracle Cloud.

Request

Supported Media Types
Header Parameters
Body ()
The request body contains details of the IP association that you want to create.
Root Schema : IPAssociation-post-request
Type: object
The request body contains details of the IP association that you want to create.
Show Source
    • To associate a temporary IP address from the pool, specify ippool:/oracle/public/ippool.
    • To associate a persistent IP address, specify ipreservation:ipreservation_name, where ipreservation_name is three-part name of an existing IP reservation in the /Compute-identity_domain/user/object_name format. For more information about how to create an IP reservation, see Create an IP Reservation.
  • The three-part name of the vcable ID of the instance that you want to associate with an IP address. The three-part name is in the format: /Compute-identity_domain/user/object.

    For more information about the vcable of an instance, see Retrieve Details of an Instance.

Response

Supported Media Types

201 Response

Created. See Status Codes for information about other possible HTTP status codes.
Headers
Body ()
Root Schema : IPAssociation-response
Type: object
Show Source
  • Shows the default account for your identity domain.
  • The public IP address which is attached to a Compute Classic instance that requires access to or from the Internet.
  • The three-part name of the object (/Compute-identity_domain/user/object).
    • To associate a temporary IP address from the pool, specify ippool:/oracle/public/ippool.
    • To associate a persistent IP address, specify ipreservation:ipreservation_name, where ipreservation_name is three-part name of an existing IP reservation in the /Compute-identity_domain/user/object_name format. For more information about how to create an IP reservation, see Create an IP Reservation.
  • The three-part name of the IP reservation object in the format (/Compute-identity_domain/user/object). An IP reservation is a public IP address which is attached to a Compute Classic instance that requires access to or from the Internet.
  • Uniform Resource Identifier
  • The three-part name of a vcable ID of an instance that is associated with the IP reservation. The three-part name is in the format: /Compute-identity_domain/user/object.

Examples

Associating a Temporary IP Address from the Pool

cURL Command

The following example shows how to create an IP association by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.

Enter the command on a single line. Line breaks are used in this example for readability.

curl -i -X POST
     -H "Cookie: $COMPUTE_COOKIE"
     -H "Content-Type: application/oracle-compute-v3+json"
     -H "Accept: application/oracle-compute-v3+json"
     -H "Accept: application/oracle-compute-v3+json"
     -d "@requestbody.json"
        https://api-z999.compute.us0.oraclecloud.com/ip/association/

COMPUTE_COOKIE is the name of the variable in which you stored the authentication cookie earlier. See Quick Start.

Example of Request Body

The following shows an example of the request body content in the requestbody.json file. To associate a temporary IP address from the pool, specify ippool:/oracle/public/ippool as the value for parentpool.

{
  "parentpool": "ippool:/oracle/public/ippool",
  "vcable": "/Compute-acme/jack.jones@example.com/0d363a97-2353-4294-903a-696d290bdac8"
}

Example of Response Body

The following example shows the response body in JSON format.

{  
  "account": "/Compute-acme/default",
  "vcable": "/Compute-acme/jack.jones@example.com/6bc9db0a-6676-45b0-8bc4-3adb9ee96970",
  "name": /Compute-acme/jack.jones@example.com/1f36bc5a-c104-44ce-9c7e-1742a260f6b5,
  "ip": "192.0.2.18",
  "uri": "https://api-z999.compute.us0.oraclecloud.com/ip/association/Compute-acme/jack.jones@example.com/1f36bc5a-c104-44ce-9c7e-1742a260f6b5",
  "parentpool": "ippool:/oracle/public/ippool",
  "reservation": "/Compute-acme/jack.jones@example.com/b6849b19-7cab-4d87-9e7b-a5d6ba690033"
}

Associating a Persistent IP Address

cURL Command

The following example shows how to create an IP association by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.

Enter the command on a single line. Line breaks are used in this example for readability.

curl -i -X POST
     -H "Cookie: $COMPUTE_COOKIE"
     -H "Content-Type: application/oracle-compute-v3+json"
     -d "@requestbody.json"
        https://api-z999.compute.us0.oraclecloud.com/ip/association/
  • COMPUTE_COOKIE is the name of the variable in which you stored the authentication cookie earlier. For information about retrieving the authentication cookie and storing it in a variable, see Authentication.

  • api-z999.compute.us0.oraclecloud.com is an example REST endpoint URL. Change this value to the REST endpoint URL of your Compute Classic site. For information about finding out REST endpoint URL for your site, see Send Requests.

Example of Request Body

The following shows an example of the request body content in the requestbody.json file. To associate a persistent IP address, specify the name of the IP reservation in the format ipreservation:ipreservation_name.

{
  "parentpool": "ipreservation:/Compute-acmeccs/jack.jones@example.com/prod_ip",
  "vcable": "/Compute-acme/jack.jones@example.com/8efd33da-8475-49dc-bd3c-02452bc8d724"
}

Example of Response Body

The following example shows the response body in JSON format.

{  
  "account": "/Compute-acme/default",
  "vcable": "/Compute-acme/jack.jones@example.com/8efd33da-8475-49dc-bd3c-02452bc8d724",
  "name": /Compute-acme/jack.jones@example.com/d151ee27-a7fd-4ea2-a151-0d68a281b5ed,
  "ip": "192.0.2.05",
  "uri": "https://api-z999.compute.us0.oraclecloud.com/ip/association/Compute-acme/jack.jones@example.com/d151ee27-a7fd-4ea2-a151-0d68a281b5ed",
  "parentpool": "ipreservation:/Compute-acmeccs/jack.jones@example.com/prod_ip",
  "reservation": "/Compute-acme/jack.jones@example.com/prod_ip"
}