just/mocks_
mockzilla.org →
Catalog /data /IX-API

IX-API

PROVIDER · Ix Api SPEC v2.5.0 · OpenAPI 3.0.0 MOCK · LIVE
▸ TRY IT
https://api.justmocks.com/ix-api
Open mock →

Emulate the IX-API in seconds. This API allows to configure/change/delete Internet Exchange services.

[01]

About

overview

Mock the IX-API as a turnkey Mockzilla sim with 106 OpenAPI endpoints, realistic JSON payloads, no upstream signup or sandbox keys. This API allows to configure/change/delete Internet Exchange services. Methods: 61x GET, 16x POST, 11x DELETE, 9x PATCH, 9x PUT. Top resource groups: network-services, connections, network-service-configs, port-reservations. Hit https://api.justmocks.com/ix-api for the Mockzilla API Explorer landing and per-endpoint sample requests.

Endpoints
106 across 26 resource groups
Methods
GET 61 · POST 16 · PUT 9 · PATCH 9 · DEL 11 none deprecated
OpenAPI
3.0.0 spec version 2.5.0
Source spec
713 KB · YAML
[02]

Endpoints

106 operations · 26 resource groups
GET /account
account
Get the currently authenticated Account. Mocked via Mockzilla.
GET /accounts
accounts
Retrieve a list of Accounts. This includes all accounts the currently authorized account is managing and the current account itself. Also discoverable accounts will be included, however sensitive properties, like address or external_ref will either not be present or redacted.
POST /accounts
accounts
Create a new account.
DEL /accounts/{id}
accounts
Accounts can be deleted, when all services and configs are decommissioned or the account is not longer referenced e.g. as a managing_account or billing_account. Deleting an account will cascade to contacts and role-assignments. The request will immediately fail, if the above preconditions are not met.
GET /accounts/{id}
accounts
Get a single account.
PATCH /accounts/{id}
accounts
Update an account. Available as a Mockzilla mock endpoint.
PUT /accounts/{id}
accounts
DEPRECATION NOTICE: This operation will be removed in favor of using PATCH for all updates. Update the entire account.
POST /auth/refresh
auth
Reauthenticate the API user, issue a new access_token and refresh_token pair by providing the refresh_token in the request body.
POST /auth/token
auth
Authenticate an API user identified by api_key and api_secret.
GET /availability-zones
availability-zones
List all availability zones available on the platform.
GET /availability-zones/{id}
availability-zones
Get a single availability zone by id. Mockzilla mock: no signup, no API key.
GET /connections
connections
List all connections.
POST /connections
connections
Create a new connection and request ports allocation. Two workflows for allocating ports is supported and dependent on the cross_connect_initiator property of the corresponding product-offering: When the initiator is the subscriber, a Letter Of Authorization (LOA) can be downloaded from the /connection//loa resource. In case the exchange is the initiator, the LOA can be uploaded to this resource. Creating a connection will also create PortReservations. See the port_quantity and subscriber_side_demarcs attributes for details. Please refer to the internet exchange's api usage guide for implementation specific details.
DEL /connections/{id}
connections
Request decommissioning the connection. The cancellation policy of the connection applies here and is independent from the policy of the network-service and network-service-config using the connection. The connection will assume the state decommission_requested. Associated port-reservation will be also marked for decommissining and ports will be deallocated. The decommissioning request will not cascade to network services and configs.
GET /connections/{id}
connections
Read a connection.
PATCH /connections/{id}
connections
Update a connection. Served by the Mockzilla mock runtime.
PUT /connections/{id}
connections
DEPRECATION NOTICE: This operation will be removed in favor of using PATCH for all updates. Update a connection.
GET /connections/{id}/cancellation-policy
connections
The cancellation-policy can be queried to answer the questions: If I cancel my subscription, when will it be technically decommissioned? If I cancel my subscription, until what date will I be charged? When the query parameter decommision_at is not provided it will provide the first possible cancellation date and charge period if cancelled at above date. The granularity of the date field is a day, the start and end of which are to be interpreted by the IXP (some may use UTC, some may use their local time zone).
GET /connections/{id}/loa
connections
Download the Letter Of Authorization associated with the connection. In case of a subscriber initiated cross-connect, it will be provided by the exchange.
POST /connections/{id}/loa
connections
Upload a Letter Of Authorization for this connection. The LOA is valid for the entire connection and must include all ports.
GET /connections/{id}/statistics
connections
Read a Connections aggregated statistics. A start and end query parameter can be used to retrieve the aggregated traffic for a given window. In this case the key of the returned statistics is custom. With a given start and end window, the resolution for the aggregated data is chosen by the implementation. You need to check the accuracy attribute of the aggregate, to see if the data can be used for the desired usecase. The accuracy is the ratio of total samples to expected samples. If no start or end parameter is given, a sliding window is assumed and key value pairs of resolutions and aggregated statistics are returned. Mocked via Mockzilla.
GET /connections/{id}/statistics/{aggregate}/timeseries
connections
Read a Connections aggregated timeseries. The resolution is defined by the aggregate.
GET /contacts
contacts
List available contacts managed by the authorized account.
POST /contacts
contacts
Create a new contact.
DEL /contacts/{id}
contacts
Remove a contact. Please note, that a contact can only be removed if it is not longer in use in a network service or config through a role assignment.
GET /contacts/{id}
contacts
Get a contact by it's id. Available as a Mockzilla mock endpoint.
PATCH /contacts/{id}
contacts
Update a contact.
PUT /contacts/{id}
contacts
DEPRECATION NOTICE: This operation will be removed in favor of using PATCH for all updates. Update a contact.
GET /devices
devices
List available devices
GET /devices/{id}
devices
Get a specific device identified by id
GET /extensions
extensions
List provider extensions to the IX-API. Mockzilla mock: no signup, no API key.
GET /facilities
facilities
Get a (filtered) list of facilities.
GET /facilities/{id}
facilities
Retrieve a facility by id
GET /health
health
Get the IX-API service health status.
GET /implementation
implementation
Get the API implementation details.
GET /ips
ips
List all ip addresses (and prefixes). Served by the Mockzilla mock runtime.
POST /ips
ips
Add an ip host address or network prefix.
GET /ips/{id}
ips
Get a single ip addresses by it's id.
PATCH /ips/{id}
ips
Update an ip address. You can only update IP addresses within your current scope. Not all addresses you can read you can update. If the ip address was allocated for you, you might not be able to change anything but the fqdn.
PUT /ips/{id}
ips
DEPRECATION NOTICE: This operation will be removed in favor of using PATCH for all updates. Update an ip address object. You can only update IP addresses within your current scope. Not all addresses you can read you can update. If the ip address was allocated for you, you might not be able to change anything but the fqdn.
GET /macs
macs
List all mac addresses managed by the authorized customer. Mocked via Mockzilla.
POST /macs
macs
Register a mac address.
DEL /macs/{id}
macs
Remove a mac address.
GET /macs/{id}
macs
Get a single mac address by it's id.
GET /member-joining-rules
member-joining-rules
Get a list of joining rules
POST /member-joining-rules
member-joining-rules
Create a member joining rule. Available as a Mockzilla mock endpoint.
DEL /member-joining-rules/{id}
member-joining-rules
Delete a joining rule
GET /member-joining-rules/{id}
member-joining-rules
Get a single rule
PATCH /member-joining-rules/{id}
member-joining-rules
Update a joining rule
PUT /member-joining-rules/{id}
member-joining-rules
DEPRECATION NOTICE: This operation will be removed in favor of using PATCH for all updates. Update a joining rule.
GET /metro-area-networks
metro-area-networks
List all MetroAreaNetworks. Mockzilla mock: no signup, no API key.
GET /metro-area-networks/{id}
metro-area-networks
Retrieve a MetroAreaNetwork
GET /metro-areas
metro-areas
List all MetroAreas
GET /metro-areas/{id}
metro-areas
Get a single MetroArea
GET /network-feature-configs
network-feature-configs
Get all network feature configs.
POST /network-feature-configs
network-feature-configs
Create a configuration for a NetworkFeature defined in the NetworkFeatures collection. Served by the Mockzilla mock runtime.
DEL /network-feature-configs/{id}
network-feature-configs
Remove a network feature config. The network feature config will be marked as decommission_requested. Decommissioning a network feature config will not cascade to related services or service configs.
GET /network-feature-configs/{id}
network-feature-configs
Get a single network feature config.
PATCH /network-feature-configs/{id}
network-feature-configs
Update a network feature configuration.
PUT /network-feature-configs/{id}
network-feature-configs
DEPRECATION NOTICE: This operation will be removed in favor of using PATCH for all updates. Update a network feature configuration
GET /network-features
network-features
List available network features. Mocked via Mockzilla.
GET /network-features/{id}
network-features
Get a single network feature by it's id.
GET /network-service-configs
network-service-configs
Get all network-service-configs.
POST /network-service-configs
network-service-configs
Create a network-service-config.
DEL /network-service-configs/{id}
network-service-configs
Request decommissioning the network service configuration. The network service config will assume the state decommission_requested. This will cascade to related resources like network-feature-configs.
GET /network-service-configs/{id}
network-service-configs
Get a network-service-config. Available as a Mockzilla mock endpoint.
PATCH /network-service-configs/{id}
network-service-configs
Update an exisiting network-service-config.
PUT /network-service-configs/{id}
network-service-configs
DEPRECATION NOTICE: This operation will be removed in favor of using PATCH for all updates. Update an exisiting network-service-config
GET /network-service-configs/{id}/cancellation-policy
network-service-configs
The cancellation-policy can be queried to answer the questions: If I cancel my subscription, when will it be technically decommissioned? If I cancel my subscription, until what date will I be charged? When the query parameter decommision_at is not provided it will provide the first possible cancellation date and charge period if cancelled at above date. The granularity of the date field is a day, the start and end of which are to be interpreted by the IXP (some may use UTC, some may use their local time zone).
GET /network-service-configs/{id}/statistics
network-service-configs
Read the aggregated statistics of a NetworkServiceConfig. A start and end query parameter can be used to retrieve the aggregated traffic for a given window. In this case the key of the returned statistics is custom. With a given start and end window, the resolution for the aggregated data is chosen by the implementation. You need to check the accuracy attribute of the aggregate, to see if the data can be used for the desired usecase. The accuracy is the ratio of total samples to expected samples. If no start or end parameter is given, a sliding window is assumed and key value pairs of resolutions and aggregated statistics are returned.
GET /network-service-configs/{id}/statistics/{aggregate}/timeseries
network-service-configs
Read a NetworkServiceConfigs aggregated timeseries. The resolution is defined by the aggregate. Mockzilla mock: no signup, no API key.
GET /network-services
network-services
List available NetworkServices.
POST /network-services
network-services
Create a new network service
DEL /network-services/{id}
network-services
Request decomissioning of the network service. The network service will enter the state of decommission_requested. The request will cascade to related network service and feature configs. An optional request body can be provided to request a specific service termination date. If no date is given in the request body, it is assumed to be the earliest possible date. Possible values for decommission_at can be queried through the network_service_cancellation_policy_read operation. The response will contain the dates on which the changes will be effected.
GET /network-services/{id}
network-services
Get a specific network-service by id.
PATCH /network-services/{id}
network-services
Update a network service. Served by the Mockzilla mock runtime.
PUT /network-services/{id}
network-services
DEPRECATION NOTICE: This operation will be removed in favor of using PATCH for all updates. Update a network service.
GET /network-services/{id}/cancellation-policy
network-services
The cancellation-policy can be queried to answer the questions: If I cancel my service, when will it be technically decommissioned? If I cancel my service, until what date will I be charged? When the query parameter decommision_at is not provided it will provide the first possible cancellation date and charge period if cancelled at above date. The granularity of the date field is a day, the start and end of which are to be interpreted by the IXP (some may use UTC, some may use their local time zone).
DEL /network-services/{id}/change-request
network-services
Retract or reject a change to the network service.
GET /network-services/{id}/change-request
network-services
Get the change request.
POST /network-services/{id}/change-request
network-services
Request a change to the network service. The B-side participant in a peer-to-peer network service (p2p_vc) can issue a change request, expressing a desired change in the capacity. The change is accepted when the A-side has configured the network service and config with the new bandwidth. This is done using the network_service_update, network_service_partial_update, network_service_config_update or network_service_config_partial_update operations by the A-side. These changes can sometimes require a change of the product offering. The product offering may only differ in bandwidth. The network service will change its state from production into production_change_pending. A change can by rejected (by the A-side) or retracted (by the B-side) using the network_service_change_request_destroy operation. Only one change request may be issued at a time. A change request by the A-side is not a valid request and will be rejected. Mocked via Mockzilla.
GET /network-services/{id}/statistics
network-services
Read a NetworkServices aggregated statistics. A start and end query parameter can be used to retrieve the aggregated traffic for a given window. In this case the key of the returned statistics is custom. With a given start and end window, the resolution for the aggregated data is chosen by the implementation. You need to check the accuracy attribute of the aggregate, to see if the data can be used for the desired usecase. The accuracy is the ratio of total samples to expected samples. If no start or end parameter is given, a sliding window is assumed and key value pairs of resolutions and aggregated statistics are returned.
GET /network-services/{id}/statistics/{aggregate}/timeseries
network-services
Read a NetworkServices aggregated timeseries. The resolution is defined by the aggregate.
GET /pops
pops
List all PoPs
GET /pops/{id}
pops
Get a single point of presence
GET /port-reservations
port-reservations
List all port reservations. Available as a Mockzilla mock endpoint.
POST /port-reservations
port-reservations
Create a new PortReservation. Two workflows for allocating ports is supported and dependent on the cross_connect_initiator property of the corresponding product-offering: Individual LOAs can be uploaded and downloaded for each PortAllocation using the endpoint /port-reservations/{id}/loa. Please refer to the internet exchange's api usage guide for implementation specific details.
DEL /port-reservations/{id}
port-reservations
Request decommissioning the port-reservation. The associated port will be deallocated and removed from the connection.
GET /port-reservations/{id}
port-reservations
Retrieve a PortReservation.
PATCH /port-reservations/{id}
port-reservations
Update a port reservation.
PUT /port-reservations/{id}
port-reservations
DEPRECATION NOTICE: This operation will be removed in favor of using PATCH for all updates. Update a port reservation. Mockzilla mock: no signup, no API key.
GET /port-reservations/{id}/cancellation-policy
port-reservations
The cancellation-policy can be queried to answer the questions: If I cancel my subscription, when will it be technically decommissioned? If I cancel my subscription, until what date will I be charged? When the query parameter decommision_at is not provided it will provide the first possible cancellation date and charge period if cancelled at above date. The granularity of the date field is a day, the start and end of which are to be interpreted by the IXP (some may use UTC, some may use their local time zone).
GET /port-reservations/{id}/loa
port-reservations
Download the Letter Of Authorization associated with the port-reservation. In case of a subscriber initiated cross-connect, it will be provided by the exchange.
POST /port-reservations/{id}/loa
port-reservations
Upload a Letter Of Authorization for this PortReservation.
GET /ports
ports
List all ports.
GET /ports/{id}
ports
Retrieve a port. Served by the Mockzilla mock runtime.
GET /ports/{id}/statistics
ports
Read a Ports aggregated statistics. A start and end query parameter can be used to retrieve the aggregated traffic for a given window. In this case the key of the returned statistics is custom. With a given start and end window, the resolution for the aggregated data is chosen by the implementation. You need to check the accuracy attribute of the aggregate, to see if the data can be used for the desired usecase. The accuracy is the ratio of total samples to expected samples. If no start or end parameter is given, a sliding window is assumed and key value pairs of resolutions and aggregated statistics are returned.
GET /ports/{id}/statistics/{aggregate}/timeseries
ports
Read a Ports aggregated timeseries. The resolution is defined by the aggregate.
GET /product-offerings
product-offerings
List all (filtered) products-offerings available on the platform
GET /product-offerings/{id}
product-offerings
Get a single products-offering by id.
GET /role-assignments
role-assignments
List all role assignments for a contact. Mocked via Mockzilla.
POST /role-assignments
role-assignments
Assign a Role to a Contact. The contact needs to have all fields filled, which the role requires. If this is not the case a 400 UnableToFulfill will be returned.
DEL /role-assignments/{id}
role-assignments
Remove a role assignment from a contact. If the contact is still in use with a given role required, this will yield an UnableToFulfill error.
GET /role-assignments/{id}
role-assignments
Get a role assignment for a contact.
GET /roles
roles
List all roles available.
GET /roles/{id}
roles
Get a single Role. Available as a Mockzilla mock endpoint.