Skip to main content

Migrate Connection to a Different Virtual Device

Prerequisites

  1. Authenticate - Submit your user credentials, Client ID, and Client Secret for OAuth2 authentication. Refer to API Authentication for instructions on how to call the OAuth API to validate and authenticate your credentials.

  2. Determine the existing connection ID. Use the Search Connections endpoint to retrieve a list of connections and determine the ID of the connection that you want to migrate to a different port.

  3. Determine your Network Edge device information. You need a provisioned Equinix Virtual Device/Redundant Devices/Cluster with a registered license. Check your available virtual devices and clusters by calling Get Virtual Devices or Get Virtual Device {uuid}. You may choose any available interface on the device for your connection. However, Equinix will select an interface if you do not specify one.

Updating the Connection

To update a connection and migrate it to a different virtual device, send a PATCH request to the /fabric/v4/connections/{id} endpoint. Specify the connection's a-side ID to the virtual device you are migrating the connection to in the body of the request.

PATCH /fabric/v4/connections/{uuid}
MethodPATCH
URL or Endpoint/fabric/v4/connections/{uuid}
HeadersAuthorization, Content-Type
Path Parametersuuid
Query ParametersNot applicable
Body Parametersop, path, value

Sample cURL Request:

curl -X  
PATCH 'https://api.equinix.com/fabric/v4/connections/3a58dd05-f46d-4b1d-a154-2e85c396ea62'
-H 'content-type: application/json-patch+json'
-H 'authorization: Bearer <token>'
-d '[
    {
        "op": "replace",
        "path": "/aSide/accessPoint",
        "value": {
            "type": "VD",
            "virtualDevice": {
                "type": "EDGE",
                "uuid": "e8b49cd7-9b4c-4123-8bd4-fbead83c3436"
            },
            "interface": {
                "type": "NETWORK",
                "id": 5
            }
        }
    }
]'

Path parameters

ParameterMandatoryTypeExampleApplicable ValuesDescription
uuidyesstring3a58dd05-f46d-4b1d-a154-2e85c396ea62-Equinix-assigned connection identifier.

Body parameters

ParameterMandatoryTypeExampleApplicable ValuesDescription
opyesstringreplacereplaceUpdate reqest type.
pathyesstring/aSide/accessPoint/aSide/accessPointParameter path.
valueyesobject-
typeyesstringVDVDVD - Virtual Device.
virtualDeviceyesobject-Virtual Device details.
typeyesstringEDGEEDGEEDGE.
uuidyesstring78rtdd05-f46d-4b1d-a154-2e85c396yt56Unique Id of the new Virtual Device.
interfacenoobjectInterface details.
typenostringNETWORKNETWORK.
idnointeger5Interface of the Virtual Device.

Sample Response:

{  
    "href": "https://api.equinix.com/fabric/v4/connections/3a58dd05-f46d-4b1d-a154-2e85c396ea62",
    "type": "EVPL_VC",
    "uuid": "3a58dd05-f46d-4b1d-a154-2e85c396ea62",
    "name": "Conn-Name-2",
    "state": "PROVISIONED",
    "order": {
        "purchaseOrderNumber": "1-129105284100",
        "billingTier": "Up to 1 Gbps"
    },
    "bandwidth": 1000,
    "redundancy": {
        "group": "m167f685-41b0-1b07-6de0-320a5c00abeu",
        "priority": "PRIMARY"
    },
    “aSide”: {
        “accessPoint”: {
            "interface": {
                “uuid”: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
                “id”: 7,
                “type”: "NETWORK"
            },
            “location”: {
                “metroCode”: "AM"
            },
            “virtualDevice”: {
                “uuid”: "XXXXXXXXXXXXXXXXXXXXXXXXXX", 
                “type”: "EDGE"
            }
        }
    },
    "zSide": {
        "accessPoint": {
            "type": "SP",
            "profile": {
                "href": "https://api.equinix.com/fabric/v4/ports/a867f685-41b0-1b07-6de0-320a5c00abdd",
                "type": "L2_Profile",
                "uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4"
            },
            "location": {
                "href": "https://api.equinix.com/v4/metros/SV",
                "metrocode": "SV",
                "region": "AMER"
            }
        }
    },
    "notifications": [
        {
            "type": "ALL",
            "emails": [
                "test@equinix.com",
                "test@equinix.com"
            ]
        }
    ],
    "operation": {
        "equinixStatus": "PROVISIONED",
        "providerStatus": "PROVISIONED"
    },
    "changeLog": {
        "createdDateTime": "2021-07-15T19:30:29.526Z",
        "updatedDateTime": "2021-08-15T19:30:29.526Z",
    }
}