Most of the endpoints in the Packet API require authentication. Authenticating is done with an authentication token in the X-Auth-Token header.

curl -H 'X-Auth-Token: my_authentication_token'

Authentication tokens are used to identify the user your application is connecting to the Packet API on behalf of. Think of authentication tokens as permanent sessions—the user creates authentication tokens, and your app can use them to connect to the Packet API on their behalf until they delete the token.

Users can create authentication tokens in the Packet Portal.

The Packet API uses a few methods to minimize network traffic and bandwidth:

include

For resources that contain collections of other resources, the Packet API will return links to the other resources by default.

{
  ...
  // Includes "href" links if the resource is reachable through the API.
  "projects": [
    { "href": "/projects/5b590e4f-be96-4400-ae32-c315ee67964d" },
    { "href": "/projects/f3f131c8-f302-49ef-8c44-9405022dc6dd" }
  ],
  // Includes "id" attributes if not.
  "emails": [
    { "id": "eb5d8c89-4d15-4c87-859c-5ae190ad5d9a" },
    { "id": "c17f77ad-9070-4084-abaa-7538581d9523" }
  ]
  ...
}

However, if you're interested in acting on resources in the projects collection, it doesn't make sense to make a separate API call to retrieve each project. Instead, you can specify which collections you'd like to be included using the include parameter.

/user?include=projects

will return

{
  ...
  "projects": [
    {
      "href": "/projects/c851d3c5-d55d-4b1a-99f1-96fc64768bc3",
      "id": "c851d3c5-d55d-4b1a-99f1-96fc64768bc3",
      "name": "Project 1",
      ...
    },
    {
      "href": "/projects/21f8e88b-bd4e-44ca-b956-4f3f88e6e5f2",
      "id": "21f8e88b-bd4e-44ca-b956-4f3f88e6e5f2",
      "name": "Project 2",
      ...
    }
  ],
  ...
}

The include parameter is accepted for all GET requests on all resources and collections, and should be specified as a comma-separated list.

/user?include=emails,projects,memberships

You may also include nested associations up to 3 levels deep using dot notation:

/user?include=memberships.projects

Packet uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, a charge failed, etc.). Codes in the 5xx range indicate an error with Packet's servers (these are rare).

HTTP status code summary

200 - OK Everything worked as expected.
422 - Bad Request The request was unacceptable, often due to missing a required parameter.
401 - Unauthorized No valid API key provided.
404 - Not Found The requested resource doesn't exist.
500, 502, 503, 504 - Server Errors Something went wrong on Packet's end. (These are rare.)

Manage device batches. See project endpoints to list batches for a particular project.

Retrieve all batches by project

GET
/projects/{id}/batches

Returns all batches for the given project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"batches": [
    		{
    			"id": "string",
    			"error_messages": [
    				"string"
    			],
    			"quantity": "integer",
    			"state": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"devices": [
    				{
    					"href": "string"
    				}
    			],
    			"project": {
    				"href": "string"
    			}
    		}
    	]
    } 

Retrieve a Batch

GET
/batches/{id}

Returns a Batch

  • Parameters
  • id
    string  (required) in path

    Batch UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"error_messages": [
    		"string"
    	],
    	"quantity": "integer",
    	"state": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"devices": [
    		{
    			"href": "string"
    		}
    	],
    	"project": {
    		"href": "string"
    	}
    } 

Create a devices batch

/projects/{id}/devices/batch

Creates new devices in batch and provisions them in our datacenter.

Type-specific options (such as operating_system for baremetal devices) should be included in the main data structure alongside hostname and plan.

The features attribute allows you to optionally specify what features your server should have.

For example, if you require a server with a TPM chip, you may specify { "features": { "tpm": "required" } } (or { "features": ["tpm"] } in shorthand).

The request will fail if there are no available servers matching your criteria. Alternatively, if you do not require a certain feature, but would prefer to be assigned a server with that feature if there are any available, you may specify that feature with a preferred value (see the example request below).

The request will not fail if we have no servers with that feature in our inventory.

The facilities attribute specifies in what datacenter you wish to create the device.

You can either specify a single facility { "facility": "f1" } , or you can instruct to create the device in the best available datacenter { "facility": "any" }. Additionally it is possible to set a prioritized location selection.

For example { "facility": ["f3", "f2", "any"] } will try to assign to the facility f3, if there are no available f2, and so on. If "any" is not specified for "facility", the request will fail unless it can assign in the selected locations.

With { "facility": "any" } you have the option to diversify to indicate how many facilities you are willing to be spread across. For this purpose use parameter: facility_diversity_level = N.

For example:

{ "facilities": ["sjc1", "ewr1", "any"] , "facility_diversity_level" = 1, "quantity" = 10 } will assign 10 devices into the same facility, trying first in "sjc1", and if there aren’t available, it will try in "ewr1", otherwise any other.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    batch
     (required) in body

    Batches to create

    {
    	"batches": [
    		"object"
    	]
    } 
  • {
    	"batches": [
    		{
    			"id": "string",
    			"error_messages": [
    				"string"
    			],
    			"quantity": "integer",
    			"state": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"devices": [
    				{
    					"href": "string"
    				}
    			],
    			"project": {
    				"href": "string"
    			}
    		}
    	]
    } 

Delete the Batch

/batches/{id}

Deletes the Batch.

  • Parameters
  • id
    string  (required) in path

    Batch UUID

    remove_associated_instances
    boolean in path

    Remove instances associated to the batch

BGP

Manage BGP configs and sessions. See device endpoints to create and list BGP sessions for a particular device.

Requesting bgp config

/projects/{id}/bgp-configs

Requests to enable bgp configuration for a project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    bgp_config_request
     (required) in body

    BGP config Request to create

    deployment_type, asn

    {
    	"deployment_type": "string",
    	"asn": "integer",
    	"md5": "string",
    	"use_case": "string"
    } 

Retrieve a bgp config

GET
/projects/{id}/bgp-config

Returns a bgp config

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"status": "string",
    	"deployment_type": "string",
    	"asn": "integer",
    	"route_object": "string",
    	"md5": "string",
    	"max_prefix": "integer",
    	"project": {
    		"href": "string"
    	},
    	"created_at": "string",
    	"requested_at": "string",
    	"session": "object",
    	"href": "string"
    } 

Retrieve all BGP sessions

GET
/devices/{id}/bgp/sessions

Provides a listing of available BGP sessions for the device.

  • Parameters
  • id
    string  (required) in path

    Device UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"bgp_sessions": [
    		{
    			"id": "string",
    			"status": "string",
    			"learned_routes": [
    				"string"
    			],
    			"address_family": "string",
    			"device": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Create a BGP session

/devices/{id}/bgp/sessions

Creates a BGP session.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    address_family
    string  (required) in query

    address family for BGP session

  • {
    	"id": "string",
    	"status": "string",
    	"learned_routes": [
    		"string"
    	],
    	"address_family": "string",
    	"device": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Retrieve a BGP session

GET
/bgp/sessions/{id}

Returns a BGP session

  • Parameters
  • id
    string  (required) in path

    BGP session UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"status": "string",
    	"learned_routes": [
    		"string"
    	],
    	"address_family": "string",
    	"device": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Delete the BGP session

/bgp/sessions/{id}

Deletes the BGP session.

  • Parameters
  • id
    string  (required) in path

    BGP session UUID

Retrieve all BGP sessions for project

GET
/projects/{id}/bgp/sessions

Provides a listing of available BGP sessions for the project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"bgp_sessions": [
    		{
    			"id": "string",
    			"status": "string",
    			"learned_routes": [
    				"string"
    			],
    			"address_family": "string",
    			"device": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Capacity Management

View capacity

GET
/capacity

Returns a list of facilities and plans with their current capacity.

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"capacity": {
    		"ams1": {
    			"baremetal_2a": {
    				"level": "string"
    			},
    			"baremetal_2a2": {
    				"level": "string"
    			},
    			"baremetal_1": {
    				"level": "string"
    			},
    			"baremetal_3": {
    				"level": "string"
    			},
    			"c2.medium.x86": {
    				"level": "string"
    			},
    			"baremetal_2": {
    				"level": "string"
    			},
    			"m2.xlarge.x86": {
    				"level": "string"
    			},
    			"baremetal_s": {
    				"level": "string"
    			},
    			"baremetal_0": {
    				"level": "string"
    			}
    		},
    		"atl1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		},
    		"dfw1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		},
    		"ewr1": {
    			"baremetal_2a": {
    				"level": "string"
    			},
    			"baremetal_2a2": {
    				"level": "string"
    			},
    			"baremetal_1": {
    				"level": "string"
    			},
    			"baremetal_3": {
    				"level": "string"
    			},
    			"c2.medium.x86": {
    				"level": "string"
    			},
    			"baremetal_2": {
    				"level": "string"
    			},
    			"m2.xlarge.x86": {
    				"level": "string"
    			},
    			"baremetal_s": {
    				"level": "string"
    			},
    			"baremetal_0": {
    				"level": "string"
    			}
    		},
    		"fra1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		},
    		"iad1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		},
    		"lax1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		},
    		"nrt1": {
    			"baremetal_2a": {
    				"level": "string"
    			},
    			"baremetal_2a2": {
    				"level": "string"
    			},
    			"baremetal_1": {
    				"level": "string"
    			},
    			"baremetal_3": {
    				"level": "string"
    			},
    			"c2.medium.x86": {
    				"level": "string"
    			},
    			"baremetal_2": {
    				"level": "string"
    			},
    			"m2.xlarge.x86": {
    				"level": "string"
    			},
    			"baremetal_s": {
    				"level": "string"
    			},
    			"baremetal_0": {
    				"level": "string"
    			}
    		},
    		"ord1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		},
    		"sea1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		},
    		"sin1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		},
    		"sjc1": {
    			"baremetal_2a": {
    				"level": "string"
    			},
    			"baremetal_2a2": {
    				"level": "string"
    			},
    			"baremetal_1": {
    				"level": "string"
    			},
    			"baremetal_3": {
    				"level": "string"
    			},
    			"c2.medium.x86": {
    				"level": "string"
    			},
    			"baremetal_2": {
    				"level": "string"
    			},
    			"m2.xlarge.x86": {
    				"level": "string"
    			},
    			"baremetal_s": {
    				"level": "string"
    			},
    			"baremetal_0": {
    				"level": "string"
    			}
    		},
    		"syd1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		},
    		"yyz1": {
    			"baremetal_1e": {
    				"level": "string"
    			}
    		}
    	}
    } 

Check capacity

/capacity

Validates if a deploy can be fulfilled.

Response:

"servers": [
    { "available": true, ... },
    { "available": false, ... }
]
  • Parameters
  • facility
     (required) in body

    Facility to create

    {
    	"servers": [
    		{
    			"facility": "string",
    			"plan": "string",
    			"quantity": "string"
    		}
    	]
    } 

Device Management

Retrieve device's events

GET
/devices/{id}/events

Returns a list of events pertaining to a specific device

  • Parameters
  • id
    string  (required) in path

    Device UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Retrieve all devices of a project

GET
/projects/{id}/devices

Provides a collection of devices for a given project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"devices": [
    		{
    			"id": "string",
    			"short_id": "string",
    			"hostname": "string",
    			"description": "string",
    			"state": "string",
    			"tags": [
    				"string"
    			],
    			"image_url": "string",
    			"billing_cycle": "string",
    			"user": "string",
    			"iqn": "string",
    			"locked": "boolean",
    			"bonding_mode": "integer",
    			"created_at": "string",
    			"updated_at": "string",
    			"spot_instance": "boolean",
    			"spot_price_max": "number",
    			"termination_time": "string",
    			"customdata": "string",
    			"provisioning_percentage": "number",
    			"operating_system": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"distro": "string",
    				"version": "string",
    				"provisionable_on": [
    					"string"
    				]
    			},
    			"always_pxe": "boolean",
    			"ipxe_script_url": "string",
    			"location": {
    				"cage": "string",
    				"facility": "string",
    				"rack": "string",
    				"row": "string",
    				"switch": "string"
    			},
    			"facility": {
    				"id": "string",
    				"name": "string",
    				"code": "string",
    				"features": [
    					"string"
    				],
    				"address": {
    					"$ref": "#\/definitions\/Address"
    				}
    			},
    			"plan": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"description": "string",
    				"line": "string",
    				"specs": "object",
    				"pricing": "object",
    				"legacy": "boolean",
    				"class": "string",
    				"available_in": [
    					{
    						"href": "string"
    					}
    				]
    			},
    			"userdata": "string",
    			"root_password": "string",
    			"href": "string",
    			"project": {
    				"href": "string"
    			},
    			"project_lite": {
    				"href": "string"
    			},
    			"volumes": [
    				{
    					"href": "string"
    				}
    			],
    			"hardware_reservation": {
    				"href": "string"
    			},
    			"ssh_keys": [
    				{
    					"href": "string"
    				}
    			],
    			"ip_addresses": [
    				{
    					"id": "string",
    					"address_family": "integer",
    					"netmask": "string",
    					"public": "boolean",
    					"enabled": "boolean",
    					"cidr": "integer",
    					"management": "boolean",
    					"manageable": "boolean",
    					"assigned_to": {
    						"$ref": "#\/definitions\/Href"
    					},
    					"network": "string",
    					"address": "string",
    					"gateway": "string",
    					"href": "string",
    					"created_at": "string",
    					"parent_block": {
    						"$ref": "#\/definitions\/ParentBlock"
    					}
    				}
    			],
    			"provisioning_events": [
    				{
    					"id": "string",
    					"state": "string",
    					"type": "string",
    					"body": "string",
    					"relationships": "array",
    					"interpolated": "string",
    					"created_at": "string",
    					"href": "string"
    				}
    			]
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Create a device

/projects/{id}/devices

Creates a new device and provisions it in our datacenter.

Type-specific options (such as operating_system for baremetal devices) should be included in the main data structure alongside hostname and plan.

The features attribute allows you to optionally specify what features your server should have.

For example, if you require a server with a TPM chip, you may specify { "features": { "tpm": "required" } } (or { "features": ["tpm"] } in shorthand).

The request will fail if there are no available servers matching your criteria. Alternatively, if you do not require a certain feature, but would prefer to be assigned a server with that feature if there are any available, you may specify that feature with a preferred value (see the example request below).

The request will not fail if we have no servers with that feature in our inventory.

The facilities attribute specifies in what datacenter you wish to create the device.

You can either specify a single facility { "facility": "f1" } , or you can instruct to create the device in the best available datacenter { "facility": "any" }. Additionally it is possible to set a prioritized location selection.

For example { "facility": ["f3", "f2", "any"] } will try to assign to the facility f3, if there are no available f2, and so on. If "any" is not specified for "facility", the request will fail unless it can assign in the selected locations.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    device
     (required) in body

    Device to create

    facility, plan, operating_system

    {
    	"facility": "string",
    	"plan": "string",
    	"hostname": "string",
    	"description": "string",
    	"billing_cycle": "string",
    	"operating_system": "string",
    	"always_pxe": "boolean",
    	"ipxe_script_url": "string",
    	"userdata": "string",
    	"locked": "boolean",
    	"customdata": "string",
    	"hardware_reservation_id": "string",
    	"spot_instance": "boolean",
    	"spot_price_max": "number",
    	"termination_time": "string",
    	"tags": [
    		"string"
    	],
    	"project_ssh_keys": [
    		"string"
    	],
    	"user_ssh_keys": [
    		"string"
    	],
    	"features": [
    		"string"
    	],
    	"public_ipv4_subnet_size": "number"
    } 
  • {
    	"id": "string",
    	"short_id": "string",
    	"hostname": "string",
    	"description": "string",
    	"state": "string",
    	"tags": [
    		"string"
    	],
    	"image_url": "string",
    	"billing_cycle": "string",
    	"user": "string",
    	"iqn": "string",
    	"locked": "boolean",
    	"bonding_mode": "integer",
    	"created_at": "string",
    	"updated_at": "string",
    	"spot_instance": "boolean",
    	"spot_price_max": "number",
    	"termination_time": "string",
    	"customdata": "string",
    	"provisioning_percentage": "number",
    	"operating_system": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"distro": "string",
    		"version": "string",
    		"provisionable_on": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		}
    	},
    	"always_pxe": "boolean",
    	"ipxe_script_url": "string",
    	"location": {
    		"cage": "string",
    		"facility": "string",
    		"rack": "string",
    		"row": "string",
    		"switch": "string"
    	},
    	"facility": {
    		"id": "string",
    		"name": "string",
    		"code": "string",
    		"features": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		},
    		"address": {
    			"address": "string",
    			"address2": "string",
    			"city": "string",
    			"state": "string",
    			"zip_code": "string",
    			"country": "string",
    			"coordinates": {
    				"latitude": "string",
    				"longitude": "string"
    			}
    		}
    	},
    	"plan": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"description": "string",
    		"line": "string",
    		"specs": "object",
    		"pricing": "object",
    		"legacy": "boolean",
    		"class": "string",
    		"available_in": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		}
    	},
    	"userdata": "string",
    	"root_password": "string",
    	"href": "string",
    	"project": {
    		"href": "string"
    	},
    	"project_lite": {
    		"href": "string"
    	},
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"hardware_reservation": {
    		"href": "string"
    	},
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"ip_addresses": [
    		{
    			"id": "string",
    			"address_family": "integer",
    			"netmask": "string",
    			"public": "boolean",
    			"enabled": "boolean",
    			"cidr": "integer",
    			"management": "boolean",
    			"manageable": "boolean",
    			"assigned_to": {
    				"href": "string"
    			},
    			"network": "string",
    			"address": "string",
    			"gateway": "string",
    			"href": "string",
    			"created_at": "string",
    			"parent_block": {
    				"network": "string",
    				"netmask": "string",
    				"cidr": "integer",
    				"href": "string"
    			}
    		}
    	],
    	"provisioning_events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	]
    } 

