openapi: 3.0.1 info: title: Equinix API Authentication Interconnections API description: 'Equinix APIs use the OAuth 2.0 for authentication and authorization. Equinix supports the resource owner password and the client credentials flow. To begin, obtain OAuth 2.0 client credentials from the Equinix Developer Console under "My Apps". Then your client application requests an access token from the Equinix API Authorization endpoint, extracts the access_token from the response, and sends the Bearer token to the API that you want to access' termsOfService: https://www.equinix.com/about/legal/terms contact: name: Equinix API Support url: https://docs.equinix.com/api-support.htm version: '1.2' servers: - url: https://api.equinix.com tags: - description: 'Network Interconnections. See Instructions to create Network Interconnections at Check out the product docs to learn more about [Equinix Fabric](https://metal.equinix.com/developers/docs/networking/fabric/). ' externalDocs: url: https://metal.equinix.com/developers/docs/equinix-interconnect/introduction/ name: Interconnections paths: /connections/{connection_id}: delete: description: Delete a interconnection, its associated ports and virtual circuits. operationId: deleteInterconnection parameters: - description: Interconnection UUID in: path name: connection_id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form responses: '202': content: application/json: schema: $ref: '#/components/schemas/Interconnection' description: accepted '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: Delete interconnection tags: - Interconnections get: description: Get the details of a interconnection operationId: getInterconnection parameters: - description: Interconnection UUID in: path name: connection_id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form responses: '200': content: application/json: schema: $ref: '#/components/schemas/Interconnection' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: Get interconnection tags: - Interconnections put: description: Update the details of a interconnection operationId: updateInterconnection parameters: - description: Interconnection UUID in: path name: connection_id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form requestBody: content: application/json: schema: $ref: '#/components/schemas/InterconnectionUpdateInput' description: Updated interconnection details required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Interconnection' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: Update interconnection tags: - Interconnections /connections/{connection_id}/ports: get: description: List the ports associated to an interconnection. operationId: listInterconnectionPorts parameters: - description: UUID of the interconnection in: path name: connection_id required: true schema: format: uuid type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/InterconnectionPortList' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: List a interconnection's ports tags: - Interconnections /connections/{connection_id}/virtual-circuits: get: description: List the virtual circuit record(s) associated with a particular interconnection id. operationId: listInterconnectionVirtualCircuits parameters: - description: UUID of the interconnection in: path name: connection_id required: true schema: format: uuid type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/VirtualCircuitList' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: List a interconnection's virtual circuits tags: - Interconnections /connections/{connection_id}/ports/{id}: get: description: Get the details of an interconnection port. operationId: getInterconnectionPort parameters: - description: UUID of the interconnection in: path name: connection_id required: true schema: format: uuid type: string - description: Port UUID in: path name: id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form responses: '200': content: application/json: schema: $ref: '#/components/schemas/InterconnectionPort' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: Get a interconnection port tags: - Interconnections /connections/{connection_id}/ports/{port_id}/virtual-circuits: get: description: List the virtual circuit record(s) associatiated with a particular interconnection port. operationId: listInterconnectionPortVirtualCircuits parameters: - description: UUID of the interconnection in: path name: connection_id required: true schema: format: uuid type: string - description: UUID of the interconnection port in: path name: port_id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form responses: '200': content: application/json: schema: $ref: '#/components/schemas/VirtualCircuitList' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: List a interconnection port's virtual circuits tags: - Interconnections post: description: Create a new Virtual Circuit on a Dedicated Port. To create a regular Virtual Circuit, specify a Virtual Network record and an NNI VLAN value. To create a VRF-based Virtual Circuit, specify the VRF ID and subnet, along with the NNI VLAN value. operationId: createInterconnectionPortVirtualCircuit parameters: - description: UUID of the interconnection in: path name: connection_id required: true schema: format: uuid type: string - description: UUID of the interconnection port in: path name: port_id required: true schema: format: uuid type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/VirtualCircuitCreateInput' description: Virtual Circuit details required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/VirtualCircuit' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: Create a new Virtual Circuit tags: - Interconnections /organizations/{organization_id}/connections: get: description: List the connections belonging to the organization operationId: organizationListInterconnections parameters: - description: UUID of the organization in: path name: organization_id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form responses: '200': content: application/json: schema: $ref: '#/components/schemas/InterconnectionList' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: List organization connections tags: - Interconnections post: description: Creates a new interconnection request. A Project ID must be specified in the request body for connections on shared ports. operationId: createOrganizationInterconnection parameters: - description: UUID of the organization in: path name: organization_id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form requestBody: $ref: '#/components/requestBodies/InterconnectionCreateInput' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Interconnection' description: created '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found '422': content: application/json: schema: $ref: '#/components/schemas/Error' description: unprocessable entity summary: Request a new interconnection for the organization tags: - Interconnections /projects/{project_id}/connections: get: description: List the connections belonging to the project operationId: projectListInterconnections parameters: - description: UUID of the project in: path name: project_id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form - description: Page to return in: query name: page schema: default: 1 format: int32 maximum: 100000 minimum: 1 type: integer - description: Items returned per page in: query name: per_page schema: default: 10 format: int32 maximum: 1000 minimum: 1 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/InterconnectionList' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: List project connections tags: - Interconnections x-equinix-metal-paginated-property: Interconnections post: description: Creates a new interconnection request operationId: createProjectInterconnection parameters: - description: UUID of the project in: path name: project_id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form requestBody: $ref: '#/components/requestBodies/InterconnectionCreateInput' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Interconnection' description: created '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '422': content: application/json: schema: $ref: '#/components/schemas/Error' description: unprocessable entity summary: Request a new interconnection for the project's organization tags: - Interconnections /virtual-circuits/{id}: delete: description: Delete a virtual circuit from a Dedicated Port. operationId: deleteVirtualCircuit parameters: - description: Virtual Circuit UUID in: path name: id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form responses: '202': content: application/json: schema: $ref: '#/components/schemas/VirtualCircuit' description: accepted '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: Delete a virtual circuit tags: - Interconnections get: description: Get the details of a virtual circuit operationId: getVirtualCircuit parameters: - description: Virtual Circuit UUID in: path name: id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form responses: '200': content: application/json: schema: $ref: '#/components/schemas/VirtualCircuit' description: ok '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: Get a virtual circuit tags: - Interconnections put: description: Update the details of a virtual circuit. operationId: updateVirtualCircuit parameters: - description: Virtual Circuit UUID in: path name: id required: true schema: format: uuid type: string - description: 'Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.' explode: false in: query name: include schema: items: type: string type: array style: form - description: 'Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.' explode: false in: query name: exclude schema: items: type: string type: array style: form requestBody: content: application/json: schema: $ref: '#/components/schemas/VirtualCircuitUpdateInput' description: Updated Virtual Circuit details required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/VirtualCircuit' description: ok '202': content: application/json: schema: $ref: '#/components/schemas/VirtualCircuit' description: accepted '403': content: application/json: schema: $ref: '#/components/schemas/Error' description: forbidden '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: not found summary: Update a virtual circuit tags: - Interconnections components: schemas: VlanFabricVcCreateInput_service_token_type: description: Either 'a_side' or 'z_side'. Setting this field to 'a_side' will create an interconnection with Fabric VCs (Metal Billed). Setting this field to 'z_side' will create an interconnection with Fabric VCs (Fabric Billed). This is required when the 'type' is 'shared', but this is not applicable when the 'type' is 'dedicated'. This parameter is included in the specification as a developer preview and is generally unavailable. Please contact our Support team for more details. enum: - a_side - z_side example: a_side type: string VrfVirtualCircuit_status: description: The status changes of a VRF virtual circuit are generally the same as Virtual Circuits that aren't in a VRF. However, for VRF Virtual Circuits on Fabric VCs, the status will change to 'waiting_on_peering_details' once the Fabric service token associated with the virtual circuit has been redeemed on Fabric, and Metal has found the associated Fabric connection. At this point, users can update the subnet, MD5 password, customer IP and/or metal IP accordingly. For VRF Virtual Circuits on Dedicated Ports, we require all peering details to be set on creation of a VRF Virtual Circuit. The status will change to `changing_peering_details` whenever an active VRF Virtual Circuit has any of its peering details updated. enum: - pending - waiting_on_peering_details - activating - changing_peering_details - deactivating - deleting - active - expired - activation_failed - changing_peering_details_failed - deactivation_failed - delete_failed type: string VlanVirtualCircuit: properties: bill: default: false description: True if the Virtual Circuit is being billed. Currently, only Virtual Circuits of Fabric VCs (Metal Billed) will be billed. Usage will start the first time the Virtual Circuit becomes active, and will not stop until it is deleted from Metal. type: boolean description: type: string id: format: uuid type: string name: type: string nni_vlan: type: integer port: $ref: '#/components/schemas/Href' project: $ref: '#/components/schemas/Href' speed: description: For Virtual Circuits on shared and dedicated connections, this speed should match the one set on their Interconnection Ports. For Virtual Circuits on Fabric VCs (both Metal and Fabric Billed) that have found their corresponding Fabric connection, this is the actual speed of the interconnection that was configured when setting up the interconnection on the Fabric Portal. Details on Fabric VCs are included in the specification as a developer preview and is generally unavailable. Please contact our Support team for more details. type: integer status: $ref: '#/components/schemas/VlanVirtualCircuit_status' tags: items: type: string type: array type: $ref: '#/components/schemas/VlanVirtualCircuit_type' virtual_network: $ref: '#/components/schemas/Href' vnid: type: integer created_at: format: date-time type: string updated_at: format: date-time type: string type: object DedicatedPortCreateInput: properties: billing_account_name: description: The billing account name of the Equinix Fabric account. type: string contact_email: description: The preferred email used for communication and notifications about the Equinix Fabric interconnection. Required when using a Project API key. Optional and defaults to the primary user email address when using a User API key. format: email type: string description: type: string metro: description: A Metro ID or code. For interconnections with Dedicated Ports, this will be the location of the issued Dedicated Ports. type: string mode: $ref: '#/components/schemas/DedicatedPortCreateInput_mode' name: type: string project: type: string redundancy: description: Either 'primary' or 'redundant'. type: string speed: description: A interconnection speed, in bps, mbps, or gbps. For Dedicated Ports, this can be 10Gbps or 100Gbps. example: 10000000000 type: integer tags: items: type: string type: array type: $ref: '#/components/schemas/DedicatedPortCreateInput_type' use_case: description: The intended use case of the dedicated port. type: string required: - metro - name - redundancy - type type: object Meta: example: next: href: href total: 0 last: href: href previous: href: href last_page: 1 self: href: href first: href: href current_page: 6 properties: first: $ref: '#/components/schemas/Href' last: $ref: '#/components/schemas/Href' next: $ref: '#/components/schemas/Href' previous: $ref: '#/components/schemas/Href' self: $ref: '#/components/schemas/Href' total: type: integer current_page: type: integer last_page: type: integer type: object VirtualCircuitUpdateInput: oneOf: - $ref: '#/components/schemas/VlanVirtualCircuitUpdateInput' - $ref: '#/components/schemas/VrfVirtualCircuitUpdateInput' Interconnection_mode: description: "The mode of the interconnection (only relevant to Dedicated Ports). Shared connections won't have this field. Can be either 'standard' or 'tunnel'.\n The default mode of an interconnection on a Dedicated Port is 'standard'. The mode can only be changed when there are no associated virtual circuits on the interconnection.\n In tunnel mode, an 802.1q tunnel is added to a port to send/receive double tagged packets from server instances." enum: - standard - tunnel example: standard type: string InterconnectionPort_role: description: Either 'primary' or 'secondary'. enum: - primary - secondary type: string VrfVirtualCircuit: example: subnet: 12.0.0.0/30 customer_ip: 12.0.0.2 description: description project: href: href created_at: 2000-01-23 04:56:07+00:00 vrf: null type: null metal_ip: 12.0.0.1 speed: 9 tags: - tags - tags nni_vlan: 2 updated_at: 2000-01-23 04:56:07+00:00 port: href: href name: name peer_asn: 7 id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 md5: md5 status: null properties: customer_ip: description: An IP address from the subnet that will be used on the Customer side. This parameter is optional, but if supplied, we will use the other usable IP address in the subnet as the Metal IP. By default, the last usable IP address in the subnet will be used. example: 12.0.0.2 type: string description: type: string id: format: uuid type: string md5: description: The MD5 password for the BGP peering in plaintext (not a checksum). type: string metal_ip: description: An IP address from the subnet that will be used on the Metal side. This parameter is optional, but if supplied, we will use the other usable IP address in the subnet as the Customer IP. By default, the first usable IP address in the subnet will be used. example: 12.0.0.1 type: string name: type: string port: $ref: '#/components/schemas/Href' nni_vlan: type: integer peer_asn: description: The peer ASN that will be used with the VRF on the Virtual Circuit. type: integer project: $ref: '#/components/schemas/Href' speed: description: integer representing bps speed type: integer status: $ref: '#/components/schemas/VrfVirtualCircuit_status' subnet: description: The /30 or /31 subnet of one of the VRF IP Blocks that will be used with the VRF for the Virtual Circuit. This subnet does not have to be an existing VRF IP reservation, as we will create the VRF IP reservation on creation if it does not exist. The Metal IP and Customer IP must be IPs from this subnet. For /30 subnets, the network and broadcast IPs cannot be used as the Metal or Customer IP. example: 12.0.0.0/30 type: string tags: items: type: string type: array type: $ref: '#/components/schemas/VrfIpReservation_type' vrf: $ref: '#/components/schemas/Vrf' created_at: format: date-time type: string updated_at: format: date-time type: string required: - vrf type: object Address: example: country: country address: address address2: address2 city: city coordinates: latitude: latitude longitude: longitude state: state zip_code: zip_code properties: address: type: string address2: type: string city: type: string coordinates: $ref: '#/components/schemas/Coordinates' country: type: string state: type: string zip_code: type: string required: - address - country - zip_code type: object InterconnectionPort_status: description: For both Fabric VCs and Dedicated Ports, this will be 'requested' on creation and 'deleting' on deletion. Once the Fabric VC has found its corresponding Fabric connection, this will turn to 'active'. For Dedicated Ports, once the dedicated port is associated, this will also turn to 'active'. For Fabric VCs, this can turn into an 'expired' state if the service token associated is expired. enum: - requested - active - deleting - expired - delete_failed type: string VlanVirtualCircuit_status: description: The status of a Virtual Circuit is always 'pending' on creation. The status can turn to 'Waiting on Customer VLAN' if a Metro VLAN was not set yet on the Virtual Circuit and is the last step needed for full activation. For Dedicated interconnections, as long as the Dedicated Port has been associated to the Virtual Circuit and a NNI VNID has been set, it will turn to 'waiting_on_customer_vlan'. For Fabric VCs, it will only change to 'waiting_on_customer_vlan' once the corresponding Fabric connection has been found on the Fabric side. If the Fabric service token associated with the Virtual Circuit hasn't been redeemed on Fabric within the expiry time, it will change to an `expired` status. Once a Metro VLAN is set on the Virtual Circuit (which for Fabric VCs, can be set on creation of a Fabric VC) and the necessary set up is done, it will turn into 'Activating' status as it tries to activate the Virtual Circuit. Once the Virtual Circuit fully activates and is configured on the switch, it will turn to staus 'active'. For Fabric VCs (Metal Billed), we will start billing the moment the status of the Virtual Circuit turns to 'active'. If there are any changes to the VLAN after the Virtual Circuit is in an 'active' status, the status will show 'changing_vlan' if a new VLAN has been provided, or 'deactivating' if we are removing the VLAN. When a deletion request is issued for the Virtual Circuit, it will move to a 'deleting' status, and we will immediately unconfigure the switch for the Virtual Circuit and issue a deletion on any associated Fabric connections. Any associated Metro VLANs on the virtual circuit will also be unassociated after the switch has been successfully unconfigured. If there are any associated Fabric connections, we will only fully delete the Virtual Circuit once we have checked that the Fabric connection was fully deprovisioned on Fabric. enum: - pending - waiting_on_customer_vlan - activating - changing_vlan - deactivating - deleting - active - expired - activation_failed - changing_vlan_failed - deactivation_failed - delete_failed type: string InterconnectionPort: example: role: null virtual_circuits: - null - null organization: href: href name: name link_status: link_status id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 switch_id: switch_id href: href speed: 0 status: null properties: id: format: uuid type: string organization: $ref: '#/components/schemas/Href' role: $ref: '#/components/schemas/InterconnectionPort_role' status: $ref: '#/components/schemas/InterconnectionPort_status' switch_id: description: A switch 'short ID' type: string virtual_circuits: items: $ref: '#/components/schemas/VirtualCircuit' type: array name: type: string speed: type: integer link_status: type: string href: type: string type: object Interconnection_redundancy: description: Either 'primary', meaning a single interconnection, or 'redundant', meaning a redundant interconnection. enum: - primary - redundant type: string DedicatedPortCreateInput_mode: description: "The mode of the interconnection (only relevant to Dedicated Ports). Fabric VCs won't have this field. Can be either 'standard' or 'tunnel'.\n The default mode of an interconnection on a Dedicated Port is 'standard'. The mode can only be changed when there are no associated virtual circuits on the interconnection.\n In tunnel mode, an 802.1q tunnel is added to a port to send/receive double tagged packets from server instances." enum: - standard - tunnel example: standard type: string DedicatedPortCreateInput_type: description: When requesting for a dedicated port, the value of this field should be 'dedicated'. enum: - dedicated type: string InterconnectionPortList: example: ports: - role: null virtual_circuits: - null - null organization: href: href name: name link_status: link_status id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 switch_id: switch_id href: href speed: 0 status: null - role: null virtual_circuits: - null - null organization: href: href name: name link_status: link_status id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 switch_id: switch_id href: href speed: 0 status: null properties: ports: items: $ref: '#/components/schemas/InterconnectionPort' type: array type: object Organization: example: website: website address: country: country address: address address2: address2 city: city coordinates: latitude: latitude longitude: longitude state: state zip_code: zip_code projects: - href: href - href: href credit_amount: 1.4658129 created_at: 2000-01-23 04:56:07+00:00 description: description billing_address: country: country address: address address2: address2 city: city coordinates: latitude: latitude longitude: longitude state: state zip_code: zip_code memberships: - href: href - href: href enforce_2fa_at: 2000-01-23 04:56:07+00:00 twitter: twitter updated_at: 2000-01-23 04:56:07+00:00 terms: 5 members: - href: href - href: href name: name logo: logo customdata: '{}' id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 properties: address: $ref: '#/components/schemas/Address' billing_address: $ref: '#/components/schemas/Address' created_at: format: date-time type: string credit_amount: format: float type: number customdata: type: object description: type: string enforce_2fa_at: description: Force to all members to have enabled the two factor authentication after that date, unless the value is null format: date-time type: string id: format: uuid type: string logo: type: string members: items: $ref: '#/components/schemas/Href' type: array memberships: items: $ref: '#/components/schemas/Href' type: array name: type: string projects: items: $ref: '#/components/schemas/Href' type: array terms: type: integer twitter: type: string updated_at: format: date-time type: string website: type: string type: object VrfFabricVcCreateInput: properties: contact_email: description: The preferred email used for communication and notifications about the Equinix Fabric interconnection. Required when using a Project API key. Optional and defaults to the primary user email address when using a User API key. format: email type: string description: type: string metro: description: A Metro ID or code. When creating Fabric VCs (Metal Billed), this is where interconnection will be originating from, as we pre-authorize the use of one of our shared ports as the origin of the interconnection using A-Side service tokens. We only allow local connections for Fabric VCs (Metal Billed), so the destination location must be the same as the origin. For Fabric VCs (Fabric Billed), or shared connections, this will be the destination of the interconnection. We allow remote connections for Fabric VCs (Fabric Billed), so the origin of the interconnection can be a different metro set here. type: string name: type: string project: type: string redundancy: description: Either 'primary' or 'redundant'. type: string service_token_type: $ref: '#/components/schemas/VlanFabricVcCreateInput_service_token_type' speed: description: "A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: \n''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided.\nFor example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs." example: 10000000000 type: integer tags: items: type: string type: array type: $ref: '#/components/schemas/VlanFabricVcCreateInput_type' vrfs: description: This field holds a list of VRF UUIDs that will be set automatically on the virtual circuits of Fabric VCs on creation, and can hold up to two UUIDs. Two UUIDs are required when requesting redundant Fabric VCs. The first UUID will be set on the primary virtual circuit, while the second UUID will be set on the secondary. The two UUIDs can be the same if both the primary and secondary virtual circuits will be in the same VRF. This parameter is included in the specification as a developer preview and is generally unavailable. Please contact our Support team for more details. items: format: uuid type: string type: array required: - metro - name - redundancy - service_token_type - type - vrfs type: object createOrganizationInterconnection_request: oneOf: - $ref: '#/components/schemas/DedicatedPortCreateInput' - $ref: '#/components/schemas/VlanFabricVcCreateInput' - $ref: '#/components/schemas/VrfFabricVcCreateInput' Interconnection: example: description: description created_at: 2000-01-23 04:56:07+00:00 ports: - role: null virtual_circuits: - null - null organization: href: href name: name link_status: link_status id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 switch_id: switch_id href: href speed: 0 status: null - role: null virtual_circuits: - null - null organization: href: href name: name link_status: link_status id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 switch_id: switch_id href: href speed: 0 status: null type: null speed: 10000000000 contact_email: contact_email tags: - tags - tags token: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 mode: standard service_tokens: - max_allowed_speed: 10000000000 expires_at: 2000-01-23 04:56:07+00:00 role: null service_token_type: null id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 state: null - max_allowed_speed: 10000000000 expires_at: 2000-01-23 04:56:07+00:00 role: null service_token_type: null id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 state: null requested_by: href: href updated_at: 2000-01-23 04:56:07+00:00 metro: '' organization: href: href name: name id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 redundancy: null facility: href: href status: status properties: contact_email: type: string description: type: string facility: $ref: '#/components/schemas/Href' id: format: uuid type: string metro: allOf: - $ref: '#/components/schemas/Metro' description: "The location of where the shared or Dedicated Port is located. For interconnections with Dedicated Ports,\n this will be the location of the Dedicated Ports. For Fabric VCs (Metal Billed), this is where interconnection will be originating from, as we pre-authorize the use of one of our shared ports\n as the origin of the interconnection using A-Side service tokens. We only allow local connections for Fabric VCs (Metal Billed), so the destination location must be the same as the origin. For Fabric VCs (Fabric Billed), \n this will be the destination of the interconnection. We allow remote connections for Fabric VCs (Fabric Billed), so the origin of the interconnection can be a different metro set here." mode: $ref: '#/components/schemas/Interconnection_mode' name: type: string organization: $ref: '#/components/schemas/Href' ports: description: For Fabric VCs, these represent Virtual Port(s) created for the interconnection. For dedicated interconnections, these represent the Dedicated Port(s). items: $ref: '#/components/schemas/InterconnectionPort' type: array redundancy: $ref: '#/components/schemas/Interconnection_redundancy' service_tokens: description: For Fabric VCs (Metal Billed), this will show details of the A-Side service tokens issued for the interconnection. For Fabric VCs (Fabric Billed), this will show the details of the Z-Side service tokens issued for the interconnection. Dedicated interconnections will not have any service tokens issued. There will be one per interconnection, so for redundant interconnections, there should be two service tokens issued. items: $ref: '#/components/schemas/FabricServiceToken' type: array speed: description: For interconnections on Dedicated Ports and shared connections, this represents the interconnection's speed in bps. For Fabric VCs, this field refers to the maximum speed of the interconnection in bps. This value will default to 10Gbps for Fabric VCs (Fabric Billed). example: 10000000000 type: integer status: type: string tags: items: type: string type: array token: description: This token is used for shared interconnections to be used as the Fabric Token. This field is entirely deprecated. format: uuid type: string type: $ref: '#/components/schemas/Interconnection_type' created_at: format: date-time type: string updated_at: format: date-time type: string requested_by: $ref: '#/components/schemas/Href' type: object InterconnectionList: example: meta: next: href: href total: 0 last: href: href previous: href: href last_page: 1 self: href: href first: href: href current_page: 6 interconnections: - description: description created_at: 2000-01-23 04:56:07+00:00 ports: - role: null virtual_circuits: - null - null organization: href: href name: name link_status: link_status id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 switch_id: switch_id href: href speed: 0 status: null - role: null virtual_circuits: - null - null organization: href: href name: name link_status: link_status id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 switch_id: switch_id href: href speed: 0 status: null type: null speed: 10000000000 contact_email: contact_email tags: - tags - tags token: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 mode: standard service_tokens: - max_allowed_speed: 10000000000 expires_at: 2000-01-23 04:56:07+00:00 role: null service_token_type: null id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 state: null - max_allowed_speed: 10000000000 expires_at: 2000-01-23 04:56:07+00:00 role: null service_token_type: null id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 state: null requested_by: href: href updated_at: 2000-01-23 04:56:07+00:00 metro: '' organization: href: href name: name id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 redundancy: null facility: href: href status: status - description: description created_at: 2000-01-23 04:56:07+00:00 ports: - role: null virtual_circuits: - null - null organization: href: href name: name link_status: link_status id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 switch_id: switch_id href: href speed: 0 status: null - role: null virtual_circuits: - null - null organization: href: href name: name link_status: link_status id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 switch_id: switch_id href: href speed: 0 status: null type: null speed: 10000000000 contact_email: contact_email tags: - tags - tags token: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 mode: standard service_tokens: - max_allowed_speed: 10000000000 expires_at: 2000-01-23 04:56:07+00:00 role: null service_token_type: null id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 state: null - max_allowed_speed: 10000000000 expires_at: 2000-01-23 04:56:07+00:00 role: null service_token_type: null id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 state: null requested_by: href: href updated_at: 2000-01-23 04:56:07+00:00 metro: '' organization: href: href name: name id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 redundancy: null facility: href: href status: status properties: interconnections: items: $ref: '#/components/schemas/Interconnection' type: array meta: $ref: '#/components/schemas/Meta' type: object Project_type: description: The type of the project. Projects of type `vmce` are part of an in development feature and not available to all customers. enum: - default - vmce type: string Vrf: example: bgp_dynamic_neighbors_export_route_map: true bgp_dynamic_neighbors_bfd_enabled: true local_asn: 5 description: description bill: false bgp_dynamic_neighbors_enabled: true project: devices: - href: href - href: href volumes: - href: href - href: href created_at: 2000-01-23 04:56:07+00:00 type: null memberships: - href: href - href: href bgp_config: href: href tags: - tags - tags max_devices: '{}' ssh_keys: - href: href - href: href updated_at: 2000-01-23 04:56:07+00:00 invitations: - href: href - href: href members: - href: href - href: href organization: website: website address: country: country address: address address2: address2 city: city coordinates: latitude: latitude longitude: longitude state: state zip_code: zip_code projects: - href: href - href: href credit_amount: 1.4658129 created_at: 2000-01-23 04:56:07+00:00 description: description billing_address: country: country address: address address2: address2 city: city coordinates: latitude: latitude longitude: longitude state: state zip_code: zip_code memberships: - href: href - href: href enforce_2fa_at: 2000-01-23 04:56:07+00:00 twitter: twitter updated_at: 2000-01-23 04:56:07+00:00 terms: 5 members: - href: href - href: href name: name logo: logo customdata: '{}' id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 name: name network_status: '{}' customdata: '{}' href: href id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 payment_method: href: href created_at: 2000-01-23 04:56:07+00:00 created_by: avatar_thumb_url: avatar_thumb_url last_login_at: 2000-01-23 04:56:07+00:00 max_projects: 2 timezone: timezone default_project_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 created_at: 2000-01-23 04:56:07+00:00 last_name: last_name short_id: short_id fraud_score: fraud_score emails: - href: href - href: href default_organization_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 full_name: full_name avatar_url: avatar_url updated_at: 2000-01-23 04:56:07+00:00 phone_number: phone_number customdata: '{}' href: href id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 first_name: first_name max_organizations: 3 two_factor_auth: two_factor_auth email: email tags: - tags - tags updated_at: 2000-01-23 04:56:07+00:00 virtual_circuits: - subnet: 12.0.0.0/30 customer_ip: 12.0.0.2 description: description project: href: href created_at: 2000-01-23 04:56:07+00:00 vrf: null type: null metal_ip: 12.0.0.1 speed: 9 tags: - tags - tags nni_vlan: 2 updated_at: 2000-01-23 04:56:07+00:00 port: href: href name: name peer_asn: 7 id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 md5: md5 status: null - subnet: 12.0.0.0/30 customer_ip: 12.0.0.2 description: description project: href: href created_at: 2000-01-23 04:56:07+00:00 vrf: null type: null metal_ip: 12.0.0.1 speed: 9 tags: - tags - tags nni_vlan: 2 updated_at: 2000-01-23 04:56:07+00:00 port: href: href name: name peer_asn: 7 id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 md5: md5 status: null ip_ranges: - ip_ranges - ip_ranges metro: country: country code: code name: name id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 name: name id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 href: href properties: id: format: uuid type: string name: type: string description: description: Optional field that can be set to describe the VRF type: string bill: default: false description: True if the VRF is being billed. Usage will start when the first VRF Virtual Circuit is active, and will only stop when the VRF has been deleted. type: boolean bgp_dynamic_neighbors_enabled: description: Toggle to enable the dynamic bgp neighbors feature on the VRF type: boolean bgp_dynamic_neighbors_export_route_map: description: Toggle to export the VRF route-map to the dynamic bgp neighbors type: boolean bgp_dynamic_neighbors_bfd_enabled: description: Toggle BFD on dynamic bgp neighbors sessions type: boolean local_asn: description: A 4-byte ASN associated with the VRF. format: int32 type: integer virtual_circuits: description: Virtual circuits that are in the VRF items: $ref: '#/components/schemas/VrfVirtualCircuit' type: array ip_ranges: description: A list of CIDR network addresses. Like ["10.0.0.0/16", "2001:d78::/56"]. items: type: string type: array project: $ref: '#/components/schemas/Project' metro: $ref: '#/components/schemas/Metro' created_by: $ref: '#/components/schemas/User' href: type: string created_at: format: date-time type: string updated_at: format: date-time type: string tags: items: type: string type: array type: object VlanFabricVcCreateInput: properties: contact_email: description: The preferred email used for communication and notifications about the Equinix Fabric interconnection. Required when using a Project API key. Optional and defaults to the primary user email address when using a User API key. format: email type: string description: type: string metro: description: A Metro ID or code. When creating Fabric VCs (Metal Billed), this is where interconnection will be originating from, as we pre-authorize the use of one of our shared ports as the origin of the interconnection using A-Side service tokens. We only allow local connections for Fabric VCs (Metal Billed), so the destination location must be the same as the origin. For Fabric VCs (Fabric Billed), or shared connections, this will be the destination of the interconnection. We allow remote connections for Fabric VCs (Fabric Billed), so the origin of the interconnection can be a different metro set here. type: string name: type: string project: type: string redundancy: description: Either 'primary' or 'redundant'. type: string service_token_type: $ref: '#/components/schemas/VlanFabricVcCreateInput_service_token_type' speed: description: "A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: \n''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided.\nFor example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs." example: 10000000000 type: integer tags: items: type: string type: array type: $ref: '#/components/schemas/VlanFabricVcCreateInput_type' vlans: description: A list of one or two metro-based VLANs that will be set on the virtual circuits of primary and/or secondary (if redundant) interconnections respectively when creating Fabric VCs. VLANs can also be set after the interconnection is created, but are required to fully activate the virtual circuits. example: - 1000 - 1001 items: type: integer type: array required: - metro - name - redundancy - service_token_type - type type: object VirtualCircuitCreateInput: oneOf: - $ref: '#/components/schemas/VlanVirtualCircuitCreateInput' - $ref: '#/components/schemas/VrfVirtualCircuitCreateInput' VirtualCircuitList: example: virtual_circuits: - null - null properties: virtual_circuits: items: $ref: '#/components/schemas/VirtualCircuit' type: array type: object VrfIpReservation_type: enum: - vrf type: string FabricServiceToken_role: description: Either primary or secondary, depending on which interconnection the service token is associated to. enum: - primary - secondary type: string FabricServiceToken: example: max_allowed_speed: 10000000000 expires_at: 2000-01-23 04:56:07+00:00 role: null service_token_type: null id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 state: null properties: expires_at: description: The expiration date and time of the Fabric service token. Once a service token is expired, it is no longer redeemable. format: date-time type: string id: description: "The UUID that can be used on the Fabric Portal to redeem either an A-Side or Z-Side Service Token.\nFor Fabric VCs (Metal Billed), this UUID will represent an A-Side Service Token, which will allow interconnections\nto be made from Equinix Metal to other Service Providers on Fabric. For Fabric VCs (Fabric Billed), this UUID will\nrepresent a Z-Side Service Token, which will allow interconnections to be made to connect an owned Fabric Port or \nVirtual Device to Equinix Metal." format: uuid type: string max_allowed_speed: description: "The maximum speed that can be selected on the Fabric Portal when configuring a interconnection with either \nan A-Side or Z-Side Service Token. For Fabric VCs (Metal Billed), this is what the billing is based off of, and can be one\nof the following options, '50mbps', '200mbps', '500mbps', '1gbps', '2gbps', '5gbps' or '10gbps'. For Fabric VCs\n(Fabric Billed), this will default to 10Gbps." example: 10000000000 type: integer role: $ref: '#/components/schemas/FabricServiceToken_role' service_token_type: $ref: '#/components/schemas/FabricServiceToken_service_token_type' state: $ref: '#/components/schemas/FabricServiceToken_state' type: object VrfVirtualCircuitUpdateInput: properties: customer_ip: description: An IP address from the subnet that will be used on the Customer side. This parameter is optional, but if supplied, we will use the other usable IP address in the subnet as the Metal IP. By default, the last usable IP address in the subnet will be used. example: 12.0.0.2 type: string description: type: string md5: description: 'The plaintext BGP peering password shared by neighbors as an MD5 checksum: * must be 10-20 characters long * may not include punctuation * must be a combination of numbers and letters * must contain at least one lowercase, uppercase, and digit character ' pattern: ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{10,20}$ type: string metal_ip: description: An IP address from the subnet that will be used on the Metal side. This parameter is optional, but if supplied, we will use the other usable IP address in the subnet as the Customer IP. By default, the first usable IP address in the subnet will be used. example: 12.0.0.1 type: string name: type: string peer_asn: description: The peer ASN that will be used with the VRF on the Virtual Circuit. type: integer speed: description: Speed can be changed only if it is an interconnection on a Dedicated Port type: string subnet: description: The /30 or /31 subnet of one of the VRF IP Blocks that will be used with the VRF for the Virtual Circuit. This subnet does not have to be an existing VRF IP reservation, as we will create the VRF IP reservation on creation if it does not exist. The Metal IP and Customer IP must be IPs from this subnet. For /30 subnets, the network and broadcast IPs cannot be used as the Metal or Customer IP. example: 12.0.0.0/30 type: string tags: items: type: string type: array type: object VlanVirtualCircuitUpdateInput: properties: description: type: string name: type: string speed: description: Speed can be changed only if it is an interconnection on a Dedicated Port type: string tags: items: type: string type: array vnid: description: A Virtual Network record UUID or the VNID of a Metro Virtual Network in your project. type: string type: object Project: example: devices: - href: href - href: href volumes: - href: href - href: href created_at: 2000-01-23 04:56:07+00:00 type: null memberships: - href: href - href: href bgp_config: href: href tags: - tags - tags max_devices: '{}' ssh_keys: - href: href - href: href updated_at: 2000-01-23 04:56:07+00:00 invitations: - href: href - href: href members: - href: href - href: href organization: website: website address: country: country address: address address2: address2 city: city coordinates: latitude: latitude longitude: longitude state: state zip_code: zip_code projects: - href: href - href: href credit_amount: 1.4658129 created_at: 2000-01-23 04:56:07+00:00 description: description billing_address: country: country address: address address2: address2 city: city coordinates: latitude: latitude longitude: longitude state: state zip_code: zip_code memberships: - href: href - href: href enforce_2fa_at: 2000-01-23 04:56:07+00:00 twitter: twitter updated_at: 2000-01-23 04:56:07+00:00 terms: 5 members: - href: href - href: href name: name logo: logo customdata: '{}' id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 name: name network_status: '{}' customdata: '{}' href: href id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 payment_method: href: href properties: bgp_config: $ref: '#/components/schemas/Href' created_at: format: date-time type: string customdata: type: object devices: items: $ref: '#/components/schemas/Href' type: array href: type: string id: format: uuid type: string invitations: items: $ref: '#/components/schemas/Href' type: array max_devices: type: object members: items: $ref: '#/components/schemas/Href' type: array memberships: items: $ref: '#/components/schemas/Href' type: array name: description: The name of the project. Cannot contain characters encoded in greater than 3 bytes such as emojis. maxLength: 80 minLength: 1 type: string network_status: type: object organization: $ref: '#/components/schemas/Organization' payment_method: $ref: '#/components/schemas/Href' ssh_keys: items: $ref: '#/components/schemas/Href' type: array updated_at: format: date-time type: string volumes: items: $ref: '#/components/schemas/Href' type: array type: $ref: '#/components/schemas/Project_type' tags: items: type: string type: array type: object FabricServiceToken_state: description: 'The state of the service token that corresponds with the service token state on Fabric. An ''inactive'' state refers to a token that has not been redeemed yet on the Fabric side, an ''active'' state refers to a token that has already been redeemed, and an ''expired'' state refers to a token that has reached its expiry time.' enum: - inactive - active - expired type: string Coordinates: example: latitude: latitude longitude: longitude properties: latitude: type: string longitude: type: string type: object InterconnectionUpdateInput: example: mode: standard name: name description: description redundancy: redundancy contact_email: contact_email tags: - tags - tags properties: contact_email: type: string description: type: string mode: $ref: '#/components/schemas/Interconnection_mode' name: type: string redundancy: description: Updating from 'redundant' to 'primary' will remove a secondary port, while updating from 'primary' to 'redundant' will add one. type: string tags: items: type: string type: array type: object VlanFabricVcCreateInput_type: description: When requesting for a Fabric VC, the value of this field should be 'shared'. enum: - shared type: string VirtualCircuit: oneOf: - $ref: '#/components/schemas/VlanVirtualCircuit' - $ref: '#/components/schemas/VrfVirtualCircuit' User: example: avatar_thumb_url: avatar_thumb_url last_login_at: 2000-01-23 04:56:07+00:00 max_projects: 2 timezone: timezone default_project_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 created_at: 2000-01-23 04:56:07+00:00 last_name: last_name short_id: short_id fraud_score: fraud_score emails: - href: href - href: href default_organization_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 full_name: full_name avatar_url: avatar_url updated_at: 2000-01-23 04:56:07+00:00 phone_number: phone_number customdata: '{}' href: href id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 first_name: first_name max_organizations: 3 two_factor_auth: two_factor_auth email: email properties: avatar_thumb_url: type: string avatar_url: type: string created_at: format: date-time type: string customdata: type: object default_organization_id: format: uuid type: string default_project_id: format: uuid type: string email: type: string emails: items: $ref: '#/components/schemas/Href' type: array first_name: type: string fraud_score: type: string full_name: type: string href: type: string id: format: uuid type: string last_login_at: format: date-time type: string last_name: type: string max_organizations: type: integer max_projects: type: integer phone_number: type: string short_id: type: string timezone: type: string two_factor_auth: type: string updated_at: format: date-time type: string type: object Metro: example: country: country code: code name: name id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 properties: code: type: string country: type: string id: format: uuid type: string name: type: string type: object Error: description: Error responses are included with 4xx and 5xx HTTP responses from the API service. Either "error" or "errors" will be set. properties: error: description: A description of the error that caused the request to fail. type: string errors: description: A list of errors that contributed to the request failing. items: description: An error message that contributed to the request failing. type: string type: array type: object VlanVirtualCircuit_type: enum: - vlan type: string Interconnection_type: description: The 'shared' type of interconnection refers to shared connections, or later also known as Fabric Virtual Connections (or Fabric VCs). The 'dedicated' type of interconnection refers to interconnections created with Dedicated Ports. enum: - shared - dedicated type: string FabricServiceToken_service_token_type: description: Either 'a_side' or 'z_side', depending on which type of Fabric VC was requested. enum: - a_side - z_side type: string VlanVirtualCircuitCreateInput: properties: description: type: string name: type: string nni_vlan: maximum: 4094 minimum: 2 type: integer project_id: format: uuid type: string speed: description: speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps') type: integer tags: items: type: string type: array vnid: description: A Virtual Network record UUID or the VNID of a Metro Virtual Network in your project (sent as integer). format: uuid type: string required: - project_id type: object VrfVirtualCircuitCreateInput: properties: customer_ip: description: An IP address from the subnet that will be used on the Customer side. This parameter is optional, but if supplied, we will use the other usable IP address in the subnet as the Metal IP. By default, the last usable IP address in the subnet will be used. example: 12.0.0.2 type: string description: type: string md5: description: 'The plaintext BGP peering password shared by neighbors as an MD5 checksum: * must be 10-20 characters long * may not include punctuation * must be a combination of numbers and letters * must contain at least one lowercase, uppercase, and digit character ' nullable: true pattern: ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{10,20}$ type: string metal_ip: description: An IP address from the subnet that will be used on the Metal side. This parameter is optional, but if supplied, we will use the other usable IP address in the subnet as the Customer IP. By default, the first usable IP address in the subnet will be used. example: 12.0.0.1 type: string name: type: string nni_vlan: maximum: 4094 minimum: 2 type: integer peer_asn: description: The peer ASN that will be used with the VRF on the Virtual Circuit. type: integer project_id: format: uuid type: string speed: description: speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps') type: integer subnet: description: The /30 or /31 subnet of one of the VRF IP Blocks that will be used with the VRF for the Virtual Circuit. This subnet does not have to be an existing VRF IP reservation, as we will create the VRF IP reservation on creation if it does not exist. The Metal IP and Customer IP must be IPs from this subnet. For /30 subnets, the network and broadcast IPs cannot be used as the Metal or Customer IP. The subnet specified must be contained within an already-defined IP Range for the VRF. example: 12.0.0.0/30 type: string tags: items: type: string type: array vrf: description: The UUID of the VRF that will be associated with the Virtual Circuit. format: uuid type: string required: - nni_vlan - peer_asn - project_id - subnet - vrf type: object Href: example: href: href properties: href: type: string required: - href type: object requestBodies: InterconnectionCreateInput: content: application/json: schema: $ref: '#/components/schemas/createOrganizationInterconnection_request' description: Dedicated port or shared interconnection (also known as Fabric VC) creation request required: true x-eqx-api-linter-skip-rules: - 3 - 38