### GET /api/vpn/tunnels/{id}/ Source: https://demo.netbox.dev/api/schema Get a tunnel object. ```markdown ### Parameters - **id** (integer, path, required): A unique integer value identifying this tunnel. ### Responses #### 200 - response **Tunnel** - **id** (integer) (required) - **url** (string (uri)) (required) - **display_url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **status** (object) (required) - **value** (string (planned|active|disabled)): * `planned` - Planned * `active` - Active * `disabled` - Disabled ("planned"|"active"|"disabled") - **label** (string (Planned|Active|Disabled)) ("Planned"|"Active"|"Disabled") - **group** (object): Base serializer class for models inheriting from OrganizationalModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **slug** (string) (required) - **description** (string) - **tunnel_count** (integer (int64)) (required) - **encapsulation** (object) (required) - **ipsec_profile** (object): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **description** (string) - **tenant** (object): Base serializer class for models inheriting from PrimaryModel. - **tunnel_id** (integer (int64)) - **description** (string) - **owner** (object): Extends the built-in ModelSerializer to enforce calling full_clean() on a copy of the associated instance during validation. (DRF does not do this by default; see https://github.com/encode/django-rest-framework/issues/3144) - **comments** (string) - **tags** (array (NestedTag)) Array items: - **custom_fields** (object) - **created** (string (date-time)) (required) - **last_updated** (string (date-time)) (required) - **terminations_count** (integer (int64)) (required) ### Example Usage ```bash curl -X GET "https://api.example.com/api/vpn/tunnels/{id}/" ``` ``` -------------------------------- ### POST /api/dcim/virtual-device-contexts/ Source: https://demo.netbox.dev/api/schema Post a list of virtual device context objects. ```markdown ### Request Body **Content-Type:** application/json - **name** (string) (required) - **device** (integer) (required) - **identifier** (integer) - **tenant** (integer) - **primary_ip4** (integer) - **primary_ip6** (integer) - **status** (string (active|planned|offline)) (required): * `active` - Active * `planned` - Planned * `offline` - Offline ("active"|"planned"|"offline") - **description** (string) - **owner** (integer) - **comments** (string) - **tags** (array (NestedTagRequest)) Array items: - **name** (string) (required) - **slug** (string) (required) - **color** (string) - **custom_fields** (object) **Content-Type:** multipart/form-data - **name** (string) (required) - **device** (integer) (required) - **identifier** (integer) - **tenant** (integer) - **primary_ip4** (integer) - **primary_ip6** (integer) - **status** (string (active|planned|offline)) (required): * `active` - Active * `planned` - Planned * `offline` - Offline ("active"|"planned"|"offline") - **description** (string) - **owner** (integer) - **comments** (string) - **tags** (array (NestedTagRequest)) Array items: - **name** (string) (required) - **slug** (string) (required) - **color** (string) - **custom_fields** (object) ### Responses #### 201 - response **VirtualDeviceContext** - **id** (integer) (required) - **url** (string (uri)) (required) - **display_url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **device** (object) (required): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) - **description** (string) - **identifier** (integer) - **tenant** (object): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **slug** (string) (required) - **description** (string) - **primary_ip** (object) (required): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **family** (object) (required) - **value** (integer): * `4` - IPv4 * `6` - IPv6 ("4"|"6") - **label** (string (IPv4|IPv6)) ("IPv4"|"IPv6") - **address** (string) (required) - **nat_inside** (object): Represents an object related through a ForeignKey field. On write, it accepts a primary key (PK) value or a dictionary of attributes which can be used to uniquely identify the related object. This class should be subclassed to return a full representation of the related object on read. - **id** (integer) (required) - **url** (string (uri)) (required) - **display_url** (string (uri)) (required) - **display** (string) (required) - **family** (integer) (required) - **address** (string) (required) - **nat_outside** (array (NestedIPAddress)) (required) Array items: - **description** (string) - **primary_ip4** (object): Base serializer class for models inheriting from PrimaryModel. - **primary_ip6** (object): Base serializer class for models inheriting from PrimaryModel. - **status** (object) (required) - **description** (string) - **owner** (object): Extends the built-in ModelSerializer to enforce calling full_clean() on a copy of the associated instance during validation. (DRF does not do this by default; see https://github.com/encode/django-rest-framework/issues/3144) - **comments** (string) - **tags** (array (NestedTag)) Array items: - **custom_fields** (object) - **created** (string (date-time)) (required) - **last_updated** (string (date-time)) (required) - **interface_count** (integer (int64)) (required) ### Example Usage ```bash curl -X POST "https://api.example.com/api/dcim/virtual-device-contexts/" \ -H "Content-Type: application/json" \ -d '{ "name": "string", "device": "value", "identifier": "0", "tenant": "value", "primary_ip4": "value", "primary_ip6": "value", "status": "active", "description": "string", "owner": "value", "comments": "string", "tags": [ "value" ], "custom_fields": "value" }' ``` ``` -------------------------------- ### GET /api/vpn/tunnels/ Source: https://demo.netbox.dev/api/schema Get a list of tunnel objects. ```markdown ### Parameters - **contact** (array (integer), query, optional): Contact - **contact__n** (array (integer), query, optional): Contact - **contact_group** (array (string), query, optional) - **contact_group__n** (array (string), query, optional) - **contact_role** (array (integer), query, optional): Contact Role - **contact_role__n** (array (integer), query, optional): Contact Role - **created** (array (string (date-time)), query, optional) - **created__empty** (array (string (date-time)), query, optional) - **created__gt** (array (string (date-time)), query, optional) - **created__gte** (array (string (date-time)), query, optional) - **created__lt** (array (string (date-time)), query, optional) - **created__lte** (array (string (date-time)), query, optional) - **created__n** (array (string (date-time)), query, optional) - **created_by_request** (string (uuid), query, optional) - **description** (array (string), query, optional) - **description__empty** (boolean, query, optional) - **description__ic** (array (string), query, optional) - **description__ie** (array (string), query, optional) - **description__iew** (array (string), query, optional) - **description__iregex** (array (string), query, optional) - **description__isw** (array (string), query, optional) - **description__n** (array (string), query, optional) - **description__nic** (array (string), query, optional) - **description__nie** (array (string), query, optional) - **description__niew** (array (string), query, optional) - **description__nisw** (array (string), query, optional) - **description__regex** (array (string), query, optional) - **encapsulation** (array (string), query, optional) - **encapsulation__empty** (boolean, query, optional) - **encapsulation__ic** (array (string), query, optional) - **encapsulation__ie** (array (string), query, optional) - **encapsulation__iew** (array (string), query, optional) - **encapsulation__iregex** (array (string), query, optional) - **encapsulation__isw** (array (string), query, optional) - **encapsulation__n** (array (string), query, optional) - **encapsulation__nic** (array (string), query, optional) - **encapsulation__nie** (array (string), query, optional) - **encapsulation__niew** (array (string), query, optional) - **encapsulation__nisw** (array (string), query, optional) - **encapsulation__regex** (array (string), query, optional) - **group** (array (string), query, optional): Tunnel group (slug) - **group__n** (array (string), query, optional): Tunnel group (slug) - **group_id** (array (integer), query, optional): Tunnel group (ID) - **group_id__n** (array (integer), query, optional): Tunnel group (ID) - **id** (array (integer (int32)), query, optional) - **id__empty** (boolean, query, optional) - **id__gt** (array (integer (int32)), query, optional) - **id__gte** (array (integer (int32)), query, optional) - **id__lt** (array (integer (int32)), query, optional) - **id__lte** (array (integer (int32)), query, optional) - **id__n** (array (integer (int32)), query, optional) - **ipsec_profile** (array (string), query, optional): IPSec profile (name) - **ipsec_profile__n** (array (string), query, optional): IPSec profile (name) - **ipsec_profile_id** (array (integer), query, optional): IPSec profile (ID) - **ipsec_profile_id__n** (array (integer), query, optional): IPSec profile (ID) - **last_updated** (array (string (date-time)), query, optional) - **last_updated__empty** (array (string (date-time)), query, optional) - **last_updated__gt** (array (string (date-time)), query, optional) - **last_updated__gte** (array (string (date-time)), query, optional) - **last_updated__lt** (array (string (date-time)), query, optional) - **last_updated__lte** (array (string (date-time)), query, optional) - **last_updated__n** (array (string (date-time)), query, optional) - **limit** (integer, query, optional): Number of results to return per page. - **modified_by_request** (string (uuid), query, optional) - **name** (array (string), query, optional) - **name__empty** (boolean, query, optional) - **name__ic** (array (string), query, optional) - **name__ie** (array (string), query, optional) - **name__iew** (array (string), query, optional) - **name__iregex** (array (string), query, optional) - **name__isw** (array (string), query, optional) - **name__n** (array (string), query, optional) - **name__nic** (array (string), query, optional) - **name__nie** (array (string), query, optional) - **name__niew** (array (string), query, optional) - **name__nisw** (array (string), query, optional) - **name__regex** (array (string), query, optional) - **offset** (integer, query, optional): The initial index from which to return the results. - **ordering** (string, query, optional): Which field to use when ordering the results. - **owner** (array (string), query, optional): Owner (name) - **owner__n** (array (string), query, optional): Owner (name) - **owner_group** (array (string), query, optional): Owner Group (name) - **owner_group__n** (array (string), query, optional): Owner Group (name) - **owner_group_id** (array (integer), query, optional): Owner Group (ID) - **owner_group_id__n** (array (integer), query, optional): Owner Group (ID) - **owner_id** (array (integer), query, optional): Owner (ID) - **owner_id__n** (array (integer), query, optional): Owner (ID) - **q** (string, query, optional): Search - **start** (integer, query, optional): Cursor-based pagination: return results with pk >= start, ordered by pk. Mutually exclusive with offset. - **status** (array (string), query, optional) - **status__empty** (boolean, query, optional) - **status__ic** (array (string), query, optional) - **status__ie** (array (string), query, optional) - **status__iew** (array (string), query, optional) - **status__iregex** (array (string), query, optional) - **status__isw** (array (string), query, optional) - **status__n** (array (string), query, optional) - **status__nic** (array (string), query, optional) - **status__nie** (array (string), query, optional) - **status__niew** (array (string), query, optional) - **status__nisw** (array (string), query, optional) - **status__regex** (array (string), query, optional) - **tag** (array (string), query, optional) - **tag__n** (array (string), query, optional) - **tag_id** (array (integer), query, optional) - **tag_id__n** (array (integer), query, optional) - **tenant** (array (string), query, optional): Tenant (slug) - **tenant__n** (array (string), query, optional): Tenant (slug) - **tenant_group** (array (string), query, optional) - **tenant_group__n** (array (string), query, optional) - **tenant_group_id** (array (string), query, optional) - **tenant_group_id__n** (array (string), query, optional) - **tenant_id** (array (integer), query, optional): Tenant (ID) - **tenant_id__n** (array (integer), query, optional): Tenant (ID) - **tunnel_id** (array (integer (int32)), query, optional) - **tunnel_id__empty** (boolean, query, optional) - **tunnel_id__gt** (array (integer (int32)), query, optional) - **tunnel_id__gte** (array (integer (int32)), query, optional) - **tunnel_id__lt** (array (integer (int32)), query, optional) - **tunnel_id__lte** (array (integer (int32)), query, optional) - **tunnel_id__n** (array (integer (int32)), query, optional) - **updated_by_request** (string (uuid), query, optional) ### Responses #### 200 - response **PaginatedTunnelList** - **count** (integer) (required) (example: 123) - **next** (string (uri)) (example: "http://api.example.org/accounts/?offset=400&limit=100") - **previous** (string (uri)) (example: "http://api.example.org/accounts/?offset=200&limit=100") - **results** (array (Tunnel)) (required) Array items: - **id** (integer) (required) - **url** (string (uri)) (required) - **display_url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **status** (object) (required) - **value** (string (planned|active|disabled)): * `planned` - Planned * `active` - Active * `disabled` - Disabled ("planned"|"active"|"disabled") - **label** (string (Planned|Active|Disabled)) ("Planned"|"Active"|"Disabled") - **group** (object): Base serializer class for models inheriting from OrganizationalModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **slug** (string) (required) - **description** (string) - **tunnel_count** (integer (int64)) (required) - **encapsulation** (object) (required) - **ipsec_profile** (object): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **description** (string) - **tenant** (object): Base serializer class for models inheriting from PrimaryModel. - **tunnel_id** (integer (int64)) - **description** (string) - **owner** (object): Extends the built-in ModelSerializer to enforce calling full_clean() on a copy of the associated instance during validation. (DRF does not do this by default; see https://github.com/encode/django-rest-framework/issues/3144) - **comments** (string) - **tags** (array (NestedTag)) Array items: - **custom_fields** (object) - **created** (string (date-time)) (required) - **last_updated** (string (date-time)) (required) - **terminations_count** (integer (int64)) (required) ### Example Usage ```bash curl -X GET "https://api.example.com/api/vpn/tunnels/?contact=item1,item2&contact__n=item1,item2&contact_group=item1,item2&contact_group__n=item1,item2&contact_role=item1,item2&contact_role__n=item1,item2&created=item1,item2&created__empty=item1,item2&created__gt=item1,item2&created__gte=item1,item2&created__lt=item1,item2&created__lte=item1,item2&created__n=item1,item2&created_by_request=string&description=item1,item2&description__empty=true&description__ic=item1,item2&description__ie=item1,item2&description__iew=item1,item2&description__iregex=item1,item2&description__isw=item1,item2&description__n=item1,item2&description__nic=item1,item2&description__nie=item1,item2&description__niew=item1,item2&description__nisw=item1,item2&description__regex=item1,item2&encapsulation=item1,item2&encapsulation__empty=true&encapsulation__ic=item1,item2&encapsulation__ie=item1,item2&encapsulation__iew=item1,item2&encapsulation__iregex=item1,item2&encapsulation__isw=item1,item2&encapsulation__n=item1,item2&encapsulation__nic=item1,item2&encapsulation__nie=item1,item2&encapsulation__niew=item1,item2&encapsulation__nisw=item1,item2&encapsulation__regex=item1,item2&group=item1,item2&group__n=item1,item2&group_id=item1,item2&group_id__n=item1,item2&id=item1,item2&id__empty=true&id__gt=item1,item2&id__gte=item1,item2&id__lt=item1,item2&id__lte=item1,item2&id__n=item1,item2&ipsec_profile=item1,item2&ipsec_profile__n=item1,item2&ipsec_profile_id=item1,item2&ipsec_profile_id__n=item1,item2&last_updated=item1,item2&last_updated__empty=item1,item2&last_updated__gt=item1,item2&last_updated__gte=item1,item2&last_updated__lt=item1,item2&last_updated__lte=item1,item2&last_updated__n=item1,item2&limit=0&modified_by_request=string&name=item1,item2&name__empty=true&name__ic=item1,item2&name__ie=item1,item2&name__iew=item1,item2&name__iregex=item1,item2&name__isw=item1,item2&name__n=item1,item2&name__nic=item1,item2&name__nie=item1,item2&name__niew=item1,item2&name__nisw=item1,item2&name__regex=item1,item2&offset=0&ordering=string&owner=item1,item2&owner__n=item1,item2&owner_group=item1,item2&owner_group__n=item1,item2&owner_group_id=item1,item2&owner_group_id__n=item1,item2&owner_id=item1,item2&owner_id__n=item1,item2&q=string&start=0&status=item1,item2&status__empty=true&status__ic=item1,item2&status__ie=item1,item2&status__iew=item1,item2&status__iregex=item1,item2&status__isw=item1,item2&status__n=item1,item2&status__nic=item1,item2&status__nie=item1,item2&status__niew=item1,item2&status__nisw=item1,item2&status__regex=item1,item2&tag=item1,item2&tag__n=item1,item2&tag_id=item1,item2&tag_id__n=item1,item2&tenant=item1,item2&tenant__n=item1,item2&tenant_group=item1,item2&tenant_group__n=item1,item2&tenant_group_id=item1,item2&tenant_group_id__n=item1,item2&tenant_id=item1,item2&tenant_id__n=item1,item2&tunnel_id=item1,item2&tunnel_id__empty=true&tunnel_id__gt=item1,item2&tunnel_id__gte=item1,item2&tunnel_id__lt=item1,item2&tunnel_id__lte=item1,item2&tunnel_id__n=item1,item2&updated_by_request=string" ``` ``` -------------------------------- ### POST /api/virtualization/virtual-machines/ Source: https://demo.netbox.dev/api/schema Post a list of virtual machine objects. ```markdown ### Request Body **Content-Type:** application/json - **name** (string) (required) - **virtual_machine_type** (integer) - **role** (integer) - **status** (string (offline|active|planned|staged|failed|decommissioning|paused)): * `offline` - Offline * `active` - Active * `planned` - Planned * `staged` - Staged * `failed` - Failed * `decommissioning` - Decommissioning * `paused` - Paused ("offline"|"active"|"planned"|"staged"|"failed"|"decommissioning"|"paused") - **start_on_boot** (string (on|off|laststate)): * `on` - On * `off` - Off * `laststate` - Last State ("on"|"off"|"laststate") - **site** (integer) - **cluster** (integer) - **device** (integer) - **platform** (integer) - **primary_ip4** (integer) - **primary_ip6** (integer) - **vcpus** (number (double)) - **memory** (integer) - **disk** (integer) - **description** (string) - **serial** (string) - **tenant** (integer) - **owner** (integer) - **comments** (string) - **tags** (array (NestedTagRequest)) Array items: - **name** (string) (required) - **slug** (string) (required) - **color** (string) - **local_context_data** (unknown): Local config context data takes precedence over source contexts in the final rendered config context - **config_template** (integer) - **custom_fields** (object) **Content-Type:** multipart/form-data - **name** (string) (required) - **virtual_machine_type** (integer) - **role** (integer) - **status** (string (offline|active|planned|staged|failed|decommissioning|paused)): * `offline` - Offline * `active` - Active * `planned` - Planned * `staged` - Staged * `failed` - Failed * `decommissioning` - Decommissioning * `paused` - Paused ("offline"|"active"|"planned"|"staged"|"failed"|"decommissioning"|"paused") - **start_on_boot** (string (on|off|laststate)): * `on` - On * `off` - Off * `laststate` - Last State ("on"|"off"|"laststate") - **site** (integer) - **cluster** (integer) - **device** (integer) - **platform** (integer) - **primary_ip4** (integer) - **primary_ip6** (integer) - **vcpus** (number (double)) - **memory** (integer) - **disk** (integer) - **description** (string) - **serial** (string) - **tenant** (integer) - **owner** (integer) - **comments** (string) - **tags** (array (NestedTagRequest)) Array items: - **name** (string) (required) - **slug** (string) (required) - **color** (string) - **local_context_data** (unknown): Local config context data takes precedence over source contexts in the final rendered config context - **config_template** (integer) - **custom_fields** (object) ### Responses #### 201 - response **VirtualMachineWithConfigContext** - **id** (integer) (required) - **url** (string (uri)) (required) - **display_url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **virtual_machine_type** (object): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **slug** (string) (required) - **description** (string) - **role** (object): Base serializer class for models inheriting from NestedGroupModel. - **status** (object) - **value** (string (offline|active|planned|staged|failed|decommissioning|paused)): * `offline` - Offline * `active` - Active * `planned` - Planned * `staged` - Staged * `failed` - Failed * `decommissioning` - Decommissioning * `paused` - Paused ("offline"|"active"|"planned"|"staged"|"failed"|"decommissioning"|"paused") - **label** (string (Offline|Active|Planned|Staged|Failed|Decommissioning|Paused)) ("Offline"|"Active"|"Planned"|"Staged"|"Failed"|"Decommissioning"|"Paused") - **start_on_boot** (object) - **site** (object): Base serializer class for models inheriting from PrimaryModel. - **cluster** (object): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **description** (string) - **virtualmachine_count** (integer (int64)) (required) - **device** (object): Base serializer class for models inheriting from PrimaryModel. - **platform** (object): Base serializer class for models inheriting from NestedGroupModel. - **primary_ip** (object) (required): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **family** (object) (required) - **address** (string) (required) - **nat_inside** (object): Represents an object related through a ForeignKey field. On write, it accepts a primary key (PK) value or a dictionary of attributes which can be used to uniquely identify the related object. This class should be subclassed to return a full representation of the related object on read. - **id** (integer) (required) - **url** (string (uri)) (required) - **display_url** (string (uri)) (required) - **display** (string) (required) - **family** (integer) (required) - **address** (string) (required) - **nat_outside** (array (NestedIPAddress)) (required) Array items: - **description** (string) - **primary_ip4** (object): Base serializer class for models inheriting from PrimaryModel. - **primary_ip6** (object): Base serializer class for models inheriting from PrimaryModel. - **vcpus** (number (double)) - **memory** (integer) - **disk** (integer) - **description** (string) - **serial** (string) - **tenant** (object): Base serializer class for models inheriting from PrimaryModel. - **owner** (object): Extends the built-in ModelSerializer to enforce calling full_clean() on a copy of the associated instance during validation. (DRF does not do this by default; see https://github.com/encode/django-rest-framework/issues/3144) - **comments** (string) - **tags** (array (NestedTag)) Array items: - **local_context_data** (unknown): Local config context data takes precedence over source contexts in the final rendered config context - **config_template** (object): Adds an `owner` field for models which have a ForeignKey to users.Owner. - **custom_fields** (object) - **created** (string (date-time)) (required) - **last_updated** (string (date-time)) (required) - **interface_count** (integer) (required) - **virtual_disk_count** (integer) (required) - **config_context** (unknown) (required) ### Example Usage ```bash curl -X POST "https://api.example.com/api/virtualization/virtual-machines/" \ -H "Content-Type: application/json" \ -d '{ "name": "string", "virtual_machine_type": "value", "role": "value", "status": "offline", "start_on_boot": "on", "site": "value", "cluster": "value", "device": "value", "platform": "value", "primary_ip4": "value", "primary_ip6": "value", "vcpus": "0", "memory": "0", "disk": "0", "description": "string", "serial": "string", "tenant": "value", "owner": "value", "comments": "string", "tags": [ "value" ], "local_context_data": "value", "config_template": "value", "custom_fields": "value" }' ``` ``` -------------------------------- ### POST /api/circuits/virtual-circuits/ Source: https://demo.netbox.dev/api/schema Post a list of virtual circuit objects. ```markdown ### Request Body **Content-Type:** application/json - **cid** (string) (required): Unique circuit ID - **provider_network** (integer) (required) - **provider_account** (integer) - **type** (integer) (required) - **status** (string (planned|provisioning|active|offline|deprovisioning|decommissioned)): * `planned` - Planned * `provisioning` - Provisioning * `active` - Active * `offline` - Offline * `deprovisioning` - Deprovisioning * `decommissioned` - Decommissioned ("planned"|"provisioning"|"active"|"offline"|"deprovisioning"|"decommissioned") - **tenant** (integer) - **description** (string) - **owner** (integer) - **comments** (string) - **tags** (array (NestedTagRequest)) Array items: - **name** (string) (required) - **slug** (string) (required) - **color** (string) - **custom_fields** (object) **Content-Type:** multipart/form-data - **cid** (string) (required): Unique circuit ID - **provider_network** (integer) (required) - **provider_account** (integer) - **type** (integer) (required) - **status** (string (planned|provisioning|active|offline|deprovisioning|decommissioned)): * `planned` - Planned * `provisioning` - Provisioning * `active` - Active * `offline` - Offline * `deprovisioning` - Deprovisioning * `decommissioned` - Decommissioned ("planned"|"provisioning"|"active"|"offline"|"deprovisioning"|"decommissioned") - **tenant** (integer) - **description** (string) - **owner** (integer) - **comments** (string) - **tags** (array (NestedTagRequest)) Array items: - **name** (string) (required) - **slug** (string) (required) - **color** (string) - **custom_fields** (object) ### Responses #### 201 - response **VirtualCircuit** - **id** (integer) (required) - **url** (string (uri)) (required) - **display_url** (string (uri)) (required) - **display** (string) (required) - **cid** (string) (required): Unique circuit ID - **provider_network** (object) (required): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **description** (string) - **provider_account** (object): Base serializer class for models inheriting from PrimaryModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) - **account** (string) (required) - **description** (string) - **type** (object) (required): Base serializer class for models inheriting from OrganizationalModel. - **id** (integer) (required) - **url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **slug** (string) (required) - **description** (string) - **virtual_circuit_count** (integer (int64)) (required) - **status** (object) - **value** (string (planned|provisioning|active|offline|deprovisioning|decommissioned)): * `planned` - Planned * `provisioning` - Provisioning * `active` - Active * `offline` - Offline * `deprovisioning` - Deprovisioning * `decommissioned` - Decommissioned ("planned"|"provisioning"|"active"|"offline"|"deprovisioning"|"decommissioned") - **label** (string (Planned|Provisioning|Active|Offline|Deprovisioning|Decommissioned)) ("Planned"|"Provisioning"|"Active"|"Offline"|"Deprovisioning"|"Decommissioned") - **tenant** (object): Base serializer class for models inheriting from PrimaryModel. - **description** (string) - **owner** (object): Extends the built-in ModelSerializer to enforce calling full_clean() on a copy of the associated instance during validation. (DRF does not do this by default; see https://github.com/encode/django-rest-framework/issues/3144) - **comments** (string) - **tags** (array (NestedTag)) Array items: - **id** (integer) (required) - **url** (string (uri)) (required) - **display_url** (string (uri)) (required) - **display** (string) (required) - **name** (string) (required) - **slug** (string) (required) - **color** (string) - **custom_fields** (object) - **created** (string (date-time)) (required) - **last_updated** (string (date-time)) (required) ### Example Usage ```bash curl -X POST "https://api.example.com/api/circuits/virtual-circuits/" \ -H "Content-Type: application/json" \ -d '{ "cid": "string", "provider_network": "value", "provider_account": "value", "type": "value", "status": "planned", "tenant": "value", "description": "string", "owner": "value", "comments": "string", "tags": [ "value" ], "custom_fields": "value" }' ``` ```