Retrieve a device

GET
/devices/{id}

Type-specific options (such as facility for baremetal devices) will be included as part of the main data structure. State value can be one of: active inactive queued or provisioning

  • Parameters
  • id
    string  (required) in path

    Device UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"short_id": "string",
    	"hostname": "string",
    	"description": "string",
    	"state": "string",
    	"tags": [
    		"string"
    	],
    	"image_url": "string",
    	"billing_cycle": "string",
    	"user": "string",
    	"iqn": "string",
    	"locked": "boolean",
    	"bonding_mode": "integer",
    	"created_at": "string",
    	"updated_at": "string",
    	"spot_instance": "boolean",
    	"spot_price_max": "number",
    	"termination_time": "string",
    	"customdata": "string",
    	"provisioning_percentage": "number",
    	"operating_system": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"distro": "string",
    		"version": "string",
    		"provisionable_on": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		}
    	},
    	"always_pxe": "boolean",
    	"ipxe_script_url": "string",
    	"location": {
    		"cage": "string",
    		"facility": "string",
    		"rack": "string",
    		"row": "string",
    		"switch": "string"
    	},
    	"facility": {
    		"id": "string",
    		"name": "string",
    		"code": "string",
    		"features": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		},
    		"address": {
    			"address": "string",
    			"address2": "string",
    			"city": "string",
    			"state": "string",
    			"zip_code": "string",
    			"country": "string",
    			"coordinates": {
    				"latitude": "string",
    				"longitude": "string"
    			}
    		}
    	},
    	"plan": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"description": "string",
    		"line": "string",
    		"specs": "object",
    		"pricing": "object",
    		"legacy": "boolean",
    		"class": "string",
    		"available_in": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		}
    	},
    	"userdata": "string",
    	"root_password": "string",
    	"href": "string",
    	"project": {
    		"href": "string"
    	},
    	"project_lite": {
    		"href": "string"
    	},
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"hardware_reservation": {
    		"href": "string"
    	},
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"ip_addresses": [
    		{
    			"id": "string",
    			"address_family": "integer",
    			"netmask": "string",
    			"public": "boolean",
    			"enabled": "boolean",
    			"cidr": "integer",
    			"management": "boolean",
    			"manageable": "boolean",
    			"assigned_to": {
    				"href": "string"
    			},
    			"network": "string",
    			"address": "string",
    			"gateway": "string",
    			"href": "string",
    			"created_at": "string",
    			"parent_block": {
    				"network": "string",
    				"netmask": "string",
    				"cidr": "integer",
    				"href": "string"
    			}
    		}
    	],
    	"provisioning_events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	]
    } 

Update the device

PUT
/devices/{id}

Updates the device.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    device
     (required) in body

    Facility to update

    {
    	"hostname": "string",
    	"description": "string",
    	"billing_cycle": "string",
    	"userdata": "string",
    	"locked": "boolean",
    	"tags": [
    		"string"
    	],
    	"always_pxe": "boolean",
    	"ipxe_script_url": "string",
    	"spot_instance": "boolean",
    	"customdata": "string"
    } 
  • {
    	"id": "string",
    	"short_id": "string",
    	"hostname": "string",
    	"description": "string",
    	"state": "string",
    	"tags": [
    		"string"
    	],
    	"image_url": "string",
    	"billing_cycle": "string",
    	"user": "string",
    	"iqn": "string",
    	"locked": "boolean",
    	"bonding_mode": "integer",
    	"created_at": "string",
    	"updated_at": "string",
    	"spot_instance": "boolean",
    	"spot_price_max": "number",
    	"termination_time": "string",
    	"customdata": "string",
    	"provisioning_percentage": "number",
    	"operating_system": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"distro": "string",
    		"version": "string",
    		"provisionable_on": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		}
    	},
    	"always_pxe": "boolean",
    	"ipxe_script_url": "string",
    	"location": {
    		"cage": "string",
    		"facility": "string",
    		"rack": "string",
    		"row": "string",
    		"switch": "string"
    	},
    	"facility": {
    		"id": "string",
    		"name": "string",
    		"code": "string",
    		"features": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		},
    		"address": {
    			"address": "string",
    			"address2": "string",
    			"city": "string",
    			"state": "string",
    			"zip_code": "string",
    			"country": "string",
    			"coordinates": {
    				"latitude": "string",
    				"longitude": "string"
    			}
    		}
    	},
    	"plan": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"description": "string",
    		"line": "string",
    		"specs": "object",
    		"pricing": "object",
    		"legacy": "boolean",
    		"class": "string",
    		"available_in": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		}
    	},
    	"userdata": "string",
    	"root_password": "string",
    	"href": "string",
    	"project": {
    		"href": "string"
    	},
    	"project_lite": {
    		"href": "string"
    	},
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"hardware_reservation": {
    		"href": "string"
    	},
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"ip_addresses": [
    		{
    			"id": "string",
    			"address_family": "integer",
    			"netmask": "string",
    			"public": "boolean",
    			"enabled": "boolean",
    			"cidr": "integer",
    			"management": "boolean",
    			"manageable": "boolean",
    			"assigned_to": {
    				"href": "string"
    			},
    			"network": "string",
    			"address": "string",
    			"gateway": "string",
    			"href": "string",
    			"created_at": "string",
    			"parent_block": {
    				"network": "string",
    				"netmask": "string",
    				"cidr": "integer",
    				"href": "string"
    			}
    		}
    	],
    	"provisioning_events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	]
    } 

Delete the device

/devices/{id}

Deletes a device and deprovisions it in our datacenter.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    force_delete
    boolean in query

    Force the deletion of the device, by detaching any storage volume still active.

Retrieve all ip assignments

GET
/devices/{id}/ips

Returns all ip assignments for a device.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"ip_addresses": [
    		{
    			"id": "string",
    			"address_family": "integer",
    			"netmask": "string",
    			"public": "boolean",
    			"enabled": "boolean",
    			"cidr": "integer",
    			"management": "boolean",
    			"manageable": "boolean",
    			"assigned_to": {
    				"href": "string"
    			},
    			"network": "string",
    			"address": "string",
    			"gateway": "string",
    			"href": "string",
    			"created_at": "string",
    			"parent_block": {
    				"network": "string",
    				"netmask": "string",
    				"cidr": "integer",
    				"href": "string"
    			}
    		}
    	]
    } 

Create a ip assignment

/devices/{id}/ips

Creates an ip assignment for a device.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    ip_assignment
     (required) in body

    IPAssignment to create

    address

    {
    	"address": "string",
    	"manageable": "boolean",
    	"customdata": "string"
    } 
  • {
    	"id": "string",
    	"address_family": "integer",
    	"netmask": "string",
    	"public": "boolean",
    	"enabled": "boolean",
    	"cidr": "integer",
    	"management": "boolean",
    	"manageable": "boolean",
    	"assigned_to": {
    		"href": "string"
    	},
    	"network": "string",
    	"address": "string",
    	"gateway": "string",
    	"href": "string",
    	"created_at": "string",
    	"parent_block": {
    		"network": "string",
    		"netmask": "string",
    		"cidr": "integer",
    		"href": "string"
    	}
    } 

Retrieve all devices of an organization

GET
/organizations/{id}/devices

Provides a collection of devices for a given organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"devices": [
    		{
    			"id": "string",
    			"short_id": "string",
    			"hostname": "string",
    			"description": "string",
    			"state": "string",
    			"tags": [
    				"string"
    			],
    			"image_url": "string",
    			"billing_cycle": "string",
    			"user": "string",
    			"iqn": "string",
    			"locked": "boolean",
    			"bonding_mode": "integer",
    			"created_at": "string",
    			"updated_at": "string",
    			"spot_instance": "boolean",
    			"spot_price_max": "number",
    			"termination_time": "string",
    			"customdata": "string",
    			"provisioning_percentage": "number",
    			"operating_system": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"distro": "string",
    				"version": "string",
    				"provisionable_on": [
    					"string"
    				]
    			},
    			"always_pxe": "boolean",
    			"ipxe_script_url": "string",
    			"location": {
    				"cage": "string",
    				"facility": "string",
    				"rack": "string",
    				"row": "string",
    				"switch": "string"
    			},
    			"facility": {
    				"id": "string",
    				"name": "string",
    				"code": "string",
    				"features": [
    					"string"
    				],
    				"address": {
    					"$ref": "#\/definitions\/Address"
    				}
    			},
    			"plan": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"description": "string",
    				"line": "string",
    				"specs": "object",
    				"pricing": "object",
    				"legacy": "boolean",
    				"class": "string",
    				"available_in": [
    					{
    						"href": "string"
    					}
    				]
    			},
    			"userdata": "string",
    			"root_password": "string",
    			"href": "string",
    			"project": {
    				"href": "string"
    			},
    			"project_lite": {
    				"href": "string"
    			},
    			"volumes": [
    				{
    					"href": "string"
    				}
    			],
    			"hardware_reservation": {
    				"href": "string"
    			},
    			"ssh_keys": [
    				{
    					"href": "string"
    				}
    			],
    			"ip_addresses": [
    				{
    					"id": "string",
    					"address_family": "integer",
    					"netmask": "string",
    					"public": "boolean",
    					"enabled": "boolean",
    					"cidr": "integer",
    					"management": "boolean",
    					"manageable": "boolean",
    					"assigned_to": {
    						"$ref": "#\/definitions\/Href"
    					},
    					"network": "string",
    					"address": "string",
    					"gateway": "string",
    					"href": "string",
    					"created_at": "string",
    					"parent_block": {
    						"$ref": "#\/definitions\/ParentBlock"
    					}
    				}
    			],
    			"provisioning_events": [
    				{
    					"id": "string",
    					"state": "string",
    					"type": "string",
    					"body": "string",
    					"relationships": "array",
    					"interpolated": "string",
    					"created_at": "string",
    					"href": "string"
    				}
    			]
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Retrieve all BGP sessions

