{
  "opencollection": "1.0.0",
  "info": {
    "name": "Metal Authentication Ports API",
    "version": "1.0.0"
  },
  "request": {
    "auth": {
      "type": "apikey",
      "key": "X-Auth-Token",
      "value": "{{X-Auth-Token}}",
      "placement": "header"
    }
  },
  "items": [
    {
      "info": {
        "name": "Ports",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Retrieve a port",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.equinix.com/metal/v1/ports/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ]
          },
          "docs": "Returns a port"
        },
        {
          "info": {
            "name": "Assign a port to virtual network",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.equinix.com/metal/v1/ports/:id/assign",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Assign a hardware port to a virtual network."
        },
        {
          "info": {
            "name": "Enabling bonding",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.equinix.com/metal/v1/ports/:id/bond",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "bulk_enable",
                "value": "",
                "type": "query",
                "description": "enable both ports"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ]
          },
          "docs": "Enabling bonding for one or all ports"
        },
        {
          "info": {
            "name": "Convert to Layer 2",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.equinix.com/metal/v1/ports/:id/convert/layer-2",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Converts a bond port to Layer 2. IP assignments of the port will be removed."
        },
        {
          "info": {
            "name": "Convert to Layer 3",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.equinix.com/metal/v1/ports/:id/convert/layer-3",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Converts a bond port to Layer 3. VLANs must first be unassigned."
        },
        {
          "info": {
            "name": "Disabling bonding",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.equinix.com/metal/v1/ports/:id/disbond",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "bulk_disable",
                "value": "",
                "type": "query",
                "description": "disable both ports"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ]
          },
          "docs": "Disabling bonding for one or all ports"
        },
        {
          "info": {
            "name": "Assign a native VLAN",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.equinix.com/metal/v1/ports/:id/native-vlan",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "vnid",
                "value": "",
                "type": "query",
                "description": "Virtual Network ID. May be the UUID of the Virtual Network record, or the VLAN value itself (ex: '1001')."
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ]
          },
          "docs": "Sets a virtual network on this port as a \"native VLAN\". The VLAN must have already been assigned using the using the \"Assign a port to a virtual network\" operation."
        },
        {
          "info": {
            "name": "Remove native VLAN",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.equinix.com/metal/v1/ports/:id/native-vlan",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ]
          },
          "docs": "Removes the native VLAN from this port"
        },
        {
          "info": {
            "name": "Unassign a port",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.equinix.com/metal/v1/ports/:id/unassign",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Unassign a port for a hardware."
        },
        {
          "info": {
            "name": "List Current VLAN assignments for a port",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.equinix.com/metal/v1/ports/:id/vlan-assignments",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "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."
              }
            ]
          },
          "docs": "Show the port's current VLAN assignments, including if this VLAN is set as native, and the current state of the assignment (ex. 'assigned' or 'unassigning')"
        },
        {
          "info": {
            "name": "Show a particular Port VLAN assignment's details",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.equinix.com/metal/v1/ports/:id/vlan-assignments/:assignment_id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "assignment_id",
                "value": "",
                "type": "path",
                "description": "Assignment ID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "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."
              }
            ]
          },
          "docs": "Show the details of a specific Port-VLAN assignment, including the current state and if the VLAN is set as native."
        },
        {
          "info": {
            "name": "List the VLAN Assignment Batches for a port",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.equinix.com/metal/v1/ports/:id/vlan-assignments/batches",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              }
            ]
          },
          "docs": "Show all the VLAN assignment batches that have been created for managing this port's VLAN assignments"
        },
        {
          "info": {
            "name": "Create a new Port-VLAN Assignment management batch",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.equinix.com/metal/v1/ports/:id/vlan-assignments/batches",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Create a new asynchronous batch request which handles adding and/or removing the VLANs to which the port is assigned."
        },
        {
          "info": {
            "name": "Retrieve a VLAN Assignment Batch's details",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.equinix.com/metal/v1/ports/:id/vlan-assignments/batches/:batch_id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Port UUID"
              },
              {
                "name": "batch_id",
                "value": "",
                "type": "path",
                "description": "Batch ID"
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Nested attributes to include. Included objects will return their full\nattributes. Attribute names can be dotted (up to 3 levels) to included deeply\nnested objects."
              }
            ]
          },
          "docs": "Returns the details of an existing Port-VLAN Assignment batch, including the list of VLANs to assign or unassign, and the current state of the batch."
        }
      ]
    }
  ],
  "bundled": true
}