GET
/devices/{id}/bgp/sessions

Provides a listing of available BGP sessions for the device.

  • Parameters
  • id
    string  (required) in path

    Device UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"bgp_sessions": [
    		{
    			"id": "string",
    			"status": "string",
    			"learned_routes": [
    				"string"
    			],
    			"address_family": "string",
    			"device": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Create a BGP session

/devices/{id}/bgp/sessions

Creates a BGP session.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    address_family
    string  (required) in query

    address family for BGP session

  • {
    	"id": "string",
    	"status": "string",
    	"learned_routes": [
    		"string"
    	],
    	"address_family": "string",
    	"device": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Perform an action

/devices/{id}/actions

Performs an action for the given device. Possible actions include: power_on, power_off, reboot, reinstall, and rescue (reboot the device into rescue OS.)

  • Parameters
  • id
    string  (required) in path

    Device UUID

    type
    string  (required) in query

    Action to perform

Create a devices batch

/projects/{id}/devices/batch

Creates new devices in batch and provisions them in our datacenter.

Type-specific options (such as operating_system for baremetal devices) should be included in the main data structure alongside hostname and plan.

The features attribute allows you to optionally specify what features your server should have.

For example, if you require a server with a TPM chip, you may specify { "features": { "tpm": "required" } } (or { "features": ["tpm"] } in shorthand).

The request will fail if there are no available servers matching your criteria. Alternatively, if you do not require a certain feature, but would prefer to be assigned a server with that feature if there are any available, you may specify that feature with a preferred value (see the example request below).

The request will not fail if we have no servers with that feature in our inventory.

The facilities attribute specifies in what datacenter you wish to create the device.

You can either specify a single facility { "facility": "f1" } , or you can instruct to create the device in the best available datacenter { "facility": "any" }. Additionally it is possible to set a prioritized location selection.

For example { "facility": ["f3", "f2", "any"] } will try to assign to the facility f3, if there are no available f2, and so on. If "any" is not specified for "facility", the request will fail unless it can assign in the selected locations.

With { "facility": "any" } you have the option to diversify to indicate how many facilities you are willing to be spread across. For this purpose use parameter: facility_diversity_level = N.

For example:

{ "facilities": ["sjc1", "ewr1", "any"] , "facility_diversity_level" = 1, "quantity" = 10 } will assign 10 devices into the same facility, trying first in "sjc1", and if there aren’t available, it will try in "ewr1", otherwise any other.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    batch
     (required) in body

    Batches to create

    {
    	"batches": [
    		"object"
    	]
    } 
  • {
    	"batches": [
    		{
    			"id": "string",
    			"error_messages": [
    				"string"
    			],
    			"quantity": "integer",
    			"state": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"devices": [
    				{
    					"href": "string"
    				}
    			],
    			"project": {
    				"href": "string"
    			}
    		}
    	]
    } 

Retrieve an instance bandwidth

GET
/devices/{id}/bandwidth

Retrieve an instance bandwidth for a given period of time.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    from
    string  (required) in query

    Timestamp from range

    until
    string  (required) in query

    Timestamp to range

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide

Retrieve device traffic

GET
/devices/{id}/traffic

Returns traffic for a specific device.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    direction
    string  (required) in query

    Traffic direction

    timeframe
     (required) in body

    Traffic timeframe

    started_at, ended_at

    {
    	"started_at": "string",
    	"ended_at": "string"
    } 
    interval
    string in query

    Traffic interval

    bucket
    string in query

    Traffic bucket

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide

Provides the custom metadata stored for this instance in json format

Retrieve the custom metadata of an IP Assignment

GET
/devices/:instance_id/ips/:id/customdata

Provides the custom metadata stored for this IP Assignment in json format

  • Parameters
  • project_id
    string  (required) in path

    Project UUID

    id
    string  (required) in path

    Ip Assignment UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide

Email Management

Add a new email address to the current user.

  • Parameters
  • email
     (required) in body

    Email to create

    address

    {
    	"address": "string",
    	"default": "boolean"
    } 
  • {
    	"id": "string",
    	"address": "string",
    	"default": "boolean",
    	"verified": "boolean",
    	"href": "string"
    } 

Retrieve an email

GET
/emails/{id}

Provides one of the user’s emails.

  • Parameters
  • id
    string  (required) in path

    Email UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"address": "string",
    	"default": "boolean",
    	"verified": "boolean",
    	"href": "string"
    } 

Update the email

PUT
/emails/{id}

Updates the email.

  • Parameters
  • id
    string  (required) in path

    Email UUID

    email
     (required) in body

    email to update

    address

    {
    	"address": "string",
    	"default": "boolean"
    } 
  • {
    	"id": "string",
    	"address": "string",
    	"default": "boolean",
    	"verified": "boolean",
    	"href": "string"
    } 

Delete the email

/emails/{id}

Deletes the email.

  • Parameters
  • id
    string  (required) in path

    Email UUID

Event Management

Retrieve device's events

GET
/devices/{id}/events

Returns a list of events pertaining to a specific device

  • Parameters
  • id
    string  (required) in path

    Device UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Retrieve project's events

GET
/projects/{id}/events

Returns a list of events for a single project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Retrieve volume's events

GET
/volumes/{id}/events

Returns a list of the current volume’s events

  • Parameters
  • id
    string  (required) in path

    Volume UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Returns a list of the current user’s events

  • Parameters
  • include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Retrieve an event

GET
/events/{id}

Returns a single event if the user has access

  • Parameters
  • id
    string  (required) in path

    Event UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"state": "string",
    	"type": "string",
    	"body": "string",
    	"relationships": [
    		{
    			"href": "string"
    		}
    	],
    	"interpolated": "string",
    	"created_at": "string",
    	"href": "string"
    } 

Facility Management

Provides a listing of available datacenters where you can provision Packet devices.

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"facilities": [
    		{
    			"id": "string",
    			"name": "string",
    			"code": "string",
    			"features": [
    				"string"
    			],
    			"address": {
    				"address": "string",
    				"address2": "string",
    				"city": "string",
    				"state": "string",
    				"zip_code": "string",
    				"country": "string",
    				"coordinates": {
    					"$ref": "#\/definitions\/Coordinates"
    				}
    			}
    		}
    	]
    } 

Returns a listing of available datacenters for the given project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"facilities": [
    		{
    			"id": "string",
    			"name": "string",
    			"code": "string",
    			"features": [
    				"string"
    			],
    			"address": {
    				"address": "string",
    				"address2": "string",
    				"city": "string",
    				"state": "string",
    				"zip_code": "string",
    				"country": "string",
    				"coordinates": {
    					"$ref": "#\/definitions\/Coordinates"
    				}
    			}
    		}
    	]
    } 

Hardware Reservation Management

Retrieve all hardware reservations for a given project

GET
/projects/{id}/hardware-reservations

Provides a collection of hardware reservations for a given project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"hardware_reservations": [
    		{
    			"id": "string",
    			"short_id": "string",
    			"facility": {
    				"id": "string",
    				"name": "string",
    				"code": "string",
    				"features": [
    					"string"
    				],
    				"address": {
    					"$ref": "#\/definitions\/Address"
    				}
    			},
    			"plan": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"description": "string",
    				"line": "string",
    				"specs": "object",
    				"pricing": "object",
    				"legacy": "boolean",
    				"class": "string",
    				"available_in": [
    					{
    						"href": "string"
    					}
    				]
    			},
    			"href": "string",
    			"project": {
    				"id": "string",
    				"name": "string",
    				"created_at": "string",
    				"updated_at": "string",
    				"max_devices": "object",
    				"members": [
    					{
    						"href": "string"
    					}
    				],
    				"memberships": [
    					{
    						"href": "string"
    					}
    				],
    				"network_status": "object",
    				"invitations": [
    					{
    						"href": "string"
    					}
    				],
    				"payment_method": {
    					"$ref": "#\/definitions\/Href"
    				},
    				"devices": [
    					{
    						"href": "string"
    					}
    				],
    				"ssh_keys": [
    					{
    						"href": "string"
    					}
    				],
    				"volumes": [
    					{
    						"href": "string"
    					}
    				],
    				"bgp_config": {
    					"$ref": "#\/definitions\/Href"
    				},
    				"customdata": "string"
    			},
    			"device": {
    				"id": "string",
    				"short_id": "string",
    				"hostname": "string",
    				"description": "string",
    				"state": "string",
    				"tags": [
    					"string"
    				],
    				"image_url": "string",
    				"billing_cycle": "string",
    				"user": "string",
    				"iqn": "string",
    				"locked": "boolean",
    				"bonding_mode": "integer",
    				"created_at": "string",
    				"updated_at": "string",
    				"spot_instance": "boolean",
    				"spot_price_max": "number",
    				"termination_time": "string",
    				"customdata": "string",
    				"provisioning_percentage": "number",
    				"operating_system": {
    					"$ref": "#\/definitions\/OperatingSystem"
    				},
    				"always_pxe": "boolean",
    				"ipxe_script_url": "string",
    				"location": {
    					"$ref": "#\/definitions\/HardwareLocation"
    				},
    				"facility": {
    					"$ref": "#\/definitions\/Facility"
    				},
    				"plan": {
    					"$ref": "#\/definitions\/Plan"
    				},
    				"userdata": "string",
    				"root_password": "string",
    				"href": "string",
    				"project": {
    					"$ref": "#\/definitions\/Href",
    					"description": "Full version of project object when included"
    				},
    				"project_lite": {
    					"$ref": "#\/definitions\/Href",
    					"description": "Lite version of project object when included"
    				},
    				"volumes": [
    					{
    						"href": "string"
    					}
    				],
    				"hardware_reservation": {
    					"$ref": "#\/definitions\/Href"
    				},
    				"ssh_keys": [
    					{
    						"href": "string"
    					}
    				],
    				"ip_addresses": [
    					{
    						"id": "string",
    						"address_family": "integer",
    						"netmask": "string",
    						"public": "boolean",
    						"enabled": "boolean",
    						"cidr": "integer",
    						"management": "boolean",
    						"manageable": "boolean",
    						"network": "string",
    						"address": "string",
    						"gateway": "string",
    						"href": "string",
    						"created_at": "string"
    					}
    				],
    				"provisioning_events": [
    					{
    						"id": "string",
    						"state": "string",
    						"type": "string",
    						"body": "string",
    						"relationships": "array",
    						"interpolated": "string",
    						"created_at": "string",
    						"href": "string"
    					}
    				]
    			},
    			"created_at": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Retrieve a hardware reservation

GET
/hardware-reservations/{id}

Returns a single hardware reservation

  • Parameters
  • id
    string  (required) in path

    HardwareReservation UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"short_id": "string",
    	"hostname": "string",
    	"description": "string",
    	"state": "string",
    	"tags": [
    		"string"
    	],
    	"image_url": "string",
    	"billing_cycle": "string",
    	"user": "string",
    	"iqn": "string",
    	"locked": "boolean",
    	"bonding_mode": "integer",
    	"created_at": "string",
    	"updated_at": "string",
    	"spot_instance": "boolean",
    	"spot_price_max": "number",
    	"termination_time": "string",
    	"customdata": "string",
    	"provisioning_percentage": "number",
    	"operating_system": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"distro": "string",
    		"version": "string",
    		"provisionable_on": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		}
    	},
    	"always_pxe": "boolean",
    	"ipxe_script_url": "string",
    	"location": {
    		"cage": "string",
    		"facility": "string",
    		"rack": "string",
    		"row": "string",
    		"switch": "string"
    	},
    	"facility": {
    		"id": "string",
    		"name": "string",
    		"code": "string",
    		"features": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		},
    		"address": {
    			"address": "string",
    			"address2": "string",
    			"city": "string",
    			"state": "string",
    			"zip_code": "string",
    			"country": "string",
    			"coordinates": {
    				"latitude": "string",
    				"longitude": "string"
    			}
    		}
    	},
    	"plan": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"description": "string",
    		"line": "string",
    		"specs": "object",
    		"pricing": "object",
    		"legacy": "boolean",
    		"class": "string",
    		"available_in": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		}
    	},
    	"userdata": "string",
    	"root_password": "string",
    	"href": "string",
    	"project": {
    		"href": "string"
    	},
    	"project_lite": {
    		"href": "string"
    	},
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"hardware_reservation": {
    		"href": "string"
    	},
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"ip_addresses": [
    		{
    			"id": "string",
    			"address_family": "integer",
    			"netmask": "string",
    			"public": "boolean",
    			"enabled": "boolean",
    			"cidr": "integer",
    			"management": "boolean",
    			"manageable": "boolean",
    			"assigned_to": {
    				"href": "string"
    			},
    			"network": "string",
    			"address": "string",
    			"gateway": "string",
    			"href": "string",
    			"created_at": "string",
    			"parent_block": {
    				"network": "string",
    				"netmask": "string",
    				"cidr": "integer",
    				"href": "string"
    			}
    		}
    	],
    	"provisioning_events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	]
    } 

Move a hardware reservation

/hardware-reservations/{id}/move

Move a hardware reservation to another project

  • Parameters
  • project_id
    string  (required) in path

    Project UUID

  • {
    	"id": "string",
    	"short_id": "string",
    	"facility": {
    		"id": "string",
    		"name": "string",
    		"code": "string",
    		"features": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		},
    		"address": {
    			"address": "string",
    			"address2": "string",
    			"city": "string",
    			"state": "string",
    			"zip_code": "string",
    			"country": "string",
    			"coordinates": {
    				"latitude": "string",
    				"longitude": "string"
    			}
    		}
    	},
    	"plan": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"description": "string",
    		"line": "string",
    		"specs": "object",
    		"pricing": "object",
    		"legacy": "boolean",
    		"class": "string",
    		"available_in": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		}
    	},
    	"href": "string",
    	"project": {
    		"id": "string",
    		"name": "string",
    		"created_at": "string",
    		"updated_at": "string",
    		"max_devices": "object",
    		"members": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		},
    		"memberships": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		},
    		"network_status": "object",
    		"invitations": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		},
    		"payment_method": {
    			"href": "string"
    		},
    		"devices": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		},
    		"ssh_keys": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		},
    		"volumes": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		},
    		"bgp_config": {
    			"href": "string"
    		},
    		"customdata": "string"
    	},
    	"device": {
    		"id": "string",
    		"short_id": "string",
    		"hostname": "string",
    		"description": "string",
    		"state": "string",
    		"tags": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		},
    		"image_url": "string",
    		"billing_cycle": "string",
    		"user": "string",
    		"iqn": "string",
    		"locked": "boolean",
    		"bonding_mode": "integer",
    		"created_at": "string",
    		"updated_at": "string",
    		"spot_instance": "boolean",
    		"spot_price_max": "number",
    		"termination_time": "string",
    		"customdata": "string",
    		"provisioning_percentage": "number",
    		"operating_system": {
    			"id": "string",
    			"slug": "string",
    			"name": "string",
    			"distro": "string",
    			"version": "string",
    			"provisionable_on": {
    				"type": "array",
    				"items": {
    					"type": "string"
    				}
    			}
    		},
    		"always_pxe": "boolean",
    		"ipxe_script_url": "string",
    		"location": {
    			"cage": "string",
    			"facility": "string",
    			"rack": "string",
    			"row": "string",
    			"switch": "string"
    		},
    		"facility": {
    			"id": "string",
    			"name": "string",
    			"code": "string",
    			"features": {
    				"type": "array",
    				"items": {
    					"type": "string"
    				}
    			},
    			"address": {
    				"address": "string",
    				"address2": "string",
    				"city": "string",
    				"state": "string",
    				"zip_code": "string",
    				"country": "string",
    				"coordinates": {
    					"$ref": "#\/definitions\/Coordinates"
    				}
    			}
    		},
    		"plan": {
    			"id": "string",
    			"slug": "string",
    			"name": "string",
    			"description": "string",
    			"line": "string",
    			"specs": "object",
    			"pricing": "object",
    			"legacy": "boolean",
    			"class": "string",
    			"available_in": {
    				"type": "array",
    				"items": {
    					"$ref": "#\/definitions\/Href"
    				}
    			}
    		},
    		"userdata": "string",
    		"root_password": "string",
    		"href": "string",
    		"project": {
    			"href": "string"
    		},
    		"project_lite": {
    			"href": "string"
    		},
    		"volumes": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		},
    		"hardware_reservation": {
    			"href": "string"
    		},
    		"ssh_keys": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		},
    		"ip_addresses": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/IPAssignment"
    			}
    		},
    		"provisioning_events": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Event"
    			}
    		}
    	},
    	"created_at": "string"
    } 

Manage invitations. See project endpoints to create a new invitation.

View an invitation

GET
/invitations/{id}

Returns a single invitation. (It include the invitable to maintain backward compatibility but will be removed soon)

  • Parameters
  • id
    string  (required) in path

    Invitation UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"roles": [
    		"string"
    	],
    	"invitee": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"invited_by": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects_ids": [
    		"string"
    	],
    	"invitation": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Accept an invitation

PUT
/invitations/{id}

Accept an invitation.

  • Parameters
  • id
    string  (required) in path

    Invitation UUID

  • {
    	"id": "string",
    	"roles": [
    		"string"
    	],
    	"created_at": "string",
    	"updated_at": "string",
    	"project": {
    		"href": "string"
    	},
    	"user": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Decline an invitation

/invitations/{id}

Decline an invitation.

  • Parameters
  • id
    string  (required) in path

    Invitation UUID

Create an invitation for a project

/projects/{id}/invitations

In order to add a user to a project, they must first be invited.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    invitation
     (required) in body

    Invitation to create

    invitee

    {
    	"invitee": "string",
    	"message": "string",
    	"roles": [
    		"string"
    	],
    	"projects_ids": [
    		"string"
    	]
    } 
  • {
    	"id": "string",
    	"roles": [
    		"string"
    	],
    	"invitee": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"invited_by": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects_ids": [
    		"string"
    	],
    	"invitation": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Retrieve project invitations

GET
/projects/{id}/invitations

Returns all invitations in a project.

  • Parameters
  • include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

    project_id
    string  (required) in path

    Project UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"invitations": [
    		{
    			"id": "string",
    			"roles": [
    				"string"
    			],
    			"created_at": "string",
    			"updated_at": "string",
    			"project": {
    				"href": "string"
    			},
    			"user": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Create an invitation for an organization

/organizations/{id}/invitations

In order to add a user to an organization, they must first be invited. To invite to several projects the parameter projects_ids:[a,b,c] can be used

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    invitation
     (required) in body

    Invitation to create

    invitee

    {
    	"invitee": "string",
    	"message": "string",
    	"roles": [
    		"string"
    	],
    	"projects_ids": [
    		"string"
    	]
    } 
  • {
    	"id": "string",
    	"roles": [
    		"string"
    	],
    	"invitee": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"invited_by": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects_ids": [
    		"string"
    	],
    	"invitation": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Retrieve organization invitations

GET
/organizations/{id}/invitations

Returns all invitations in an organization.

  • Parameters
  • include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

    id
    string  (required) in path

    Organization UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"invitations": [
    		{
    			"id": "string",
    			"roles": [
    				"string"
    			],
    			"created_at": "string",
    			"updated_at": "string",
    			"project": {
    				"href": "string"
    			},
    			"user": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Returns all invitations in current user.

  • Parameters
  • include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

    id
    string  (required) in path

    User UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"invitations": [
    		{
    			"id": "string",
    			"roles": [
    				"string"
    			],
    			"created_at": "string",
    			"updated_at": "string",
    			"project": {
    				"href": "string"
    			},
    			"user": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Manage IP addresses. See device and project endpoints to list and create IP assignments for a particular project or device.

Returns a single ip address if the user has access.

  • Parameters
  • id
    string  (required) in path

    IP Address UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"address_family": "integer",
    	"netmask": "string",
    	"public": "boolean",
    	"enabled": "boolean",
    	"cidr": "integer",
    	"management": "boolean",
    	"manageable": "boolean",
    	"assigned_to": {
    		"href": "string"
    	},
    	"network": "string",
    	"address": "string",
    	"gateway": "string",
    	"href": "string",
    	"created_at": "string",
    	"parent_block": {
    		"network": "string",
    		"netmask": "string",
    		"cidr": "integer",
    		"href": "string"
    	}
    } 

Note! This call can be used to un-assign an IP assignment or delete an IP reservation. Un-assign an IP address record. Use the assignment UUID you get after attaching the IP. This will remove the relationship between an IP and the device and will make the IP address available to be assigned to another device. Delete and IP reservation. Use the reservation UUID you get after adding the IP to the project. This will permanently delete the IP block reservation from the project.

  • Parameters
  • id
    string  (required) in path

    IP Address UUID

Requesting ip reservations

/projects/{id}/ips

Request more IP space for a project in order to have additional IP addresses to assign to devices. If the request is within the max quota, ip reservation will be created, else, the request will be submitted.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    ip_reservation_request
     (required) in body

    IP Reservation Request to create

    type, quantity

    {
    	"type": "string",
    	"quantity": "integer",
    	"comments": "string",
    	"facility": "string",
    	"customdata": "string"
    } 
  • {
    	"message": {
    		"reasons": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		},
    		"address": "string"
    	}
    } 

Retrieve all ip assignments

GET
/devices/{id}/ips

Returns all ip assignments for a device.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"ip_addresses": [
    		{
    			"id": "string",
    			"address_family": "integer",
    			"netmask": "string",
    			"public": "boolean",
    			"enabled": "boolean",
    			"cidr": "integer",
    			"management": "boolean",
    			"manageable": "boolean",
    			"assigned_to": {
    				"href": "string"
    			},
    			"network": "string",
    			"address": "string",
    			"gateway": "string",
    			"href": "string",
    			"created_at": "string",
    			"parent_block": {
    				"network": "string",
    				"netmask": "string",
    				"cidr": "integer",
    				"href": "string"
    			}
    		}
    	]
    } 

Create a ip assignment

/devices/{id}/ips

Creates an ip assignment for a device.

  • Parameters
  • id
    string  (required) in path

    Device UUID

    ip_assignment
     (required) in body

    IPAssignment to create

    address

    {
    	"address": "string",
    	"manageable": "boolean",
    	"customdata": "string"
    } 
  • {
    	"id": "string",
    	"address_family": "integer",
    	"netmask": "string",
    	"public": "boolean",
    	"enabled": "boolean",
    	"cidr": "integer",
    	"management": "boolean",
    	"manageable": "boolean",
    	"assigned_to": {
    		"href": "string"
    	},
    	"network": "string",
    	"address": "string",
    	"gateway": "string",
    	"href": "string",
    	"created_at": "string",
    	"parent_block": {
    		"network": "string",
    		"netmask": "string",
    		"cidr": "integer",
    		"href": "string"
    	}
    } 

Retrieve all ip reservations

GET
/projects/{id}/ips

Provides a list of IP resevations for a single project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"ip_addresses": [
    		{
    			"id": "string",
    			"address_family": "integer",
    			"netmask": "string",
    			"public": "boolean",
    			"enabled": "boolean",
    			"cidr": "integer",
    			"management": "boolean",
    			"manageable": "boolean",
    			"addon": "boolean",
    			"bill": "boolean",
    			"assignments": [
    				{
    					"id": "string",
    					"address_family": "integer",
    					"netmask": "string",
    					"public": "boolean",
    					"enabled": "boolean",
    					"cidr": "integer",
    					"management": "boolean",
    					"manageable": "boolean",
    					"assigned_to": {
    						"$ref": "#\/definitions\/Href"
    					},
    					"network": "string",
    					"address": "string",
    					"gateway": "string",
    					"href": "string",
    					"created_at": "string",
    					"parent_block": {
    						"$ref": "#\/definitions\/ParentBlock"
    					}
    				}
    			],
    			"network": "string",
    			"created_at": "string",
    			"facility": {
    				"id": "string",
    				"name": "string",
    				"code": "string",
    				"features": [
    					"string"
    				],
    				"address": {
    					"$ref": "#\/definitions\/Address"
    				}
    			},
    			"href": "string"
    		}
    	]
    } 

Provides a list of IP resevations for a single project.

  • Parameters
  • id
    string  (required) in path

    IP Reservation UUID

    cidr
    string  (required) in query

    Size of subnets in bits

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"available": [
    		"string"
    	]
    } 

Provides the custom metadata stored for this IP Reservation or IP Assignment in json format

  • Parameters
  • project_id
    string  (required) in path

    Project UUID

    id
    string  (required) in path

    Ip Reservation UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide

Manage licenses. See project endpoints to list and create licenses for a particular project.

Retrieve all licenses

GET
/projects/{id}/licenses

Provides a collection of licenses for a given project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"licenses": [
    		{
    			"id": "string",
    			"description": "string",
    			"license_key": "string",
    			"licensee_product": {
    				"href": "string"
    			},
    			"size": "number",
    			"project": {
    				"href": "string"
    			}
    		}
    	]
    } 

Create a License

/projects/{id}/licenses

Creates a new license for the given project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    license
     (required) in body

    License to create

    {
    	"description": "string",
    	"size": "number",
    	"licensee_product_id": "string"
    } 
  • {
    	"id": "string",
    	"description": "string",
    	"license_key": "string",
    	"licensee_product": {
    		"href": "string"
    	},
    	"size": "number",
    	"project": {
    		"href": "string"
    	}
    } 

Retrieve a license

GET
/licenses/{id}

Returns a license

  • Parameters
  • id
    string  (required) in path

    License UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"description": "string",
    	"license_key": "string",
    	"licensee_product": {
    		"href": "string"
    	},
    	"size": "number",
    	"project": {
    		"href": "string"
    	}
    } 

Update the license

PUT
/licenses/{id}

Updates the license.

  • Parameters
  • id
    string  (required) in path

    License UUID

    license
     (required) in body

    License to update

    {
    	"description": "string",
    	"size": "number"
    } 
  • {
    	"id": "string",
    	"description": "string",
    	"license_key": "string",
    	"licensee_product": {
    		"href": "string"
    	},
    	"size": "number",
    	"project": {
    		"href": "string"
    	}
    } 

Delete the license

/licenses/{id}

Deletes a license.

  • Parameters
  • id
    string  (required) in path

    License UUID

Spot Market Prices Management

Get current spot market prices

GET
/market/spot/prices

Get Packet current spot market prices.

  • Parameters
  • facility
    string in query

    Facility to check spot market prices

    plan
    string in query

    Plan to check spot market prices

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"spot_market_prices": {
    		"ams1": {
    			"baremetal_2a": {
    				"price": "number"
    			},
    			"baremetal_2a2": {
    				"price": "number"
    			},
    			"baremetal_1": {
    				"price": "number"
    			},
    			"baremetal_3": {
    				"price": "number"
    			},
    			"c2.medium.x86": {
    				"price": "number"
    			},
    			"baremetal_2": {
    				"price": "number"
    			},
    			"m2.xlarge.x86": {
    				"price": "number"
    			},
    			"baremetal_s": {
    				"price": "number"
    			},
    			"baremetal_0": {
    				"price": "number"
    			}
    		},
    		"atl1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		},
    		"dfw1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		},
    		"ewr1": {
    			"baremetal_2a": {
    				"price": "number"
    			},
    			"baremetal_2a2": {
    				"price": "number"
    			},
    			"baremetal_1": {
    				"price": "number"
    			},
    			"baremetal_3": {
    				"price": "number"
    			},
    			"c2.medium.x86": {
    				"price": "number"
    			},
    			"baremetal_2": {
    				"price": "number"
    			},
    			"m2.xlarge.x86": {
    				"price": "number"
    			},
    			"baremetal_s": {
    				"price": "number"
    			},
    			"baremetal_0": {
    				"price": "number"
    			}
    		},
    		"fra1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		},
    		"iad1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		},
    		"lax1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		},
    		"nrt1": {
    			"baremetal_2a": {
    				"price": "number"
    			},
    			"baremetal_2a2": {
    				"price": "number"
    			},
    			"baremetal_1": {
    				"price": "number"
    			},
    			"baremetal_3": {
    				"price": "number"
    			},
    			"c2.medium.x86": {
    				"price": "number"
    			},
    			"baremetal_2": {
    				"price": "number"
    			},
    			"m2.xlarge.x86": {
    				"price": "number"
    			},
    			"baremetal_s": {
    				"price": "number"
    			},
    			"baremetal_0": {
    				"price": "number"
    			}
    		},
    		"ord1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		},
    		"sea1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		},
    		"sin1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		},
    		"sjc1": {
    			"baremetal_2a": {
    				"price": "number"
    			},
    			"baremetal_2a2": {
    				"price": "number"
    			},
    			"baremetal_1": {
    				"price": "number"
    			},
    			"baremetal_3": {
    				"price": "number"
    			},
    			"c2.medium.x86": {
    				"price": "number"
    			},
    			"baremetal_2": {
    				"price": "number"
    			},
    			"m2.xlarge.x86": {
    				"price": "number"
    			},
    			"baremetal_s": {
    				"price": "number"
    			},
    			"baremetal_0": {
    				"price": "number"
    			}
    		},
    		"syd1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		},
    		"yyz1": {
    			"baremetal_1e": {
    				"price": "number"
    			}
    		}
    	}
    } 

Get spot market prices for a given plan and facility in a fixed period of time

Note: In the 200 response, the property datapoints contains arrays of [float, integer].

  • Parameters
  • facility
    string  (required) in query

    Facility to check spot market prices

    plan
    string  (required) in query

    Plan to check spot market prices

    from
    string  (required) in query

    Timestamp from range

    until
    string  (required) in query

    Timestamp to range

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"prices_history": {
    		"datapoints": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/SpotPricesDatapointsList"
    			}
    		}
    	}
    } 

Membership Management (Project)

Retrieve a membership

GET
/memberships/{id}

Returns a single membership.

  • Parameters
  • id
    string  (required) in path

    Membership UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"roles": [
    		"string"
    	],
    	"created_at": "string",
    	"updated_at": "string",
    	"project": {
    		"href": "string"
    	},
    	"user": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Update the membership

PUT
/memberships/{id}

Updates the membership.

  • Parameters
  • id
    string  (required) in path

    Membership UUID

    membership
     (required) in body

    Membership to update

    {
    	"role": [
    		"string"
    	]
    } 
  • {
    	"id": "string",
    	"roles": [
    		"string"
    	],
    	"created_at": "string",
    	"updated_at": "string",
    	"project": {
    		"href": "string"
    	},
    	"user": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Delete the membership

/memberships/{id}

Deletes the membership.

  • Parameters
  • id
    string  (required) in path

    Membership UUID

Retrieve project memberships

GET
/projects/{id}/memberships

Returns all memberships in a project.

  • Parameters
  • include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

    project_id
    string  (required) in path

    Project UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"memberships": [
    		{
    			"id": "string",
    			"roles": [
    				"string"
    			],
    			"created_at": "string",
    			"updated_at": "string",
    			"project": {
    				"href": "string"
    			},
    			"user": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Notification Management

Returns a collection of the current user’s notification.

  • Parameters
  • include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"notifications": [
    		{
    			"id": "string",
    			"type": "string",
    			"body": "string",
    			"severity": "string",
    			"read": "boolean",
    			"context": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"user": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Retrieve a notification

GET
/notifications/{id}

Returns a single notification if the user has access

  • Parameters
  • id
    string  (required) in path

    Notification UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"type": "string",
    	"body": "string",
    	"severity": "string",
    	"read": "boolean",
    	"context": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"user": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Update the notification

PUT
/notifications/{id}

Updates a single notification. Currently, the only supported operating is marking a notification as read.

  • Parameters
  • id
    string  (required) in path

    Notification UUID

  • {
    	"id": "string",
    	"type": "string",
    	"body": "string",
    	"severity": "string",
    	"read": "boolean",
    	"context": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"user": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Operating System Management

Retrieve all operating systems

GET
/operating-systems

Provides a listing of available operating systems to provision your new device with.

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"slug": "string",
    	"name": "string",
    	"distro": "string",
    	"version": "string",
    	"provisionable_on": [
    		"string"
    	]
    } 

Organizations Management

Retrieve all devices of an organization

GET
/organizations/{id}/devices

Provides a collection of devices for a given organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"devices": [
    		{
    			"id": "string",
    			"short_id": "string",
    			"hostname": "string",
    			"description": "string",
    			"state": "string",
    			"tags": [
    				"string"
    			],
    			"image_url": "string",
    			"billing_cycle": "string",
    			"user": "string",
    			"iqn": "string",
    			"locked": "boolean",
    			"bonding_mode": "integer",
    			"created_at": "string",
    			"updated_at": "string",
    			"spot_instance": "boolean",
    			"spot_price_max": "number",
    			"termination_time": "string",
    			"customdata": "string",
    			"provisioning_percentage": "number",
    			"operating_system": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"distro": "string",
    				"version": "string",
    				"provisionable_on": [
    					"string"
    				]
    			},
    			"always_pxe": "boolean",
    			"ipxe_script_url": "string",
    			"location": {
    				"cage": "string",
    				"facility": "string",
    				"rack": "string",
    				"row": "string",
    				"switch": "string"
    			},
    			"facility": {
    				"id": "string",
    				"name": "string",
    				"code": "string",
    				"features": [
    					"string"
    				],
    				"address": {
    					"$ref": "#\/definitions\/Address"
    				}
    			},
    			"plan": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"description": "string",
    				"line": "string",
    				"specs": "object",
    				"pricing": "object",
    				"legacy": "boolean",
    				"class": "string",
    				"available_in": [
    					{
    						"href": "string"
    					}
    				]
    			},
    			"userdata": "string",
    			"root_password": "string",
    			"href": "string",
    			"project": {
    				"href": "string"
    			},
    			"project_lite": {
    				"href": "string"
    			},
    			"volumes": [
    				{
    					"href": "string"
    				}
    			],
    			"hardware_reservation": {
    				"href": "string"
    			},
    			"ssh_keys": [
    				{
    					"href": "string"
    				}
    			],
    			"ip_addresses": [
    				{
    					"id": "string",
    					"address_family": "integer",
    					"netmask": "string",
    					"public": "boolean",
    					"enabled": "boolean",
    					"cidr": "integer",
    					"management": "boolean",
    					"manageable": "boolean",
    					"assigned_to": {
    						"$ref": "#\/definitions\/Href"
    					},
    					"network": "string",
    					"address": "string",
    					"gateway": "string",
    					"href": "string",
    					"created_at": "string",
    					"parent_block": {
    						"$ref": "#\/definitions\/ParentBlock"
    					}
    				}
    			],
    			"provisioning_events": [
    				{
    					"id": "string",
    					"state": "string",
    					"type": "string",
    					"body": "string",
    					"relationships": "array",
    					"interpolated": "string",
    					"created_at": "string",
    					"href": "string"
    				}
    			]
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Create an invitation for an organization

/organizations/{id}/invitations

In order to add a user to an organization, they must first be invited. To invite to several projects the parameter projects_ids:[a,b,c] can be used

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    invitation
     (required) in body

    Invitation to create

    invitee

    {
    	"invitee": "string",
    	"message": "string",
    	"roles": [
    		"string"
    	],
    	"projects_ids": [
    		"string"
    	]
    } 
  • {
    	"id": "string",
    	"roles": [
    		"string"
    	],
    	"invitee": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"invited_by": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects_ids": [
    		"string"
    	],
    	"invitation": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Retrieve organization invitations

GET
/organizations/{id}/invitations

Returns all invitations in an organization.

  • Parameters
  • include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

    id
    string  (required) in path

    Organization UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"invitations": [
    		{
    			"id": "string",
    			"roles": [
    				"string"
    			],
    			"created_at": "string",
    			"updated_at": "string",
    			"project": {
    				"href": "string"
    			},
    			"user": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Returns a list of organizations that are accessible to the current user.

  • Parameters
  • personal
    string in query

    Include, exclude or show only personal organizations.

    without_projects
    string in query

    Include, exclude or show only organizations that have no projects.

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"organizations": [
    		{
    			"id": "string",
    			"name": "string",
    			"description": "string",
    			"website": "string",
    			"twitter": "string",
    			"logo": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"projects": [
    				{
    					"href": "string"
    				}
    			],
    			"members": [
    				{
    					"href": "string"
    				}
    			],
    			"memberships": [
    				{
    					"href": "string"
    				}
    			],
    			"address": {
    				"address": "string",
    				"address2": "string",
    				"city": "string",
    				"state": "string",
    				"zip_code": "string",
    				"country": "string",
    				"coordinates": {
    					"$ref": "#\/definitions\/Coordinates"
    				}
    			},
    			"billing_address": {
    				"address": "string",
    				"address2": "string",
    				"city": "string",
    				"state": "string",
    				"zip_code": "string",
    				"country": "string",
    				"coordinates": {
    					"$ref": "#\/definitions\/Coordinates"
    				}
    			},
    			"entitlement": {
    				"id": "string",
    				"description": "string",
    				"slug": "string",
    				"name": "string",
    				"weight": "integer",
    				"instance_quota": "object",
    				"project_quota": "integer",
    				"volume_quota": "object",
    				"ip_quota": "object",
    				"feature_access": "object",
    				"href": "string"
    			},
    			"terms": "integer",
    			"credit_amount": "number",
    			"customdata": "string",
    			"enforce_2fa_at": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Create an organization

/organizations

Creates an organization.

  • Parameters
  • organization
     (required) in body

    Organization to create

    {
    	"name": "string",
    	"description": "string",
    	"website": "string",
    	"twitter": "string",
    	"logo": "string",
    	"address": {
    		"$ref": "#\/definitions\/Address"
    	},
    	"billing_address": {
    		"$ref": "#\/definitions\/Address"
    	},
    	"customdata": "string",
    	"enforce_2fa_at": "string"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"description": "string",
    	"website": "string",
    	"twitter": "string",
    	"logo": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"projects": [
    		{
    			"href": "string"
    		}
    	],
    	"members": [
    		{
    			"href": "string"
    		}
    	],
    	"memberships": [
    		{
    			"href": "string"
    		}
    	],
    	"address": {
    		"address": "string",
    		"address2": "string",
    		"city": "string",
    		"state": "string",
    		"zip_code": "string",
    		"country": "string",
    		"coordinates": {
    			"latitude": "string",
    			"longitude": "string"
    		}
    	},
    	"billing_address": {
    		"address": "string",
    		"address2": "string",
    		"city": "string",
    		"state": "string",
    		"zip_code": "string",
    		"country": "string",
    		"coordinates": {
    			"latitude": "string",
    			"longitude": "string"
    		}
    	},
    	"entitlement": {
    		"id": "string",
    		"description": "string",
    		"slug": "string",
    		"name": "string",
    		"weight": "integer",
    		"instance_quota": "object",
    		"project_quota": "integer",
    		"volume_quota": "object",
    		"ip_quota": "object",
    		"feature_access": "object",
    		"href": "string"
    	},
    	"terms": "integer",
    	"credit_amount": "number",
    	"customdata": "string",
    	"enforce_2fa_at": "string"
    } 

Returns a single organization's details, if the user is authorized to view it.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"name": "string",
    	"description": "string",
    	"website": "string",
    	"twitter": "string",
    	"logo": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"projects": [
    		{
    			"href": "string"
    		}
    	],
    	"members": [
    		{
    			"href": "string"
    		}
    	],
    	"memberships": [
    		{
    			"href": "string"
    		}
    	],
    	"address": {
    		"address": "string",
    		"address2": "string",
    		"city": "string",
    		"state": "string",
    		"zip_code": "string",
    		"country": "string",
    		"coordinates": {
    			"latitude": "string",
    			"longitude": "string"
    		}
    	},
    	"billing_address": {
    		"address": "string",
    		"address2": "string",
    		"city": "string",
    		"state": "string",
    		"zip_code": "string",
    		"country": "string",
    		"coordinates": {
    			"latitude": "string",
    			"longitude": "string"
    		}
    	},
    	"entitlement": {
    		"id": "string",
    		"description": "string",
    		"slug": "string",
    		"name": "string",
    		"weight": "integer",
    		"instance_quota": "object",
    		"project_quota": "integer",
    		"volume_quota": "object",
    		"ip_quota": "object",
    		"feature_access": "object",
    		"href": "string"
    	},
    	"terms": "integer",
    	"credit_amount": "number",
    	"customdata": "string",
    	"enforce_2fa_at": "string"
    } 

Update the organization

PUT
/organizations/{id}

Updates the organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    organization
     (required) in body

    Organization to update

    {
    	"name": "string",
    	"description": "string",
    	"website": "string",
    	"twitter": "string",
    	"logo": "string",
    	"address": {
    		"$ref": "#\/definitions\/Address"
    	},
    	"billing_address": {
    		"$ref": "#\/definitions\/Address"
    	},
    	"customdata": "string",
    	"enforce_2fa_at": "string"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"description": "string",
    	"website": "string",
    	"twitter": "string",
    	"logo": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"projects": [
    		{
    			"href": "string"
    		}
    	],
    	"members": [
    		{
    			"href": "string"
    		}
    	],
    	"memberships": [
    		{
    			"href": "string"
    		}
    	],
    	"address": {
    		"address": "string",
    		"address2": "string",
    		"city": "string",
    		"state": "string",
    		"zip_code": "string",
    		"country": "string",
    		"coordinates": {
    			"latitude": "string",
    			"longitude": "string"
    		}
    	},
    	"billing_address": {
    		"address": "string",
    		"address2": "string",
    		"city": "string",
    		"state": "string",
    		"zip_code": "string",
    		"country": "string",
    		"coordinates": {
    			"latitude": "string",
    			"longitude": "string"
    		}
    	},
    	"entitlement": {
    		"id": "string",
    		"description": "string",
    		"slug": "string",
    		"name": "string",
    		"weight": "integer",
    		"instance_quota": "object",
    		"project_quota": "integer",
    		"volume_quota": "object",
    		"ip_quota": "object",
    		"feature_access": "object",
    		"href": "string"
    	},
    	"terms": "integer",
    	"credit_amount": "number",
    	"customdata": "string",
    	"enforce_2fa_at": "string"
    } 

Delete the organization

/organizations/{id}

Deletes the organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    id
    string  (required) in path

    Cage UUID

Retrieve all projects of an organization

GET
/organizations/{id}/projects

Returns a collection of projects that belong to the organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"projects": [
    		{
    			"id": "string",
    			"name": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"max_devices": "object",
    			"members": [
    				{
    					"href": "string"
    				}
    			],
    			"memberships": [
    				{
    					"href": "string"
    				}
    			],
    			"network_status": "object",
    			"invitations": [
    				{
    					"href": "string"
    				}
    			],
    			"payment_method": {
    				"href": "string"
    			},
    			"devices": [
    				{
    					"href": "string"
    				}
    			],
    			"ssh_keys": [
    				{
    					"href": "string"
    				}
    			],
    			"volumes": [
    				{
    					"href": "string"
    				}
    			],
    			"bgp_config": {
    				"href": "string"
    			},
    			"customdata": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Create a project for the organization

/organizations/{id}/projects

Creates a new project for the organization

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    project
     (required) in body

    Project to create

    name

    {
    	"name": "string",
    	"payment_method_id": "string",
    	"customdata": "string"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"max_devices": "object",
    	"members": [
    		{
    			"href": "string"
    		}
    	],
    	"memberships": [
    		{
    			"href": "string"
    		}
    	],
    	"network_status": "object",
    	"invitations": [
    		{
    			"href": "string"
    		}
    	],
    	"payment_method": {
    		"href": "string"
    	},
    	"devices": [
    		{
    			"href": "string"
    		}
    	],
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"bgp_config": {
    		"href": "string"
    	},
    	"customdata": "string"
    } 

Provides a collection of project transfer requests from or to the organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"transfers": [
    		{
    			"id": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"target_organization": {
    				"href": "string"
    			},
    			"project": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Retrieve all payment methods of an organization

GET
/organizations/{id}/payment-methods

Returns all payment methods of an organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"payment_methods": [
    		{
    			"id": "string",
    			"name": "string",
    			"type": "string",
    			"default": "boolean",
    			"created_at": "string",
    			"updated_at": "string",
    			"card_type": "string",
    			"expiration_month": "string",
    			"expiration_year": "string",
    			"cardholder_name": "string",
    			"billing_address": {
    				"street_address": "string",
    				"postal_code": "string",
    				"country_code_alpha2": "string"
    			},
    			"email": "string",
    			"created_by_user": {
    				"href": "string"
    			},
    			"organization": {
    				"href": "string"
    			},
    			"projects": [
    				{
    					"href": "string"
    				}
    			]
    		}
    	]
    } 

Create a payment method for the given organization

/organizations/{id}/payment-methods

Creates a payment method.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    payment_method
     (required) in body

    Payment Method to create

    name, nonce

    {
    	"name": "string",
    	"nonce": "string",
    	"default": "boolean"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"type": "string",
    	"default": "boolean",
    	"created_at": "string",
    	"updated_at": "string",
    	"card_type": "string",
    	"expiration_month": "string",
    	"expiration_year": "string",
    	"cardholder_name": "string",
    	"billing_address": {
    		"street_address": "string",
    		"postal_code": "string",
    		"country_code_alpha2": "string"
    	},
    	"email": "string",
    	"created_by_user": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects": [
    		{
    			"href": "string"
    		}
    	]
    } 

Retrieve the custom metadata of an organization

GET
/organizations/{id}/customdata

Provides the custom metadata stored for this organization in json format

Payment Method Management

Retrieve all payment methods of an organization

GET
/organization/{id}/payment-methods

Returns all payment methods of an organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"payment_methods": [
    		{
    			"id": "string",
    			"name": "string",
    			"type": "string",
    			"default": "boolean",
    			"created_at": "string",
    			"updated_at": "string",
    			"card_type": "string",
    			"expiration_month": "string",
    			"expiration_year": "string",
    			"cardholder_name": "string",
    			"billing_address": {
    				"street_address": "string",
    				"postal_code": "string",
    				"country_code_alpha2": "string"
    			},
    			"email": "string",
    			"created_by_user": {
    				"href": "string"
    			},
    			"organization": {
    				"href": "string"
    			},
    			"projects": [
    				{
    					"href": "string"
    				}
    			]
    		}
    	]
    } 

Create a payment method

/organization/{id}/payment-methods

Creates a payment method.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    payment_method
     (required) in body

    Payment Method to create

    name, nonce

    {
    	"name": "string",
    	"nonce": "string",
    	"default": "boolean"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"type": "string",
    	"default": "boolean",
    	"created_at": "string",
    	"updated_at": "string",
    	"card_type": "string",
    	"expiration_month": "string",
    	"expiration_year": "string",
    	"cardholder_name": "string",
    	"billing_address": {
    		"street_address": "string",
    		"postal_code": "string",
    		"country_code_alpha2": "string"
    	},
    	"email": "string",
    	"created_by_user": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects": [
    		{
    			"href": "string"
    		}
    	]
    } 

Retrieve a payment method

GET
/payment-methods/{id}

Returns a payment method

  • Parameters
  • id
    string  (required) in path

    Payment Method UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"name": "string",
    	"type": "string",
    	"default": "boolean",
    	"created_at": "string",
    	"updated_at": "string",
    	"card_type": "string",
    	"expiration_month": "string",
    	"expiration_year": "string",
    	"cardholder_name": "string",
    	"billing_address": {
    		"street_address": "string",
    		"postal_code": "string",
    		"country_code_alpha2": "string"
    	},
    	"email": "string",
    	"created_by_user": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects": [
    		{
    			"href": "string"
    		}
    	]
    } 

Update the payment method

PUT
/payment-methods/{id}

Updates the payment method.

  • Parameters
  • id
    string  (required) in path

    Payment Method UUID

    payment_method
     (required) in body

    Payment Method to update

    {
    	"name": "string",
    	"default": "boolean",
    	"cardholder_name": "string",
    	"expiration_month": "string",
    	"expiration_year": "integer",
    	"billing_address": "object"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"type": "string",
    	"default": "boolean",
    	"created_at": "string",
    	"updated_at": "string",
    	"card_type": "string",
    	"expiration_month": "string",
    	"expiration_year": "string",
    	"cardholder_name": "string",
    	"billing_address": {
    		"street_address": "string",
    		"postal_code": "string",
    		"country_code_alpha2": "string"
    	},
    	"email": "string",
    	"created_by_user": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects": [
    		{
    			"href": "string"
    		}
    	]
    } 

Delete the payment method

/payment-methods/{id}

Deletes the payment method.

  • Parameters
  • id
    string  (required) in path

    Payment Method UUID

Retrieve all payment methods of an organization

GET
/organizations/{id}/payment-methods

Returns all payment methods of an organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"payment_methods": [
    		{
    			"id": "string",
    			"name": "string",
    			"type": "string",
    			"default": "boolean",
    			"created_at": "string",
    			"updated_at": "string",
    			"card_type": "string",
    			"expiration_month": "string",
    			"expiration_year": "string",
    			"cardholder_name": "string",
    			"billing_address": {
    				"street_address": "string",
    				"postal_code": "string",
    				"country_code_alpha2": "string"
    			},
    			"email": "string",
    			"created_by_user": {
    				"href": "string"
    			},
    			"organization": {
    				"href": "string"
    			},
    			"projects": [
    				{
    					"href": "string"
    				}
    			]
    		}
    	]
    } 

Create a payment method for the given organization

/organizations/{id}/payment-methods

Creates a payment method.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    payment_method
     (required) in body

    Payment Method to create

    name, nonce

    {
    	"name": "string",
    	"nonce": "string",
    	"default": "boolean"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"type": "string",
    	"default": "boolean",
    	"created_at": "string",
    	"updated_at": "string",
    	"card_type": "string",
    	"expiration_month": "string",
    	"expiration_year": "string",
    	"cardholder_name": "string",
    	"billing_address": {
    		"street_address": "string",
    		"postal_code": "string",
    		"country_code_alpha2": "string"
    	},
    	"email": "string",
    	"created_by_user": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects": [
    		{
    			"href": "string"
    		}
    	]
    } 

Plan Management (Device)

Provides a listing of available services plans available to provision your device on.

  • Parameters
  • include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"plans": [
    		{
    			"id": "string",
    			"slug": "string",
    			"name": "string",
    			"description": "string",
    			"line": "string",
    			"specs": "object",
    			"pricing": "object",
    			"legacy": "boolean",
    			"class": "string",
    			"available_in": [
    				{
    					"href": "string"
    				}
    			]
    		}
    	]
    } 

Returns a listing of available services plans available for the given project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"plans": [
    		{
    			"id": "string",
    			"slug": "string",
    			"name": "string",
    			"description": "string",
    			"line": "string",
    			"specs": "object",
    			"pricing": "object",
    			"legacy": "boolean",
    			"class": "string",
    			"available_in": [
    				{
    					"href": "string"
    				}
    			]
    		}
    	]
    } 

Port Management

Assign a port for a hardware to virtual network.

  • Parameters
  • id
    string  (required) in path

    Port UUID

    vnid
     (required) in body

    Virtual Network ID

    {
    	"vnid": "string"
    } 
  • {
    	"id": "string",
    	"type": "string",
    	"name": "string",
    	"data": "object",
    	"hardware": {
    		"href": "string"
    	},
    	"virtual_networks": [
    		{
    			"href": "string"
    		}
    	],
    	"connected_port": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Unassign a port

/ports/{id}/unassign

Unassign a port for a hardware.

  • Parameters
  • id
    string  (required) in path

    Port UUID

    vnid
     (required) in body

    Virtual Network ID

    {
    	"vnid": "string"
    } 
  • {
    	"id": "string",
    	"type": "string",
    	"name": "string",
    	"data": "object",
    	"hardware": {
    		"href": "string"
    	},
    	"virtual_networks": [
    		{
    			"href": "string"
    		}
    	],
    	"connected_port": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Disabling bonding

/ports/{id}/disbond

Disabling bonding for one or all ports

  • Parameters
  • id
    string  (required) in path

    Port UUID

    bulk_disable
    boolean in query

    disable both ports

  • {
    	"id": "string",
    	"type": "string",
    	"name": "string",
    	"data": "object",
    	"hardware": {
    		"href": "string"
    	},
    	"virtual_networks": [
    		{
    			"href": "string"
    		}
    	],
    	"connected_port": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Enabling bonding

/ports/{id}/bond

Enabling bonding for one or all ports

  • Parameters
  • id
    string  (required) in path

    Port UUID

    bulk_enable
    boolean in query

    enable both ports

  • {
    	"id": "string",
    	"type": "string",
    	"name": "string",
    	"data": "object",
    	"hardware": {
    		"href": "string"
    	},
    	"virtual_networks": [
    		{
    			"href": "string"
    		}
    	],
    	"connected_port": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Convert to Layer 2

/ports/{id}/convert/layer-2

Converts a bond port to Layer 2. IP assignments of the port will be removed.

  • Parameters
  • id
    string  (required) in path

    Port UUID

    vnid
    in body

    Virtual Network ID

    {
    	"vnid": "string"
    } 
  • {
    	"id": "string",
    	"type": "string",
    	"name": "string",
    	"data": "object",
    	"hardware": {
    		"href": "string"
    	},
    	"virtual_networks": [
    		{
    			"href": "string"
    		}
    	],
    	"connected_port": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Convert to Layer 3

/ports/{id}/convert/layer-3

Converts a bond port to Layer 3. VLANs must first be unassigned.

  • Parameters
  • id
    string  (required) in path

    Port UUID

    request_ips
    in body

    IPs to request

    {
    	"request_ips": [
    		{
    			"properties": {
    				"address_family": {
    					"type": "integer"
    				},
    				"public": {
    					"type": "boolean"
    				}
    			}
    		}
    	]
    } 
  • {
    	"id": "string",
    	"type": "string",
    	"name": "string",
    	"data": "object",
    	"hardware": {
    		"href": "string"
    	},
    	"virtual_networks": [
    		{
    			"href": "string"
    		}
    	],
    	"connected_port": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Project Management

Retrieve project's events

GET
/projects/{id}/events

Returns a list of events for a single project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Retrieve all devices of a project

GET
/projects/{id}/devices

Provides a collection of devices for a given project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"devices": [
    		{
    			"id": "string",
    			"short_id": "string",
    			"hostname": "string",
    			"description": "string",
    			"state": "string",
    			"tags": [
    				"string"
    			],
    			"image_url": "string",
    			"billing_cycle": "string",
    			"user": "string",
    			"iqn": "string",
    			"locked": "boolean",
    			"bonding_mode": "integer",
    			"created_at": "string",
    			"updated_at": "string",
    			"spot_instance": "boolean",
    			"spot_price_max": "number",
    			"termination_time": "string",
    			"customdata": "string",
    			"provisioning_percentage": "number",
    			"operating_system": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"distro": "string",
    				"version": "string",
    				"provisionable_on": [
    					"string"
    				]
    			},
    			"always_pxe": "boolean",
    			"ipxe_script_url": "string",
    			"location": {
    				"cage": "string",
    				"facility": "string",
    				"rack": "string",
    				"row": "string",
    				"switch": "string"
    			},
    			"facility": {
    				"id": "string",
    				"name": "string",
    				"code": "string",
    				"features": [
    					"string"
    				],
    				"address": {
    					"$ref": "#\/definitions\/Address"
    				}
    			},
    			"plan": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"description": "string",
    				"line": "string",
    				"specs": "object",
    				"pricing": "object",
    				"legacy": "boolean",
    				"class": "string",
    				"available_in": [
    					{
    						"href": "string"
    					}
    				]
    			},
    			"userdata": "string",
    			"root_password": "string",
    			"href": "string",
    			"project": {
    				"href": "string"
    			},
    			"project_lite": {
    				"href": "string"
    			},
    			"volumes": [
    				{
    					"href": "string"
    				}
    			],
    			"hardware_reservation": {
    				"href": "string"
    			},
    			"ssh_keys": [
    				{
    					"href": "string"
    				}
    			],
    			"ip_addresses": [
    				{
    					"id": "string",
    					"address_family": "integer",
    					"netmask": "string",
    					"public": "boolean",
    					"enabled": "boolean",
    					"cidr": "integer",
    					"management": "boolean",
    					"manageable": "boolean",
    					"assigned_to": {
    						"$ref": "#\/definitions\/Href"
    					},
    					"network": "string",
    					"address": "string",
    					"gateway": "string",
    					"href": "string",
    					"created_at": "string",
    					"parent_block": {
    						"$ref": "#\/definitions\/ParentBlock"
    					}
    				}
    			],
    			"provisioning_events": [
    				{
    					"id": "string",
    					"state": "string",
    					"type": "string",
    					"body": "string",
    					"relationships": "array",
    					"interpolated": "string",
    					"created_at": "string",
    					"href": "string"
    				}
    			]
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Create a device

/projects/{id}/devices

Creates a new device and provisions it in our datacenter.

Type-specific options (such as operating_system for baremetal devices) should be included in the main data structure alongside hostname and plan.

The features attribute allows you to optionally specify what features your server should have.

For example, if you require a server with a TPM chip, you may specify { "features": { "tpm": "required" } } (or { "features": ["tpm"] } in shorthand).

The request will fail if there are no available servers matching your criteria. Alternatively, if you do not require a certain feature, but would prefer to be assigned a server with that feature if there are any available, you may specify that feature with a preferred value (see the example request below).

The request will not fail if we have no servers with that feature in our inventory.

The facilities attribute specifies in what datacenter you wish to create the device.

You can either specify a single facility { "facility": "f1" } , or you can instruct to create the device in the best available datacenter { "facility": "any" }. Additionally it is possible to set a prioritized location selection.

For example { "facility": ["f3", "f2", "any"] } will try to assign to the facility f3, if there are no available f2, and so on. If "any" is not specified for "facility", the request will fail unless it can assign in the selected locations.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    device
     (required) in body

    Device to create

    facility, plan, operating_system

    {
    	"facility": "string",
    	"plan": "string",
    	"hostname": "string",
    	"description": "string",
    	"billing_cycle": "string",
    	"operating_system": "string",
    	"always_pxe": "boolean",
    	"ipxe_script_url": "string",
    	"userdata": "string",
    	"locked": "boolean",
    	"customdata": "string",
    	"hardware_reservation_id": "string",
    	"spot_instance": "boolean",
    	"spot_price_max": "number",
    	"termination_time": "string",
    	"tags": [
    		"string"
    	],
    	"project_ssh_keys": [
    		"string"
    	],
    	"user_ssh_keys": [
    		"string"
    	],
    	"features": [
    		"string"
    	],
    	"public_ipv4_subnet_size": "number"
    } 
  • {
    	"id": "string",
    	"short_id": "string",
    	"hostname": "string",
    	"description": "string",
    	"state": "string",
    	"tags": [
    		"string"
    	],
    	"image_url": "string",
    	"billing_cycle": "string",
    	"user": "string",
    	"iqn": "string",
    	"locked": "boolean",
    	"bonding_mode": "integer",
    	"created_at": "string",
    	"updated_at": "string",
    	"spot_instance": "boolean",
    	"spot_price_max": "number",
    	"termination_time": "string",
    	"customdata": "string",
    	"provisioning_percentage": "number",
    	"operating_system": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"distro": "string",
    		"version": "string",
    		"provisionable_on": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		}
    	},
    	"always_pxe": "boolean",
    	"ipxe_script_url": "string",
    	"location": {
    		"cage": "string",
    		"facility": "string",
    		"rack": "string",
    		"row": "string",
    		"switch": "string"
    	},
    	"facility": {
    		"id": "string",
    		"name": "string",
    		"code": "string",
    		"features": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		},
    		"address": {
    			"address": "string",
    			"address2": "string",
    			"city": "string",
    			"state": "string",
    			"zip_code": "string",
    			"country": "string",
    			"coordinates": {
    				"latitude": "string",
    				"longitude": "string"
    			}
    		}
    	},
    	"plan": {
    		"id": "string",
    		"slug": "string",
    		"name": "string",
    		"description": "string",
    		"line": "string",
    		"specs": "object",
    		"pricing": "object",
    		"legacy": "boolean",
    		"class": "string",
    		"available_in": {
    			"type": "array",
    			"items": {
    				"$ref": "#\/definitions\/Href"
    			}
    		}
    	},
    	"userdata": "string",
    	"root_password": "string",
    	"href": "string",
    	"project": {
    		"href": "string"
    	},
    	"project_lite": {
    		"href": "string"
    	},
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"hardware_reservation": {
    		"href": "string"
    	},
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"ip_addresses": [
    		{
    			"id": "string",
    			"address_family": "integer",
    			"netmask": "string",
    			"public": "boolean",
    			"enabled": "boolean",
    			"cidr": "integer",
    			"management": "boolean",
    			"manageable": "boolean",
    			"assigned_to": {
    				"href": "string"
    			},
    			"network": "string",
    			"address": "string",
    			"gateway": "string",
    			"href": "string",
    			"created_at": "string",
    			"parent_block": {
    				"network": "string",
    				"netmask": "string",
    				"cidr": "integer",
    				"href": "string"
    			}
    		}
    	],
    	"provisioning_events": [
    		{
    			"id": "string",
    			"state": "string",
    			"type": "string",
    			"body": "string",
    			"relationships": [
    				{
    					"href": "string"
    				}
    			],
    			"interpolated": "string",
    			"created_at": "string",
    			"href": "string"
    		}
    	]
    } 

Create an invitation for a project

/projects/{id}/invitations

In order to add a user to a project, they must first be invited.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    invitation
     (required) in body

    Invitation to create

    invitee

    {
    	"invitee": "string",
    	"message": "string",
    	"roles": [
    		"string"
    	],
    	"projects_ids": [
    		"string"
    	]
    } 
  • {
    	"id": "string",
    	"roles": [
    		"string"
    	],
    	"invitee": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"invited_by": {
    		"href": "string"
    	},
    	"organization": {
    		"href": "string"
    	},
    	"projects_ids": [
    		"string"
    	],
    	"invitation": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Requesting ip reservations

/projects/{id}/ips

Request more IP space for a project in order to have additional IP addresses to assign to devices. If the request is within the max quota, ip reservation will be created, else, the request will be submitted.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    ip_reservation_request
     (required) in body

    IP Reservation Request to create

    type, quantity

    {
    	"type": "string",
    	"quantity": "integer",
    	"comments": "string",
    	"facility": "string",
    	"customdata": "string"
    } 
  • {
    	"message": {
    		"reasons": {
    			"type": "array",
    			"items": {
    				"type": "string"
    			}
    		},
    		"address": "string"
    	}
    } 

Returns a collection of projects that the current user is a member of.

  • Parameters
  • include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"projects": [
    		{
    			"id": "string",
    			"name": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"max_devices": "object",
    			"members": [
    				{
    					"href": "string"
    				}
    			],
    			"memberships": [
    				{
    					"href": "string"
    				}
    			],
    			"network_status": "object",
    			"invitations": [
    				{
    					"href": "string"
    				}
    			],
    			"payment_method": {
    				"href": "string"
    			},
    			"devices": [
    				{
    					"href": "string"
    				}
    			],
    			"ssh_keys": [
    				{
    					"href": "string"
    				}
    			],
    			"volumes": [
    				{
    					"href": "string"
    				}
    			],
    			"bgp_config": {
    				"href": "string"
    			},
    			"customdata": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Creates a new project for the user default organization. If the user don't have an organization, a new one will be created.

  • Parameters
  • project
     (required) in body

    Project to create

    name

    {
    	"name": "string",
    	"payment_method_id": "string",
    	"customdata": "string"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"max_devices": "object",
    	"members": [
    		{
    			"href": "string"
    		}
    	],
    	"memberships": [
    		{
    			"href": "string"
    		}
    	],
    	"network_status": "object",
    	"invitations": [
    		{
    			"href": "string"
    		}
    	],
    	"payment_method": {
    		"href": "string"
    	},
    	"devices": [
    		{
    			"href": "string"
    		}
    	],
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"bgp_config": {
    		"href": "string"
    	},
    	"customdata": "string"
    } 

Retrieve a project

GET
/projects/{id}

Returns a single project if the user has access

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"name": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"max_devices": "object",
    	"members": [
    		{
    			"href": "string"
    		}
    	],
    	"memberships": [
    		{
    			"href": "string"
    		}
    	],
    	"network_status": "object",
    	"invitations": [
    		{
    			"href": "string"
    		}
    	],
    	"payment_method": {
    		"href": "string"
    	},
    	"devices": [
    		{
    			"href": "string"
    		}
    	],
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"bgp_config": {
    		"href": "string"
    	},
    	"customdata": "string"
    } 

Update the project

PUT
/projects/{id}

Updates the project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    project
     (required) in body

    Project to update

    {
    	"name": "string",
    	"payment_method_id": "string",
    	"backend_transfer_enabled": "boolean",
    	"customdata": "string"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"max_devices": "object",
    	"members": [
    		{
    			"href": "string"
    		}
    	],
    	"memberships": [
    		{
    			"href": "string"
    		}
    	],
    	"network_status": "object",
    	"invitations": [
    		{
    			"href": "string"
    		}
    	],
    	"payment_method": {
    		"href": "string"
    	},
    	"devices": [
    		{
    			"href": "string"
    		}
    	],
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"bgp_config": {
    		"href": "string"
    	},
    	"customdata": "string"
    } 

Delete the project

/projects/{id}

Deletes the project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

Retrieve a project's ssk keys

GET
/projects/{id}/ssh-keys

Returns a collection of the project's ssh keys.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    Search string
    string in query

    Search in keys

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"ssh_keys": [
    		{
    			"id": "string",
    			"label": "string",
    			"key": "string",
    			"fingerprint": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"entity": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Creates a ssh key.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    ssh key
     (required) in body

    ssh key to create

    {
    	"label": "string",
    	"key": "string"
    } 
  • {
    	"id": "string",
    	"label": "string",
    	"key": "string",
    	"fingerprint": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"entity": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Create a transfer request

/projects/{id}/transfers

Organization owners can transfer their projects to other organizations.

  • Parameters
  • id
    string  (required) in path

    UUID of the project to be transferred

    transfer_request
     (required) in body

    Transfer Request to create

    {
    	"target_organization_id": "string"
    } 
  • {
    	"id": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"target_organization": {
    		"href": "string"
    	},
    	"project": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Retrieve all licenses

GET
/projects/{id}/licenses

Provides a collection of licenses for a given project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"licenses": [
    		{
    			"id": "string",
    			"description": "string",
    			"license_key": "string",
    			"licensee_product": {
    				"href": "string"
    			},
    			"size": "number",
    			"project": {
    				"href": "string"
    			}
    		}
    	]
    } 

Create a License

/projects/{id}/licenses

Creates a new license for the given project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    license
     (required) in body

    License to create

    {
    	"description": "string",
    	"size": "number",
    	"licensee_product_id": "string"
    } 
  • {
    	"id": "string",
    	"description": "string",
    	"license_key": "string",
    	"licensee_product": {
    		"href": "string"
    	},
    	"size": "number",
    	"project": {
    		"href": "string"
    	}
    } 

Retrieve all ip reservations

GET
/projects/{id}/ips

Provides a list of IP resevations for a single project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"ip_addresses": [
    		{
    			"id": "string",
    			"address_family": "integer",
    			"netmask": "string",
    			"public": "boolean",
    			"enabled": "boolean",
    			"cidr": "integer",
    			"management": "boolean",
    			"manageable": "boolean",
    			"addon": "boolean",
    			"bill": "boolean",
    			"assignments": [
    				{
    					"id": "string",
    					"address_family": "integer",
    					"netmask": "string",
    					"public": "boolean",
    					"enabled": "boolean",
    					"cidr": "integer",
    					"management": "boolean",
    					"manageable": "boolean",
    					"assigned_to": {
    						"$ref": "#\/definitions\/Href"
    					},
    					"network": "string",
    					"address": "string",
    					"gateway": "string",
    					"href": "string",
    					"created_at": "string",
    					"parent_block": {
    						"$ref": "#\/definitions\/ParentBlock"
    					}
    				}
    			],
    			"network": "string",
    			"created_at": "string",
    			"facility": {
    				"id": "string",
    				"name": "string",
    				"code": "string",
    				"features": [
    					"string"
    				],
    				"address": {
    					"$ref": "#\/definitions\/Address"
    				}
    			},
    			"href": "string"
    		}
    	]
    } 

Retrieve all hardware reservations for a given project

GET
/projects/{id}/hardware-reservations

Provides a collection of hardware reservations for a given project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"hardware_reservations": [
    		{
    			"id": "string",
    			"short_id": "string",
    			"facility": {
    				"id": "string",
    				"name": "string",
    				"code": "string",
    				"features": [
    					"string"
    				],
    				"address": {
    					"$ref": "#\/definitions\/Address"
    				}
    			},
    			"plan": {
    				"id": "string",
    				"slug": "string",
    				"name": "string",
    				"description": "string",
    				"line": "string",
    				"specs": "object",
    				"pricing": "object",
    				"legacy": "boolean",
    				"class": "string",
    				"available_in": [
    					{
    						"href": "string"
    					}
    				]
    			},
    			"href": "string",
    			"project": {
    				"id": "string",
    				"name": "string",
    				"created_at": "string",
    				"updated_at": "string",
    				"max_devices": "object",
    				"members": [
    					{
    						"href": "string"
    					}
    				],
    				"memberships": [
    					{
    						"href": "string"
    					}
    				],
    				"network_status": "object",
    				"invitations": [
    					{
    						"href": "string"
    					}
    				],
    				"payment_method": {
    					"$ref": "#\/definitions\/Href"
    				},
    				"devices": [
    					{
    						"href": "string"
    					}
    				],
    				"ssh_keys": [
    					{
    						"href": "string"
    					}
    				],
    				"volumes": [
    					{
    						"href": "string"
    					}
    				],
    				"bgp_config": {
    					"$ref": "#\/definitions\/Href"
    				},
    				"customdata": "string"
    			},
    			"device": {
    				"id": "string",
    				"short_id": "string",
    				"hostname": "string",
    				"description": "string",
    				"state": "string",
    				"tags": [
    					"string"
    				],
    				"image_url": "string",
    				"billing_cycle": "string",
    				"user": "string",
    				"iqn": "string",
    				"locked": "boolean",
    				"bonding_mode": "integer",
    				"created_at": "string",
    				"updated_at": "string",
    				"spot_instance": "boolean",
    				"spot_price_max": "number",
    				"termination_time": "string",
    				"customdata": "string",
    				"provisioning_percentage": "number",
    				"operating_system": {
    					"$ref": "#\/definitions\/OperatingSystem"
    				},
    				"always_pxe": "boolean",
    				"ipxe_script_url": "string",
    				"location": {
    					"$ref": "#\/definitions\/HardwareLocation"
    				},
    				"facility": {
    					"$ref": "#\/definitions\/Facility"
    				},
    				"plan": {
    					"$ref": "#\/definitions\/Plan"
    				},
    				"userdata": "string",
    				"root_password": "string",
    				"href": "string",
    				"project": {
    					"$ref": "#\/definitions\/Href",
    					"description": "Full version of project object when included"
    				},
    				"project_lite": {
    					"$ref": "#\/definitions\/Href",
    					"description": "Lite version of project object when included"
    				},
    				"volumes": [
    					{
    						"href": "string"
    					}
    				],
    				"hardware_reservation": {
    					"$ref": "#\/definitions\/Href"
    				},
    				"ssh_keys": [
    					{
    						"href": "string"
    					}
    				],
    				"ip_addresses": [
    					{
    						"id": "string",
    						"address_family": "integer",
    						"netmask": "string",
    						"public": "boolean",
    						"enabled": "boolean",
    						"cidr": "integer",
    						"management": "boolean",
    						"manageable": "boolean",
    						"network": "string",
    						"address": "string",
    						"gateway": "string",
    						"href": "string",
    						"created_at": "string"
    					}
    				],
    				"provisioning_events": [
    					{
    						"id": "string",
    						"state": "string",
    						"type": "string",
    						"body": "string",
    						"relationships": "array",
    						"interpolated": "string",
    						"created_at": "string",
    						"href": "string"
    					}
    				]
    			},
    			"created_at": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Retrieve all batches by project

GET
/projects/{id}/batches

Returns all batches for the given project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"batches": [
    		{
    			"id": "string",
    			"error_messages": [
    				"string"
    			],
    			"quantity": "integer",
    			"state": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"devices": [
    				{
    					"href": "string"
    				}
    			],
    			"project": {
    				"href": "string"
    			}
    		}
    	]
    } 

Returns a listing of available datacenters for the given project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"facilities": [
    		{
    			"id": "string",
    			"name": "string",
    			"code": "string",
    			"features": [
    				"string"
    			],
    			"address": {
    				"address": "string",
    				"address2": "string",
    				"city": "string",
    				"state": "string",
    				"zip_code": "string",
    				"country": "string",
    				"coordinates": {
    					"$ref": "#\/definitions\/Coordinates"
    				}
    			}
    		}
    	]
    } 

Returns a listing of available services plans available for the given project

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"plans": [
    		{
    			"id": "string",
    			"slug": "string",
    			"name": "string",
    			"description": "string",
    			"line": "string",
    			"specs": "object",
    			"pricing": "object",
    			"legacy": "boolean",
    			"class": "string",
    			"available_in": [
    				{
    					"href": "string"
    				}
    			]
    		}
    	]
    } 

Retrieve project invitations

GET
/projects/{id}/invitations

Returns all invitations in a project.

  • Parameters
  • include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

    project_id
    string  (required) in path

    Project UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"invitations": [
    		{
    			"id": "string",
    			"roles": [
    				"string"
    			],
    			"created_at": "string",
    			"updated_at": "string",
    			"project": {
    				"href": "string"
    			},
    			"user": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Retrieve project memberships

GET
/projects/{id}/memberships

Returns all memberships in a project.

  • Parameters
  • include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

    project_id
    string  (required) in path

    Project UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"memberships": [
    		{
    			"id": "string",
    			"roles": [
    				"string"
    			],
    			"created_at": "string",
    			"updated_at": "string",
    			"project": {
    				"href": "string"
    			},
    			"user": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Retrieve all projects of an organization

GET
/organizations/{id}/projects

Returns a collection of projects that belong to the organization.

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    include
    string in query

    related attributes to include

    page
    integer in query

    page to display, default to 1, max 100_000

    per_page
    integer in query

    items per page, default to 10, max 1_000

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"projects": [
    		{
    			"id": "string",
    			"name": "string",
    			"created_at": "string",
    			"updated_at": "string",
    			"max_devices": "object",
    			"members": [
    				{
    					"href": "string"
    				}
    			],
    			"memberships": [
    				{
    					"href": "string"
    				}
    			],
    			"network_status": "object",
    			"invitations": [
    				{
    					"href": "string"
    				}
    			],
    			"payment_method": {
    				"href": "string"
    			},
    			"devices": [
    				{
    					"href": "string"
    				}
    			],
    			"ssh_keys": [
    				{
    					"href": "string"
    				}
    			],
    			"volumes": [
    				{
    					"href": "string"
    				}
    			],
    			"bgp_config": {
    				"href": "string"
    			},
    			"customdata": "string"
    		}
    	],
    	"meta": {
    		"first": {
    			"href": "string"
    		},
    		"previous": {
    			"href": "string"
    		},
    		"self": {
    			"href": "string"
    		},
    		"next": {
    			"href": "string"
    		},
    		"last": {
    			"href": "string"
    		},
    		"total": "integer"
    	}
    } 

Create a project for the organization

/organizations/{id}/projects

Creates a new project for the organization

  • Parameters
  • id
    string  (required) in path

    Organization UUID

    project
     (required) in body

    Project to create

    name

    {
    	"name": "string",
    	"payment_method_id": "string",
    	"customdata": "string"
    } 
  • {
    	"id": "string",
    	"name": "string",
    	"created_at": "string",
    	"updated_at": "string",
    	"max_devices": "object",
    	"members": [
    		{
    			"href": "string"
    		}
    	],
    	"memberships": [
    		{
    			"href": "string"
    		}
    	],
    	"network_status": "object",
    	"invitations": [
    		{
    			"href": "string"
    		}
    	],
    	"payment_method": {
    		"href": "string"
    	},
    	"devices": [
    		{
    			"href": "string"
    		}
    	],
    	"ssh_keys": [
    		{
    			"href": "string"
    		}
    	],
    	"volumes": [
    		{
    			"href": "string"
    		}
    	],
    	"bgp_config": {
    		"href": "string"
    	},
    	"customdata": "string"
    } 

Requesting bgp config

/projects/{id}/bgp-configs

Requests to enable bgp configuration for a project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    bgp_config_request
     (required) in body

    BGP config Request to create

    deployment_type, asn

    {
    	"deployment_type": "string",
    	"asn": "integer",
    	"md5": "string",
    	"use_case": "string"
    } 

Retrieve a bgp config

GET
/projects/{id}/bgp-config

Returns a bgp config

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"id": "string",
    	"status": "string",
    	"deployment_type": "string",
    	"asn": "integer",
    	"route_object": "string",
    	"md5": "string",
    	"max_prefix": "integer",
    	"project": {
    		"href": "string"
    	},
    	"created_at": "string",
    	"requested_at": "string",
    	"session": "object",
    	"href": "string"
    } 

Retrieve all virtual networks

GET
/projects/{id}/virtual-networks

Provides a list of virtual networks for a single project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    include
    string in query

    related attributes to include

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"virtual_networks": [
    		{
    			"id": "string",
    			"description": "string",
    			"vxlan": "integer",
    			"facility": {
    				"href": "string"
    			},
    			"instances": [
    				{
    					"href": "string"
    				}
    			],
    			"assigned_to": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Create an virtual network

/projects/{id}/virtual-networks

Creates an virtual network.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    virtual_network
     (required) in body

    Virtual Network to create

    {
    	"project_id": "string",
    	"description": "string",
    	"facility": "string",
    	"vxlan": "integer",
    	"vlan": "integer"
    } 
  • {
    	"id": "string",
    	"description": "string",
    	"vxlan": "integer",
    	"facility": {
    		"href": "string"
    	},
    	"instances": [
    		{
    			"href": "string"
    		}
    	],
    	"assigned_to": {
    		"href": "string"
    	},
    	"href": "string"
    } 

Provides the custom metadata stored for this project in json format

Retrieve the custom metadata of an IP Reservation

GET
/projects/{project_id}/ips/{id}/customdata

Provides the custom metadata stored for this IP Reservation in json format

  • Parameters
  • project_id
    string  (required) in path

    Project UUID

    id
    string  (required) in path

    Ip Reservation UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide

Retrieve all BGP sessions for project

GET
/projects/{id}/bgp/sessions

Provides a listing of available BGP sessions for the project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"bgp_sessions": [
    		{
    			"id": "string",
    			"status": "string",
    			"learned_routes": [
    				"string"
    			],
    			"address_family": "string",
    			"device": {
    				"href": "string"
    			},
    			"href": "string"
    		}
    	]
    } 

Create a spot market request

/projects/{id}/spot-market-request

Creates a new spot market request. Type-specific options (such as operating_system for baremetal devices) should be included in the main data structure alongside hostname and plan. The features attribute allows you to optionally specify what features your server should have. For example, if you require a server with a TPM chip, you may specify { "features": { "tpm": "required" } } (or { "features": ["tpm"] } in shorthand). The request will fail if there are no available servers matching your criteria. Alternatively, if you do not require a certain feature, but would prefer to be assigned a server with that feature if there are any available, you may specify that feature with a preferred value (see the example request below). The request will not fail if we have no servers with that feature in our inventory.

  • Parameters
  • id
    string  (required) in path

    Project UUID

    spot_market_request
     (required) in body

    Spot Market Request to create

    {
    	"instance_attributes": "object",
    	"devices_min": "integer",
    	"devices_max": "integer",
    	"max_bid_price": "number",
    	"end_at": "string",
    	"facilities": [
    		"string"
    	]
    } 
  • {
    	"id": "string",
    	"devices_min": "integer",
    	"devices_max": "integer",
    	"max_bid_price": "number",
    	"created_at": "string",
    	"end_at": "string",
    	"href": "string",
    	"facilities": {
    		"href": "string"
    	},
    	"project": {
    		"href": "string"
    	},
    	"instances": {
    		"href": "string"
    	}
    } 

List spot market requests

GET
/projects/{id}/spot-market-request

View all spot market requests for a given project.

  • Parameters
  • id
    string  (required) in path

    Project UUID

  •  
  • Response Body Show Hide
  • Request URL Show Hide
  • cURL Show Hide
  • {
    	"spot_market_requests": [
    		{
    			"id": "string",
    			"devices_min": "integer",
    			"devices_max": "integer",
    			"max_bid_price": "number",
    			"created_at": "string",
    			"end_at": "string",
    			"href": "string",
    			"facilities": {
    				"href": "string"
    			},
    			"project": {
    				"href": "string"
    			},
    			"instances": {
    				"href": "string"
    			}
    		}
    	]
    } 

Create a spot market request

/projects/{id}/spot-market-requests

Creates a new spot market request.

Type-specific options (such as operating_system for baremetal devices) should be included in the main data structure alongside hostname and plan.

The features attribute allows you to optionally specify what features your server should have. For example, if you require a server with a TPM chip, you may specify { "features": { "tpm": "required" } } (or { "features": ["tpm"] } in shorthand).

The request will fail if there are no available servers matching your criteria. Alternatively, if you do not require a certain feature, but would prefer to be assigned a server with that feature if there are any available, you may specify that feature with a preferred value (see the example request below).

The request will not fail if we have no servers with that feature in our inventory.