openapi: 3.1.0 info: title: emnify REST API version: 1.0.0 description: 'The emnify REST API gives programmatic access to the emnify IoT SuperNetwork — global cellular connectivity for IoT devices. Manage SIMs, endpoints (devices), service and tariff profiles, events, SMS, eSIM (SGP.32) profiles, organizations, users, API callbacks, and the Data Streamer. Authenticate with application tokens or user credentials; tokens are short-lived JWTs. Source: emnify developer documentation (https://docs.emnify.com/developers/api). This spec is assembled from the per-operation OpenAPI fragments published in the emnify llms-full.txt feed.' contact: name: emnify Developer Support url: https://docs.emnify.com/developers license: name: Proprietary url: https://www.emnify.com/legal servers: - url: https://cdn.emnify.net description: emnify REST API base host security: - BearerAuth: [] tags: - name: subpackage_applicationTokens x-display-name: Applicationtokens - name: subpackage_authentication x-display-name: Authentication - name: subpackage_automations x-display-name: Automations - name: subpackage_cloudConnect x-display-name: Cloudconnect - name: subpackage_customEvents x-display-name: Customevents - name: subpackage_endpoint x-display-name: Endpoint - name: subpackage_euicc x-display-name: Euicc - name: subpackage_euiccOperation x-display-name: Euiccoperation - name: subpackage_events x-display-name: Events - name: subpackage_integrations x-display-name: Integrations - name: subpackage_ipAddressSpaces x-display-name: Ipaddressspaces - name: subpackage_lookups x-display-name: Lookups - name: subpackage_operator x-display-name: Operator - name: subpackage_organization x-display-name: Organization - name: subpackage_passwordManagementAndActivation x-display-name: Passwordmanagementandactivation - name: subpackage_serviceLookupsAndConfiguration x-display-name: Servicelookupsandconfiguration - name: subpackage_serviceProfiles x-display-name: Serviceprofiles - name: subpackage_sim x-display-name: Sim - name: subpackage_simOperation x-display-name: Simoperation - name: subpackage_simUnlinkedProductStatistics x-display-name: Simunlinkedproductstatistics - name: subpackage_systemEvents x-display-name: Systemevents - name: subpackage_tagManagement x-display-name: Tagmanagement - name: subpackage_tariffPlans x-display-name: Tariffplans - name: subpackage_tariffProfiles x-display-name: Tariffprofiles - name: subpackage_userManagement x-display-name: Usermanagement - name: subpackage_workspaces x-display-name: Workspaces paths: /api/v1/api_callback: get: operationId: get-api-callback-ur-ls summary: Retrieve list of API callback URLs tags: - subpackage_integrations parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully retrieved a list of API Callback URLs content: application/json: schema: type: array items: description: Any type post: operationId: create-callback-url summary: Create a callback URL description: Create Callback URL tags: - subpackage_integrations parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Resource Created content: application/json: schema: $ref: '#/components/schemas/Integrations_CreateCallbackURL_Response_201' requestBody: description: Creating an API callback URL content: application/json: schema: description: Any type /api/v1/api_callback/{api_callback_id}: get: operationId: get-callback-ur-lby-id summary: Get a callback URL by ID tags: - subpackage_integrations parameters: - name: api_callback_id in: path description: A numeric ID of an API Callback URL required: true schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: API Callback by ID content: application/json: schema: description: Any type '404': description: API Callback with this ID not found content: application/json: schema: description: Any type delete: operationId: delete-callback-url summary: Delete a callback URL tags: - subpackage_integrations parameters: - name: api_callback_id in: path description: A numeric ID of an API Callback URL required: true schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Resource Deleted content: application/json: schema: $ref: '#/components/schemas/Integrations_DeleteCallbackURL_Response_200' '404': description: API Callback with this ID not found content: application/json: schema: description: Any type /api/v1/api_secret: get: operationId: get-api-callback-secret summary: List API callback secrets description: "Lists API callback secrets.\n\n\n The `secret` property itself is not returned in this call.\n\ \n" tags: - subpackage_integrations parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully retrieved a list of API Callback Secrets content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1ApiSecretGetResponsesContentApplicationJsonSchemaItems' post: operationId: create-callback-secret summary: Create a callback secret description: 'Creates a new secret that may be used by API callbacks. When an `api_secret` is assigned to a Service Profile with an API callback, API requests towards this URL will contain an `Authorization` header with a JSON Web Token. The `api_secret` is used as the **Signing Key** of the JWT. ' tags: - subpackage_integrations parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Resource Created content: application/json: schema: $ref: '#/components/schemas/Integrations_CreateCallbackSecret_Response_201' requestBody: content: application/json: schema: type: object properties: organisation_id: type: string purpose: type: string id: type: integer /api/v1/api_secret/{api_secret_id}: get: operationId: get-callback-secretby-id summary: Get a callback secret by ID tags: - subpackage_integrations parameters: - name: api_secret_id in: path description: A numeric ID of an API secret required: true schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: API Secret by ID content: application/json: schema: $ref: '#/components/schemas/Integrations_GetCallbackSecretbyID_Response_200' '404': description: API Callback with this ID not found content: application/json: schema: description: Any type delete: operationId: delete-callback-secret summary: Delete a callback secret tags: - subpackage_integrations parameters: - name: api_secret_id in: path description: A numeric ID of an API Secret required: true schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Resource Deleted content: application/json: schema: $ref: '#/components/schemas/Integrations_DeleteCallbackSecret_Response_200' '404': description: Secret with this ID not found content: application/json: schema: description: Any type /api/v1/application_token: get: operationId: application-token-get summary: List application tokens description: Returns the list of application tokens for the organisation of the requesting user. tags: - subpackage_applicationTokens parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1ApplicationTokenGetResponsesContentApplicationJsonSchemaItems' post: operationId: application-token-post summary: Create application token description: 'Creates a new application token. ID must not be specified, as it is auto-generated and returned in case of a successful JSON response. You can provide following fields with this request: * `description` (String, optional) * `expiry_date` with optional time + time zone (String, optional) * `ip` - IP Address in CIDR notation (String, optional) ' tags: - subpackage_applicationTokens parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Application tokens_ApplicationTokenPost_Response_200' '422': description: Unprocessable Entity. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/ApplicationTokenPostRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: description: type: string expiry_date: type: string ip: type: string /api/v1/application_token/{app_token_id}: patch: operationId: application-token-by-id-patch summary: Update application token description: 'The `description` of the token may be updated and the Application Token can be revoked by updating the `status`. The possible statuses of tokens are * `"id": 0` - Activated * `"id": 1` - Revoked ' tags: - subpackage_applicationTokens parameters: - name: app_token_id in: path description: application token ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} requestBody: content: application/json: schema: type: object properties: description: type: string status: $ref: '#/components/schemas/ApiV1ApplicationTokenAppTokenIdPatchRequestBodyContentApplicationJsonSchemaStatus' /api/v1/authenticate: post: operationId: authenticate summary: Retrieve authentication token description: "Returns a [JSON Web Token (JWT)](/developers/auth/jwts) `auth_token` for authenticating further requests\ \ to the API.\n\n\n This API path has a rate limit of 100 requests per IP in a 5-minute window.\n Make sure\ \ to store your authentication token to avoid hitting this limit.\n For more information, see [Rate limits](/developers/api-guidelines/rate-limits).\n\ \n\n### Multi-factor authentication flow\n\nWhen multi-factor authentication (MFA) is enabled for a user account:\n\ \n1. **Initial login**: Send your username and SHA-1 hashed password.\n If MFA is enabled and the device isn't trusted,\ \ you receive an `mfa_token` instead of `auth_token` in the response and a one-time password (OTP) via email.\n2.\ \ **MFA verification**: Send the `mfa_token` with the 6-digit OTP `code`.\n Optionally include `trusted_device` information\ \ to skip MFA for 90 days.\n3. **Subsequent logins**: If you included a trusted device fingerprint during verification,\ \ send your username and SHA-1 hashed password with the `fingerprint` to bypass MFA.\n\nFor more information, see\ \ [Multi-factor authentication](/developers/auth/multi-factor-authentication).\n" tags: - subpackage_authentication responses: '200': description: Successful Authentication Request content: application/json: schema: $ref: '#/components/schemas/Authentication_Authenticate_Response_200' '400': description: The request body is malformed or fails validation. content: application/json: schema: description: Any type '401': description: 'The response body is empty for most authentication failures (invalid credentials, suspended or deleted user, etc.). When account lockout is triggered after three consecutive failed authentication attempts, the response body contains the `TooManyRequests` error and further attempts are blocked for five minutes. ' content: application/json: schema: $ref: '#/components/schemas/AuthenticateRequestUnauthorizedError' '404': description: 'Unexpected error in API call. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/AuthenticateRequestNotFoundError' requestBody: description: "Authenticate with an [application token](/developers/auth/application-tokens).\n\n\n **Temporary\ \ exception**:\n [User credentials](/developers/auth/user-credentials) are currently required for operations that\ \ span multiple workspaces, such as switching between workspaces or transferring SIMs.\n These APIs are being updated\ \ to support application tokens.\n\n" content: application/json: schema: type: object properties: application_token: type: string description: Application token for authentication username: type: string description: Username for user credentials authentication password: type: string format: password description: 'User password. Must be SHA-1 hashed when authenticating with user credentials. ' fingerprint: type: string description: Device fingerprint for trusted device authentication (skips MFA) refresh_token: type: string description: Refresh token to obtain a new `auth_token` mfa_token: type: string description: MFA token received when MFA is enabled code: type: string description: 6-digit one-time password (OTP) for MFA verification trusted_device: $ref: '#/components/schemas/ApiV1AuthenticatePostRequestBodyContentApplicationJsonSchemaTrustedDevice' description: Device information to register as trusted (90-day MFA exemption) /api/v1/authenticate/workspace: post: operationId: authenticate-workspace summary: Switch to an assigned Workspace description: "Switch to an assigned Workspace and receive an authentication token for the target Workspace.\n\n\n\ \ This endpoint requires authentication with [user credentials](/developers/auth/user-credentials) (not an application\ \ token), as application tokens are scoped to a single Workspace.\n\n The returned `auth_token` is valid for the\ \ target Workspace.\n Your original token remains valid for the source Workspace.\n\n" tags: - subpackage_workspaces parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully switched to the assigned Workspace content: application/json: schema: $ref: '#/components/schemas/Workspaces_AuthenticateWorkspace_Response_200' '401': description: Unauthorized content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: target_organisation: $ref: '#/components/schemas/ApiV1AuthenticateWorkspacePostRequestBodyContentApplicationJsonSchemaTargetOrganisation' required: - target_organisation /api/v1/automation: get: operationId: list-automations summary: List configured automations description: 'Returns a list of all configured automations for the organization. ' tags: - subpackage_automations parameters: - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/AutomationOutputDto' post: operationId: create-automation summary: Create an automation description: 'Creates an automation with the configured event and selected actions, respecting the configured targets. ' tags: - subpackage_automations parameters: - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '201': description: '' content: application/json: schema: $ref: '#/components/schemas/AutomationOutputDto' requestBody: content: application/json: schema: $ref: '#/components/schemas/AutomationCreateDto' /api/v1/automation/action: get: operationId: list-action summary: List available actions description: 'Returns a list of all available actions, as well as their possible configuration parameters and required fields. Availability depends on the parent organization. ' tags: - subpackage_automations parameters: - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/AutomationActionOutputDto' /api/v1/automation/action/{id}: get: operationId: get-action-by-id summary: Get an action by ID description: 'Retrieves a specified available actions, as well as the possible configuration parameters and required fields. Availability depends on the parent organization. ' tags: - subpackage_automations parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/AutomationActionOutputDto' /api/v1/automation/log: get: operationId: list-action-logs summary: List action logs description: 'Returns a list of all action logs for this organization. ' tags: - subpackage_automations parameters: - name: automationId in: query required: true schema: type: string - name: automationExecutionNumber in: query required: true schema: type: number format: double - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/AutomationActionLogOutputDto' /api/v1/automation/recipient/email/verification: post: operationId: verify-automation-recipient-email summary: Verify an automation recipient's email address description: 'Verifies the email address of an automation recipient using the verification token sent to the recipient via email. ' tags: - subpackage_automations parameters: - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: Email verification successful content: application/json: schema: $ref: '#/components/schemas/Automations_verifyAutomationRecipientEmail_Response_200' requestBody: content: application/json: schema: $ref: '#/components/schemas/AutomationRecipientEmailVerificationInputDto' /api/v1/automation/{id}: get: operationId: get-automation summary: Get configured automation by ID description: 'Retrieves the specified configured automation. ' tags: - subpackage_automations parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/AutomationOutputDto' delete: operationId: delete-automation summary: Delete a configured automation description: 'Deletes the specified configured automation. ' tags: - subpackage_automations parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '204': description: No Content content: application/json: schema: type: object properties: {} patch: operationId: update-automation summary: Update an automation description: 'Updates an automation with the configured event and selected actions, respecting the configured targets. ' tags: - subpackage_automations parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/AutomationOutputDto' requestBody: content: application/json: schema: $ref: '#/components/schemas/AutomationUpdateDto' /api/v1/breakout_region: get: operationId: breakout-region-get summary: List breakout regions description: Provides the list of available breakout regions. tags: - subpackage_lookups parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1BreakoutRegionGetResponsesContentApplicationJsonSchemaItems' /api/v1/cnc/breakout: get: operationId: get-cloud-connect-attachments summary: List all Cloud Connect attachments of an organization description: 'Lists all Cloud Connect attachments of the logged in organisation if it is an Enterprise. For Master organisations it lists all attachments of the direct child organisations. Deleted attachments are left out by default. Additionally the attachments can be filtered by status and type. Master organisations can also filter by organisation ID of their direct child organisations. ' tags: - subpackage_cloudConnect parameters: - name: status in: query description: 'Numerical ID of the Cloud Connect attachment status * `1` - Pending Customer Action * `2` - Pending AWS Activation * `3` - Pending EGN Activation * `4` - Pending CRG Activation * `5` - Active * `6` - Deactivation Pending * `7` - Deactivated * `8` - Rolling Back ' required: false schema: $ref: '#/components/schemas/ApiV1CncBreakoutGetParametersStatus' - name: type in: query description: 'Numerical ID of the Cloud Connect attachment type * `1` - Transit Gateway * `2` - IPSec VPN * `3` - IPSec VPN BGP * `4` - IPSec VPN BGP High Availability * `5` - Direct Connect * `6` - Shared * `7` - Transit Gateway (Classic) * `8` - IPSec VPN (Classic) ' required: false schema: $ref: '#/components/schemas/ApiV1CncBreakoutGetParametersType' - name: organisation in: query description: Numerical ID of an Organization required: false schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1CncBreakoutGetResponsesContentApplicationJsonSchemaItems' '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type /api/v1/cnc/breakout/tgw: post: operationId: create-cloud-connect-attachment-tgw summary: Create a Cloud Connect attachment via Transit Gateway description: 'Creates a Transit Gateway breakout towards the customer AWS account. After the creation the following steps have to be made from the customer''s AWS account: 1. Accept the resource share about the ''CloudConnect'' TransitGateway 2. Create a Transit Gateway Attachment to the own VPC with the services to connect to More Information about this can be found on the Cloud Connect Knowledge Base article. ' tags: - subpackage_cloudConnect parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Response to a POST that results in a creation, usually will return a Location header pointing to the location of the new resource content: application/json: schema: $ref: '#/components/schemas/Cloud Connect_CreateCloudConnectAttachmentTGW_Response_201' '400': description: The request is malformed, e.g. the body cannot be parsed content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: type: $ref: '#/components/schemas/ApiV1CncBreakoutTgwPostRequestBodyContentApplicationJsonSchemaType' name: type: string description: type: string vpc_cidr: type: array items: type: string region: type: string description: the region that this attachment should be established to aws_account_id: type: string description: 12-digit identifier of the own AWS Account required: - type - name - vpc_cidr - region - aws_account_id /api/v1/cnc/breakout/vpn: post: operationId: create-cloud-connect-attachment-vpn summary: Create a Cloud Connect attachment via IPSec VPN description: "Creates a Cloud Connect attachment via a specified VPN server.\nCurrently two attachment types are available:\n\ \n- **Static VPN** (type `2`): Basic IPSec VPN connection\n- **Dynamic VPN with BGP** (type `3`): IPSec VPN with BGP\ \ routing.\n Requires `asn` (Autonomous System Number), otherwise dynamic routing is disabled.\n Optionally accepts\ \ `inside_cidr` for BGP tunnel interfaces.\n\nThe `on_prem_cidr` parameter specifies the CIDR ranges of your backend\ \ network (up to 3).\nThe `public_ip` is the public IP address of your VPN server.\n\nA `psk` (Pre-Shared Key) can\ \ be configured with 8-64 alphanumeric characters, periods (`.`), and underscores (`_`).\nIt must not begin with `0`.\n\ If left empty, it generates automatically and can be retrieved via [`GET /api/v1/cnc/breakout/{cloudconnect_attachment_id}`](/developers/api/cloud-connect/get-cloud-connect-attachment-by-id).\n\ \n\n The created connection is available within 3-5 minutes.\n\n" tags: - subpackage_cloudConnect parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: 'Attachment created successfully. The `Location` header contains the URL of the new resource. ' content: application/json: schema: $ref: '#/components/schemas/Cloud Connect_CreateCloudConnectAttachmentVPN_Response_201' '400': description: 'The request body is malformed or missing required fields. ' content: application/json: schema: description: Any type '403': description: 'Your authentication token is valid, but you don''t have permission to access the requested resource. ' content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: type: $ref: '#/components/schemas/ApiV1CncBreakoutVpnPostRequestBodyContentApplicationJsonSchemaType' description: 'Breakout type. Use `2` for Static VPN or `3` for Dynamic VPN with BGP. ' name: type: string description: Display name for the Cloud Connect attachment. description: type: string description: Optional description for the attachment. region: type: string description: AWS region for the attachment (for example, `eu-west-1`). public_ip: type: string description: Public IP address of your VPN server. psk: type: string description: 'Pre-shared key (PSK) for the VPN connection. If empty, AWS generates one automatically. ' asn: type: integer description: "Autonomous System Number (ASN) for BGP routing.\n\n\n Required for Dynamic VPN (type\ \ `3`).\"\n\n" on_prem_cidr: type: array items: type: string description: 'CIDR ranges of your backend network. You can configure up to 3 ranges. ' inside_cidr: type: array items: type: string description: 'For Dynamic VPN only: /30 CIDR ranges for BGP tunnel interfaces (up to 3). If empty, AWS generates them automatically. ' required: - type - name - public_ip - on_prem_cidr /api/v1/cnc/breakout/{cloudconnect_attachment_id}: get: operationId: get-cloud-connect-attachment-by-id summary: View details of a Cloud Connect attachment description: 'Displays the details including configured CIDR blocks of a Cloud Connect Attachment. For active IPSec VPN attachments, the tunnel information (public IP, outisde address, inside CIDR, PSK, ASN) including metrics over the last hour (tunnel state, bytes in/out) will be displayed as well. ' tags: - subpackage_cloudConnect parameters: - name: cloudconnect_attachment_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItems' delete: operationId: delete-cloud-connect-attachment summary: Delete a specific Cloud Connect attachment description: 'Deletes the specified Cloud Connect attachment. Attachments cannot be deleted if they are in the state `7 (Deactivated)` or `8 (Rolling Back)` or if they are Classic attachments. ' tags: - subpackage_cloudConnect parameters: - name: cloudconnect_attachment_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Response to a successful GET, also used for a POST if it does not result in a creation content: application/json: schema: $ref: '#/components/schemas/Cloud Connect_DeleteCloudConnectAttachment_Response_200' '400': description: The request is malformed, e.g. the body cannot be parsed content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type patch: operationId: retry-cloud-connect-attachment summary: Retry creation of an expired TGW breakout description: 'Retries the creation of a Transit Gateway breakout where the accept attachment state has expired, meaning the attachment on the customer''s side has not been created in time. Retry is only allowed if: - The breakout is of type `Transit Gateway (type_id: 1)` - The breakout is in status `Pending AWS Activation (status_id: 2)` - The accept attachment state has expired (7 days after creation) ' tags: - subpackage_cloudConnect parameters: - name: cloudconnect_attachment_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Response to a successful GET, also used for a POST if it does not result in a creation content: application/json: schema: $ref: '#/components/schemas/Cloud Connect_RetryCloudConnectAttachment_Response_200' '404': description: A non-existent resource is requested content: application/json: schema: description: Any type /api/v1/cnc/breakout_type: get: operationId: get-cloud-connect-breakout-types summary: List Cloud Connect breakout types description: 'Lists all Cloud Connect breakout types. ' tags: - subpackage_cloudConnect parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1CncBreakoutTypeGetResponsesContentApplicationJsonSchemaItems' /api/v1/cnc/breakout_type/{breakout_type_id}/available_region: get: operationId: get-cloud-connect-available-regions-by-breakout-type summary: Get list of available Cloud Connect regions by breakout type description: 'Returns a list of regions available for use when creating new Cloud Connect breakouts of the selected breakout type. If the attachment region is peered to another one, the device breakout region will also be returned. ' tags: - subpackage_cloudConnect parameters: - name: breakout_type_id in: path description: 'ID of a Cloud Connect breakout type. Possible values can be retrieved with `GET /api/v1/cnc/breakout_type`. ' required: true schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1CncBreakoutTypeBreakoutTypeIdAvailableRegionGetResponsesContentApplicationJsonSchemaItems' /api/v1/cnc/pricing: get: operationId: list-cloud-connect-custom-prices summary: List Cloud Connect prices description: 'Returns a list of the configured monthly prices for Cloud Connect breakouts. Master organisation, Mobile Network Operators and Resellers will get the list of prices they have configured for their child organisations. Enterprise organisations will get the list of prices that apply for them. ' tags: - subpackage_cloudConnect parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1CncPricingGetResponsesContentApplicationJsonSchemaItems' /api/v1/country: get: operationId: country-get summary: List country codes description: Provides the list of available countries (lookup). tags: - subpackage_lookups parameters: - name: geographic in: query description: 'Filters the country list for geographic countries only. This will exclude duplicate countries with different MCCs, like `India MCC 405` or `United States (311)`. ' required: false schema: type: boolean - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1CountryGetResponsesContentApplicationJsonSchemaItems' /api/v1/currency: get: operationId: currency-get summary: List currencies description: Provides the list of available currencies (lookup). tags: - subpackage_lookups parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1CurrencyGetResponsesContentApplicationJsonSchemaItems' /api/v1/data_blocksize: get: operationId: data-blocksize-get summary: List data blocksizes description: Provides the list of available data blocksizes (lookup). tags: - subpackage_lookups parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1DataBlocksizeGetResponsesContentApplicationJsonSchemaItems' /api/v1/data_throttle: get: operationId: data-throttle-get summary: List data throttles description: Provides the list of available data throttles (lookup). tags: - subpackage_lookups parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1DataThrottleGetResponsesContentApplicationJsonSchemaItems' /api/v1/dns: get: operationId: dns-get summary: List DNS configs description: 'Retrieves a list of DNS configurations. DNS settings can be applied to a service profile and endpoints which use this service profile will have the associated DNS settings applied. ' tags: - subpackage_serviceLookupsAndConfiguration parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1DnsGetResponsesContentApplicationJsonSchemaItems' post: operationId: dns-post summary: Create DNS config description: "Creates a DNS configuration object. The DNS config can be applied to a service profile and all endpoints\ \ which use that service profile will have the associated DNS settings applied.\nDNS changes are instantly applied\ \ to any **new PDP context**.\nConnected devices with previously established PDPs will continue to use the previous\ \ nameserver config until the next time they reconnect.\n\nPrimary and secondary nameservers and IP version (`4` for\ \ IPV4 or `6` for IPV6) must be specified with this request.\n\n\n The system currently falls back to IPV4\ \ for the actually-enforced networking settings of endpoints, therefore **the IPV6 parameter will be ignored** when\ \ provided.\n\n" tags: - subpackage_serviceLookupsAndConfiguration parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Resource Created content: application/json: schema: $ref: '#/components/schemas/Service Lookups and Configuration_DnsPost_Response_201' requestBody: content: application/json: schema: type: object properties: primary: type: string secondary: type: string ip_address_version: type: integer required: - primary - secondary - ip_address_version /api/v1/dns/{dns_id}: delete: operationId: dns-by-id-delete summary: Delete DNS config description: "Delete a DNS configuration object by ID.\n\n\n A DNS config object cannot be deleted if it is in\ \ use by at least one Service Profile.\n\n" tags: - subpackage_serviceLookupsAndConfiguration parameters: - name: dns_id in: path description: DNS configuration ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} /api/v1/endpoint: get: operationId: get-endpoints summary: List endpoints description: 'Retrieves all endpoints for your organization. Use the query parameters to filter, sort, and paginate results. ' tags: - subpackage_endpoint parameters: - name: q in: query description: 'Filters endpoints by field value. Use `:` format. Combine multiple filters with commas (for example, `status:0,tags:sensor`). ' required: false schema: type: string - name: sort in: query description: 'Sorts endpoints by field value. Use `` format. Combine multiple sort fields with commas (for example, `-status,id`). **Operators:** - `-` descending (Z-A for text, highest number first) - `+` ascending (A-Z for text, lowest number first) Defaults to ascending order if no operator is specified. Defaults to `id` if no sort field is specified. Endpoints with identical values are sorted by ascending `id`. ' required: false schema: type: string - name: page in: query description: 'Page number to retrieve. Starts at 1. ' required: false schema: type: integer default: 1 - name: per_page in: query description: Number of endpoints to return per page. required: false schema: type: integer default: 1000 - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: 'Returns an array of endpoint objects. Pagination metadata is included in the response headers. ' content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItems' post: operationId: create-endpoint summary: Create an endpoint description: "Creates a single endpoint with the specified configuration.\n\n\n For bulk operations, use [`POST\ \ /api/v2/endpoint/multi`](/developers/api/endpoint/bulk-create-endpoint) instead (supports up to 2,000 endpoints\ \ per request).\n\n\n\n emnify charges for activated SIMs, even if the endpoint status is set to\ \ **Disabled**.\n\n" tags: - subpackage_endpoint parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Endpoint created successfully. content: application/json: schema: $ref: '#/components/schemas/Endpoint_CreateEndpoint_Response_201' '400': description: 'Request body is malformed. Check JSON syntax. ' content: application/json: schema: description: Any type '404': description: 'IP address space is full, in use for creating another endpoint or the resource wasn''t found. ' content: application/json: schema: description: Any type '422': description: 'Validation failed. Possible causes: - Invalid service profile, tariff profile, or status ID - Invalid IP address space or organization ID - Endpoint data is invalid - Organization doesn''t belong to your reseller ' content: application/json: schema: $ref: '#/components/schemas/CreateEndpointRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: name: type: string description: Display name for the endpoint. tags: type: string description: Comma-separated list of tags (for example, `sensor,outdoor`). imei: type: string description: International Mobile Equipment Identity with Software Version Number (IMEISV) (16 digits). imei_lock: type: boolean default: false description: If `true`, this endpoint only allows connections from the device with the specified IMEI. sim: $ref: '#/components/schemas/ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaSim' description: 'SIM card to assign to this endpoint. If omitted, no SIM is assigned. ' ip_address: type: string description: "Private IP address to assign.\n\n\n If provided, you must also specify `ip_address_space`.\n\ \n" service_profile: $ref: '#/components/schemas/ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaServiceProfile' description: 'Service profile that determines network access settings. Must belong to your organization. ' tariff_profile: $ref: '#/components/schemas/ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaTariffProfile' description: 'Tariff profile that determines pricing and data limits. Must belong to your organization. ' status: $ref: '#/components/schemas/ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaStatus' description: Initial endpoint status. organisation: $ref: '#/components/schemas/ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaOrganisation' description: 'Organization to create the endpoint in. Required only for reseller accounts creating endpoints in sub-organizations. ' ip_address_space: $ref: '#/components/schemas/ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaIpAddressSpace' description: "IP address space for the endpoint.\n\n\n Required if `ip_address` is provided.\n\n" required: - service_profile - tariff_profile - status /api/v1/endpoint/status: get: operationId: endpoint-status-get summary: List endpoint statuses description: Returns a list of available [endpoint statuses](/developers/reference/endpoint#endpoint-statuses). tags: - subpackage_endpoint parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EndpointStatusGetResponsesContentApplicationJsonSchemaItems' /api/v1/endpoint/{endpoint_id}: get: operationId: endpoint-by-id-get summary: Endpoint details description: Retrieves endpoint details for a given ID. tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned the endpoint details associated with the provided `id`. content: application/json: schema: $ref: '#/components/schemas/Endpoint_EndpointByIdGet_Response_200' delete: operationId: endpoint-by-id-delete summary: Delete an endpoint description: "Deletes an endpoint and all its child entities.\n\n\n Execute this operation sequentially - wait\ \ for each request to complete before starting the next.\n\n For bulk deletions, use [`DELETE /api/v2/endpoint/multi`](/developers/api/endpoint/bulk-delete-endpoint)\ \ instead (supports up to 2,000 endpoints).\n\n\n\n Endpoints with an assigned SIM cannot be deleted\ \ (results in a `409` error).\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: 'Endpoints deleted successfully. The response payload body should be empty. ' content: application/json: schema: type: object properties: {} '400': description: 'Request body is malformed ' content: application/json: schema: description: Any type '404': description: 'Requested endpoint ID wasn''t found ' content: application/json: schema: description: Any type '409': description: 'Requested endpoint is still referenced (for example, there is an assigned SIM) ' content: application/json: schema: description: Any type patch: operationId: endpoint-by-id-patch summary: Update an endpoint description: "Updates the details of an endpoint.\n\n\n Execute this operation sequentially - wait for each request\ \ to complete before starting the next.\n\n For bulk updates, use [`PATCH /api/v2/endpoint/multi`](/developers/api/endpoint/bulk-update-endpoint)\ \ instead (supports up to 2,000 endpoints).\n\n\n\n emnify charges for activated SIMs, even if the\ \ endpoint `status` is set to **Disabled**.\n To avoid accruing unexpected charges, update the SIM `status` to **Suspended**\ \ (`\"id\": 2`).\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Endpoint updated successfully content: application/json: schema: type: object properties: {} '400': description: Request body is malformed content: application/json: schema: description: Any type '403': description: 'User doesn''t have permission to bulk update endpoints ' content: application/json: schema: description: Any type '404': description: 'Appears in one of the following cases: - IP address space isn''t found - IP address space is full ' content: application/json: schema: description: Any type '422': description: 'Appears in one of the following cases: - Service profile is invalid - Tariff profile is invalid - Status is invalid - IP address space is invalid - IP address is invalid - SIM is invalid ' content: application/json: schema: $ref: '#/components/schemas/EndpointByIdPatchRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: service_profile: $ref: '#/components/schemas/ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaServiceProfile' tariff_profile: $ref: '#/components/schemas/ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaTariffProfile' status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaStatus' ip_address_space: $ref: '#/components/schemas/ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaIpAddressSpace' sim: $ref: '#/components/schemas/ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaSim' name: type: string tags: type: string imei: type: string imei_lock: type: boolean ip_address: type: string required: - service_profile - tariff_profile - status - ip_address_space - sim - name - tags - imei - imei_lock - ip_address /api/v1/endpoint/{endpoint_id}/connectivity: get: operationId: endpoint-connectivity-by-id-get summary: Endpoint connectivity status description: 'Retrieve details about current connectivity status of endpoint. The following is a list of possible statuses: * `ATTACHED`: The Endpoint has succesfully attached to the Home Core network in the past. The device will be shown as `ATTACHED` until the visited network has signaled that the device is inactive/offline. Usually the visited network informs the Core Network within 1-2 days after a device went offline. * `ONLINE`: The Endpoint has an active data connection * `OFFLINE`: The Endpoint has not attached to the core network yet or the device was previously attached but the visited network signaled that the device had no activity for the last 1-2 days. Note: The device is not reachable for external services (e.g. SMS, MSRN lookup). * `BLOCKED`: The device is not granted service. Endpoints are assigned this status when they have exceeded traffic limits. ' tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Endpoint_EndpointConnectivityByIdGet_Response_200' patch: operationId: update-endpoint-connectivity-by-id summary: Reset endpoint connectivity description: "Dispatches a message that causes either a `Cancel Location`, `Delete PDP Context`, or both sent to the\ \ endpoint.\nThe return of the call doesn't yet mean the event has been sent towards the device.\n\n\n Master\ \ organization types can reset any endpoints inside their organization hierarchy.\n Enterprises may only reset connectivity\ \ of own endpoints.\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Successful, no content. content: application/json: schema: type: object properties: {} '403': description: Calling organization is not of correct type. content: application/json: schema: description: Any type '404': description: Endpoint not found. content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: pdp_context: oneOf: - description: Any type - type: 'null' location: oneOf: - description: Any type - type: 'null' /api/v1/endpoint/{endpoint_id}/connectivity_info: get: operationId: get-connectivity-info-by-endpoint-id summary: Retrieve connectivity information for an endpoint description: "Returns device location information based on the cell tower to which the device is connected.\n\n\n\ \ emnify validates the data requested, sends the signal request to the network operator, and interprets the response.\n\ \ Whether the network returns useful data is outside of emnify's control.\n\n To distinguish these cases, this call\ \ returns the HTTP `200 OK` response code whenever the request is successfully executed, even if it includes an error.\n\ \ See the response body for details.\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Endpoint_GetConnectivityInfoByEndpointId_Response_200' '404': description: 'Endpoint not found. This error often occurs when the requested endpoint ID is incorrect or doesn''t exist. It can also happen if you don''t have the correct permissions to see the connectivity information or the endpoint doesn''t belong to the organization you''re logged in to. ' content: application/json: schema: $ref: '#/components/schemas/GetConnectivityInfoByEndpointIdRequestNotFoundError' /api/v1/endpoint/{endpoint_id}/event: get: operationId: endpoint-events-by-id summary: List endpoint events description: "Returns the list of events, filtered, sorted and paged according to query parameters.\n\n\nA full\ \ list of events is found in section \"Retrieve Event Types\" (`/api/v1/event/type`).\n\n\n\n This\ \ API endpoint deviates from the specified conventions and may not return the same HTTP Codes as the higher layer\ \ call (`/api/v1/endpoint/{endpoint_id}`).\n In case the requested `{endpoint_id}` doesn't exist or is not accessible\ \ for the user, **HTTP 200** will be returned with empty **[]** as long as the provided `{endpoint_id}` is a number\ \ and all parameters are valid.\n\n Please take that into consideration when building automation on top of the error\ \ behaviour of this endpoint.\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path description: Numeric ID of an endpoint required: true schema: type: integer - name: page in: query description: Current page number required: false schema: type: integer - name: per_page in: query description: Defines the number of items per page required: false schema: type: integer - name: sort in: query description: 'Sort properties according to a comma separated list of accepted fields. Valid fields are: * `id` - (**event id**) * `timestamp` - (**event timestamp**) * `source` - (**event source**) * `severity` - (**event severity**) * `alert` - (**alert status**) * `organisation` - (**organisation name**) * `user` - (**user id**) * `endpoint` - (**endpoint name**) * `tags` - (**endpoint tags**) * `ip_address` - (**endpoint ip_address**) * `iccid` - (**sim iccid**) * `imsi` - (**sim imsi**) * `type` - (**event type**) ' required: false schema: type: string - name: q in: query description: 'Filter parameter in `:` format. Multiple filters must be a comma-separated list of the following fields: * `from` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, **only valid with until**) * `until` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, **only valid with from**) * `type` (**event_type**, numerical) * `source` (**event_type**, numerical, e.g. 0 = Network), 1 = Policy Control, 2 = API) * `severity` (**event_severity**, numerical, e.g. 0 = Info, 1 = Warn), 2 = Critical) * `alert` (boolean, e.g. true, false) * `description` (**event description**, string) * `organisation` (**organisation name**, string) * `user` (**user name**, string) * `endpoint` (**endpoint name**, string) * `tags` (**endpoint tags**, string) * `ip_address` (**endpoint IP address**, valid IPv4/IPv6 address) * `imei` (**endpoint imei**, numerical string) * `iccid` (**sim iccid**, numerical string) * `imsi` (**sim imsi**, numerical string) * `timestamp` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, for querying events of 1 day, deprecated in future) * `iccid_with_luhn` (**sim iccid with Luhn**, numerical string) * `network` (**endpoint network**, string, e.g. Telekom) * `rat` (**event pdp context rat type**, numerical string, e.g. 6) * `country` (**endpoint country**, string, e.g. Germany) Some filters can accept up to 6 values which must be separated by the pipe symbol (`|`) or url-encoded as (`%7C`): * `iccid` (q: iccid:1234567890123456789|8988303000123456789) * `iccid_with_luhn` (q: iccid_with_luhn:12345678901234567891|89883030001234567891) * `endpoint` (q: endpoint:example_endpoint_name|another_endpoint_name) * `type` (q: type:example_event_type|another_event_type) * `network` (q: network:example_network|another_network) * `rat` (q: rat:example_rat|another_rat) * `country` (q: country:example_country|another_country) ' required: false schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned a list of events content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItems' '400': description: '**Bad Request** due to incorrect **Paging** Parameters, **Sorting** Parameter or incorrect `{endpoint_id}` ' content: application/json: schema: description: Any type '422': description: '**Unprocessable Entity** due to incorrect **Query** parameters ' content: application/json: schema: description: Any type /api/v1/endpoint/{endpoint_id}/operator_blacklist: get: operationId: endpoint-operator-blacklist-by-endpoint-id-get summary: List operator blacklist for endpoint description: Returns a list of blacklisted Operators for the requested Endpoint tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItems' /api/v1/endpoint/{endpoint_id}/operator_blacklist/{operator_id}: put: operationId: endpoint-operator-blacklist-by-ep-id-and-operator-id-put summary: Add an operator to the blacklist description: Adds an Operator to the Blacklist of an Endpoint. tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: operator_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '409': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/EndpointOperatorBlacklistByEpIdAndOperatorIdPutRequestConflictError' delete: operationId: endpoint-operator-blacklist-by-ep-id-and-operator-id-delete summary: Remove an operator from the blacklist description: Remove Operator from the Blacklist of an Endpoint. tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: operator_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '404': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/EndpointOperatorBlacklistByEpIdAndOperatorIdDeleteRequestNotFoundError' /api/v1/endpoint/{endpoint_id}/quota/data: get: operationId: endpoint-quota-data-by-endpoint-id-get summary: Retrieve data quota details description: "Returns details about the assigned Data Quota for an endpoint.\n* `status`: this indicates the current\ \ status of the quota and may contain the following values:\n - `ACTIVE`: the endpoint can currently connect and\ \ has quota left\n - `EXHAUSTED`: the endpoint has exceeded the quota volume, if it still can use data service\ \ depends on the action chosen to be performed on exhaustion\n - `EXPIRED`: the quota has expired; the endpoint\ \ is denied from using data services (until new quota is added)\n* `volume`: returns the volume left on this quota\ \ in MB\n* `expiry_date`: timestamp when this quota will expire and the endpoint will definitely be denied from using\ \ further data services (regardless if the quota volume was used up or not)\n* `peak_throughput`: The maximum bandwidth\ \ in octets per second after the endpoint has been throttled.\n* `action_on_exhaustion`: returns the behaviour defined\ \ to be applied when quota volume is used up (exhausted).\n - `Throttle`: bandwidth will be throttle to the defined\ \ peak throughput until quota expires\n - `Block`: data service will be instantly blocked once volume used up,\ \ regardless if the expiry date is already reached or not\n* `auto_refill`: 0 (false) / 1 (true), refill the quota\ \ with the last added volume on a daily basis\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Endpoint_EndpointQuotaDataByEndpointIdGet_Response_200' post: operationId: endpoint-quota-data-by-endpoint-id-post summary: Set data quota description: "Set a new data quota.\nYou can set a new data quota for a device at any time.\nAt an initial state, when\ \ no data quota is set, the device is denied from using data services.\nTo top-up the data volume, you need to retrieve\ \ the remaining volume, increase it by the top-up volume, and set it as the new quota volume.\n\n\n We have\ \ deprecated throttling as an action on quota exhaustion and the associated peak throughput parameter.\n These were\ \ decommissioned as of December 9, 2024.**\n\n\nThe following parameters can be configured:\n* `status`\ \ (required) - The status of the quota:\n - 1: `ACTIVE`\n - 2: `EXHAUSTED`\n - 3: `EXPIRED`\n* `volume` - Remaining\ \ quota volume in MB\n* `expiry_date` (required) - Timestamp when the quota expires and the device is denied from\ \ using further data services\n* `auto_refill` (default: `0`) - Whether the quota should be refilled on a daily basis:\n\ \ - `0`: Disabled\n - `1`: Enabled\n* `threshold_percentage` - The remaining quota percentage when the system generates\ \ a \"Quota threshold reached\" event\n* `action_on_exhaustion`: Action executed after the quota is exhausted:\n \ \ - `id` (required) - Unique identifer of the action on quota exhaustion\n - `1`: Block\n - **DEPRECATED** `2`:\ \ Throttle\n - **DEPRECATED** `peak_throughput` - The maximum bandwidth in octets per second after the device has\ \ been throttled.\n\n\n **Events**:\n The system generates a \"Quota used up\" event if the data quota is\ \ completely depleted.\n Then, the device is blocked from further consumption of data.\n The quota object is included\ \ in the event details.\n\n\n\n The device can instantly use data services after successfully making\ \ this API call.\n You can set any timestamp with a future date.\n This allows you to create data packages as required\ \ (for example, 1 hour, 24 hours, 7 days, or any other timeframe).\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Resource Created content: application/json: schema: $ref: '#/components/schemas/Endpoint_EndpointQuotaDataByEndpointIdPost_Response_201' '422': description: Unprocessable Entity. content: application/json: schema: $ref: '#/components/schemas/EndpointQuotaDataByEndpointIdPostRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: last_volume_added: type: number format: double last_status_change_date: type: string auto_refill: type: integer threshold_volume: type: number format: double threshold_percentage: type: number format: double status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaStatus' volume: type: number format: double expiry_date: type: string action_on_exhaustion: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaActionOnExhaustion' required: - status - volume - expiry_date - action_on_exhaustion delete: operationId: delete-endpoint-data-quota-by-id summary: Remove data quota description: "Will delete the data quota for the endpoint, if any is set.\n\n\n If `apply_data_quota` is still\ \ set in the service profile, the endpoint will get blocked from data service.\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Success content: application/json: schema: type: object properties: {} '404': description: 'Can be one of the following reasons: - No Data Quota configured - Endpoint not found - Endpoint not part of this organisation ' content: application/json: schema: description: Any type /api/v1/endpoint/{endpoint_id}/quota/sms: get: operationId: endpoint-quota-sms-by-endpoint-id-get summary: Show SMS quota details description: "Returns details about the assigned SMS Quota for an endpoint.\n\nYou can retrieve the current SMS quota\ \ status for an endpoint with the following API call. It will return following properties:\n* `status`: this indicates\ \ the status of the quota and may contain the following values:\n - `ACTIVE`: the endpoint has quota left and can\ \ use SMS services\n - `EXHAUSTED`: the endpoint has exceeded the quota volume; the endpoint is denied from using\ \ SMS services (until new quota is added)\n - `EXPIRED`: the quota has expired; the endpoint is denied from using\ \ SMS services (until new quota is added)\n* `volume`: the amount of SMS left on this quota\n* `expiry_date`: timestamp\ \ when this quota will expire and the endpoint will definitely be denied from using further SMS services (regardless\ \ if the quota volume was used up or not)\n* `threshold_percentage`: optional threshold in percentage indicating when\ \ a \"Threshold Reached\" event shall be sent.\n* `action_on_exhaustion`: returns the behaviour defined to be applied\ \ when quota volume is used up (exhausted).\n - `Throttle`: bandwidth will be throttle to the defined peak throughput\ \ until quota expires\n - `Block`: data service will be instantly blocked once volume used up, regardless if the\ \ expiry date is already reached or not\n - `auto_refill`: 0 (false) / 1 (true), refill the quota with the last\ \ added volume on a daily basis\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: description: Any type post: operationId: endpoint-quota-sms-by-endpoint-id-post summary: Set SMS quota description: "At any time, a new SMS quota can be set for an endpoint.\nAt an initial state when no SMS quota is set,\ \ the endpoint will be denied from using SMS services.\nTo top-up the SMS volume one need to retrieve the currently\ \ left volume, increase it by the top-up volume and set it as the new quota volume.\n\nThe following parameters can\ \ be configured:\n* `status` - The status of the quota (mandatory):\n - 1: `ACTIVE`\n - 2: `EXHAUSTED`\n - 3: `EXPIRED`\n\ * `volume`: The volume left on this quota in MB\n* `expiry_date`: Timestamp when this quota will expire and the endpoint\ \ will definitely be denied from using further data services (mandatory)\n* `auto_refill`: Wether the quota shall\ \ be refilled on a daily basis (defaults to disabled):\n - 0: `disabled`\n - 1: `enabled`\n* `threshold_percentage`:\ \ The percentage of remaining quota at which the system should generate a `threshold reached` event\n* `action_on_exhaustion`:\ \ The behaviour of the system after the quota is exhausted:\n - id: ID of the action on quota exhaustion (mandatory)\n\ \ - 1: `Block`\n - 2: `Throttle` (will not take any effect on SMS quota)\n - `peak_throughput`: The maximum\ \ bandwidth in octets per second after the endpoint has been throttled.\n Allowed values are 64000, 128000, 256000,\ \ 384000. (will not take any effect on SMS quota)\n\n\n The endpoint can instantly use the SMS service after\ \ the API call is successfully made.\n Any timestamp with a future date can be set, this allows to create SMS packages\ \ (e.g. for 1 hour, 24 hour, 7 days or any other timeframe) as required.\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Resource Created content: application/json: schema: $ref: '#/components/schemas/Endpoint_EndpointQuotaSmsByEndpointIdPost_Response_201' requestBody: content: application/json: schema: type: object properties: volume: type: number format: double expiry_date: type: string format: date-time last_volume_added: type: number format: double last_status_change_date: type: - string - 'null' format: date-time auto_refill: type: boolean threshold_percentage: type: number format: double threshold_volume: type: number format: double status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaStatus' action_on_exhaustion: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaActionOnExhaustion' required: - volume - expiry_date - threshold_percentage - status delete: operationId: delete-endpoint-sms-quota-by-id summary: Remove SMS quota description: "Will delete the SMS quota for the endpoint, if any is set.\n\n\n If `apply_sms_quota` is still\ \ set in the service profile, the endpoint is blocked from sending SMS.\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Success content: application/json: schema: type: object properties: {} '404': description: 'Can be one of the following reasons: - No SMS Quota configured - Endpoint not found - Endpoint not part of this organisation ' content: application/json: schema: description: Any type /api/v1/endpoint/{endpoint_id}/sms: get: operationId: endpoint-sms-by-id-get summary: List sent and received SMS description: 'Returns the list of SMS sent and received by this endpoint. A description of the SMS statuses is as follows: - `1`: Delivery attempt pending - `2`: In progress - `3`: Buffered - `4`: Delivered - `5`: Failed - `6`: Expired - `7`: Canceled ' tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Response with status 200 content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItems' post: operationId: endpoint-sms-by-id-post summary: Send SMS to an endpoint description: 'Sends a mobile terminating SMS (MT-SMS) to a connected device. The device must have an active SIM with SMS capability enabled in its service profile. ## Use cases ### Standard SMS Send an SMS with a numeric sender ID. Set `source_address` to the sender''s phone number (for example, `12345689`) and include your message in `payload`. ### Alphanumeric sender ID Display a custom sender name instead of a phone number. Set `source_address` to your brand name (for example, `CompanyName`, up to 11 characters) and include `source_address_type` with `id: 208`. Alphanumeric sender IDs are one-way only. Recipients can''t reply directly to these messages. ### Person-to-Application (P2A) SMS Receive SMS responses at your server. Set `dest_address` with a callback identifier. The platform forwards incoming messages to the API callback URL configured in your service profile. ### Concatenated SMS Send messages longer than 160 characters by splitting them across multiple API calls. Each call requires a `udh` (User Data Header) that identifies the message sequence. The UDH format `050003XXYYZZ` contains: - `XX`: Unique message reference (for example, `CC`) - `YY`: Total number of parts (for example, `02` for 2 parts) - `ZZ`: Current part number (for example, `01` for part 1) For more information, see the [3GPP TS 23.040 specification](https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=747). ' tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Resource Created content: application/json: schema: $ref: '#/components/schemas/Endpoint_EndpointSmsByIdPost_Response_201' requestBody: content: application/json: schema: type: object properties: payload: type: string description: 'The SMS message content. Must be UTF-8 encoded. Maximum 160 characters for a single SMS, or use `udh` for longer messages. ' source_address: type: string description: 'The sender identifier displayed on the recipient''s device. Can be an MSISDN (phone number), short code, or alphanumeric string. Alphanumeric strings are limited to 11 characters per GSM specifications. ' source_address_type: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsPostRequestBodyContentApplicationJsonSchemaSourceAddressType' description: 'Defines the format of `source_address`. Required when using alphanumeric sender IDs. ' dest_address: type: string description: 'The callback identifier for Person-to-Application (P2A) SMS. When set, incoming SMS responses are forwarded to the API callback URL configured in your service profile. ' udh: type: string description: 'User Data Header for concatenated SMS. Encoded as a hexadecimal string following 3GPP TS 23.040. For example, `050003CC0201` indicates message 1 of 2 in sequence `CC`. ' dcs: type: integer description: 'Data Coding Scheme per 3GPP TS 23.038. Controls character encoding (for example, `0` for GSM 7-bit default alphabet, `8` for UCS2/UTF-16). ' expiry_date: type: string format: date-time description: 'The deadline for delivery attempts. If the SMS can''t be delivered by this time, it''s discarded. ISO 8601 format. ' required: - payload /api/v1/endpoint/{endpoint_id}/sms/{sms_id}: get: operationId: endpoint-sms-by-endpoint-id-and-sms-id-get summary: SMS details description: 'Returns details about an Endpoint SMS by SMS ID. A description of the SMS statuses is as follows: - `1`: Delivery attempt pending - `2`: In progress - `3`: Buffered - `4`: Delivered - `5`: Failed - `6`: Expired - `7`: Canceled ' tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: sms_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Response with status 200 content: application/json: schema: $ref: '#/components/schemas/Endpoint_EndpointSmsByEndpointIdAndSmsIdGet_Response_200' delete: operationId: endpoint-sms-by-endpoint-id-and-sms-id-delete summary: Cancel SMS description: Cancel SMS that is buffered for endpoint and not yet delivered. tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: sms_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Endpoint_EndpointSmsByEndpointIdAndSmsIdDelete_Response_200' /api/v1/endpoint/{endpoint_id}/stats: get: operationId: endpoint-stats-by-id-get summary: Endpoint usage and cost statistics description: "\n You can only retrieve data traffic costs for organizations without multi-inclusive volumes.\n\ \n\nRetrieves endpoint usage and cost statistics for a given ID.\nUsage statistics are sorted by `data`\ \ and `sms`.\n\nReturns statistics from the following periods:\n\n- `last_month`: Previous billing month, from the\ \ first to last day (for example, April 1-30, 2023, when you send the request sometime in May 2023).\n- `current_month`:\ \ Current month, with statistics calculated up to and including the date requested (for example, May 1-8, 2023, when\ \ you sent the request on May 8, 2023).\n- `last_hour`: Previous 60 minutes, accumulated per minute and organized\ \ by data or SMS received by the device (`rx`) and transmitted by the device (`tx`).\n\n\n `last_month` and\ \ `current_month` are only included in the responses if traffic exists.\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned the endpoint statistics associated with the provided `id`. content: application/json: schema: $ref: '#/components/schemas/Endpoint_EndpointStatsByIdGet_Response_200' /api/v1/endpoint/{endpoint_id}/stats/daily: get: operationId: endpoint-stats-daily-by-id-get summary: Retrieve daily usage statistics for an endpoint description: "Returns daily usage statistics for a specific endpoint, including cellular data and SMS volumes.\n\nBy\ \ default, returns statistics for the current month.\nUse `start_date` and `end_date` query parameters to specify\ \ a custom date range.\n\n\n Data traffic cost statistics (`cost` field in the `data` object) have been\ \ deprecated.\n\n" tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: start_date in: query description: "Filters by start date, provided in a `YYYY-MM-DD` format.\n\n\n If you don't define an end date,\ \ the response will include 6 months of data, beginning on the current date.\n\n" required: false schema: type: string format: date - name: end_date in: query description: "Filters by end date, provided in an `YYYY-MM-DD` format.\n\n\n If you don't define a start date,\ \ the response will only return data from the month indicated in your end date.\n\n" required: false schema: type: string format: date - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: 'Successfully returned the daily endpoint statistics. Each day''s entry contains: - `date`: The date in YYYY-MM-DD format - `data`: Cellular data usage (volume in MB) - `sms`: SMS usage (volume as message count) - `sat_geo_data`: Satellite data usage, if applicable - `sat_geo_sms`: Satellite SMS usage, if applicable Volume fields include `volume` (total), `volume_tx` (transmitted), and `volume_rx` (received). ' content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItems' /api/v1/endpoint/{endpoint_id}/traffic_limit_extension: get: operationId: get-endpoint-traffic-limit-extensions summary: List active traffic limit extensions description: 'Returns all active traffic limit extensions for an endpoint, if any exist. Only accessible by users with Administrator, User or Observer roles who belong to the endpoint''s organization. ' tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned traffic limit extension details content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EndpointEndpointIdTrafficLimitExtensionGetResponsesContentApplicationJsonSchemaItems' '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: Endpoint not found or does not belong to user's organization content: application/json: schema: description: Any type post: operationId: create-endpoint-traffic-limit-extension summary: Create traffic limit extension description: 'Creates a temporary traffic limit extension for an endpoint. Only accessible by users with Administrator or User roles who belong to the endpoint''s organization. Required fields: * `volume` - The traffic volume limit ' tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Traffic limit extension created successfully content: application/json: schema: $ref: '#/components/schemas/Endpoint_CreateEndpointTrafficLimitExtension_Response_201' '400': description: Invalid request body content: application/json: schema: description: Any type '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: Endpoint not found or does not belong to user's organization content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: traffic_limit_id: type: number format: double volume: type: number format: double required: - volume delete: operationId: delete-endpoint-traffic-limit-extensions summary: Delete all traffic limit extensions for an endpoint description: 'Removes all traffic limit extensions from an endpoint. Only accessible by users with Administrator or User roles who belong to the endpoint''s organization. The endpoint''s traffic limits will revert to their original values defined in the service profile. ' tags: - subpackage_endpoint parameters: - name: endpoint_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Traffic limit extensions successfully removed content: application/json: schema: type: object properties: {} '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: Endpoint not found or does not belong to user's organization content: application/json: schema: description: Any type /api/v1/esme_interface_type: get: operationId: esme-interface-type-get summary: List ESME interface types description: Provides the list of available ESME interface types. tags: - subpackage_lookups parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EsmeInterfaceTypeGetResponsesContentApplicationJsonSchemaItems' /api/v1/euicc: get: operationId: list-euiccs summary: List eUICCs description: 'List all eUICCs for your organization. Use filter parameters to search for specific eUICCs and sort to order the response list. ' tags: - subpackage_euicc parameters: - name: page in: query description: Page number (1-based). required: false schema: type: integer default: 1 - name: per_page in: query description: Items per page. required: false schema: type: integer default: 100 - name: q in: query description: 'Filter parameter in `:` format. Expects a comma-separated list from the allowed fields: - `id` - `eid` - `supported_profile_type` - `status` - `eim` ' required: false schema: type: string - name: sort in: query description: 'Sort properties according to a comma separated list from the allowed fields (prefix with `-` for descending): - `id` - `eid` - `modified` - `supported_profile_type` - `status` - `eim` ' required: false schema: type: string - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: List of eUICCs content: application/json: schema: type: array items: $ref: '#/components/schemas/Euicc' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/euicc/operation/action: get: operationId: list-operation-action summary: List operation action for eUICC description: 'List possible IoT eUICC action objects used in responses and requests. ' tags: - subpackage_euiccOperation parameters: - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: List of operation action for eUICC content: application/json: schema: type: array items: $ref: '#/components/schemas/OperationAction' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/euicc/operation/status: get: operationId: list-operation-status summary: List operation status for eUICC description: 'List possible IoT eUICC operation status objects used in responses. ' tags: - subpackage_euiccOperation parameters: - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: List of operation status for eUICC content: application/json: schema: type: array items: $ref: '#/components/schemas/OperationStatus' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/euicc/profile/status: get: operationId: list-euicc-profile-status summary: List eUICC Profile status description: 'List possible eUICC Profile statuses. ' tags: - subpackage_euicc parameters: - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: List of eUICC Profile statuses content: application/json: schema: type: array items: $ref: '#/components/schemas/Status' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/euicc/status: get: operationId: list-euicc-status summary: List eUICC status description: 'List possible eUICC statuses (reserved for future use). ' tags: - subpackage_euicc parameters: - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: List of eUICC statuses content: application/json: schema: type: array items: $ref: '#/components/schemas/Status' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/euicc/unlinked_validation: post: operationId: post-euicc-unlinked-validation summary: Unlinked eUICC validation description: 'Validate whether the specified eUICCs do not have any existing profiles linked. ' tags: - subpackage_euicc parameters: - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: Validation response containing EIDs that already have linked profiles content: application/json: schema: $ref: '#/components/schemas/EuiccUnlinkedValidationResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/EuiccUnlinkedValidationRequest' /api/v1/euicc/{euicc_id}: get: operationId: get-euicc summary: Get eUICC description: 'List details on one specific eUICC within your organization. ' tags: - subpackage_euicc parameters: - name: euicc_id in: path required: true schema: type: integer - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: eUICC detail content: application/json: schema: $ref: '#/components/schemas/Euicc' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/euicc/{euicc_id}/operation: get: operationId: list-operation summary: List operation for eUICC description: 'List all operations of a specific IoT eUICC. This route returns HTTP 404 error for non-IoT eUICCs. ' tags: - subpackage_euiccOperation parameters: - name: euicc_id in: path required: true schema: type: integer - name: page in: query description: Page number (1-based). required: false schema: type: integer default: 1 - name: per_page in: query description: Items per page. required: false schema: type: integer default: 100 - name: q in: query description: 'Filter parameter in `:` format. Expects a comma-separated list from the allowed fields: - `id` - `action` - `status` - `iccid_with_luhn` ' required: false schema: type: string - name: sort in: query description: 'Sort properties according to a comma separated list from the allowed fields (prefix with `-` for descending): - `id` - `action` - `status` - `iccid_with_luhn` - `creation_date` - `expiry_date` - `finalization_date` ' required: false schema: type: string - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: Operation list content: application/json: schema: type: array items: $ref: '#/components/schemas/EuiccOperation' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' post: operationId: schedule-operations summary: Schedule eUICC operations description: 'Schedules one or more operations on the specified eUICC. Each array element represents a single operation request. This route returns HTTP 404 error for non-IoT eUICCs. ' tags: - subpackage_euiccOperation parameters: - name: euicc_id in: path required: true schema: type: integer - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '201': description: Created, operations scheduled content: application/json: schema: type: array items: $ref: '#/components/schemas/EuiccOperation' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/EuiccOperationRequestList' /api/v1/euicc/{euicc_id}/operation/{operation_id}: get: operationId: get-operation summary: Get operation details description: 'Get details of specific operation for a specific IoT eUICC. This route returns HTTP 404 error for non-IoT eUICCs. ' tags: - subpackage_euiccOperation parameters: - name: euicc_id in: path required: true schema: type: integer - name: operation_id in: path required: true schema: type: string format: uuid - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: Operation detail content: application/json: schema: $ref: '#/components/schemas/EuiccOperation' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' delete: operationId: cancel-operation summary: Cancel operation description: 'Cancel a specific operation on specific IoT eUICC (reserved for future use). ' tags: - subpackage_euiccOperation parameters: - name: euicc_id in: path required: true schema: type: integer - name: operation_id in: path required: true schema: type: string format: uuid - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '204': description: No Content content: application/json: schema: type: object properties: {} '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/event: get: operationId: get-events summary: List events description: Returns the list of events, filtered, sorted and paged according to query parameters. tags: - subpackage_events parameters: - name: page in: query description: Current page number required: false schema: type: integer - name: per_page in: query description: Defines the number of items per page required: false schema: type: integer - name: sort in: query description: 'Sort properties according to a comma separated list of accepted fields. Valid fields are: * `id` - (**event id**) * `timestamp` - (**event timestamp**) * `source` - (**event source**) * `severity` - (**event severity**) * `alert` - (**alert status**) * `organisation` - (**organisation name**) * `user` - (**user id**) * `endpoint` - (**endpoint name**) * `tags` - (**endpoint tags**) * `ip_address` - (**endpoint ip_address**) * `iccid` - (**sim iccid**) * `imsi` - (**sim imsi**) * `type` - (**event type**) ' required: false schema: type: string - name: q in: query description: 'Filter parameter in `:` format. Multiple filters must be a comma-separated list of the following fields: * `from` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, **only valid with until**) * `until` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, **only valid with from**) * `type` (**event_type**, numerical) * `source` (**event_type**, numerical, e.g. 0 = Network), 1 = Policy Control, 2 = API) * `severity` (**event_severity**, numerical, e.g. 0 = Info, 1 = Warn), 2 = Critical) * `alert` (boolean, e.g. true, false) * `description` (**event description**, string) * `organisation` (**organisation name**, string) * `user` (**user name**, string) * `endpoint` (**endpoint name**, string) * `tags` (**endpoint tags**, string) * `ip_address` (**endpoint IP address**, valid IPv4/IPv6 address) * `imei` (**endpoint imei**, numerical string) * `iccid` (**sim iccid**, numerical string) * `imsi` (**sim imsi**, numerical string) * `timestamp` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, for querying events of 1 day, deprecated in future) * `iccid_with_luhn` (**sim iccid with Luhn**, numerical string) * `network` (**endpoint network**, string, e.g. Telekom) * `rat` (**event pdp context rat type**, numerical string, e.g. 6) * `country` (**endpoint country**, string, e.g. Germany) Some filters can accept up to 6 values which must be separated by the pipe symbol (`|`) or url-encoded as (`%7C`): * `iccid` (q: iccid:1234567890123456789|8988303000123456789) * `iccid_with_luhn` (q: iccid:12345678901234567891|89883030001234567891) * `endpoint` (q: endpoint:example_endpoint_name|another_endpoint_name) * `type` (q: type:example_event_type|another_event_type) * `network` (q: network:example_network|another_network) * `rat` (q: rat:example_rat|another_rat) * `country` (q: country:example_country|another_country) ' required: false schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned a list of events content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EventGetResponsesContentApplicationJsonSchemaItems' '400': description: '**Bad Request** due to incorrect **Paging** Parameters or **Sorting** Parameter ' content: application/json: schema: description: Any type '422': description: '**Unprocessable Entity** due to incorrect **Query** parameters ' content: application/json: schema: description: Any type /api/v1/event/custom/configuration: get: operationId: get-custom-events summary: List custom events description: 'Returns a list of all available custom events and their supported targeting options. ' tags: - subpackage_customEvents parameters: - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomEventOutputDto' post: operationId: create-custom-event-instance summary: Deploy custom event description: 'Deploys a custom event with the specified configuration. ' tags: - subpackage_customEvents parameters: - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '201': description: '' content: application/json: schema: $ref: '#/components/schemas/CustomEventOutputDto' requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomEventCreateDto' /api/v1/event/custom/configuration/{custom_event_id}: get: operationId: get-custom-event summary: Get a custom event by ID description: 'Retrieves a specific custom event and its supported targeting options. ' tags: - subpackage_customEvents parameters: - name: custom_event_id in: path required: true schema: type: string - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/CustomEventOutputDto' delete: operationId: delete-custom-event summary: Delete custom event description: 'Deletes a custom event with the specified configuration. ' tags: - subpackage_customEvents parameters: - name: custom_event_id in: path required: true schema: type: string - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Custom Events_deleteCustomEvent_Response_200' /api/v1/event/custom/template: get: operationId: get-custom-event-templates summary: List custom event templates description: 'Returns a list of all available custom event templates and their possible configuration parameters. ' tags: - subpackage_customEvents parameters: - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomEventTemplateOutputDto' /api/v1/event/custom/template/{template_id}: get: operationId: get-custom-event-template summary: Get a custom event template by ID description: 'Retrieves a specific custom event template and its possible configuration parameters. ' tags: - subpackage_customEvents parameters: - name: template_id in: path required: true schema: type: string - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/CustomEventTemplateOutputDto' /api/v1/event/system/configuration: get: operationId: get-system-events summary: List system events description: 'Returns a list of all available system events and their supported targeting options. ' tags: - subpackage_systemEvents parameters: - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/SystemEventOutputDto' /api/v1/event/system/configuration/{system_event_id}: get: operationId: get-system-event summary: Get a system event by ID description: 'Retrieves a specific system event and its supported targeting options. ' tags: - subpackage_systemEvents parameters: - name: system_event_id in: path required: true schema: type: string - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/SystemEventOutputDto' /api/v1/event/type: get: operationId: event-type-get summary: List event types description: Provides the list of event_types (lookup). tags: - subpackage_events parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1EventTypeGetResponsesContentApplicationJsonSchemaItems' /api/v1/ip_address_space: get: operationId: ip-address-space-get summary: List IP address spaces description: Returns a list of allocated IP address spaces for your organization. tags: - subpackage_ipAddressSpaces parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1IpAddressSpaceGetResponsesContentApplicationJsonSchemaItems' post: operationId: ip-address-space-post summary: Create an IP address space description: 'Checks the requested IP address space for validity and availability, then allocates it to your organization. ' tags: - subpackage_ipAddressSpaces parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: 'Created The requested IP address space is created. ' content: application/json: schema: $ref: '#/components/schemas/IP Address Spaces_IpAddressSpacePost_Response_201' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/IpAddressSpacePostRequestBadRequestError' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/IpAddressSpacePostRequestForbiddenError' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/IpAddressSpacePostRequestNotFoundError' '409': description: 'The requested IP address space overlaps with an existing allocated IP address space. For example, `10.176.0.0/12` and `10.176.0.0/24` or `10.188.33.16/28`. ' content: application/json: schema: $ref: '#/components/schemas/IpAddressSpacePostRequestConflictError' '422': description: "Your requested IP address space isn't allowed or overlaps with a reserved range.\n\n\n These\ \ responses have different root causes but share an [error code](/developers/api-guidelines/errors#list-of-error-codes)\ \ and token.\n Be sure to check the error message to determine the exact cause.\n\n\nThe requested\ \ IP address space must be in one of the following ranges:\n\n- `10.192.0.0/12`\n- `100.64.0.0/10`\n- `10.112.0.0/12`\n\ - `10.176.0.0/12`\n\nIt also can't overlap with a reserved range (`100.64.0.0/24`).\n" content: application/json: schema: $ref: '#/components/schemas/IpAddressSpacePostRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: ip_address_space: type: string ip_address_version: type: integer required: - ip_address_space - ip_address_version /api/v1/ip_address_space/available: get: operationId: ip-address-space-available-by-ip-address-version-get summary: Get random address spaces description: 'Provides a list of 10 random available address spaces (unassigned to any organization). As the list is generated for each request, two successive requests will have different results. ' tags: - subpackage_ipAddressSpaces parameters: - name: ip_address_version in: query description: 'Filter by IPv4 which is default or by IPv6. Example: `ip_address_version=4` or `ip_address_version=6` ' required: false schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1IpAddressSpaceAvailableGetResponsesContentApplicationJsonSchemaItems' /api/v1/ip_address_space/{address_space_id}: put: operationId: ip-address-space-by-id-put summary: Assign an IP address space to an organization description: "\n Use POST API call instead of this deprecated PUT command.\n\n\nThe IP address space\ \ is assigned to the user's organization.\n" tags: - subpackage_ipAddressSpaces parameters: - name: address_space_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '404': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/IpAddressSpaceByIdPutRequestNotFoundError' '409': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/IpAddressSpaceByIdPutRequestConflictError' delete: operationId: ip-address-space-by-id-delete summary: Release an IP address space from an organization description: "Release the IP address space from association with the user's organisation.\n\n\n IP address spaces\ \ can only be removed, if the IP address space isn't used on any of the organisations endpoints.\n\n" tags: - subpackage_ipAddressSpaces parameters: - name: address_space_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Response to a successful request that is not returning a body content: application/json: schema: type: object properties: {} '404': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/IpAddressSpaceByIdDeleteRequestNotFoundError' '409': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/IpAddressSpaceByIdDeleteRequestConflictError' /api/v1/operator: get: operationId: operator-get summary: List operators description: 'Returns a collection of existing operators. It will return an array of items with following properties: * `id`: identifier of this operator * `name`: the official name of the operator * `name_and_country`: Name / Country (for easy access in the UI) * `country`: country object with the nested country `id` * `mnc`: Array of Mobile Network Codes (MNCs) * `tapcode`: Array of TAP Codes ' tags: - subpackage_operator parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1OperatorGetResponsesContentApplicationJsonSchemaItems' /api/v1/organisation/my: get: operationId: my-organisation-get summary: My organization details description: You can retrieve details about your own organisation tags: - subpackage_organization parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Organization_MyOrganisationGet_Response_200' /api/v1/organisation/status: get: operationId: organisation-status-get summary: List organization statuses description: Provides a list of available organisation status (lookup). tags: - subpackage_organization parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1OrganisationStatusGetResponsesContentApplicationJsonSchemaItems' /api/v1/organisation/{org_id_or_my}/inclusive_volume/active: get: operationId: get-active-organisation-inclusive-volume summary: Get list of active organization inclusive volumes description: 'Returns of a list of inclusive volumes that are currently active in the current billing period for the selected organisation. This will not inclusive volumes that are already expired or have the start date set for a future billing period. Only inclusive volumes for the own organisation or direct child organisations are accessible. ' tags: - subpackage_organization parameters: - name: org_id_or_my in: path description: Numerical ID of an Organization or the string `my` to use the currently authorized organisation required: true schema: type: string default: my - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItems' '404': description: A non-existent resource is requested content: application/json: schema: description: Any type /api/v1/organisation/{org_id_or_my}/inclusive_volume/{inclusive_volume_id}: put: operationId: assign-ratezone-inclusive-volume summary: Assign a ratezone inclusive volume to an organization description: 'Assigns a pre-configured ratezone inclusive volume to the specified organization. This can be done in self-service as well as for direct child organizations. Only postpaid customers can assign inclusive volumes in self-service, while parent organizations can assign inclusive volumes for both postpaid and prepaid child organizations. The inclusive volume is charged and calculated against traffic charges accordingly in every bill that is refreshed from that point on. Inclusive volume is counted per device on a monthly basis, the data can be pooled as well or be treated per individual device. Only inclusive volumes of ratezones belonging to the tariffs assigned to the selected organization can be chosen. Enterprise organizations are only allowed to upgrade to a higher inclusive volume if there is already one active in the current month. The request body is optional. All fields have default values and detailed constraints are specified in the schema below. ' tags: - subpackage_organization parameters: - name: org_id_or_my in: path description: Numerical ID of an Organization or the string `my` to use the currently authorized organisation required: true schema: type: string default: my - name: inclusive_volume_id in: path description: 'Numerical ID of a ratezone inclusive volume. Can be retrieved using `GET /api/v1/tariff/{tariff_id}/ratezone/{ratezone_id}/inclusive_volume`. ' required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/Organization_AssignRatezoneInclusiveVolume_Response_201' '400': description: The request is malformed, e.g. the body cannot be parsed content: application/json: schema: description: Any type '404': description: 'Organisation is not accessible or not valid in this context ' content: application/json: schema: description: Any type requestBody: description: 'Configure the inclusive volume billing period and pooling behavior. All fields are optional and will use default values if omitted. ' content: application/json: schema: type: object properties: start_date: type: string format: date-time description: 'The first day of the month when this inclusive volume assignment becomes active. Defaults to the first day of the current month. Times are normalized to midnight UTC (times in input are stripped). Must be the current month or a future month. ' end_date: type: - string - 'null' format: date-time description: 'The last day of the month when this inclusive volume assignment expires. Defaults to `null` (indefinite duration). When specified, must be the last day of a calendar month. Times are normalized to 23:59:59 UTC (times in input are stripped). Must be on or after the `start_date`. ' pooled: type: boolean default: true description: 'Whether the inclusive volume is shared across all devices or tracked individually. - `true` (default): Data consumption is pooled. All devices share the monthly volume limit. - `false`: Each device receives its own quota proportional to the total volume. ' /api/v1/organisation/{org_id_or_my}/stats: get: operationId: get-organisation-monthly-stats summary: Monthly organization traffic and cost statistics description: 'Retrieves traffic and cost statistics for the selected organization. Traffic statistics accumulate for the `current_month` and `last_month` of the selected organization and all child organizations. All other returned values (SIM statistics, user counts, etc.) are only for the selected organization. ' tags: - subpackage_organization parameters: - name: org_id_or_my in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Organization_GetOrganisationMonthlyStats_Response_200' '422': description: Selected organisation not found or not accessible content: application/json: schema: description: Any type /api/v1/organisation/{org_id_or_my}/stats/daily: get: operationId: get-organisation-daily-stats summary: Daily organization traffic and cost statistics description: "Retrieves traffic and cost statistics for the selected organization and all child organizations, accumulated\ \ per day.\n\n\n By default, this call returns statistics for the current month.\n\n" tags: - subpackage_organization parameters: - name: org_id_or_my in: path description: 'Numerical ID of an organization or the string `my` to use the currently authorized organization. ' required: true schema: type: string default: my - name: start_date in: query description: 'Filters results to data collected on or after this date. If `end_date` isn''t specified, the response includes data through the end of the selected month. ' required: false schema: type: string format: date - name: end_date in: query description: 'Filters results to data collected before this date. Must be used with `start_date`. ' required: false schema: type: string format: date - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItems' /api/v1/organisation/{org_id_or_my}/stats/hourly: get: operationId: get-organisation-hourly-stats summary: Hourly organization traffic statistics description: "Retrieves traffic statistics for the selected organization and all child organizations, accumulated per\ \ hour.\n\n\n By default, this call returns statistics for the last three hours.\n\n" tags: - subpackage_organization parameters: - name: org_id_or_my in: path description: 'Numerical ID of an organization or the string `my` to use the currently authorized organization. ' required: true schema: type: string default: my - name: start_date in: query description: 'Filters results to data collected on or after this timestamp. If not specified, the response includes data from the past three hours up to the current time. ' required: false schema: type: string format: date - name: end_date in: query description: 'Filters results to data collected before this timestamp. Must be used with `start_date`. If not specified, defaults to one hour after the current time. ' required: false schema: type: string format: date - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Organization_GetOrganisationHourlyStats_Response_200' /api/v1/organisation/{org_id_or_my}/tariff_plan/active: get: operationId: get-organisation-active-tariff-plan summary: Get the active tariff plan for the given organization description: 'Retrieve detailed information about the currently assigned `tariff_plan` of the given organisation. It can either be accessed for the own organisation or a direct child organisation. The `applied_price` field is calculated using the currently active SIM cards for the month. ' tags: - subpackage_tariffPlans parameters: - name: org_id_or_my in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Tariff Plans_GetOrganisationActiveTariffPlan_Response_200' '404': description: Organisation not found or no active tariff plan content: application/json: schema: description: Any type /api/v1/organisation/{org_id}/tariff: patch: operationId: update-organisation-tariff summary: Update assigned tariff description: 'Allows an organisation to change their assigned tariff. The following restrictions apply: * The organisation must not have more than one tariff assigned. * The tariff can be changed only for the own organisation and direct child organisations. The organisation status must be "ACTIVE". * If performing the change in self-service, the organisation needs to be in evaluation. Parent organisations are allowed to change the tariffs of production organisations. * The selected tariff must be active, visible to the requested organisation and must have the same currency. Parent organisations are allowed to assign private tariffs to their child organisations. In addition to updating the assigned tariff, the system will also: * Update all of the organisations tariff profiles to use the new tariff. * Activate all ratezones in the tariff in order to ensure that the endpoints do not lose connection. * Expire all currently active inclusive volumes and custom rates and delete future ones. ' tags: - subpackage_organization parameters: - name: org_id in: path description: Numerical ID of an organization required: true schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Response to a successful GET, also used for a POST if it does not result in a creation content: application/json: schema: $ref: '#/components/schemas/Organization_UpdateOrganisationTariff_Response_200' '400': description: The request is malformed, e.g. the body cannot be parsed content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type '422': description: Body will return list of validation errors content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: id: type: number format: double description: ID of the new tariff required: - id /api/v1/organisation/{org_id}/tariff_plan: get: operationId: organisation-tariff-plan-by-org-id-get summary: List organization tariff plans description: 'Retrieve a list of all Tariff Plans that are available for the given organisation. The available tariff plans for one''s own organisation can also be retrieved with a call to `/api/v1/organisation/my/tariff_plan` ' tags: - subpackage_tariffPlans parameters: - name: org_id in: path description: Numerical ID of an organization required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItems' /api/v1/rat_type: get: operationId: rat-type summary: List RAT types description: 'Returns a list of supported RAT types. ' tags: - subpackage_lookups parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1RatTypeGetResponsesContentApplicationJsonSchemaItems' /api/v1/service: get: operationId: service-get summary: List services description: 'Retrieves a collection of available services. Services are read only objects. Service objects contain expanded traffic limit nested objects. ' tags: - subpackage_serviceLookupsAndConfiguration parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1ServiceGetResponsesContentApplicationJsonSchemaItems' /api/v1/service/{service_id}/traffic_limit: get: operationId: service-traffic-limit-by-id-get summary: Get service SMS limit description: 'SMS limits are system configuration parameters defined for a single service. SMS limits do not have direct effect, but have to be explicitly assigned to an endpoint or a service profile. ' tags: - subpackage_serviceLookupsAndConfiguration parameters: - name: service_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1ServiceServiceIdTrafficLimitGetResponsesContentApplicationJsonSchemaItems' /api/v1/service_level: get: operationId: list-service-levels summary: Get list of service levels description: 'Returns a list of service levels that can be configured on a tariff plan level. For non-enterprise organisations, only own service levels will be returned. For enterprise organisations, only the service levels of the parent organisation will be returned. ' tags: - subpackage_lookups parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1ServiceLevelGetResponsesContentApplicationJsonSchemaItems' /api/v1/service_profile: get: operationId: service-profile-get summary: List service profiles description: 'Retrieves a collection of all service profiles for your organization. Returned service profiles contain just the total count of associated services, so this is the short view. ' tags: - subpackage_serviceProfiles parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1ServiceProfileGetResponsesContentApplicationJsonSchemaItems' post: operationId: service-profile-post summary: Create service profile description: "Creates a new Service Profile. A `name` must be specified for the Service Profile and all other fields\ \ are optional.\n\nEditable fields:\n* `name` (String required)\n* `description` (String optional)\n* `allowed_3g`\ \ (boolean optional, defaults to true)\n* `allowed_4g` (boolean optional, defaults to true). Allows or restricts connectivity\ \ for 4G/LTE and LTE-M networks.\n* `allowed_nb_iot` (boolean optional, defaults to true)\n* `allowed_nb_iot_geo`\ \ (boolean optional, defaults to false). Allows or restricts NB-IoT connectivity over satellite networks.\n* **DEPRECATED**\ \ `apply_quota` (boolean optional, defaults to false). Use `apply_data_quota` instead. Will be ignored if `apply_data_quota`\ \ is present.\n* `apply_data_quota` (boolean optional, defaults to false)\n* `apply_sms_quota` (boolean optional,\ \ defaults to false)\n* `retail` (boolean optional, defaults to false)\n* `sms_p2p_int` (boolean optional, defaults\ \ to true)\n* `sms_p2p_ext` (boolean optional, defaults to true)\n* **DEPRECATED** `prepaid` (boolean optional, defaults\ \ to false)\n* `nipdp` (boolean optional, defaults to false)\n* `api_callback` (object optional)\n* `api_secret` (object\ \ optional)\n* `moc_callback` (object optional)\n* `esme_interface_type` (object optional)\n* `breakout_region` (object\ \ optional)\n* `dns` (object optional)\n\n\n Enabling services (SMS, Data etc.) is done via `PUT` to `/api/v1/service_profile/{profile_id}/service/{service_id}`.\n\ \n" tags: - subpackage_serviceProfiles parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Resource Created content: application/json: schema: $ref: '#/components/schemas/Service Profiles_ServiceProfilePost_Response_201' requestBody: content: application/json: schema: type: object properties: name: type: string description: type: string allowed_3g: type: boolean allowed_4g: type: boolean allowed_nb_iot: type: boolean allowed_nb_iot_geo: type: boolean apply_sms_quota: type: boolean apply_data_quota: type: boolean retail: type: boolean sms_p2p_int: type: boolean sms_p2p_ext: type: boolean prepaid: type: boolean nipdp: type: boolean api_callback: $ref: '#/components/schemas/ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaApiCallback' api_secret: $ref: '#/components/schemas/ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaApiSecret' moc_callback: $ref: '#/components/schemas/ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaMocCallback' esme_interface_type: $ref: '#/components/schemas/ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaEsmeInterfaceType' breakout_region: $ref: '#/components/schemas/ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaBreakoutRegion' dns: $ref: '#/components/schemas/ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaDns' /api/v1/service_profile/{profile_id}: get: operationId: service-profile-by-profile-id-get summary: Retrieve a service profile description: Retrieve a service profile with a given id. tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Service Profiles_ServiceProfileByProfileIdGet_Response_200' delete: operationId: service-profile-by-profile-id-delete summary: Delete a service profile description: 'Deletes a service profile and all its associations with services and traffic limits. A service profile can only be deleted if it is **not** selected on an endpoint. If it is not selected on an endpoint, the used_count is 0. ' tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '409': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/ServiceProfileByProfileIdDeleteRequestConflictError' patch: operationId: service-profile-by-profile-id-patch summary: Update service profile description: 'Update a service profile with a given id. Editable fields: * `name` (String optional) * `description` (String optional) * `allowed_3g` (boolean optional) * `allowed_4g` (boolean optional). Allows or restricts connectivity for 4G/LTE and LTE-M networks. * `allowed_nb_iot` (boolean optional) * `allowed_nb_iot_geo` (boolean optional). Allows or restricts NB-IoT connectivity over satellite networks. * **DEPRECATED** `apply_quota` (boolean optional, defaults to false). Use `apply_data_quota` instead. Will be ignored if `apply_data_quota` is present. * `apply_data_quota` (boolean optional, defaults to false) * `apply_sms_quota` (boolean optional, defaults to false) * `retail` (boolean optional, defaults to false) * `sms_p2p_int` (boolean optional, defaults to true) * `sms_p2p_ext` (boolean optional, defaults to true) * **DEPRECATED** `prepaid` (boolean optional, defaults to false) * `nipdp` (boolean optional, defaults to false) * `api_callback` (object optional) can be emptied by setting the id to null ("api_callback":{"id":null}) * `api_secret` (object optional) can be emptied by setting the id to null ("api_secret":{"id":null}) * `moc_callback` (object optional) can be emptied by setting the id to null ("moc_callback":{"id":null}) * `esme_interface_type` (object optional) * `breakout_region` (object optional) * `dns` (object optional) ' tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Successfully updated the Service Profile content: application/json: schema: $ref: '#/components/schemas/Service Profiles_ServiceProfileByProfileIdPatch_Response_201' requestBody: content: application/json: schema: type: object properties: name: type: string description: type: string allowed_3g: type: boolean allowed_4g: type: boolean allowed_nb_iot: type: boolean allowed_nb_iot_geo: type: boolean apply_sms_quota: type: boolean apply_data_quota: type: boolean retail: type: boolean sms_p2p_int: type: boolean sms_p2p_ext: type: boolean prepaid: type: boolean nipdp: type: boolean api_callback: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaApiCallback' api_secret: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaApiSecret' moc_callback: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaMocCallback' esme_interface_type: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaEsmeInterfaceType' breakout_region: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaBreakoutRegion' dns: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaDns' /api/v1/service_profile/{profile_id}/quota/{quota_type}: delete: operationId: delete-quota-by-service-profile-id summary: Remove all quotas of assigned endpoints description: 'Remove all quotas of endpoints which are assigned to this profile. Notice that `apply_data_quota` and/or `apply_sms_quota` have to be patched to false before, otherwise the endpoints will get blocked for having no quota left. This call will also return successfully if no endpoint is assigned or no quotas are set. ' tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: quota_type in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Successfully deleted the quota of all (0 or more) assigned endpoints. content: application/json: schema: type: object properties: {} '404': description: Service profile not found or not part of this organisation. content: application/json: schema: description: Any type /api/v1/service_profile/{profile_id}/service/{service_id}: put: operationId: service-profile-service-by-profile-and-service-put summary: Add a service to a service profile description: "Add service to the collection of services associated to a profile.\nMultiple services can be assigned,\ \ but each only once.\n\n\n Adding the voice service with an id of `3` to a service profile will be successful,\ \ but this feature **isn't enabled** by the platform.\n\n" tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: service_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '409': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/ServiceProfileServiceByProfileAndServicePutRequestConflictError' delete: operationId: service-profile-service-by-profile-and-service-delete summary: Remove a service from a service profile description: Remove service from the collection of services associated to a profile. A service can only be removed if it has no assigned traffic limits. tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: service_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '409': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/ServiceProfileServiceByProfileAndServiceDeleteRequestConflictError' /api/v1/service_profile/{profile_id}/service/{service_id}/traffic_limit/{limit_id}: put: operationId: add-traffic-limit summary: Add SMS limit to service profile description: Add SMS limit to a service policy. tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: service_id in: path required: true schema: type: string - name: limit_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: $ref: '#/components/schemas/Service Profiles_AddTrafficLimit_Response_200' '404': description: SMS limit not found content: application/json: schema: description: Any type '422': description: General error happened when trying to add the SMS limit content: application/json: schema: description: Any type delete: operationId: remove-traffic-limit summary: Remove SMS limit from a service profile description: Removes the SMS Limit (if any) from a given service profile. tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: service_id in: path required: true schema: type: string - name: limit_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: $ref: '#/components/schemas/Service Profiles_RemoveTrafficLimit_Response_200' '422': description: General error happened when trying to add the SMS limit content: application/json: schema: description: Any type /api/v1/service_profile/{profile_id}/traffic_limit: get: operationId: list-service-profile-traffic-limits summary: List data limits of service profile description: 'List data limits of the service profile. These have the possibility to add custom `volume` values per data limit, as well if they apply only to data traffic over satellite rat type, which incurs higher cost, or to cellular. These data limits will not disable any other traffic limits, but can be used to achieve the same outcome. ' tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdTrafficLimitGetResponsesContentApplicationJsonSchemaItems' '403': description: Service Profile is not found or not accessible content: application/json: schema: description: Any type post: operationId: add-service-profile-traffic-limit summary: Add data limit to service profile description: "This API endpoint allows you to add a data limit to a service profile.\nA data limit is a rule that defines\ \ how much data a service can consume within a certain period.\nThis is useful for managing your data usage and avoiding\ \ overage charges.\n\nYou can use this API to customize the data limit for your service profile by specifying the\ \ service type, time period, volume threshold, and warning percentage.\nYou can also choose to apply the data limit\ \ only to satellite radio access technology (RAT) types that use satellites for communication.\n\n\n Only users\ \ with `User` or `Admin` roles can use this API endpoint.\n You can only add **one** data limit per service and satellite\ \ RAT type combination.\n\n\nTo change the data limit, you must first delete the existing data limit and then\ \ add a new one.\n**Exception**: Creating a temporary [traffic limit extension](/developers/api/endpoint/create-endpoint-traffic-limit-extension).\n" tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/Service Profiles_AddServiceProfileTrafficLimit_Response_201' '400': description: One or more values of the data limit are invalid content: application/json: schema: description: Any type '403': description: Service Profile is not found or not accessible content: application/json: schema: description: Any type '409': description: Data Limit for the same traffic type and rat type combination already exists content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: service: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaService' description: 'Service type to which the limit applies. The only supported service type is `Data`, which has an ID of `38`. ' satellite_only: type: boolean default: false description: 'Determines if the limit only applies to satellite RAT types. The default value is `false`, which means the limit applies to all RAT types. ' period: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaPeriod' description: 'Period of the limit. The only supported period is `Monthly`, which uses calendar months and has an ID of `2`. The limit resets at the beginning of each month 00:00 UTC. ' volume: type: integer format: int64 description: 'Limit threshold in the atomic units of the service type (for data, this is bytes). This specifies the amount of data that the service can consume within the period before the limit is reached or exceeded. ' warning_percent: type: integer description: 'Percentage of the limit volume when the system sends an event. The event is sent when the limit is reached or exceeded. For example, if you set the warning percentage to `80`, the system sends an event when the service consumes 80% of the limit volume. ' required: - service - volume delete: operationId: remove-service-profile-traffic-limits summary: Delete all data limits of a service profile description: 'Delete all data limits. This will not influence the assignment style limits. ' tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: No Content content: application/json: schema: type: object properties: {} '403': description: Service Profile is not found or not accessible content: application/json: schema: description: Any type /api/v1/service_profile/{profile_id}/traffic_limit/{limit_id}: delete: operationId: delete-service-profile-traffic-limit summary: Remove data limit from a service profile tags: - subpackage_serviceProfiles parameters: - name: profile_id in: path required: true schema: type: string - name: limit_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: No Content content: application/json: schema: type: object properties: {} '403': description: Service Profile is not found or not accessible content: application/json: schema: description: Any type /api/v1/sim: get: operationId: sim-per-page-sort-by-q-and-page-get summary: List SIMs description: Returns a list of SIMs filtered, sorted, and paged according to query parameters. tags: - subpackage_sim parameters: - name: q in: query description: 'Filter parameter in `:` format. Expects a comma-separated list from the allowed fields: * `id` * `issuer_org` * `reseller_org` * `customer_org` * `iccid` * `iccid_with_luhn` * `status` * `production_date` * `imsi` * `msisdn` * `endpoint` * `model` * `eid` * `satellite_capable` ' required: false schema: type: string - name: sort in: query description: 'Sort parameter in `` format. Sort properties according to a comma-separated list from the allowed fields: * `id` * `issuer_org` * `reseller_org` * `customer_org` * `iccid` * `eid` * `status` * `production_date` * `endpoint` * `model` If no sorting options are specified, the response will be sorted by `id`. Supported operators: * `-`: Descending order * `+`: Ascending order The response will be shown in ascending order if no operator is specified. ' required: false schema: type: string - name: page in: query description: Current page number required: false schema: type: integer - name: per_page in: query description: Defines the number of items per page (max. 2500) required: false schema: type: integer default: 2000 - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned a list of SIMs. content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItems' /api/v1/sim/migration/workspace: post: operationId: sim-migration-workspace summary: Migrate SIMs between Workspaces description: "Migrate SIMs from one Workspace to another.\n\n## Requirements\n\n- The calling user must have **Administrator**\ \ permissions on both the target and source Workspaces\n- The target Workspace must be an enterprise Workspace\n-\ \ Only 500 SIMs can be migrated per request\n- You must provide exactly one of: `sims`, `iccids`, or `iccid_range`\n\ \n\n This endpoint requires authentication with [user credentials](/developers/auth/user-credentials), as application\ \ tokens are scoped to a single Workspace.\n\n\n## Behavior\n\n- **Dry run mode**: The `dry_run` parameter\ \ defaults to `true`.\n Set it to `false` to execute the migration.\n- **Activated SIMs**: SIMs in status `ACTIVATED`\ \ are automatically suspended during migration.\n- **Attached devices**: If SIMs are attached to devices, set `auto_detach_devices:\ \ true` or the request fails.\n\n\n The request fails if one or more SIMs don't meet the requirements for\ \ migration.\n Check the `errors` array in the response for details.\n\n" tags: - subpackage_sim parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: 'Successful migration request. If `dry_run` was set to `false`, the migration is processed. If `dry_run` was set to `true`, the response contains a summary of the changes that would be executed. ' content: application/json: schema: $ref: '#/components/schemas/SIM_SimMigrationWorkspace_Response_200' '400': description: 'The request is malformed. Common causes: - Exceeds the maximum count of 500 SIMs - Multiple SIM identifiers provided (only one of `sims`, `iccids`, or `iccid_range` is allowed) - Invalid ICCID format (must be exactly 19 digits) - ICCID range `end` value is less than `start` ' content: application/json: schema: description: Any type '404': description: 'One or more SIMs or the target Workspace couldn''t be found or are inaccessible. ' content: application/json: schema: description: Any type '409': description: 'One or more SIMs don''t meet the requirements for migration. The response includes an `errors` array with details about which SIMs failed and why. | Error Code | Message | Resolution | |------------|---------|------------| | 1502 | SIM(s) attached to devices | Set `auto_detach_devices: true` to automatically detach SIMs before migration | | 1503 | SIM(s) in disallowed status | Adjust the `allowed_sim_statuses` filter or change the SIM status before migrating | | 1504 | No admin access on source workspace | Request **Administrator** permissions on the source Workspace | | 1505 | Migration between Brazilian and non-Brazilian workspaces is not allowed | This is a regulatory restriction and cannot be bypassed | ' content: application/json: schema: $ref: '#/components/schemas/SimMigrationWorkspaceRequestConflictError' requestBody: content: application/json: schema: type: object properties: sims: type: array items: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaSimsItems' description: "List of SIMs to migrate.\nThe list may include up to 500 SIMs.\n\n\n Cannot be used\ \ in combination with the `iccids` or the `iccid_range` field.\n\n" iccids: type: array items: type: string description: "List of ICCIDs to migrate.\nAll SIMs must belong to the source Workspace.\nThe list may include\ \ up to 500 ICCIDs.\n\n\n Cannot be used in combination with the `sims` or the `iccid_range` field.\n\ \n" iccid_range: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaIccidRange' description: "ICCID range to migrate.\nAll SIMs within the range must belong to the source Workspace.\n\ The range may include up to 500 ICCIDs.\nThe `end` value must be greater than or equal to the `start`\ \ value.\n\n\n Cannot be used in combination with the `iccids` or the `sims` field.\n\n" allowed_sim_statuses: type: array items: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaAllowedSimStatusesItems' description: 'List of SIM statuses that are allowed to be migrated. The request is rejected if a SIM has a status that isn''t in this list. If not provided, all SIM statuses are allowed. ' dry_run: type: boolean default: true description: "Controls whether the migration is executed or simulated.\n\n- `true` (default): Returns a\ \ preview of SIMs that would be migrated without making changes\n- `false`: Executes the migration\n\n\ \n Always test with a dry run first to verify the SIMs match your expectations.\n\n" target_workspace: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaTargetWorkspace' description: 'Target Workspace to migrate SIMs to. Must be an enterprise Workspace. The calling user must have **Administrator** permissions on the target Workspace. ' auto_detach_devices: type: boolean description: 'If set to `true`, the SIMs automatically detach from the devices before being migrated. Otherwise, the request is rejected if one or more SIMs are attached to devices. ' required: - target_workspace /api/v1/sim/multi: delete: operationId: bulk-sim-delete summary: Bulk delete SIMs description: "Deletes multiple SIMs based on the provided list of IDs.\n\n\n Deleted SIMs cannot be recovered.\n\ \n" tags: - subpackage_sim parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: SIMs deleted successfully content: application/json: schema: type: object properties: {} '400': description: Request body is malformed content: application/json: schema: description: Any type '403': description: 'User doesn''t have permission to bulk delete SIMs ' content: application/json: schema: description: Any type '404': description: 'A given SIM ID isn''t found ' content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1SimMultiDeleteRequestBodyContentApplicationJsonSchemaItems' /api/v1/sim/operation: get: operationId: list-sim-operation summary: List SIM operations for organization description: 'List all SIM operations for your organization. ' tags: - subpackage_simOperation parameters: - name: page in: query description: Page number (1-based). required: false schema: type: integer default: 1 - name: per_page in: query description: Items per page. required: false schema: type: integer default: 100 - name: q in: query description: 'Filter parameter in `:` format. Expects a comma-separated list from the allowed fields: - `id` - `action` - `status` ' required: false schema: type: string - name: sort in: query description: 'Sort properties according to a comma separated list from the allowed fields (prefix with `-` for descending): - `id` - `action` - `status` - `creation_date` - `finalization_date` ' required: false schema: type: string - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: SIM operation list content: application/json: schema: type: array items: $ref: '#/components/schemas/SimOperationResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' post: operationId: trigger-sim-operation summary: Trigger SIM operation description: 'Trigger a SIM operation. ' tags: - subpackage_simOperation parameters: - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '201': description: Created, SIM operation scheduled content: application/json: schema: $ref: '#/components/schemas/SimOperationResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/SimOperationRequest' /api/v1/sim/operation/action: get: operationId: list-sim-operation-action summary: List SIM operation actions description: 'List possible SIM operation action objects used in responses and requests. ' tags: - subpackage_simOperation parameters: - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: List of SIM operation actions content: application/json: schema: type: array items: $ref: '#/components/schemas/OperationAction' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/sim/operation/status: get: operationId: list-sim-operation-status summary: List SIM operation status description: 'List possible SIM operation status objects used in responses. ' tags: - subpackage_simOperation parameters: - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: List of SIM operation status content: application/json: schema: type: array items: $ref: '#/components/schemas/OperationStatus' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/sim/operation/{operation_id}: get: operationId: get-sim-operation summary: Get SIM operation details description: 'Get details of a specific SIM operation. ' tags: - subpackage_simOperation parameters: - name: operation_id in: path required: true schema: type: string format: uuid - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: SIM operation detail content: application/json: schema: $ref: '#/components/schemas/SimOperationResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/sim/status: get: operationId: sim-status-get summary: List SIM statuses description: 'Returns a list of available [SIM statuses](/developers/reference/sim#sim-statuses). ' tags: - subpackage_sim parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1SimStatusGetResponsesContentApplicationJsonSchemaItems' /api/v1/sim/unlinked_product_stats: get: operationId: get-unlinked-product-stats summary: Get product statistics on unlinked eSIMs description: 'Receive statistics on how many eSIMs are unlinked (available profile status), grouped by products. ' tags: - subpackage_simUnlinkedProductStatistics parameters: - name: Authorization in: header description: 'An auth_token should be provided to authenticate a session. To obtain an auth_token, see the POST request to `/api/v1/authenticate`. ' required: true schema: type: string responses: '200': description: Unlinked product statistics content: application/json: schema: $ref: '#/components/schemas/SimUnlinkedProductStatsResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' /api/v1/sim/{sim_id}: get: operationId: sim-by-id-get summary: SIM details description: Retrieves SIM details for a given ID. tags: - subpackage_sim parameters: - name: sim_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned the SIM details associated with the provided `id`. content: application/json: schema: $ref: '#/components/schemas/SIM_SimByIdGet_Response_200' delete: operationId: sim-by-id-delete summary: Delete a SIM description: "\n Deleted SIMs cannot be recovered.\n\n\nDeletes a SIM.\n\nThe following restrictions\ \ apply when deleting SIMs:\n* SIMs with an assigned endpoint cannot be deleted.\n* Resellers cannot delete SIMs they\ \ have sold.\n" tags: - subpackage_sim parameters: - name: sim_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Successfully fulfilled the request with no additional content to send in the response payload body. content: application/json: schema: type: object properties: {} '403': description: Request couldn't be satisfied. Typically happens when the `reseller_org_id` field isn't `null` and the value matches the organization ID making the request. content: application/json: schema: description: Any type patch: operationId: sim-by-id-patch summary: Update a SIM description: "Updates a SIM resource.\n\nYou can provide the following fields with this request:\n* `issuer_org` (Object\ \ optional) - change to a direct child organization of the appropriate type\n* `reseller_org` (Object optional) -\ \ change to a direct child organization of the appropriate type or empty (`\"reseller_org\": { \"id\": null }` or\ \ `\"reseller_org\": {}`)\n* `customer_org` (Object optional) - change to own organization or a direct child organization\ \ of type \"Enterprise\" or empty (`\"customer_org\": { \"id\": null }` or `\"customer_org\": {}`)\n* `status` (Object\ \ optional) - update the SIM status\n\nThe following restrictions apply when updating SIMs:\n* Users from the issuer\ \ organization can change any updatable field\n* Users from the reseller organization can update the `reseller_org`\ \ or `customer_org` fields\n* Users from the customer organization can only update the `status` field\n* `issuer_org`\ \ can change to a child organization of the type \"Mobile Network Operator\" or \"Service Provider\"\n* `reseller_org`\ \ can change to child organization of the following types: \"Mobile Network Operator\", \"Service Provider\", or \"\ Reseller\"\n* `customer_org` can change to a child organization of an \"Enterprise\" type\n* `status` can update from\ \ \"Issued\" (`\"id\": 0`) to either \"Activated\" (`\"id\": 1`) or \"Factory Test\" (`\"id\": 4`)\n* `status` can\ \ only update from \"Factory Test\" (`\"id\": 4`) to \"Activated\" (`\"id\": 1`)\n* `status` can switch between \"\ Activated\" (`\"id\": 1`) and \"Suspended\" (`\"id\": 2`)\n\n\n emnify charges for activated SIMs. To avoid\ \ accruing unexpected charges, update the SIM `status` to \"Suspended\" (`\"id\": 2`).\n\n" tags: - subpackage_sim parameters: - name: sim_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Successfully fulfilled the request with no additional content to send in the response payload body. content: application/json: schema: type: object properties: {} '400': description: Unexpected error in the API call. See the HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/SimByIdPatchRequestBadRequestError' requestBody: content: application/json: schema: type: object properties: issuer_org: $ref: '#/components/schemas/ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaIssuerOrg' reseller_org: $ref: '#/components/schemas/ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaResellerOrg' customer_org: $ref: '#/components/schemas/ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaCustomerOrg' status: $ref: '#/components/schemas/ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaStatus' required: - issuer_org - reseller_org - customer_org - status /api/v1/sim/{sim_id}/event: get: operationId: sim-event-page-per-page-sort-by-sim-id-and-q-get summary: List SIM events description: "Returns the list of events, filtered, sorted and paged according to query parameters.\n\n\n This\ \ API endpoint deviates from the specified conventions and may not return the same HTTP Codes as the higher layer\ \ call (`/api/v1/sim/{sim_id}`).\n\n In case the requested `{sim_id}` doesn't exist or is not accessible for the\ \ user, **HTTP 200** will be returned with empty **[]** as long as the provided `{sim_id}` is a number and all parameters\ \ are valid.\n\n Please take that into consideration when building automation on top of the error behavior of this\ \ endpoint.\n\n" tags: - subpackage_sim parameters: - name: sim_id in: path description: Numeric ID of a SIM required: true schema: type: integer - name: page in: query description: Current page number required: false schema: type: integer - name: per_page in: query description: Defines the number of items per page required: false schema: type: integer - name: sort in: query description: 'Sort properties according to a comma separated list of accepted fields. Valid fields are: * `id` - (**event id**) * `timestamp` - (**event timestamp**) * `source` - (**event source**) * `severity` - (**event severity**) * `alert` - (**alert status**) * `organisation` - (**organisation name**) * `user` - (**user id**) * `endpoint` - (**endpoint name**) * `tags` - (**endpoint tags**) * `ip_address` - (**endpoint ip_address**) * `iccid` - (**sim iccid**) * `imsi` - (**sim imsi**) * `type` - (**event type**) ' required: false schema: type: string - name: q in: query description: 'Filter parameter in `:` format. Multiple filters must be a comma-separated list of the following fields: * `from` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, **only valid with until**) * `until` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, **only valid with from**) * `type` (**event_type**, numerical) * `source` (**event_type**, numerical, e.g. 0 = Network), 1 = Policy Control, 2 = API) * `severity` (**event_severity**, numerical, e.g. 0 = Info, 1 = Warn), 2 = Critical) * `alert` (boolean, e.g. true, false) * `description` (**event description**, string) * `organisation` (**organisation name**, string) * `user` (**user name**, string) * `endpoint` (**endpoint name**, string) * `tags` (**endpoint tags**, string) * `ip_address` (**endpoint IP address**, valid IPv4/IPv6 address) * `imei` (**endpoint imei**, numerical string) * `iccid` (**sim iccid**, numerical string) * `imsi` (**sim imsi**, numerical string) * `timestamp` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, for querying events of 1 day, deprecated in future) * `iccid_with_luhn` (**sim iccid with Luhn**, numerical string) * `network` (**endpoint network**, string, e.g. Telekom) * `rat` (**event pdp context rat type**, numerical string, e.g. 6) * `country` (**endpoint country**, string, e.g. Germany) Some filters can accept up to 6 values which must be separated by the pipe symbol (`|`) or url-encoded as (`%7C`): * `iccid` (q: iccid:1234567890123456789|8988303000123456789) * `iccid_with_luhn` (q: iccid:12345678901234567891|89883030001234567891) * `endpoint` (q: endpoint:example_endpoint_name|another_endpoint_name) * `type` (q: type:example_event_type|another_event_type) * `network` (q: network:example_network|another_network) * `rat` (q: rat:example_rat|another_rat) * `country` (q: country:example_country|another_country) ' required: false schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned a list of SIM events content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItems' '400': description: '**Bad Request** due to incorrect **Paging** Parameters, **Sorting** Parameter or incorrect `{sim_id}` ' content: application/json: schema: description: Any type '422': description: '**Unprocessable Entity** due to incorrect **Query** parameters ' content: application/json: schema: description: Any type /api/v1/sim/{sim_id}/stats: get: operationId: sim-stats-by-id-get summary: SIM usage and cost statistics description: "\n You can only retrieve data traffic costs for organizations without multi-inclusive volumes.\n\ \n\nRetrieves SIM usage and cost statistics for a given ID.\nUsage statistics are sorted by `data` and `sms`.\n\ \nReturns statistics from the following periods:\n* `last_month`: Previous billing month, from the first to last day\ \ (for example, February 1-29, 2024, when you send the request in March 2024).\n* `current_month`: Current month,\ \ with statistics calculated up to and including the date requested (for example, March 1-8, 2024, when you sent the\ \ request on March 8, 2024).\n* `last_hour`: Previous 60 minutes, accumulated per minute and organized by data or\ \ SMS received by the device (`rx`) and transmitted by the device (`tx`).\n\n\n `last_month` and `current_month`\ \ are only included in the responses if traffic exists.\n Those responses include a generated `id` value that's comprised\ \ of the SIM ID, year, month, and traffic type ID (`5` for data and `6` for SMS).\n\n For example, if you send a\ \ request in March 2024 for SIM ID `123456`, the `id` for data in the current month is `1234562024035`.\n\n" tags: - subpackage_sim parameters: - name: sim_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned the SIM statistics associated with the provided `id`. content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItems' /api/v1/sim/{sim_id}/stats/daily: get: operationId: sim-statistics-daily-by-id-get summary: Daily SIM usage statistics description: "\n Data traffic cost statistics (`cost` field in the `data` object) have been deprecated.\n\ \n\nRetrieves SIM usage statistics accumulated per day.\nBy default, the response includes statistics for\ \ the current month.\n\n`start_date` and an `end_date` can be provided as query parameters to retrieve statistics\ \ for a specific time frame.\n\nExample request: `/api/v1/sim/123/stats/daily?end_date=2019-03-21&start_date=2019-03-01`\n" tags: - subpackage_sim parameters: - name: sim_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned the daily SIM statistics for the provided dates and ID. content: application/json: schema: description: Any type /api/v1/sim_batch/bic/{bic}: get: operationId: validate-sim-batch-by-bic summary: Validate SIM batch by BIC description: 'Checks the given BIC code and the contained SIMs if they can be registered. ' tags: - subpackage_sim parameters: - name: bic in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Batch is valid and can be registered content: application/json: schema: $ref: '#/components/schemas/SIM_ValidateSIMBatchByBIC_Response_200' '400': description: Batch is already registered content: application/json: schema: description: Any type '404': description: No Batch with the given BIC found content: application/json: schema: description: Any type '422': description: Batch contains SIMs registered to another organisation content: application/json: schema: description: Any type patch: operationId: register-sim-batch-by-bic summary: Register a given batch by BIC description: 'Registers the given SIM batch, assigns all SIMs to the organisation, and sets the status of all contained SIMs to the given value. If the `factory_test_mode_allowed` flag is set to true on the tariff plan assignment or it is enabled in the tariff plan, the SIM batch can be also registered with an initial status of `4 = Factory Test`, thus setting all of the contained SIMs to factory test status. In turn, the `activation_date` of these SIMs will not be set yet, but when the factory test volume is consumed, the auto activation date is reached or they are patched to `Activated` state afterwards. ' tags: - subpackage_sim parameters: - name: bic in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Batch successfully registered and assigned all SIMS content: application/json: schema: $ref: '#/components/schemas/SIM_RegisterSIMBatchByBIC_Response_200' '422': description: 'Could not register the given batch. Reasons may be: * Could find no batch with that BIC * Batch already registered * Batch contains SIMs registered to other organisations * Attempted to register to `Factory Test` status when it is disabled in tariff plan ' content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: sim_status: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchRequestBodyContentApplicationJsonSchemaSimStatus' /api/v1/stats/daily: get: operationId: statistics-daily-by-id-get summary: Organization usage and costs statistics per day for the current month description: "Retrieve usage and costs statistics for the currently logged in organization and all child organizations,\ \ accumulated per days from beginning of the month until today.\n\n\n Data traffic costs aren't returned for\ \ enterprise organizations with inclusive volume.\n\n" tags: - subpackage_organization parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: description: Any type /api/v1/tariff_plan/active: get: operationId: get-active-tariff-plan summary: Retrieve your organization's active tariff plan description: "Retrieve detailed information about your organization's assigned `tariff_plan`.\n\n\n The `applied_price`\ \ field is calculated based on the active SIM cards for the current month.\n\n" tags: - subpackage_tariffPlans parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Tariff Plans_GetActiveTariffPlan_Response_200' '404': description: Organization not found or there's no active tariff plan content: application/json: schema: description: Any type /api/v1/tariff_profile: get: operationId: tariff-profile-get summary: List tariff profiles description: Returns the list of tariff profiles of the user's own organisation. tags: - subpackage_tariffProfiles parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItems' post: operationId: tariff-profile-post summary: Create tariff profile description: 'Create the specified tariff profile ID must not be specified, neither in query String, nor in JSON payload. You can provide following fields with this request: * `name` (String required) * `description` (String optional) * `tariff` (Object required) ' tags: - subpackage_tariffProfiles parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Resource Created content: application/json: schema: $ref: '#/components/schemas/Tariff Profiles_TariffProfilePost_Response_201' requestBody: content: application/json: schema: type: object properties: name: type: string description: type: string tariff: $ref: '#/components/schemas/ApiV1TariffProfilePostRequestBodyContentApplicationJsonSchemaTariff' required: - name - description - tariff /api/v1/tariff_profile/{tariff_profile_id}: get: operationId: tariff-profile-by-id-get summary: Tariff profile details description: 'Returns tariff profile specified by id. This tariff profile also contains information about the currently valid ratezones of the tariff in the tariff profile and if the ratezone is selected in the tariff profile. It also contains applied custom rates for the included tariffs. ' tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Tariff Profiles_TariffProfileByIdGet_Response_200' delete: operationId: tariff-profile-by-id-delete summary: Delete tariff profile description: Deletes tariff profile. Tariff profiles used by an endpoint (`used_count` > 0) cannot be deleted. tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} patch: operationId: tariff-profile-by-id-patch summary: Update tariff profile description: "Patch the specified tariff profile.\n\n\n The API doesn't provide feedback if you assign an\ \ incompatible tariff profile to a SIM.\n See [Tariff profile](/developers/reference/tariff-profile) for more information.\n\ \n\nYou can provide following fields with this request:\n\n* `name` (String optional)\n* `description` (String\ \ optional)\n* `tariff` (Object optional) If the tariff is changed, all selections of ratezones are removed.\n" tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} requestBody: content: application/json: schema: type: object properties: name: type: string description: type: string tariff: $ref: '#/components/schemas/ApiV1TariffProfileTariffProfileIdPatchRequestBodyContentApplicationJsonSchemaTariff' required: - name - description - tariff /api/v1/tariff_profile/{tariff_profile_id}/coverage: get: operationId: tariff-profile-coverage-by-tp-id-get summary: List tariff profile coverage description: Provides the list of countries where that tariff profile can be used. tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path description: tariff profile ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1TariffProfileTariffProfileIdCoverageGetResponsesContentApplicationJsonSchemaItems' /api/v1/tariff_profile/{tariff_profile_id}/inclusive_volume/{inclusive_volume_id}: put: operationId: tariff-profile-inclusive-volume-assignment summary: Assign inclusive volume to tarriff profile description: 'Assignes an inclusive volume to the selected tariff profile. If no inclusive volume is assigned and the customer has multiple active inclusive volumes, the traffic for this tariff profile will be rated as "Pay As You Go". The selected inclusive volume must not be expired and the tariff profile should not have an inclusive volume assigned yet. The tariff of the tariff profile and the inclusive volume ratezone have to match. ' tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: inclusive_volume_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '400': description: The inclusive volume is expired or tariff does not match content: application/json: schema: description: Any type '404': description: Tariff profile or inclusive volume not found content: application/json: schema: description: Any type '409': description: Tariff profile already has an inclusive volume assigned content: application/json: schema: description: Any type delete: operationId: tariff-profile-inclusive-volume-remove-assignment summary: Unassign inclusive volume from tariff profile description: 'Unassign the inclusive volume from the selected tariff profile. If the customer has multiple active inclusive volume, the traffic within that tariff profile will be rated as "Pay As You Go" afterwards. ' tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: inclusive_volume_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '400': description: The inclusive volume is not assigned to the selected tariff profile content: application/json: schema: description: Any type '404': description: Tariff profile or inclusive volume not found content: application/json: schema: description: Any type /api/v1/tariff_profile/{tariff_profile_id}/ratezone_selection/{ratezone_id}: put: operationId: tariff-profile-ratezone-selection-by-tp-id-and-rz-id-put summary: Assign ratezone to tarriff profile description: Only currently valid and active ratezones can be selected for a tariff profile tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: ratezone_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} delete: operationId: tariff-profile-ratezone-selection-by-tp-id-and-rz-id-delete summary: Delete ratezone from tariff profile description: Remove previously selected ratezones from a tariff profile tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: ratezone_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} /api/v1/traffic_limit: get: operationId: traffic-limit-get summary: List traffic limits description: Retrieves a list of available traffic limits. tags: - subpackage_serviceLookupsAndConfiguration parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1TrafficLimitGetResponsesContentApplicationJsonSchemaItems' /api/v1/user: get: operationId: user-per-page-sort-by-q-and-page-get summary: List user accounts description: 'Retrieves the collection of user accounts, filtered, sorted and paged accourding to query parameters. ' tags: - subpackage_userManagement parameters: - name: page in: query description: Current page number required: false schema: type: number format: double - name: q in: query description: 'Filter parameter in `:` format. Multiple filters must be in the format of a comma separated list of the following fields: * `id` * `status` * `name` * `username` * `organisation` ' required: false schema: type: string - name: per_page in: query description: Defines the number of items per page required: false schema: type: integer - name: sort in: query description: 'Sort parameter in `` format. Expects a comma-separated list from the allowed fields: * `id` * `status` * `name` * `username` * `organisation` * `created` ' required: false schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned a list of Users content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1UserGetResponsesContentApplicationJsonSchemaItems' post: operationId: user-per-page-sort-by-q-and-page-post summary: Create user description: 'Creates a user which is *not active and has no password assigned*. The URL to get the user details is provided as Location Header in the response. #### ACTIVATION Upon creation, the user account undergoes an activation process (see services below ) in which she receives an email with activation link. Following this link the user is asked to set the password and upon successful completion of this process, the account becomes active and operational. Provided fields: * `username` (String required) - has to be the email of this user * `name` (String required) * `organisation` (Object optional) - **may be provided** by regular user, but **is required** for master user. * `roles` (List of Objects optional) - List of one or more role Ids to be assigned at once. If missing, a default role is assigned #### Notes * Password is not provided. Separate calls provide password management. * When the organisation of the new user is not specified in the request, it is inherited from the user creating the account. A regular user is allowed to specify **only organisations which are direct children** of his/her own organisation, or his/her own organisation. * The status field is not user editable at account creation time - the default imposed by server is ACTIVATION_PENDING. ' tags: - subpackage_userManagement parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Resource Created content: application/json: schema: $ref: '#/components/schemas/User Management_UserPerPageSortByQAndPagePost_Response_201' '404': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserPerPageSortByQAndPagePostRequestNotFoundError' '422': description: Unprocessable Entity. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserPerPageSortByQAndPagePostRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: username: type: string name: type: string organisation: $ref: '#/components/schemas/ApiV1UserPostRequestBodyContentApplicationJsonSchemaOrganisation' roles: type: array items: $ref: '#/components/schemas/ApiV1UserPostRequestBodyContentApplicationJsonSchemaRolesItems' required: - username - name - organisation - roles /api/v1/user/activation: post: operationId: user-activation-post summary: Activate user description: "Activates the user account and sets a password.\nThe activation key is sent via email.\n\n\n This\ \ is a public (unauthenticated) service which ignores auth tokens.\n\n" tags: - subpackage_passwordManagementAndActivation responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '400': description: '' content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: activationKey: type: string password: type: string required: - activationKey - password /api/v1/user/activation_resend: post: operationId: user-activation-resend-post summary: Resend user activation email description: "Re-sends activation mail to the user.\n\nAs this endpoint is open to the public (no authentication token\ \ necessary), it requires instead the google reCAPTCHA token to ensure that no robot is performing the request.\n\ Moreover, there's a time limit on how often a given user may be issued with a new activation mail.\n\n\n According\ \ to the [reCAPTCHA documentation](https://developers.google.com/recaptcha/docs/display) a \"Site Key\" is necessary.\n\ \ If you want to implement this feature in your client, please contact emnify support to obtain this \"Site Key\"\ \ for your domain.\n\n" tags: - subpackage_passwordManagementAndActivation responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} requestBody: content: application/json: schema: type: object properties: username: type: string g-recaptcha-response: type: string description: 'Auto-generated from a form using Google reCAPTCHA. ' required: - username - g-recaptcha-response /api/v1/user/mfa: post: operationId: post-mfa summary: Create an MFA key description: "Generate and store a MFA key for the requesting user. After this call, the MFA key has the status `activation\ \ pending` and must be activated through a separate call (`/api/v1/user/mfa/{id}`).\n\nYou must provide following\ \ fields with this request:\n\n* `type` (Object required)\n - `id` (Number)\n* `password` (String required) - User\ \ password\n\nThe **MFA key** object returned by the server contains the following properties:\n\n* `id` (Integer)\ \ - The unique ID of this MFA key\n* `status` (Object) ID (Integer) - Id of status of this MFA key\n - `description`\ \ (String) - description of the status\n* `type` (Object) ID (Integer) - Id of type of this MFA key\n - `description`\ \ (String) - description of the type\n* `secret_key` (String) - Secret key (encoded in Base32) for this MFA key, will\ \ be displayed only on creation\n* `otpauth` (String) - Secret key as a URI encoded for QR codes, will be displayed\ \ only on creation\n* `creation_date` (Timestamp) - Timestamp when this MFA key was created - type: ISO 8601 timestamp\ \ format\n* `activation_date` (Timestamp) - Timestamp when this MFA key was activated - type: ISO 8601 timestamp format\n" tags: - subpackage_authentication parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Authentication_postMfa_Response_200' '409': description: 'Unexpected error in API call. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/PostMfaRequestConflictError' '422': description: 'Unprocessable Entity. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/PostMfaRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: type: $ref: '#/components/schemas/ApiV1UserMfaPostRequestBodyContentApplicationJsonSchemaType' password: type: string required: - type - password /api/v1/user/mfa/status: get: operationId: user-mfa-status-get summary: List MFA key statuses description: Retrieve a list of possible MFA Key statuses. tags: - subpackage_authentication parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1UserMfaStatusGetResponsesContentApplicationJsonSchemaItems' /api/v1/user/mfa/type: get: operationId: user-mfa-type-get summary: List MFA key types description: Retrieve a list of possible MFA Key types. tags: - subpackage_authentication parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1UserMfaTypeGetResponsesContentApplicationJsonSchemaItems' /api/v1/user/mfa/{key_id}: patch: operationId: user-mfa-by-id-patch summary: Activate MFA key description: 'Activates a pending MFA key for the authenticated user. After you [create an MFA key](/developers/api/authentication/post-mfa), the key has status `Activation Pending`. To complete setup, call this endpoint with the MFA key ID and a valid 6-digit time-based one-time password (TOTP) generated from the `secret_key` or `otpauth` URI returned during creation. Once activated, the MFA key status changes to `Active`, and MFA is enforced on subsequent logins with [user credentials](/developers/auth/user-credentials). For more information, see [Multi-factor authentication](/developers/auth/multi-factor-authentication). ' tags: - subpackage_authentication parameters: - name: key_id in: path description: 'The unique identifier of the MFA key to activate. This ID is returned when you [create the MFA key](/developers/api/authentication/post-mfa). ' required: true schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: MFA key activated successfully. No content returned. content: application/json: schema: type: object properties: {} '404': description: 'MFA key not found. Verify the `key_id` is correct and belongs to the authenticated user. ' content: application/json: schema: $ref: '#/components/schemas/UserMfaByIdPatchRequestNotFoundError' '409': description: 'MFA key is already activated. Each key can only be activated once. ' content: application/json: schema: $ref: '#/components/schemas/UserMfaByIdPatchRequestConflictError' '422': description: 'Invalid TOTP code. The code didn''t match the expected value. This can happen if: - The code was entered incorrectly - The code expired (codes are valid for 30 seconds) - The device clock is out of sync with the server ' content: application/json: schema: $ref: '#/components/schemas/UserMfaByIdPatchRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: status: $ref: '#/components/schemas/ApiV1UserMfaKeyIdPatchRequestBodyContentApplicationJsonSchemaStatus' description: The target status for the MFA key. code: type: string description: 'The 6-digit TOTP code generated by your authenticator app using the `secret_key` or `otpauth` URI from the MFA key creation response. This code changes every 30 seconds. ' required: - status - code /api/v1/user/password: patch: operationId: user-password-patch summary: Change password description: "Changes the password for the currently authenticated user.\n\n\n The client application should\ \ invalidate the authentication token.\n\n" tags: - subpackage_passwordManagementAndActivation parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '422': description: See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserPasswordPatchRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: old_password: type: string new_password: type: string required: - old_password - new_password /api/v1/user/role: get: operationId: user-role-get summary: List user roles description: Retrieves the collection of available user roles tags: - subpackage_userManagement parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1UserRoleGetResponsesContentApplicationJsonSchemaItems' /api/v1/user/status: get: operationId: user-status-get summary: List user statuses description: Provides the list of available user status (lookup). tags: - subpackage_userManagement parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1UserStatusGetResponsesContentApplicationJsonSchemaItems' /api/v1/user/{user_id}: get: operationId: user-by-id-get summary: Get user by ID or username description: 'Get a specific user by ID provided the user is within this requesting user''s organisation or the organisation''s immediate child organisations. `id` may be one of: * The numeric ID of the user, e.g. "123". This is the top-level `id` object returned by each item in `GET /api/v1/user` * Username (email), e.g. "exampleuser@org.de". This is the top-level `username` object returned by each item in `GET /api/v1/user` ' tags: - subpackage_userManagement parameters: - name: user_id in: path description: User ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/User Management_UserByIdGet_Response_200' '404': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserByIdGetRequestNotFoundError' delete: operationId: user-by-id-delete summary: Delete user by ID description: "\n **This call is deprecated.**\n Please use DELETE `/api/v2/user/:id` instead.\n\n\n\ \n A user can be deleted, if belonging to the same organization as the requesting user, or to an organization\ \ which is a direct child of the requesting user's organization.\n\n" tags: - subpackage_userManagement parameters: - name: user_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '404': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserByIdDeleteRequestNotFoundError' patch: operationId: user-by-id-patch summary: Update user by ID description: "Provided fields\n* `username` (String optional) - has to be user's email\n* `name` (String optional)\n\ * `status` (Object optional)\n* `organisation` (Object optional) - must be the current organisation or not to be provided\n\ \n#### Notes\n\n* Password is not provided. Separate calls provide password management.\n* The organisation is not\ \ modifiable. A user can be updated, if belonging to the same organisation as the requesting user,\nor to an organisation\ \ which is a direct child of the requesting user's organisation.\n* Status can be changed between ACTIVE (id: 1) and\ \ SUSPENDED (id: 2), and from ACTIVATION_PENDING (id: 0) to SUSPENDED.\n\n\n Modifying the username invalidates\ \ account and triggers the activation procedure.\n\n" tags: - subpackage_userManagement parameters: - name: user_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '422': description: Unprocessable Entity. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserByIdPatchRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: username: type: string name: type: string status: $ref: '#/components/schemas/ApiV1UserUserIdPatchRequestBodyContentApplicationJsonSchemaStatus' required: - username - name - status /api/v1/user/{user_id}/event: get: operationId: user-event-page-per-page-sort-by-user-id-and-q-get summary: List user events description: "Returns the list of events, filtered, sorted and paged according to query parameters.\n\nOnly an administrator\ \ or observer may be allowed to see events of other users, provided they belong to an organisation he/she has access\ \ to.\n\nAny user can retrieve their own events at `/api/v1/user/my/event`.\n\n\n This API endpoint deviates\ \ from the specified conventions and may not return the same HTTP Codes as the higher layer call (`/api/v1/user/{user_id|my}`).\n\ \n In case the requested `{user_id}` does not exist or is not accessible for the user, **HTTP 200** will be returned\ \ with empty **[]** as long as the provided `{user_id}` is a number and all parameters are valid.\n\n Please take\ \ that into consideration when building automation on top of the error behavior of this endpoint.\n\n" tags: - subpackage_userManagement parameters: - name: user_id in: path description: User ID required: true schema: type: number format: double - name: page in: query description: Current page number required: false schema: type: integer - name: per_page in: query description: Defines the number of items per page required: false schema: type: integer - name: sort in: query description: 'Sort properties according to a comma separated list of accepted fields. Valid fields are: * `id` - (**event id**) * `timestamp` - (**event timestamp**) * `source` - (**event source**) * `severity` - (**event severity**) * `alert` - (**alert status**) * `organisation` - (**organisation name**) * `user` - (**user id**) * `endpoint` - (**endpoint name**) * `tags` - (**endpoint tags**) * `ip_address` - (**endpoint ip_address**) * `iccid` - (**sim iccid**) * `imsi` - (**sim imsi**) * `type` - (**event type**) ' required: false schema: type: string - name: q in: query description: 'Filter parameter in `:` format. Multiple filters must be a comma-separated list of the following fields: * `from` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, **only valid with until**) * `until` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, **only valid with from**) * `type` (**event_type**, numerical) * `source` (**event_type**, numerical, e.g. 0 = Network), 1 = Policy Control, 2 = API) * `severity` (**event_severity**, numerical, e.g. 0 = Info, 1 = Warn), 2 = Critical) * `alert` (boolean, e.g. true, false) * `description` (**event description**, string) * `organisation` (**organisation name**, string) * `user` (**user name**, string) * `endpoint` (**endpoint name**, string) * `tags` (**endpoint tags**, string) * `ip_address` (**endpoint IP address**, valid IPv4/IPv6 address) * `imei` (**endpoint imei**, numerical string) * `iccid` (**sim iccid**, numerical string) * `imsi` (**sim imsi**, numerical string) * `timestamp` (**date**, format `YYYY-MM-DDTHH:mm:ssZ`, for querying events of 1 day, deprecated in future) * `iccid_with_luhn` (**sim iccid with Luhn**, numerical string) * `network` (**endpoint network**, string, e.g. Telekom) * `rat` (**event pdp context rat type**, numerical string, e.g. 6) * `country` (**endpoint country**, string, e.g. Germany) Some filters can accept up to 6 values which must be separated by the pipe symbol (`|`) or url-encoded as (`%7C`): * `iccid` (q: iccid:1234567890123456789|8988303000123456789) * `iccid_with_luhn` (q: iccid:12345678901234567891|89883030001234567891) * `endpoint` (q: endpoint:example_endpoint_name|another_endpoint_name) * `type` (q: type:example_event_type|another_event_type) * `network` (q: network:example_network|another_network) * `rat` (q: rat:example_rat|another_rat) * `country` (q: country:example_country|another_country) ' required: false schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully returned a list of User events content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItems' '400': description: '**Bad Request** due to incorrect **Paging** Parameters, **Sorting** Parameter or incorrect `{user_id}` ' content: application/json: schema: description: Any type '403': description: '**Forbidden** due to incorrect user role or lack of access ' content: application/json: schema: description: Any type '422': description: '**Unprocessable Entity** due to incorrect **Query** parameters ' content: application/json: schema: description: Any type /api/v1/user/{user_id}/mfa/trusted_device: get: operationId: user-mfa-trusted-device-by-user-id-get summary: List trusted devices description: 'Returns the list of trusted devices for a given user. The list of one''s own trusted devices can also be retrieved with a call to either `/api/v1/user/my/mfa/trusted_device` or `/api/v1/user/mfa/trusted_device` ' tags: - subpackage_authentication parameters: - name: user_id in: path description: User ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV1UserUserIdMfaTrustedDeviceGetResponsesContentApplicationJsonSchemaItems' '404': description: 'Unexpected error in API call. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/UserMfaTrustedDeviceByUserIdGetRequestNotFoundError' /api/v1/user/{user_id}/mfa/trusted_device/{device_id}: delete: operationId: user-mfa-trusted-device-by-user-id-and-device-id-delete summary: Delete a trusted device description: 'Deletes a trusted device. Removing one''s own trusted device can also be performed at either `/api/v1/user/my/mfa/trusted_device/{id}` or `/api/v1/user/mfa/trusted_device/{id}` ' tags: - subpackage_authentication parameters: - name: user_id in: path description: User ID required: true schema: type: number format: double - name: device_id in: path description: Device ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '404': description: 'Unexpected error in API call. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/UserMfaTrustedDeviceByUserIdAndDeviceIdDeleteRequestNotFoundError' /api/v1/user/{user_id}/mfa/{key_id}: delete: operationId: user-mfa-by-user-id-and-key-id-delete summary: Delete an MFA key description: 'Delete an MFA key for a given user. An own MFA key can also be deleted with a call to `/api/v1/user/my/mfa/{key_id}` ' tags: - subpackage_authentication parameters: - name: key_id in: path description: Key ID required: true schema: type: number format: double - name: user_id in: path description: User ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: 'The server has successfully fulfilled the request and that there is no additional content to send in the response payload body ' content: application/json: schema: type: object properties: {} '404': description: 'Unexpected error in API call. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/UserMfaByUserIdAndKeyIdDeleteRequestNotFoundError' /api/v1/user/{user_id}/role/permission: get: operationId: user-role-permission-by-id-get summary: List user role permissions description: 'Role permissions available to this user. Only an administrator or observer is allowed to see the role permissions of other users, provided they belong to an organisation he/she has access to.
Any user can also retrieve one''s own role permissions at: `/api/v1/user/my/role/permission`. ' tags: - subpackage_userManagement parameters: - name: user_id in: path description: User ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/User Management_UserRolePermissionByIdGet_Response_200' /api/v1/user/{user_id}/role/{role_id}: put: operationId: user-role-by-id-and-role-id-put summary: Assign role to user description: Role is assigned to this user. tags: - subpackage_userManagement parameters: - name: user_id in: path required: true schema: type: string - name: role_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '404': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserRoleByIdAndRoleIdPutRequestNotFoundError' '409': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserRoleByIdAndRoleIdPutRequestConflictError' delete: operationId: user-role-by-id-and-role-id-delete summary: Delete user role description: "Release a Role from association with this user.\n\n\n A role can only be removed if it's not the\ \ last role of this user.\n\n" tags: - subpackage_userManagement parameters: - name: user_id in: path required: true schema: type: string - name: role_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: The server has successfully fulfilled the request and that there is no additional content to send in the response payload body content: application/json: schema: type: object properties: {} '404': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserRoleByIdAndRoleIdDeleteRequestNotFoundError' '409': description: Unexpected error in API call. See HTTP response body for details. content: application/json: schema: $ref: '#/components/schemas/UserRoleByIdAndRoleIdDeleteRequestConflictError' /api/v2/bulk-operations/endpoint/add-tags: post: operationId: assign-tag-to-endpoints-in-bulk summary: Bulk assign tags description: 'Assigns tags in bulk to multiple endpoints. ' tags: - subpackage_tagManagement parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Tags successfully assigned. content: application/json: schema: $ref: '#/components/schemas/Tag Management_AssignTagToEndpointsInBulk_Response_200' '400': description: 'Invalid payload. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/AssignTagToEndpointsInBulkRequestBadRequestError' '403': description: User does not have permission to bulk assign tags. content: application/json: schema: description: Any type '409': description: One or more tags is already assigned. content: application/json: schema: $ref: '#/components/schemas/AssignTagToEndpointsInBulkRequestConflictError' '422': description: 'Unprocessable entity. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/AssignTagToEndpointsInBulkRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/ApiV2BulkOperationsEndpointAddTagsPostRequestBodyContentApplicationJsonSchemaItemsItems' /api/v2/bulk-operations/endpoint/remove-tags: post: operationId: unassign-tags-from-endpoints-in-bulk summary: Bulk unassign tags description: 'Unassign tags from multiple endpoints in bulk. ' tags: - subpackage_tagManagement parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Tags successfully unassigned. content: application/json: schema: $ref: '#/components/schemas/Tag Management_UnassignTagsFromEndpointsInBulk_Response_200' '400': description: 'Invalid payload. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/UnassignTagsFromEndpointsInBulkRequestBadRequestError' '403': description: User doesn't have permission to bulk unassign tags. content: application/json: schema: description: Any type '422': description: 'Unprocessable entity. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/UnassignTagsFromEndpointsInBulkRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/ApiV2BulkOperationsEndpointRemoveTagsPostRequestBodyContentApplicationJsonSchemaItemsItems' /api/v2/bulk-operations/tag/delete-tags: post: operationId: delete-tags-in-bulk summary: Bulk delete tags description: 'Deletes tags in bulk. ' tags: - subpackage_tagManagement parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Tags successfully deleted. content: application/json: schema: $ref: '#/components/schemas/Tag Management_DeleteTagsInBulk_Response_200' '400': description: 'Invalid payload. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/DeleteTagsInBulkRequestBadRequestError' '403': description: User doesn't have permission to bulk delete tags. content: application/json: schema: description: Any type '422': description: 'Unprocessable entity. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/DeleteTagsInBulkRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: tags: type: array items: $ref: '#/components/schemas/ApiV2BulkOperationsTagDeleteTagsPostRequestBodyContentApplicationJsonSchemaTagsItems' /api/v2/data_stream: get: operationId: list-data-streamer-v-2-s summary: List data stream configurations of your organization tags: - subpackage_integrations parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: List of data stream with their current status content: application/json: schema: $ref: '#/components/schemas/Integrations_ListDataStreamerV2s_Response_200' '400': description: The request is malformed, e.g. the body cannot be parsed content: application/json: schema: description: Any type '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type post: operationId: create-data-streamer summary: Create data stream description: 'Create Data Stream to your destination. Click on Examples to see available Data Streams and configuration parameters. Currently available `connection_types` are - `AwsKinesis` - `S3` - `RestAPI` - `KeenIO` - `Datadog` - `EventHubs` - `PubSub` ' tags: - subpackage_integrations parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Data stream has been successfully created. content: application/json: schema: $ref: '#/components/schemas/Integrations_CreateDataStreamer_Response_201' '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type '422': description: Configuration for the data stream is invalid. Please check your Request Body for errors. content: application/json: schema: $ref: '#/components/schemas/CreateDataStreamerRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: name: type: string description: Descriptive name or purpose of the data stream destination: $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestination' filters: type: array items: $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaFiltersItems' data_stream_type: description: Any type relation_resolution: description: Any type status: description: Any type /api/v2/data_stream/filter_field_type: get: operationId: get-data-streamer-enum-filter-field-type summary: Get data stream filter fields tags: - subpackage_integrations parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: 'Possible filter field types that can be used with data streams. `event_type_id` will filter Event stream for specific event types (e.g. `"event_type_id":[1,2,3]`). `alert` will filter Event stream for alert status (e.g. `"alert":true`). ' content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV2DataStreamFilterFieldTypeGetResponsesContentApplicationJsonSchemaItems' '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type /api/v2/data_stream/status: get: operationId: get-data-streamer-statuses summary: Get data stream statuses description: 'Lists possible data stream statuses. (`1`) is the normal `Running` state meaning your data stream is active and streams data. (`2`) indicates a `Paused` data stream. It will not send messages to your destination. However, messages meant for this data stream are routed and will be stored up to 7 days. You will first receive historic data once you resume a paused streamer after longer pausing. (`3`) indicates that an `Error` has occurred. This might be problems in the configuration (e.g. missing permissions) or your destination has been unavailable for a longer period of time and the data stream exceeded maximum retries. You may restart the streamer in order to fix a temporary problem, misconfigured streamers will continue to fail. (`4`) is a `Pending` state. Your data stream has not been initialized, yet. This state may occur for a very short time. ' tags: - subpackage_integrations parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Possible connection statuses content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV2DataStreamStatusGetResponsesContentApplicationJsonSchemaItems' '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type /api/v2/data_stream/type: get: operationId: get-data-streamer-data-stream-type summary: Get data stream types description: 'List available Data Stream Types. (`1`) will only stream `Usage` Data. (`2`) will only stream `Event` Data. ' tags: - subpackage_integrations parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Possible data stream types content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV2DataStreamTypeGetResponsesContentApplicationJsonSchemaItems' '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type /api/v2/data_stream/{data_stream_id}: get: operationId: get-data-streamer-by-id-v-2 summary: Get details on existing data stream description: 'Get data stream configuration and status by ID. ' tags: - subpackage_integrations parameters: - name: data_stream_id in: path description: ID of a data stream. required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Single Data Stream Configuration content: application/json: schema: $ref: '#/components/schemas/Integrations_GetDataStreamerByIdV2_Response_200' '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type delete: operationId: delete-data-streamer-v-2 summary: Delete existing data stream tags: - subpackage_integrations parameters: - name: data_stream_id in: path description: ID of a data stream. required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '202': description: Request accepted content: application/json: schema: $ref: '#/components/schemas/Integrations_DeleteDataStreamerV2_Response_202' '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type '409': description: The request could not be completed due to a conflict with the current state of the resource. content: application/json: schema: description: Any type patch: operationId: patch-v-2-data-stream summary: Modify existing data stream tags: - subpackage_integrations parameters: - name: data_stream_id in: path description: ID of a data stream. required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '202': description: Request accepted content: application/json: schema: $ref: '#/components/schemas/Integrations_PatchV2DataStream_Response_202' '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type '422': description: Body will return list of validation errors content: application/json: schema: description: Any type requestBody: description: Description of the status content: application/json: schema: type: object properties: name: type: string description: Descriptive name or purpose of the data stream destination: $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestination' filters: type: array items: $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaFiltersItems' data_stream_type: description: Any type relation_resolution: description: Any type status: $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaStatus' /api/v2/data_stream/{data_stream_id}/restart: post: operationId: data-streamer-v-2-by-id-restart summary: Restart existing data stream description: 'Restart your Existing Data Stream. This might be necessary when e.g. your Webhook endpoint has been unreachable for an extended period of time. Webhook Data Stream will exhaust retries and go into Error State. By using this API call your Data Stream will be restarted and continue trying to send data. ' tags: - subpackage_integrations parameters: - name: data_stream_id in: path description: ID of a data stream. required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '202': description: Request accepted content: application/json: schema: $ref: '#/components/schemas/Integrations_DataStreamerV2ByIdRestart_Response_202' '401': description: No or invalid authentication token provided content: application/json: schema: description: Any type '403': description: Authentication token is valid, but user has no access permissions to the request resource content: application/json: schema: description: Any type '404': description: A non-existent resource is requested content: application/json: schema: description: Any type '409': description: The request could not be completed due to a conflict with the current state of the resource. content: application/json: schema: description: Any type /api/v2/endpoint/multi: post: operationId: bulk-create-endpoint summary: Bulk create endpoints description: "Create up to 2,000 endpoints in one request.\n\nUnlike [`POST /api/v1/endpoint`](/developers/api/endpoint/create-endpoint),\ \ this bulk endpoint handles multiple endpoints safely in a single request without sequential execution constraints\ \ between individual endpoints.\n\n\n Execute bulk operations sequentially - wait for each bulk request to\ \ complete before starting the next.\n\n\nIf a `sim` object is provided, the specified SIM is assigned to the\ \ endpoint.\nThe `activate` property defaults to `false` and can be omitted unless the SIM should be activated during\ \ this call.\n\nIf `activate` is set to `true`:\n- The SIM enters Factory Test Mode (FTM) if FTM is enabled for the\ \ organization.\n- Otherwise, it goes directly to **Activated**.\n\nTo override this behavior and explicitly set the\ \ SIM's status (for example, skip FTM even if it's enabled for your organization), include a `status` object within\ \ the `sim` object.\n\n\n emnify charges for activated SIMs, even if the endpoint status is set to **Disabled**.\n\ \n" tags: - subpackage_endpoint parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItems' '400': description: Request body is malformed content: application/json: schema: description: Any type '403': description: 'User doesn''t have permission to bulk create endpoints ' content: application/json: schema: description: Any type '404': description: IP address space is full content: application/json: schema: description: Any type '422': description: 'Appears in one of the following cases: - Service profile is invalid - Tariff profile is invalid - Status is invalid - IP address space is invalid - Organization is invalid - Endpoints are invalid ' content: application/json: schema: $ref: '#/components/schemas/BulkCreateEndpointRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: service_profile: $ref: '#/components/schemas/ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaServiceProfile' description: 'Applies to all endpoints. ' tariff_profile: $ref: '#/components/schemas/ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaTariffProfile' description: 'Applies to all endpoints. ' status: $ref: '#/components/schemas/ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaStatus' description: 'Applies to all endpoints. ' organisation: $ref: '#/components/schemas/ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaOrganisation' description: 'If provided, it must include a valid `id` (cannot be empty). ' ip_address_space: $ref: '#/components/schemas/ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaIpAddressSpace' description: 'Required if any endpoint in the `endpoints` array has an `ip_address`. ' endpoints: type: array items: $ref: '#/components/schemas/ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaEndpointsItems' required: - service_profile - tariff_profile - status - endpoints delete: operationId: bulk-delete-endpoint summary: Bulk delete endpoints description: "Deletes a list of endpoints in bulk, along with all child entities.\n\nUnlike [`DELETE /api/v1/endpoint/{endpoint_id}`](/developers/api/endpoint/endpoint-by-id-delete),\ \ this bulk endpoint handles multiple endpoints safely in a single request without sequential execution constraints\ \ between individual endpoints.\n\n\n Execute bulk operations sequentially - wait for each bulk request to\ \ complete before starting the next.\n\n\nIf a SIM is assigned to one of the endpoints, it's released and suspended.\n\ If the `delete_sims` query parameter is set to `true`, the SIMs are also deleted.\n" tags: - subpackage_endpoint parameters: - name: delete_sims in: query description: 'If `true`, the SIMs will be deleted along with the endpoints. If `false`, the SIMs will only be suspended. Defaults to `false`. ' required: false schema: type: boolean default: false - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Endpoints deleted successfully content: application/json: schema: type: object properties: {} '400': description: Request body is malformed content: application/json: schema: description: Any type '403': description: 'User doesn''t have permission to bulk delete endpoints ' content: application/json: schema: description: Any type '404': description: 'Requested endpoint ID isn''t found ' content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV2EndpointMultiDeleteRequestBodyContentApplicationJsonSchemaItems' patch: operationId: bulk-update-endpoint summary: Bulk update endpoints description: "Updates details of a list of endpoints in bulk.\n\nThe request body must be an array of endpoint objects.\n\ Each object requires an `id` field to identify the endpoint, and you only need to include the fields you want to update.\n\ \nUnlike [`PATCH /api/v1/endpoint/{endpoint_id}`](/developers/api/endpoint/endpoint-by-id-patch), this bulk endpoint\ \ handles multiple endpoints safely in a single request without sequential execution constraints between individual\ \ endpoints.\n\n\n Execute bulk operations sequentially - wait for each bulk request to complete before starting\ \ the next.\n\n\n\n emnify charges for activated SIMs, even if the endpoint status is set to **Disabled**.\n\ \ To avoid accruing unexpected charges, update the SIM status to **Suspended** (`\"id\": 2`).\n\n" tags: - subpackage_endpoint parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Endpoints updated successfully content: application/json: schema: type: object properties: {} '400': description: Request body is malformed content: application/json: schema: description: Any type '403': description: 'User doesn''t have permission to bulk update endpoints ' content: application/json: schema: description: Any type '404': description: 'Appears in one of the following cases: - IP address space isn''t found - IP address space is full ' content: application/json: schema: description: Any type '422': description: 'Appears in one of the following cases: - Service profile is invalid - Tariff profile is invalid - Status is invalid - IP address space is invalid - IP address is invalid - SIM is invalid ' content: application/json: schema: $ref: '#/components/schemas/BulkUpdateEndpointRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItems' /api/v2/endpoint/{endpoint_id}/tags: get: operationId: list-endpoint-tags summary: List endpoint tags description: 'Returns a list of tags assigned to the provided endpoint. ' tags: - subpackage_tagManagement parameters: - name: endpoint_id in: path description: Numeric ID of an endpoint required: true schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Tags successfully listed. content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV2EndpointEndpointIdTagsGetResponsesContentApplicationJsonSchemaItems' '400': description: 'Invalid payload. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/ListEndpointTagsRequestBadRequestError' '403': description: User doesn't have permission to list endpoint tags. content: application/json: schema: description: Any type post: operationId: assign-tag-to-endpoint summary: Assign a tag to an endpoint description: 'Assigns a tag to the provided endpoint. To successfully assign a tag, you must include the tag''s ID in the request body. ' tags: - subpackage_tagManagement parameters: - name: endpoint_id in: path description: Numeric ID of an endpoint required: true schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Tag successfully assigned to the endpoint. content: application/json: schema: $ref: '#/components/schemas/Tag Management_AssignTagToEndpoint_Response_201' '400': description: 'Invalid payload. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/AssignTagToEndpointRequestBadRequestError' '403': description: User doesn't have permission to assign tags. content: application/json: schema: description: Any type '409': description: The tag is already assigned. content: application/json: schema: $ref: '#/components/schemas/AssignTagToEndpointRequestConflictError' '422': description: 'Unprocessable entity. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/AssignTagToEndpointRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: id: type: number format: double /api/v2/endpoint/{endpoint_id}/tags/{tag_id}: delete: operationId: unassign-endpoint-tag summary: Unassign a tag from an endpoint description: 'Unassigns a tag from the provided endpoint. To successfully unassign a tag, you must include the tag''s ID in the request body. ' tags: - subpackage_tagManagement parameters: - name: endpoint_id in: path description: Numeric ID of an endpoint required: true schema: type: integer - name: tag_id in: path description: The tag ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Tag successfully unassigned from the endpoint. content: application/json: schema: $ref: '#/components/schemas/Tag Management_UnassignEndpointTag_Response_200' '400': description: 'Invalid payload. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/UnassignEndpointTagRequestBadRequestError' '403': description: User doesn't have permission to unassign tags. content: application/json: schema: description: Any type '404': description: The provided tag ID doesn't exist. content: application/json: schema: description: Any type '422': description: 'Unprocessable entity. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/UnassignEndpointTagRequestUnprocessableEntityError' /api/v2/tag-colors: get: operationId: list-tag-colors summary: Returns the list of available tag colors description: Returns the list of available tag colors tags: - subpackage_tagManagement parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Tag colors successfully listed. content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV2TagColorsGetResponsesContentApplicationJsonSchemaItems' /api/v2/tags: get: operationId: list-tags summary: List tags description: 'Returns a list of all registered tags within the organization. ' tags: - subpackage_tagManagement parameters: - name: name in: query description: The tag name required: false schema: type: string - name: page in: query description: Current page number required: false schema: type: integer - name: page_size in: query description: Defines the number of items per page required: false schema: type: integer - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Tags successfully listed. content: application/json: schema: $ref: '#/components/schemas/Tag Management_ListTags_Response_200' '400': description: 'Invalid payload. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/ListTagsRequestBadRequestError' '403': description: User doesn't have permission to list tags. content: application/json: schema: description: Any type post: operationId: create-tag summary: Create a tag description: 'Creates a tag with the given name and color ID. If no color ID is provided, a random color is assigned to the tag. ' tags: - subpackage_tagManagement parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Tag successfully created content: application/json: schema: $ref: '#/components/schemas/Tag Management_CreateTag_Response_201' '400': description: 'Invalid payload. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/CreateTagRequestBadRequestError' '403': description: User doesn't have permission to create tags. content: application/json: schema: description: Any type '409': description: The tag already exists. content: application/json: schema: $ref: '#/components/schemas/CreateTagRequestConflictError' '422': description: 'Unprocessable entity. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/CreateTagRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: name: type: string color: $ref: '#/components/schemas/ApiV2TagsPostRequestBodyContentApplicationJsonSchemaColor' required: - name /api/v2/tags/{tag_id}: delete: operationId: delete-tag summary: Delete a tag description: 'Deletes a tag and it removes all associations with resources (for example, devices or automations). ' tags: - subpackage_tagManagement parameters: - name: tag_id in: path description: The tag ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Tag successfully deleted. content: application/json: schema: type: object properties: {} '403': description: User doesn't have permission to delete tags. content: application/json: schema: description: Any type '404': description: The provided tag ID doesn't exist. content: application/json: schema: description: Any type patch: operationId: update-tag summary: Update a tag description: 'Updates a tag with the provided name and color ID. ' tags: - subpackage_tagManagement parameters: - name: tag_id in: path description: The tag ID required: true schema: type: number format: double - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Tag successfully updated. content: application/json: schema: type: object properties: {} '400': description: 'Invalid payload. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/UpdateTagRequestBadRequestError' '403': description: User doesn't have permission to update tags. content: application/json: schema: description: Any type '404': description: The provided tag ID doesn't exist. content: application/json: schema: description: Any type '422': description: 'Unprocessable entity. See HTTP response body for details. ' content: application/json: schema: $ref: '#/components/schemas/UpdateTagRequestUnprocessableEntityError' requestBody: content: application/json: schema: type: object properties: name: type: string color: $ref: '#/components/schemas/ApiV2TagsTagIdPatchRequestBodyContentApplicationJsonSchemaColor' /api/v2/tariff_profile/{tariff_profile_id}/operator_blocklist/operator: get: operationId: tariff-profile-operator-block-list-operator-get summary: Get the operator blocklist for a specific tariff profile description: Retrieve blocklist details for operators within a specific tariff profile tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully retrieved the operator blocklist content: application/json: schema: $ref: '#/components/schemas/Tariff Profiles_TariffProfileOperatorBlockListOperatorGet_Response_200' /api/v2/tariff_profile/{tariff_profile_id}/operator_blocklist/operator/{operator_id}: get: operationId: tariff-profile-operator-block-operator-by-id-get summary: Get operator blocklist for a specific tariff profile description: Retrieve blocklist details for an operator within a specific tariff profile tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: operator_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully retrieved operator blocklist details content: application/json: schema: $ref: '#/components/schemas/Tariff Profiles_TariffProfileOperatorBlockOperatorByIDGet_Response_200' put: operationId: tariff-profile-operator-block-operator-by-id-put summary: Block the operator completely for a given tariff profile description: "Block the operator completely.\nIf there are already specific RAT types blocklisted, those entries **aren't**\ \ overridden.\n\n\n You don't need a request body for this operation.\n\n" tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: operator_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: No Content. The operator has been successfully blocklisted. content: application/json: schema: type: object properties: {} delete: operationId: tariff-profile-operator-block-operator-by-id-delete summary: Remove an operator from the blocklist description: 'Removes a specific operator from the blocklist of a given tariff profile. If there are already specific RAT types blocklisted, the entries will NOT be overridden. ' tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: operator_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: No Content - Operator successfully removed from the blocklist content: application/json: schema: type: object properties: {} /api/v2/tariff_profile/{tariff_profile_id}/operator_blocklist/operator/{operator_id}/rat_type: post: operationId: tariff-profile-operator-block-operator-by-id-rat-type-post summary: Block specific RAT types description: 'Add a specific operator to the blocklist of a given tariff profile. If the operator is already blocked completely, it is still possible to block specific RAT types. ' tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: operator_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: No Content - The specific RAT types have been successfully blocked. content: application/json: schema: type: object properties: {} requestBody: content: application/json: schema: type: object properties: rat_types: type: array items: $ref: '#/components/schemas/ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdRatTypePostRequestBodyContentApplicationJsonSchemaRatTypesItems' required: - rat_types /api/v2/tariff_profile/{tariff_profile_id}/operator_blocklist/operator/{operator_id}/rat_type/{rate_type_id}: delete: operationId: tariff-profile-operator-block-operator-by-id-rat-type-by-id-delete summary: Unblock a specific RAT type description: Unblock a specific RAT type for an operator within a tariff profile. tags: - subpackage_tariffProfiles parameters: - name: tariff_profile_id in: path required: true schema: type: string - name: operator_id in: path required: true schema: type: string - name: rate_type_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: No Content - The specific RAT type has been successfully unblocked. content: application/json: schema: type: object properties: {} /api/v2/user/activation: post: operationId: accept-user-invitation summary: Accept user invitation description: 'Accepts a user invitation to join a Workspace. The following fields may be provided: - `activationKey` (String, required) - the JWT token received in the verification email - `password` (String) - only mandatory if the user is invited to an organization without single sign-on (SSO) and doesn''t have a password yet - `name` (String) - name of the user ' tags: - subpackage_workspaces parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: User successfully accepted the invitation content: application/json: schema: type: object properties: {} '403': description: Forbidden content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: activationKey: type: string password: type: string name: type: string required: - activationKey /api/v2/user/invitation: post: operationId: user-v-2-invitation summary: Invite a user description: 'Invite a user to a Workspace by specifying username and the roles that the user will have in the organization. This user is created and a `User invited` event is sent. There is no additional action such as an email sent. The following fields may be provided: - `username` (String) - Email of the invited user - `name` (String) - Name of the invited user - `organisation` (Object) - Defaults to the default Workspace of the requesting user - `roles` (Array) - Assigns the **Administrator** role by default If the invited user doesn''t exist, a new user is created and the `organisation.id` is their default Workspace. If the invited user already exists, the user is assigned to the Workspace. This fails if the Workspace feature isn''t enabled on the target organization''s tariff plan. ' tags: - subpackage_passwordManagementAndActivation parameters: - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: User created successfully content: application/json: schema: $ref: '#/components/schemas/Password Management and Activation_UserV2Invitation_Response_201' '400': description: 'Some of the given parameters have invalid values, detailed description will be given in the response ' content: application/json: schema: description: Any type '403': description: 'Current logged in user is not permitted to invite users. ' content: application/json: schema: description: Any type '409': description: 'There is already an active user with the same username, so this cannot be taken ' content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: username: type: string name: type: string organisation: $ref: '#/components/schemas/ApiV2UserInvitationPostRequestBodyContentApplicationJsonSchemaOrganisation' roles: type: array items: $ref: '#/components/schemas/ApiV2UserInvitationPostRequestBodyContentApplicationJsonSchemaRolesItems' required: - username - name /api/v2/user/{user_id}/default_organisation/{workspace_id}: put: operationId: update-default-workspace summary: Update a user's default Workspace description: "Update a user's default Workspace.\n\n\n You must have **Administrator** access in both the\ \ old and new default Workspaces to execute this call.\n\n" tags: - subpackage_workspaces parameters: - name: user_id in: path required: true schema: type: string - name: workspace_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully updated the default Workspace content: application/json: schema: $ref: '#/components/schemas/Workspaces_UpdateDefaultWorkspace_Response_200' '403': description: Administrator role required on the selected Workspace content: application/json: schema: description: Any type /api/v2/user/{user_id}/support_token: post: operationId: user-by-id-v-2-create-support-token summary: Create support access token for given user description: 'Create a bearer token that can be used to acces the portal as the target user. Additionally admin or observer role can be selected. The role will not be applied to the user, only to the token. The access can be made through cannel-partner hierarchies as well. An event will be generated on the accessed organisation. ' tags: - subpackage_userManagement parameters: - name: user_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '201': description: Support token successfully created content: application/json: schema: $ref: '#/components/schemas/User Management_UserByIdV2CreateSupportToken_Response_201' '403': description: 'Will appear in these cases: - User does not have support role - User tries to create support token for his own user - User tries to access user of parent or outside the organisation child subtree ' content: application/json: schema: description: Any type '404': description: 'Will appear in these cases: - User is not active - User does not exist - Organisation is not found or not enabled ' content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: role: $ref: '#/components/schemas/ApiV2UserUserIdSupportTokenPostRequestBodyContentApplicationJsonSchemaRole' /api/v2/user/{user_id}/workspace: get: operationId: get-assigned-workspaces summary: List assigned Workspaces description: "Retrieve a list of the Workspaces assigned to a user.\n\n\n Only returns Workspaces where you have\ \ **Administrator** access.\n\n" tags: - subpackage_workspaces parameters: - name: user_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully retrieved assigned Workspaces list content: application/json: schema: type: array items: $ref: '#/components/schemas/ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItems' '403': description: Administrator role required on the selected Workspace content: application/json: schema: description: Any type /api/v2/user/{user_id}/workspace/{workspace_id}: delete: operationId: unassign-workspaces summary: Unassign a Workspace description: "Unassign a Workspace from a user.\n\n- If the user is deleted from their default Workspace, the next active\ \ Workspace is assigned as the default Workspace.\n- **SuperAdmins** can't be removed unless you're logged in to the\ \ main organization.\n\n\n You must have **Administrator** access in the requested Workspace to remove users.\n\ \n" tags: - subpackage_workspaces parameters: - name: user_id in: path required: true schema: type: string - name: workspace_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Successfully unassigned the Workspace content: application/json: schema: type: object properties: {} '403': description: Administrator role required on the selected Workspace or missing permissions to update SuperAdmins content: application/json: schema: description: Any type '404': description: Workspace not found or not accessible content: application/json: schema: description: Any type patch: operationId: update-workspace-user-status summary: Update user status in a Workspace description: "Update a user's status in the requested Workspace.\n\n- Allowed statuses: `ACTIVE` (1) and `SUSPENDED`\ \ (2)\n- If the user is suspended in their default Workspace, the next active Workspace is assigned as the default\ \ Workspace.\n\n\n You must have **Administrator** access in the requested Workspace to update user statuses.\n\ \n" tags: - subpackage_workspaces parameters: - name: user_id in: path required: true schema: type: string - name: workspace_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Successfully updated the user status content: application/json: schema: type: object properties: {} '403': description: Administrator role required on the selected Workspace or missing permissions to update SuperAdmins content: application/json: schema: description: Any type requestBody: content: application/json: schema: type: object properties: status: $ref: '#/components/schemas/ApiV2UserUserIdWorkspaceWorkspaceIdPatchRequestBodyContentApplicationJsonSchemaStatus' required: - status /api/v2/user/{user_id}/workspace/{workspace_id}/role/{role_id}: put: operationId: assign-user-role-by-id summary: Assign a role to a Workspace user description: "Assign a role to a user in the requested Workspace.\n\n\n You must have **Administrator** access\ \ in the requested Workspace to modify user roles.\n **SuperAdmin** roles also can't be modified unless you're logged\ \ in to the main organization.\n\n" tags: - subpackage_workspaces parameters: - name: user_id in: path required: true schema: type: string - name: workspace_id in: path required: true schema: type: string - name: role_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Successfully assigned the role content: application/json: schema: type: object properties: {} '400': description: Modifying your own account isn't allowed content: application/json: schema: description: Any type '401': description: User isn't allowed to do that action content: application/json: schema: description: Any type '403': description: Administrator role required on the selected Workspace or missing permissions to update SuperAdmins content: application/json: schema: description: Any type '404': description: User not found content: application/json: schema: description: Any type delete: operationId: remove-user-role-by-id summary: Remove a role from a Workspace user description: "Remove a user's role in the requested Workspace.\n\n\n You must have **Administrator** access\ \ in the requested Workspace to modify user roles.\n **SuperAdmin** roles also can't be modified unless you're logged\ \ in to the main organization.\n\n" tags: - subpackage_workspaces parameters: - name: user_id in: path required: true schema: type: string - name: workspace_id in: path required: true schema: type: string - name: role_id in: path required: true schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '204': description: Successfully removed the role content: application/json: schema: type: object properties: {} '400': description: Modifying your own account isn't allowed content: application/json: schema: description: Any type '401': description: User isn't allowed to do that action content: application/json: schema: description: Any type '403': description: Administrator role required on the selected Workspace or missing permissions to update SuperAdmins content: application/json: schema: description: Any type '404': description: User not found content: application/json: schema: description: Any type /api/v2/workspace/stats/daily: get: operationId: get-workspace-daily-stats summary: Retrieve Workspace daily stats description: 'Retrieve the daily stats for your Workspaces. ' tags: - subpackage_workspaces parameters: - name: start_date in: query description: "Filters by start date, provided in a `YYYY-MM-DD` format.\n\n\n If you don't define an end date,\ \ the response will include 6 months of data, beginning on the current date.\n\n" required: false schema: type: string format: date - name: end_date in: query description: "Filters by end date, provided in an `YYYY-MM-DD` format.\n\n\n If you don't define a start date,\ \ the response will only return data from the month indicated in your end date.\n\n" required: false schema: type: string format: date - name: workspace_ids in: query description: 'Comma separated list of workspace IDs to filter the results for. If not provided, the response will include all Workspaces you have access to. ' required: false schema: type: string - name: Authorization in: header description: 'An `auth_token` should be provided to authenticate a session. To obtain an `auth_token`, see the [`/api/v1/authenticate` **POST** request](/developers/api/authentication/authenticate). ' required: true schema: type: string responses: '200': description: Successfully retrieved the daily Workspace stats content: application/json: schema: $ref: '#/components/schemas/Workspaces_GetWorkspaceDailyStats_Response_200' '422': description: Requested Workspaces not found or not accessible content: application/json: schema: description: Any type components: securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT description: 'Retrieve a JWT via POST /api/v1/authenticate using an application_token or user credentials, then send it as `Authorization: Bearer `.' schemas: ActionableEventCreateDto: type: object properties: custom_event: $ref: '#/components/schemas/WithUuidInputDto' system_event: $ref: '#/components/schemas/WithUuidInputDto' required: - custom_event - system_event title: ActionableEventCreateDto ActionableEventOutputDto: type: object properties: custom_event: $ref: '#/components/schemas/CustomEventOutputDto' system_event: $ref: '#/components/schemas/SystemEventOutputDto' required: - custom_event - system_event title: ActionableEventOutputDto ApiV1ApiSecretGetResponsesContentApplicationJsonSchemaItems: type: object properties: organisation_id: type: string purpose: type: string id: type: integer title: ApiV1ApiSecretGetResponsesContentApplicationJsonSchemaItems ApiV1ApplicationTokenAppTokenIdPatchRequestBodyContentApplicationJsonSchemaStatus: type: object properties: {} title: ApiV1ApplicationTokenAppTokenIdPatchRequestBodyContentApplicationJsonSchemaStatus ApiV1ApplicationTokenGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string created: type: string status: $ref: '#/components/schemas/ApiV1ApplicationTokenGetResponsesContentApplicationJsonSchemaItemsStatus' expiry_date: type: string ip: type: string creator: $ref: '#/components/schemas/ApiV1ApplicationTokenGetResponsesContentApplicationJsonSchemaItemsCreator' title: ApiV1ApplicationTokenGetResponsesContentApplicationJsonSchemaItems ApiV1ApplicationTokenGetResponsesContentApplicationJsonSchemaItemsCreator: type: object properties: {} title: ApiV1ApplicationTokenGetResponsesContentApplicationJsonSchemaItemsCreator ApiV1ApplicationTokenGetResponsesContentApplicationJsonSchemaItemsStatus: type: object properties: {} title: ApiV1ApplicationTokenGetResponsesContentApplicationJsonSchemaItemsStatus ApiV1AuthenticatePostRequestBodyContentApplicationJsonSchemaTrustedDevice: type: object properties: fingerprint: type: string description: Unique device identifier operating_system: type: string description: Device operating system browser: type: string description: Browser name name: type: string description: Optional name for the device description: Device information to register as trusted (90-day MFA exemption) title: ApiV1AuthenticatePostRequestBodyContentApplicationJsonSchemaTrustedDevice ApiV1AuthenticateWorkspacePostRequestBodyContentApplicationJsonSchemaTargetOrganisation: type: object properties: id: type: integer title: ApiV1AuthenticateWorkspacePostRequestBodyContentApplicationJsonSchemaTargetOrganisation ApiV1BreakoutRegionGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer name: type: string ip_address: type: string title: ApiV1BreakoutRegionGetResponsesContentApplicationJsonSchemaItems ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer name: type: string description: type: string user_id: type: integer creation_date: type: string description: The date this attachment was created in UTC accept_attachment_expiry_date: type: string description: 'The expiry date of the accept attachment state in UTC. This will only be returned if the breakout is of type `Transit Gateway (type_id: 1)` and in Status `Pending AWS Actvation (status_id: 2)` ' termination_date: type: string aws_transit_gateway_attachment_id: type: string aws_vpn_connection_id: type: string description: This is only set when the breakout is a VPN attachment status: $ref: '#/components/schemas/ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsStatus' type: $ref: '#/components/schemas/ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsType' region: type: string description: The customer region that this attachment belongs to tunnel_information: $ref: '#/components/schemas/ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsTunnelInformation' title: ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItems ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsStatus: type: object properties: id: type: number format: double description: type: string title: ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsStatus ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsTunnelInformation: type: object properties: outside_address: type: string inside_cidr: type: string metrics: $ref: '#/components/schemas/ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsTunnelInformationMetrics' asn: type: number format: double public_ip: type: string title: ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsTunnelInformation ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsTunnelInformationMetrics: type: object properties: tunnel_state: type: string bytes_in: type: object additionalProperties: type: number format: double bytes_out: type: object additionalProperties: type: number format: double title: ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsTunnelInformationMetrics ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsType: type: object properties: id: type: number format: double description: type: string title: ApiV1CncBreakoutCloudconnectAttachmentIdGetResponsesContentApplicationJsonSchemaItemsType ApiV1CncBreakoutGetParametersStatus: type: string enum: - '1' - '2' - '3' - '4' - '5' - '6' - '7' - '8' title: ApiV1CncBreakoutGetParametersStatus ApiV1CncBreakoutGetParametersType: type: string enum: - '1' - '2' - '3' - '4' - '5' - '6' - '7' - '8' title: ApiV1CncBreakoutGetParametersType ApiV1CncBreakoutGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer name: type: string description: type: string user_id: type: integer creation_date: type: string description: The date this attachment was created in UTC accept_attachment_expiry_date: type: string description: 'The expiry date of the accept attachment state in UTC. This will only be returned if the breakout is of type `Transit Gateway (type_id: 1)` and in Status `Pending AWS Actvation (status_id: 2)` ' termination_date: type: string aws_transit_gateway_attachment_id: type: string aws_vpn_connection_id: type: string description: This is only set when the breakout is a VPN attachment status: $ref: '#/components/schemas/ApiV1CncBreakoutGetResponsesContentApplicationJsonSchemaItemsStatus' type: $ref: '#/components/schemas/ApiV1CncBreakoutGetResponsesContentApplicationJsonSchemaItemsType' region: type: string description: The customer region that this attachment belongs to title: ApiV1CncBreakoutGetResponsesContentApplicationJsonSchemaItems ApiV1CncBreakoutGetResponsesContentApplicationJsonSchemaItemsStatus: type: object properties: id: type: number format: double description: type: string title: ApiV1CncBreakoutGetResponsesContentApplicationJsonSchemaItemsStatus ApiV1CncBreakoutGetResponsesContentApplicationJsonSchemaItemsType: type: object properties: id: type: number format: double description: type: string title: ApiV1CncBreakoutGetResponsesContentApplicationJsonSchemaItemsType ApiV1CncBreakoutTgwPostRequestBodyContentApplicationJsonSchemaType: type: string enum: - '1' title: ApiV1CncBreakoutTgwPostRequestBodyContentApplicationJsonSchemaType ApiV1CncBreakoutTypeBreakoutTypeIdAvailableRegionGetResponsesContentApplicationJsonSchemaItems: type: object properties: attachment_region: type: string description: The region the customer's attachment will reside in device_breakout_region: type: string description: The region the traffic will be peered to title: ApiV1CncBreakoutTypeBreakoutTypeIdAvailableRegionGetResponsesContentApplicationJsonSchemaItems ApiV1CncBreakoutTypeGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double description: type: string title: ApiV1CncBreakoutTypeGetResponsesContentApplicationJsonSchemaItems ApiV1CncBreakoutVpnPostRequestBodyContentApplicationJsonSchemaType: type: object properties: id: $ref: '#/components/schemas/ApiV1CncBreakoutVpnPostRequestBodyContentApplicationJsonSchemaTypeId' description: Attachment type identifier. required: - id description: 'Breakout type. Use `2` for Static VPN or `3` for Dynamic VPN with BGP. ' title: ApiV1CncBreakoutVpnPostRequestBodyContentApplicationJsonSchemaType ApiV1CncBreakoutVpnPostRequestBodyContentApplicationJsonSchemaTypeId: type: string enum: - '2' - '3' description: Attachment type identifier. title: ApiV1CncBreakoutVpnPostRequestBodyContentApplicationJsonSchemaTypeId ApiV1CncPricingGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer breakout_type_id: type: integer amount: type: number format: double currency: $ref: '#/components/schemas/ApiV1CncPricingGetResponsesContentApplicationJsonSchemaItemsCurrency' title: ApiV1CncPricingGetResponsesContentApplicationJsonSchemaItems ApiV1CncPricingGetResponsesContentApplicationJsonSchemaItemsCurrency: type: object properties: id: type: integer title: ApiV1CncPricingGetResponsesContentApplicationJsonSchemaItemsCurrency ApiV1CountryGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer name: type: string country_code: type: string mcc: type: string iso_code: type: string title: ApiV1CountryGetResponsesContentApplicationJsonSchemaItems ApiV1CurrencyGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer code: type: string symbol: type: string title: ApiV1CurrencyGetResponsesContentApplicationJsonSchemaItems ApiV1DataBlocksizeGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer octets: type: string description: type: string title: ApiV1DataBlocksizeGetResponsesContentApplicationJsonSchemaItems ApiV1DataThrottleGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer octets: type: string description: type: string title: ApiV1DataThrottleGetResponsesContentApplicationJsonSchemaItems ApiV1DnsGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer primary: type: string secondary: type: string ip_address_version: type: integer title: ApiV1DnsGetResponsesContentApplicationJsonSchemaItems ApiV1EndpointEndpointIdConnectivityGetResponsesContentApplicationJsonSchemaLocation: type: object properties: {} title: ApiV1EndpointEndpointIdConnectivityGetResponsesContentApplicationJsonSchemaLocation ApiV1EndpointEndpointIdConnectivityGetResponsesContentApplicationJsonSchemaPdpContext: type: object properties: {} title: ApiV1EndpointEndpointIdConnectivityGetResponsesContentApplicationJsonSchemaPdpContext ApiV1EndpointEndpointIdConnectivityGetResponsesContentApplicationJsonSchemaStatus: type: object properties: {} title: ApiV1EndpointEndpointIdConnectivityGetResponsesContentApplicationJsonSchemaStatus ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf0SubscriberInfo: type: object properties: success: type: boolean state: type: string location: $ref: '#/components/schemas/ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf0SubscriberInfoLocation' title: ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf0SubscriberInfo ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf0SubscriberInfoLocation: type: object properties: current_location_retrieved: type: boolean age_of_location: type: number format: double cell_global_id: $ref: '#/components/schemas/ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf0SubscriberInfoLocationCellGlobalId' title: ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf0SubscriberInfoLocation ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf0SubscriberInfoLocationCellGlobalId: type: object properties: mcc: type: string mnc: type: string lac: type: number format: double cid: type: number format: double title: ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf0SubscriberInfoLocationCellGlobalId ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf2SubscriberInfo: type: object properties: success: type: boolean error: type: string title: ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf2SubscriberInfo ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItems: type: object properties: timestamp: type: string alert: type: boolean description: type: string id: type: integer event_type: $ref: '#/components/schemas/ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEventType' event_source: $ref: '#/components/schemas/ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEventSource' event_severity: $ref: '#/components/schemas/ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEventSeverity' organisation: $ref: '#/components/schemas/ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsOrganisation' endpoint: $ref: '#/components/schemas/ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEndpoint' sim: $ref: '#/components/schemas/ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsSim' imsi: $ref: '#/components/schemas/ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsImsi' title: ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItems ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEndpoint: type: object properties: {} title: ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEndpoint ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEventSeverity: type: object properties: {} title: ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEventSeverity ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEventSource: type: object properties: {} title: ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEventSource ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEventType: type: object properties: {} title: ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsEventType ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsImsi: type: object properties: {} title: ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsImsi ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsOrganisation: type: object properties: {} title: ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsOrganisation ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsSim: type: object properties: {} title: ApiV1EndpointEndpointIdEventGetResponsesContentApplicationJsonSchemaItemsSim ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaIpAddressSpace: type: object properties: id: type: integer title: ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaIpAddressSpace ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaRuntimeData: type: object properties: msc: type: string sgsn: type: string sgsn_ip_address: type: string title: ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaRuntimeData ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaServiceProfile: type: object properties: id: type: integer name: type: string required: - id title: ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaServiceProfile ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaSim: type: object properties: id: type: integer iccid: type: string eid: type: string msisdn: type: string imsi: type: string status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaSimStatus' required: - id title: ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaSim ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaSimStatus: type: object properties: id: type: integer description: type: string required: - id title: ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaSimStatus ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaStatus: type: object properties: id: type: integer description: type: string required: - id title: ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaStatus ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaTariffProfile: type: object properties: id: type: integer name: type: string required: - id title: ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaTariffProfile ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItemsCountry' tapcode: type: array items: $ref: '#/components/schemas/ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItemsTapcodeItems' mnc: type: array items: $ref: '#/components/schemas/ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItemsMncItems' title: ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItems ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItemsCountry: type: object properties: {} title: ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItemsCountry ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItemsMncItems: type: object properties: {} title: ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItemsMncItems ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItemsTapcodeItems: type: object properties: {} title: ApiV1EndpointEndpointIdOperatorBlacklistGetResponsesContentApplicationJsonSchemaItemsTapcodeItems ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaIpAddressSpace: type: object properties: id: type: number format: double required: - id title: ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaIpAddressSpace ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaServiceProfile: type: object properties: id: type: number format: double required: - id title: ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaServiceProfile ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaSim: type: object properties: id: type: number format: double status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaSimStatus' required: - id - status title: ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaSim ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaSimStatus: type: object properties: id: type: number format: double required: - id title: ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaSimStatus ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaStatus: type: object properties: id: type: number format: double required: - id title: ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaStatus ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaTariffProfile: type: object properties: id: type: number format: double required: - id title: ApiV1EndpointEndpointIdPatchRequestBodyContentApplicationJsonSchemaTariffProfile ApiV1EndpointEndpointIdPatchResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: error_code: type: number format: double error_token: type: string message: type: string title: ApiV1EndpointEndpointIdPatchResponsesContentApplicationJsonSchemaErrorsItems ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaActionOnExhaustion: type: object properties: id: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaActionOnExhaustionId' description: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaActionOnExhaustionDescription' required: - id title: ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaActionOnExhaustion ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaActionOnExhaustionDescription: type: string enum: - Block title: ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaActionOnExhaustionDescription ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaActionOnExhaustionId: type: string enum: - '1' title: ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaActionOnExhaustionId ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaStatus: type: object properties: description: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaStatusDescription' id: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaStatusId' required: - id title: ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaStatus ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaStatusDescription: type: string enum: - EXHAUSTED - ACTIVE - EXPIRED title: ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaStatusDescription ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaStatusId: type: string enum: - '1' - '2' - '3' title: ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaStatusId ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaActionOnExhaustion: type: object properties: id: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionId' description: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionDescription' required: - id title: ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaActionOnExhaustion ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionDescription: type: string enum: - Block title: ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionDescription ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionId: type: string enum: - '1' title: ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionId ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaStatus: type: object properties: description: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaStatusDescription' id: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaStatusId' required: - id title: ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaStatus ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaStatusDescription: type: string enum: - EXHAUSTED - ACTIVE - EXPIRED title: ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaStatusDescription ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaStatusId: type: string enum: - '1' - '2' - '3' title: ApiV1EndpointEndpointIdQuotaDataPostRequestBodyContentApplicationJsonSchemaStatusId ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaActionOnExhaustion: type: object properties: id: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionId' description: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionDescription' required: - id title: ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaActionOnExhaustion ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionDescription: type: string enum: - Block title: ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionDescription ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionId: type: string enum: - '1' title: ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaActionOnExhaustionId ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaStatus: type: object properties: description: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaStatusDescription' id: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaStatusId' required: - id title: ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaStatus ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaStatusDescription: type: string enum: - EXHAUSTED - ACTIVE - EXPIRED title: ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaStatusDescription ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaStatusId: type: string enum: - '1' - '2' - '3' title: ApiV1EndpointEndpointIdQuotaSmsPostRequestBodyContentApplicationJsonSchemaStatusId ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItems: type: object properties: submit_date: type: string delivery_date: type: string expiry_date: type: string final_date: type: string retry_date: type: - string - 'null' last_delivery_attempt: type: string retry_count: type: integer gsm_map_error: type: - string - 'null' dcs: type: integer pid: type: integer source_address: type: string endpoint: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsEndpoint' sim_id: type: string iccid: type: string msisdn: type: string imsi: type: string msc: type: string udh: type: string payload: type: string id: type: integer status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsStatus' sms_type: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsSmsType' source_address_type: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsSourceAddressType' title: ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItems ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsEndpoint: type: object properties: {} title: ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsEndpoint ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsSmsType: type: object properties: {} title: ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsSmsType ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsSourceAddressType: type: object properties: {} title: ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsSourceAddressType ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsStatus: type: object properties: {} title: ApiV1EndpointEndpointIdSmsGetResponsesContentApplicationJsonSchemaItemsStatus ApiV1EndpointEndpointIdSmsPostRequestBodyContentApplicationJsonSchemaSourceAddressType: type: object properties: id: type: integer description: 'The source address format: - `145`: International number format (E.164) - `161`: National number format - `208`: Alphanumeric string (for example, "CompanyName") ' description: 'Defines the format of `source_address`. Required when using alphanumeric sender IDs. ' title: ApiV1EndpointEndpointIdSmsPostRequestBodyContentApplicationJsonSchemaSourceAddressType ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaEndpoint: type: object properties: {} title: ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaEndpoint ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaSmsType: type: object properties: {} title: ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaSmsType ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaSourceAddressType: type: object properties: {} title: ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaSourceAddressType ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaStatus: type: object properties: {} title: ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaStatus ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItems: type: object properties: date: type: string format: date description: The date for this statistics entry (YYYY-MM-DD format). data: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsData' description: Cellular data usage for this day. sms: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSms' description: SMS usage for this day. sat_geo_data: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSatGeoData' description: Satellite data usage for this day (if applicable). sat_geo_sms: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSatGeoSms' description: Satellite SMS usage for this day (if applicable). title: ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItems ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsData: type: object properties: volume: type: number format: double description: Total data volume in MB. volume_tx: type: number format: double description: Data transmitted (uploaded) in MB. volume_rx: type: number format: double description: Data received (downloaded) in MB. cost: type: number format: double description: Cost of data usage. traffic_type: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataTrafficType' description: Information about the traffic type. currency: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataCurrency' description: Currency used for cost calculations. description: Cellular data usage for this day. title: ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsData ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataCurrency: type: object properties: id: type: integer description: Currency identifier. code: type: string description: ISO 4217 currency code (for example, EUR, USD). symbol: type: string description: Currency symbol (for example, €, $). description: Currency used for cost calculations. title: ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataCurrency ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataTrafficType: type: object properties: id: type: integer description: Traffic type identifier (5 = Data). description: type: string description: Human-readable traffic type name. unit: type: string description: Unit of measurement (MB for data). description: Information about the traffic type. title: ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataTrafficType ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSatGeoData: type: object properties: volume: type: number format: double description: Total satellite data volume in MB. volume_tx: type: number format: double description: Satellite data transmitted in MB. volume_rx: type: number format: double description: Satellite data received in MB. cost: type: number format: double description: Cost of satellite data usage. description: Satellite data usage for this day (if applicable). title: ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSatGeoData ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSatGeoSms: type: object properties: volume: type: number format: double description: Total satellite SMS count. volume_tx: type: number format: double description: Satellite SMS messages sent. volume_rx: type: number format: double description: Satellite SMS messages received. cost: type: number format: double description: Cost of satellite SMS usage. description: Satellite SMS usage for this day (if applicable). title: ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSatGeoSms ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSms: type: object properties: volume: type: number format: double description: Total SMS count. volume_tx: type: number format: double description: SMS messages sent (Mobile Originated). volume_rx: type: number format: double description: SMS messages received (Mobile Terminated). cost: type: number format: double description: Cost of SMS usage. traffic_type: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsTrafficType' description: Information about the traffic type. currency: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsCurrency' description: Currency used for cost calculations. description: SMS usage for this day. title: ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSms ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsCurrency: type: object properties: id: type: integer description: Currency identifier. code: type: string description: ISO 4217 currency code (for example, EUR, USD). symbol: type: string description: Currency symbol (for example, €, $). description: Currency used for cost calculations. title: ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsCurrency ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsTrafficType: type: object properties: id: type: integer description: Traffic type identifier (6 = SMS). description: type: string description: Human-readable traffic type name. unit: type: string description: Unit of measurement (SMS for messages). description: Information about the traffic type. title: ApiV1EndpointEndpointIdStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsTrafficType ApiV1EndpointEndpointIdStatsGetResponsesContentApplicationJsonSchemaCurrentMonth: type: object properties: {} title: ApiV1EndpointEndpointIdStatsGetResponsesContentApplicationJsonSchemaCurrentMonth ApiV1EndpointEndpointIdStatsGetResponsesContentApplicationJsonSchemaLastHour: type: object properties: {} title: ApiV1EndpointEndpointIdStatsGetResponsesContentApplicationJsonSchemaLastHour ApiV1EndpointEndpointIdStatsGetResponsesContentApplicationJsonSchemaLastMonth: type: object properties: {} title: ApiV1EndpointEndpointIdStatsGetResponsesContentApplicationJsonSchemaLastMonth ApiV1EndpointEndpointIdTrafficLimitExtensionGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double endpoint_id: type: number format: double traffic_limit_id: type: number format: double volume: type: number format: double expiration_date: type: string format: date-time created_at: type: string format: date-time required: - id - endpoint_id - traffic_limit_id - volume - expiration_date - created_at title: ApiV1EndpointEndpointIdTrafficLimitExtensionGetResponsesContentApplicationJsonSchemaItems ApiV1EndpointGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: Unique identifier for the endpoint. created: type: string format: date-time description: Date and time when the endpoint was created (ISO 8601 format). last_updated: type: string format: date-time description: Date and time when the endpoint was last modified (ISO 8601 format). name: type: string description: Display name for the endpoint. tags: type: - string - 'null' description: 'Comma-separated list of tags. Use `tag_assignments` for structured tag data. ' ip_address: type: string description: Private IP address assigned to this endpoint within the IP address space. imei: type: - string - 'null' description: 'International Mobile Equipment Identity with Software Version Number (IMEISV) (16 digits). ' imei_lock: type: boolean description: If `true`, this endpoint only allows connections from the device with the specified IMEI. status: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsStatus' description: 'Endpoint connectivity status. Values are `0` (Enabled), `1` (Disabled), or `2` (Deleted). ' tariff_profile: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsTariffProfile' description: Tariff profile that determines pricing and data limits for this endpoint. service_profile: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsServiceProfile' description: Service profile that determines network access settings for this endpoint. tag_assignments: type: array items: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsTagAssignmentsItems' description: 'Structured tag data with color information. Alternative to the comma-separated `tags` field. ' sim: oneOf: - $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSim' - type: 'null' description: 'SIM card assigned to this endpoint. `null` if no SIM is assigned. ' ip_address_space: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsIpAddressSpace' description: IP address space that contains this endpoint's private IP address. imei_with_luhn: type: - string - 'null' description: 'International Mobile Equipment Identity with Luhn check digit, without Software Version Number (SVN) (15 digits). ' runtime_data: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsRuntimeData' description: 'Real-time network attachment data. Only present when the endpoint is connected. ' required: - status - tariff_profile - service_profile title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItems ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsIpAddressSpace: type: object properties: id: type: integer description: IP address space ID. description: IP address space that contains this endpoint's private IP address. title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsIpAddressSpace ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsRuntimeData: type: object properties: msc: type: string description: Mobile Switching Center identifier. sgsn: type: string description: Serving GPRS Support Node identifier. sgsn_ip_address: type: string description: IP address of the SGSN. description: 'Real-time network attachment data. Only present when the endpoint is connected. ' title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsRuntimeData ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsServiceProfile: type: object properties: id: type: integer description: Service profile ID. name: type: string description: Service profile name. required: - id description: Service profile that determines network access settings for this endpoint. title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsServiceProfile ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSim: type: object properties: id: type: integer description: Unique identifier for the SIM. iccid: type: string description: Integrated Circuit Card Identifier without Luhn check digit (19 digits). iccid_with_luhn: type: string description: Integrated Circuit Card Identifier with Luhn check digit (20 digits). status: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSimStatus' description: SIM activation status. imsi: type: string description: 'International Mobile Subscriber Identity. Identifies the SIM on the mobile network. ' eid: type: string description: 'eUICC Identifier (32 digits). Present only for eSIM-capable SIMs. ' msisdn: type: string description: Phone number assigned to this SIM. sim_profile_type: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSimSimProfileType' description: Type of SIM profile. euicc_profile_data: oneOf: - $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSimEuiccProfileData' - type: 'null' description: 'eSIM profile data. Present only for eSIM-capable SIMs. ' required: - id description: 'SIM card assigned to this endpoint. `null` if no SIM is assigned. ' title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSim ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSimEuiccProfileData: type: object properties: {} description: 'eSIM profile data. Present only for eSIM-capable SIMs. ' title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSimEuiccProfileData ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSimSimProfileType: type: object properties: id: type: integer description: Profile type ID. description: Type of SIM profile. title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSimSimProfileType ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSimStatus: type: object properties: id: type: integer description: Status ID. description: type: string description: Human-readable status name. required: - id description: SIM activation status. title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsSimStatus ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsStatus: type: object properties: id: type: integer description: Status ID (`0` = Enabled, `1` = Disabled, `2` = Deleted). description: type: string description: Human-readable status name. required: - id description: 'Endpoint connectivity status. Values are `0` (Enabled), `1` (Disabled), or `2` (Deleted). ' title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsStatus ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsTagAssignmentsItems: type: object properties: id: type: integer description: Tag ID. name: type: string description: Tag name. tag_color: $ref: '#/components/schemas/ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsTagAssignmentsItemsTagColor' description: Color assigned to this tag for UI display. title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsTagAssignmentsItems ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsTagAssignmentsItemsTagColor: type: object properties: id: type: integer description: Color ID. description: Color assigned to this tag for UI display. title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsTagAssignmentsItemsTagColor ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsTariffProfile: type: object properties: id: type: integer description: Tariff profile ID. name: type: string description: Tariff profile name. required: - id description: Tariff profile that determines pricing and data limits for this endpoint. title: ApiV1EndpointGetResponsesContentApplicationJsonSchemaItemsTariffProfile ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaIpAddressSpace: type: object properties: id: type: integer description: IP address space ID. required: - id description: "IP address space for the endpoint.\n\n\n Required if `ip_address` is provided.\n\n" title: ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaIpAddressSpace ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaOrganisation: type: object properties: id: type: integer description: Organization ID. required: - id description: 'Organization to create the endpoint in. Required only for reseller accounts creating endpoints in sub-organizations. ' title: ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaOrganisation ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaServiceProfile: type: object properties: id: type: integer description: 'Service profile ID. ' required: - id description: 'Service profile that determines network access settings. Must belong to your organization. ' title: ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaServiceProfile ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaSim: type: object properties: id: type: integer description: 'SIM ID to assign. The SIM must belong to your organization and not be assigned to another endpoint. ' activate: type: boolean default: false description: 'If `true`, activates the SIM after assignment. If [factory test mode (FTM)](/developers/connectivity/factory-test-mode) is enabled for your organization, the SIM enters FTM instead of Activated. ' status: $ref: '#/components/schemas/ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaSimStatus' description: Explicitly set the SIM status, overriding the default activation behavior. required: - id description: 'SIM card to assign to this endpoint. If omitted, no SIM is assigned. ' title: ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaSim ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaSimStatus: type: object properties: id: type: integer description: 'SIM status ID. Valid values are `1` (Activated) or `4` (Factory Test). ' required: - id description: Explicitly set the SIM status, overriding the default activation behavior. title: ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaSimStatus ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaStatus: type: object properties: id: type: integer description: 'Status ID. Valid values are `0` (Enabled) or `1` (Disabled). ' required: - id description: Initial endpoint status. title: ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaStatus ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaTariffProfile: type: object properties: id: type: integer description: 'Tariff profile ID. ' required: - id description: 'Tariff profile that determines pricing and data limits. Must belong to your organization. ' title: ApiV1EndpointPostRequestBodyContentApplicationJsonSchemaTariffProfile ApiV1EndpointPostResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: error_code: type: integer description: Application-specific error code. error_token: type: string description: Error type identifier. message: type: string description: Detailed error message. title: ApiV1EndpointPostResponsesContentApplicationJsonSchemaErrorsItems ApiV1EndpointPostResponsesContentApplicationJsonSchemaIpAddressSpace: type: object properties: id: type: integer description: IP address space ID. description: IP address space containing this endpoint's private IP address. title: ApiV1EndpointPostResponsesContentApplicationJsonSchemaIpAddressSpace ApiV1EndpointPostResponsesContentApplicationJsonSchemaServiceProfile: type: object properties: id: type: integer description: Service profile ID. name: type: string description: Service profile name. required: - id - name description: Service profile assigned to this endpoint. title: ApiV1EndpointPostResponsesContentApplicationJsonSchemaServiceProfile ApiV1EndpointPostResponsesContentApplicationJsonSchemaSim: type: object properties: id: type: integer description: SIM ID. iccid: type: string description: ICCID without Luhn checksum digit (19 digits). iccid_with_luhn: type: string description: ICCID with Luhn checksum digit (20 digits). sim_profile_type_id: type: integer description: SIM profile type ID. imsi: type: string description: International Mobile Subscriber Identity (IMSI). msisdn: type: string description: Phone number assigned to this SIM. status: $ref: '#/components/schemas/ApiV1EndpointPostResponsesContentApplicationJsonSchemaSimStatus' description: SIM activation status. description: 'SIM card assigned to this endpoint. `null` if no SIM is assigned. ' title: ApiV1EndpointPostResponsesContentApplicationJsonSchemaSim ApiV1EndpointPostResponsesContentApplicationJsonSchemaSimStatus: type: object properties: id: type: integer description: Status ID. description: type: string description: Human-readable status name. description: SIM activation status. title: ApiV1EndpointPostResponsesContentApplicationJsonSchemaSimStatus ApiV1EndpointPostResponsesContentApplicationJsonSchemaStatus: type: object properties: id: type: integer description: Status ID (`0` = Enabled, `1` = Disabled). description: type: string description: Human-readable status name. required: - id - description description: Endpoint connectivity status. title: ApiV1EndpointPostResponsesContentApplicationJsonSchemaStatus ApiV1EndpointPostResponsesContentApplicationJsonSchemaTariffProfile: type: object properties: id: type: integer description: Tariff profile ID. name: type: string description: Tariff profile name. satellite_capable: type: boolean description: If `true`, this tariff profile supports satellite connectivity. required: - id - name - satellite_capable description: Tariff profile assigned to this endpoint. title: ApiV1EndpointPostResponsesContentApplicationJsonSchemaTariffProfile ApiV1EndpointStatusGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string required: - id title: ApiV1EndpointStatusGetResponsesContentApplicationJsonSchemaItems ApiV1EsmeInterfaceTypeGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string required: - id - description title: ApiV1EsmeInterfaceTypeGetResponsesContentApplicationJsonSchemaItems ApiV1EventGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer alert: type: boolean description: type: string timestamp: type: string event_type: $ref: '#/components/schemas/ApiV1EventGetResponsesContentApplicationJsonSchemaItemsEventType' event_source: $ref: '#/components/schemas/ApiV1EventGetResponsesContentApplicationJsonSchemaItemsEventSource' event_severity: $ref: '#/components/schemas/ApiV1EventGetResponsesContentApplicationJsonSchemaItemsEventSeverity' organisation: $ref: '#/components/schemas/ApiV1EventGetResponsesContentApplicationJsonSchemaItemsOrganisation' user: $ref: '#/components/schemas/ApiV1EventGetResponsesContentApplicationJsonSchemaItemsUser' title: ApiV1EventGetResponsesContentApplicationJsonSchemaItems ApiV1EventGetResponsesContentApplicationJsonSchemaItemsEventSeverity: type: object properties: id: type: number format: double description: type: string title: ApiV1EventGetResponsesContentApplicationJsonSchemaItemsEventSeverity ApiV1EventGetResponsesContentApplicationJsonSchemaItemsEventSource: type: object properties: id: type: number format: double description: type: string title: ApiV1EventGetResponsesContentApplicationJsonSchemaItemsEventSource ApiV1EventGetResponsesContentApplicationJsonSchemaItemsEventType: type: object properties: id: type: number format: double description: type: string title: ApiV1EventGetResponsesContentApplicationJsonSchemaItemsEventType ApiV1EventGetResponsesContentApplicationJsonSchemaItemsOrganisation: type: object properties: id: type: number format: double name: type: string title: ApiV1EventGetResponsesContentApplicationJsonSchemaItemsOrganisation ApiV1EventGetResponsesContentApplicationJsonSchemaItemsUser: type: object properties: id: type: number format: double username: type: string name: type: string title: ApiV1EventGetResponsesContentApplicationJsonSchemaItemsUser ApiV1EventTypeGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string title: ApiV1EventTypeGetResponsesContentApplicationJsonSchemaItems ApiV1IpAddressSpaceAvailableGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer ip_address_space: type: string ip_address_version: type: integer title: ApiV1IpAddressSpaceAvailableGetResponsesContentApplicationJsonSchemaItems ApiV1IpAddressSpaceGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer ip_address_space: type: string ip_address_version: type: integer used_count: type: integer available_count: type: integer title: ApiV1IpAddressSpaceGetResponsesContentApplicationJsonSchemaItems ApiV1IpAddressSpacePostResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: {} title: ApiV1IpAddressSpacePostResponsesContentApplicationJsonSchemaErrorsItems ApiV1OperatorGetResponsesContentApplicationJsonSchemaItems: type: object properties: name: type: string country_name: type: string id: type: number format: double country: $ref: '#/components/schemas/ApiV1OperatorGetResponsesContentApplicationJsonSchemaItemsCountry' title: ApiV1OperatorGetResponsesContentApplicationJsonSchemaItems ApiV1OperatorGetResponsesContentApplicationJsonSchemaItemsCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1OperatorGetResponsesContentApplicationJsonSchemaItemsCountry ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer volume: type: number format: double description: The volume in MB rate: type: number format: double pooled: type: boolean start_date: type: string format: date-time end_date: type: string format: date-time description: 'End date will be omitted in the response, if it has been set to null. This means the inclusive volume will run infinitely. ' currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItemsCurrency' tariff: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItemsTariff' title: ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItems ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItemsCurrency: type: object properties: id: type: integer code: type: string symbol: type: string title: ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItemsCurrency ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItemsTariff: type: object properties: id: type: integer name: type: string tariff_status_id: type: integer ratezone: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItemsTariffRatezone' title: ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItemsTariff ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItemsTariffRatezone: type: object properties: id: type: integer name: type: string ratezone_status_id: type: integer title: ApiV1OrganisationOrgIdOrMyInclusiveVolumeActiveGetResponsesContentApplicationJsonSchemaItemsTariffRatezone ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItems: type: object properties: date: type: string description: 'Date in `YYYY-MM-DD` format or `TOTAL` to indicate the total volume and cost of the traffic type ' data: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsData' sms: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsSms' title: ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItems ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsData: type: object properties: cost: type: string description: Total cost currency_id: type: string currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataCurrency' traffic_type_id: type: string traffic_type: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataTrafficType' volume: type: string description: Total consumption (`volume_rx` + `volume_tx`) volume_rx: type: string description: '* For traffic type `5` (`Data`): Downloaded data * For traffic type `6` (`SMS`): SMS MT ' volume_tx: type: string description: '* For traffic type `5` (`Data`): Uploaded data * For traffic type `6` (`SMS`): SMS MO ' title: ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsData ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataCurrency ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsDataTrafficType ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsSms: type: object properties: cost: type: string description: Total cost currency_id: type: string currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsCurrency' traffic_type_id: type: string traffic_type: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsTrafficType' volume: type: string description: Total consumption (`volume_rx` + `volume_tx`) volume_rx: type: string description: '* For traffic type `5` (`Data`): Downloaded data * For traffic type `6` (`SMS`): SMS MT ' volume_tx: type: string description: '* For traffic type `5` (`Data`): Uploaded data * For traffic type `6` (`SMS`): SMS MO ' title: ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsSms ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsCurrency ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsDailyGetResponsesContentApplicationJsonSchemaItemsSmsTrafficType ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonth: type: object properties: data: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthData' sms: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthSms' title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonth ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthData: type: object properties: cost: type: number format: double description: Total cost month: type: string description: The month that the data has been accumulated in `YYYY-MM-01` format currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthDataCurrency' traffic_type: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthDataTrafficType' volume: type: number format: double description: Total consumption (`volume_rx` + `volume_tx`) volume_rx: type: number format: double description: '* For traffic type `5` (`Data`): Downloaded data * For traffic type `6` (`SMS`): SMS MT ' volume_tx: type: number format: double description: '* For traffic type `5` (`Data`): Uploaded data * For traffic type `6` (`SMS`): SMS MO ' title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthData ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthDataCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthDataCurrency ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthDataTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthDataTrafficType ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthSms: type: object properties: cost: type: number format: double description: Total cost month: type: string description: The month that the data has been accumulated in `YYYY-MM-01` format currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthSmsCurrency' traffic_type: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthSmsTrafficType' volume: type: number format: double description: Total consumption (`volume_rx` + `volume_tx`) volume_rx: type: number format: double description: '* For traffic type `5` (`Data`): Downloaded data * For traffic type `6` (`SMS`): SMS MT ' volume_tx: type: number format: double description: '* For traffic type `5` (`Data`): Uploaded data * For traffic type `6` (`SMS`): SMS MO ' title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthSms ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthSmsCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthSmsCurrency ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthSmsTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonthSmsTrafficType ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaInclusiveVolume: type: object properties: unpooled: type: number format: double description: Total cost of all unpooled inclusive volumes pooled: type: number format: double description: Total cost of all pooled inclusive volumes title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaInclusiveVolume ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonth: type: object properties: data: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthData' sms: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthSms' title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonth ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthData: type: object properties: cost: type: number format: double description: Total cost month: type: string description: The month that the data has been accumulated in `YYYY-MM-01` format currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthDataCurrency' traffic_type: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthDataTrafficType' volume: type: number format: double description: Total consumption (`volume_rx` + `volume_tx`) volume_rx: type: number format: double description: '* For traffic type `5` (`Data`): Downloaded data * For traffic type `6` (`SMS`): SMS MT ' volume_tx: type: number format: double description: '* For traffic type `5` (`Data`): Uploaded data * For traffic type `6` (`SMS`): SMS MO ' title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthData ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthDataCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthDataCurrency ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthDataTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthDataTrafficType ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthSms: type: object properties: cost: type: number format: double description: Total cost month: type: string description: The month that the data has been accumulated in `YYYY-MM-01` format currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthSmsCurrency' traffic_type: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthSmsTrafficType' volume: type: number format: double description: Total consumption (`volume_rx` + `volume_tx`) volume_rx: type: number format: double description: '* For traffic type `5` (`Data`): Downloaded data * For traffic type `6` (`SMS`): SMS MT ' volume_tx: type: number format: double description: '* For traffic type `5` (`Data`): Uploaded data * For traffic type `6` (`SMS`): SMS MO ' title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthSms ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthSmsCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthSmsCurrency ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthSmsTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonthSmsTrafficType ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaPrepaidBalance: type: object properties: amount: type: number format: double description: Remaining prepaid balance currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaPrepaidBalanceCurrency' last_updated: type: string title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaPrepaidBalance ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaPrepaidBalanceCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaPrepaidBalanceCurrency ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaSim: type: object properties: issued: type: number format: double factory_mode: type: number format: double active: type: number format: double suspended: type: number format: double total: type: number format: double description: 'Amount of SIMs per SIM status where the selected organisation is either the customer organisation or the issuer organisation ' title: ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaSim ApiV1OrganisationOrgIdOrMyStatsHourlyGetResponsesContentApplicationJsonSchemaData: type: object properties: rx: type: array items: type: string description: 'Downloaded data - Array index `0`: Time as `HH:mm` string, index `1`: consumed volume ' tx: type: array items: type: string description: 'Uploaded data - Array index `0`: Time as `HH:mm` string, index `1`: consumed volume ' title: ApiV1OrganisationOrgIdOrMyStatsHourlyGetResponsesContentApplicationJsonSchemaData ApiV1OrganisationOrgIdOrMyStatsHourlyGetResponsesContentApplicationJsonSchemaSms: type: object properties: rx: type: array items: type: string description: 'SMS MO - Array index `0`: Time as `HH:mm` string, index `1`: consumed volume ' tx: type: array items: type: string description: 'SMS MT - Array index `0`: Time as `HH:mm` string, index `1`: consumed volume ' title: ApiV1OrganisationOrgIdOrMyStatsHourlyGetResponsesContentApplicationJsonSchemaSms ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPrice: type: object properties: sim_activated_rate: type: array items: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPriceSimActivatedRateItems' description: 'the fees that apply for the current month according to the number of activated SIMs. calculation follows volume pricing at the moment, but may be changed at any time. the resulting price is the sum of each price line times the given volume. if it is a scaled price, the rate object contains a `scale_start` field, otherwise it is fixed. ' title: ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPrice ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPriceSimActivatedRateItems: type: object properties: scale_start: type: number format: double rate: type: number format: double volume: type: integer title: ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPriceSimActivatedRateItems ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaServiceLevel: type: object properties: id: type: number format: double name: type: string required: - id description: The default service level of a tariff plan. Possible values can be fetched with GET `/api/v1/service_level`. title: ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaServiceLevel ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlan: type: object properties: name: type: string description: type: string creation_date: type: string activation_date: type: string deprecation_date: type: string rate: type: number format: double yearly_rate: type: number format: double sim_activation_fee: type: number format: double max_active_sims: type: number format: double add_active_sims_rate: type: number format: double add_active_sim_batch: type: number format: double max_service_profiles: type: number format: double max_tariff_profiles: type: number format: double max_users: type: number format: double minimum_runtime: type: number format: double api_access_allowed: type: boolean vpn_access: type: boolean evaluation: type: boolean expiry_time: type: number format: double used_count: type: number format: double id: type: number format: double price: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPrice' currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanCurrency' workspaces_enabled: type: boolean description: The `workspaces_enabled` flag configured globally for the tariff plan title: ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlan ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanCurrency ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPrice: type: object properties: sim_activated_rate: type: array items: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPriceSimActivatedRateItems' title: ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPrice ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPriceSimActivatedRateItems: type: object properties: scale_start: type: number format: double rate: type: number format: double title: ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPriceSimActivatedRateItems ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanRuntime: type: object properties: number_of_units: type: number format: double time_unit_id: type: number format: double id: type: number format: double title: ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanRuntime ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double description: ID of the tariff plan assignment organisation_id: type: string start_date: type: string expiry_date: type: string sim_activated_rate: type: number format: double sim_activated_idle_rate: type: number format: double sim_suspended_rate: type: number format: double sim_suspended_active_rate: type: number format: double currency_id: type: string federation_allowed: type: boolean description: 'Custom federation_allowed configuration for the organisation. If set to null, the default configuration from the tariff plan will be applied. ' factory_test_mode_allowed: type: boolean description: 'Custom factory_test_mode_allowed configuration for the organisation. If set to null, the default configuration from the tariff plan will be applied. ' service_level: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsServiceLevel' description: 'Custom service level for the organisation. If set to null, the default service level from the tariff plan will be applied. ' active: type: boolean applied_rate: type: number format: double price_model: type: string tariff_plan: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlan' title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItems ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsServiceLevel: type: object properties: id: type: number format: double name: type: string description: 'Custom service level for the organisation. If set to null, the default service level from the tariff plan will be applied. ' title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsServiceLevel ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlan: type: object properties: organisation_id: type: string name: type: string description: type: string tariff_plan_type_id: type: string min_tariff_plan_runtime_id: type: string level: type: string tariff_plan_runtime_id: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanTariffPlanRuntimeId' owner_organisation_id: type: string public_for_child_organisations: type: boolean creation_date: type: string activation_date: type: string deprecation_date: type: string notes: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanNotes' rate: type: number format: double yearly_rate: type: number format: double sim_activation_fee: type: number format: double max_active_sims: type: number format: double add_active_sims_rate: type: number format: double add_active_sim_batch: type: number format: double max_service_profiles: type: number format: double max_tariff_profiles: type: number format: double max_users: type: number format: double minimum_runtime: type: number format: double api_access_allowed: type: number format: double vpn_access: type: number format: double private: type: number format: double dtype: type: string evaluation: type: boolean expiry_time: type: number format: double billing_disabled: type: boolean used_count: type: number format: double id: type: number format: double status: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanStatus' currency: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanCurrency' visibility: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanVisibility' price: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPrice' service_level: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanServiceLevel' description: The default service level of a tariff plan. Possible values can be fetched with GET `/api/v1/service_level`. federation_allowed: type: boolean factory_test_mode_allowed: type: boolean title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlan ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanCurrency ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanNotes: type: object properties: {} title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanNotes ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPrice: type: object properties: sim_activated_rate: type: array items: $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPriceSimActivatedRateItems' title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPrice ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPriceSimActivatedRateItems: oneOf: - $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPriceSimActivatedRateItems0' - $ref: '#/components/schemas/ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPriceSimActivatedRateItems1' title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPriceSimActivatedRateItems ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPriceSimActivatedRateItems0: type: object properties: scale_start: type: integer description: Number of SIMs at which the hosting fee should be applied rate: type: number format: double required: - scale_start - rate title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPriceSimActivatedRateItems0 ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPriceSimActivatedRateItems1: type: object properties: rate: type: number format: double title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanPriceSimActivatedRateItems1 ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanServiceLevel: type: object properties: id: type: number format: double name: type: string required: - id description: The default service level of a tariff plan. Possible values can be fetched with GET `/api/v1/service_level`. title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanServiceLevel ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanStatus: type: object properties: description: type: string tariff_plan_status_enum_id: type: string id: type: number format: double title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanStatus ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanTariffPlanRuntimeId: type: object properties: {} title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanTariffPlanRuntimeId ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanVisibility: type: object properties: description: type: string id: type: number format: double title: ApiV1OrganisationOrgIdTariffPlanGetResponsesContentApplicationJsonSchemaItemsTariffPlanVisibility ApiV1OrganisationStatusGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string title: ApiV1OrganisationStatusGetResponsesContentApplicationJsonSchemaItems ApiV1RatTypeGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double description: type: string title: ApiV1RatTypeGetResponsesContentApplicationJsonSchemaItems ApiV1ServiceGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string teleservice_code: type: integer used_with_vlr: type: boolean used_with_sgsn: type: boolean traffic_type: $ref: '#/components/schemas/ApiV1ServiceGetResponsesContentApplicationJsonSchemaItemsTrafficType' title: ApiV1ServiceGetResponsesContentApplicationJsonSchemaItems ApiV1ServiceGetResponsesContentApplicationJsonSchemaItemsTrafficType: type: object properties: {} title: ApiV1ServiceGetResponsesContentApplicationJsonSchemaItemsTrafficType ApiV1ServiceLevelGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double name: type: string required: - id description: The default service level of a tariff plan. Possible values can be fetched with GET `/api/v1/service_level`. title: ApiV1ServiceLevelGetResponsesContentApplicationJsonSchemaItems ApiV1ServiceProfileGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer name: type: string description: type: string used_count: type: string allowed_3g: type: boolean allowed_4g: type: boolean allowed_nb_iot: type: boolean allowed_nb_iot_geo: type: boolean apply_sms_quota: type: boolean apply_data_quota: type: boolean ip_firewall_rule_set: $ref: '#/components/schemas/ApiV1ServiceProfileGetResponsesContentApplicationJsonSchemaItemsIpFirewallRuleSet' title: ApiV1ServiceProfileGetResponsesContentApplicationJsonSchemaItems ApiV1ServiceProfileGetResponsesContentApplicationJsonSchemaItemsIpFirewallRuleSet: type: object properties: ip_firewall_profiles: type: array items: $ref: '#/components/schemas/ApiV1ServiceProfileGetResponsesContentApplicationJsonSchemaItemsIpFirewallRuleSetIpFirewallProfilesItems' enforce: type: boolean title: ApiV1ServiceProfileGetResponsesContentApplicationJsonSchemaItemsIpFirewallRuleSet ApiV1ServiceProfileGetResponsesContentApplicationJsonSchemaItemsIpFirewallRuleSetIpFirewallProfilesItems: type: object properties: id: type: integer name: type: string added: type: string format: date-time title: ApiV1ServiceProfileGetResponsesContentApplicationJsonSchemaItemsIpFirewallRuleSetIpFirewallProfilesItems ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaApiCallback: type: object properties: {} title: ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaApiCallback ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaApiSecret: type: object properties: {} title: ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaApiSecret ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaBreakoutRegion: type: object properties: {} title: ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaBreakoutRegion ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaDns: type: object properties: {} title: ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaDns ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaEsmeInterfaceType: type: object properties: {} title: ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaEsmeInterfaceType ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaMocCallback: type: object properties: {} title: ApiV1ServiceProfilePostRequestBodyContentApplicationJsonSchemaMocCallback ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaApiCallback: type: object properties: {} title: ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaApiCallback ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaApiSecret: type: object properties: {} title: ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaApiSecret ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaBreakoutRegion: type: object properties: {} title: ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaBreakoutRegion ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaEsmeInterfaceType: type: object properties: {} title: ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaEsmeInterfaceType ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaIpFirewallRuleSet: type: object properties: ip_firewall_profiles: type: array items: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaIpFirewallRuleSetIpFirewallProfilesItems' enforce: type: boolean title: ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaIpFirewallRuleSet ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaIpFirewallRuleSetIpFirewallProfilesItems: type: object properties: id: type: integer name: type: string added: type: string format: date-time title: ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaIpFirewallRuleSetIpFirewallProfilesItems ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaMocCallback: type: object properties: {} title: ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaMocCallback ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaServiceItems: type: object properties: {} title: ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaServiceItems ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaApiCallback: type: object properties: {} title: ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaApiCallback ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaApiSecret: type: object properties: {} title: ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaApiSecret ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaBreakoutRegion: type: object properties: {} title: ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaBreakoutRegion ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaDns: type: object properties: {} title: ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaDns ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaEsmeInterfaceType: type: object properties: {} title: ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaEsmeInterfaceType ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaMocCallback: type: object properties: {} title: ApiV1ServiceProfileProfileIdPatchRequestBodyContentApplicationJsonSchemaMocCallback ApiV1ServiceProfileProfileIdTrafficLimitGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double service: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdTrafficLimitGetResponsesContentApplicationJsonSchemaItemsService' satellite_only: type: boolean description: limit only applies to satellite rat types period: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdTrafficLimitGetResponsesContentApplicationJsonSchemaItemsPeriod' volume: type: integer format: int64 description: 'the limit threshold in atomic units of the service type, which is bytes for data, and count for SMS ' warning_percent: type: integer description: 'the percentage of the limit volume when the system will send an event ' title: ApiV1ServiceProfileProfileIdTrafficLimitGetResponsesContentApplicationJsonSchemaItems ApiV1ServiceProfileProfileIdTrafficLimitGetResponsesContentApplicationJsonSchemaItemsPeriod: type: object properties: id: type: number format: double time_units: type: number format: double unit: type: string title: ApiV1ServiceProfileProfileIdTrafficLimitGetResponsesContentApplicationJsonSchemaItemsPeriod ApiV1ServiceProfileProfileIdTrafficLimitGetResponsesContentApplicationJsonSchemaItemsService: type: object properties: id: type: number format: double description: type: string title: ApiV1ServiceProfileProfileIdTrafficLimitGetResponsesContentApplicationJsonSchemaItemsService ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaPeriod: type: object properties: id: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaPeriodId' description: 'Period of the limit. The only supported period is `Monthly`, which uses calendar months and has an ID of `2`. The limit resets at the beginning of each month 00:00 UTC. ' title: ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaPeriod ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaPeriodId: type: string enum: - '2' title: ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaPeriodId ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaService: type: object properties: id: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaServiceId' description: 'Service type to which the limit applies. The only supported service type is `Data`, which has an ID of `38`. ' title: ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaService ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaServiceId: type: string enum: - '38' title: ApiV1ServiceProfileProfileIdTrafficLimitPostRequestBodyContentApplicationJsonSchemaServiceId ApiV1ServiceServiceIdTrafficLimitGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer volume: type: integer period: $ref: '#/components/schemas/ApiV1ServiceServiceIdTrafficLimitGetResponsesContentApplicationJsonSchemaItemsPeriod' title: ApiV1ServiceServiceIdTrafficLimitGetResponsesContentApplicationJsonSchemaItems ApiV1ServiceServiceIdTrafficLimitGetResponsesContentApplicationJsonSchemaItemsPeriod: type: object properties: id: type: integer time_units: type: integer unit: type: string title: ApiV1ServiceServiceIdTrafficLimitGetResponsesContentApplicationJsonSchemaItemsPeriod ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaModel: type: object properties: id: type: integer description: type: string memory_size: type: integer formfactor: $ref: '#/components/schemas/ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaModelFormfactor' manufacturer: $ref: '#/components/schemas/ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaModelManufacturer' title: ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaModel ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaModelFormfactor: type: object properties: id: type: integer name: type: string title: ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaModelFormfactor ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaModelManufacturer: type: object properties: id: type: integer name: type: string title: ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaModelManufacturer ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaStatus: type: object properties: id: type: integer description: type: string required: - id title: ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaStatus ApiV1SimBatchBicBicPatchRequestBodyContentApplicationJsonSchemaSimStatus: type: object properties: id: type: integer description: type: string required: - id title: ApiV1SimBatchBicBicPatchRequestBodyContentApplicationJsonSchemaSimStatus ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItems: type: object properties: id: type: integer iccid: type: string eid: type: string production_date: type: string format: date-time activation_date: type: string format: date-time status: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsStatus' customer_org: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsCustomerOrg' issuer_org: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsIssuerOrg' reseller_org: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsResellerOrg' endpoint: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsEndpoint' imsi: type: string msisdn: type: string model: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsModel' title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItems ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsCustomerOrg: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsCustomerOrgCountry' title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsCustomerOrg ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsCustomerOrgCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsCustomerOrgCountry ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsEndpoint: type: object properties: id: type: integer title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsEndpoint ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsIssuerOrg: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsIssuerOrgCountry' title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsIssuerOrg ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsIssuerOrgCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsIssuerOrgCountry ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsModel: type: object properties: id: type: integer description: type: string memory_size: type: integer formfactor: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsModelFormfactor' manufacturer: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsModelManufacturer' title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsModel ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsModelFormfactor: type: object properties: id: type: integer name: type: string title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsModelFormfactor ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsModelManufacturer: type: object properties: id: type: integer name: type: string title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsModelManufacturer ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsResellerOrg: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsResellerOrgCountry' title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsResellerOrg ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsResellerOrgCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsResellerOrgCountry ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsStatus: type: object properties: id: type: integer description: type: string required: - id title: ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItemsStatus ApiV1SimGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer iccid: type: string eid: type: string production_date: type: string format: date-time activation_date: type: string format: date-time status: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsStatus' customer_org: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsCustomerOrg' issuer_org: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsIssuerOrg' reseller_org: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsResellerOrg' endpoint: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsEndpoint' imsi: type: string msisdn: type: string model: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsModel' title: ApiV1SimGetResponsesContentApplicationJsonSchemaItems ApiV1SimGetResponsesContentApplicationJsonSchemaItemsCustomerOrg: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsCustomerOrgCountry' title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsCustomerOrg ApiV1SimGetResponsesContentApplicationJsonSchemaItemsCustomerOrgCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsCustomerOrgCountry ApiV1SimGetResponsesContentApplicationJsonSchemaItemsEndpoint: type: object properties: id: type: integer title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsEndpoint ApiV1SimGetResponsesContentApplicationJsonSchemaItemsIssuerOrg: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsIssuerOrgCountry' title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsIssuerOrg ApiV1SimGetResponsesContentApplicationJsonSchemaItemsIssuerOrgCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsIssuerOrgCountry ApiV1SimGetResponsesContentApplicationJsonSchemaItemsModel: type: object properties: id: type: integer description: type: string memory_size: type: integer formfactor: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsModelFormfactor' manufacturer: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsModelManufacturer' title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsModel ApiV1SimGetResponsesContentApplicationJsonSchemaItemsModelFormfactor: type: object properties: id: type: integer name: type: string title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsModelFormfactor ApiV1SimGetResponsesContentApplicationJsonSchemaItemsModelManufacturer: type: object properties: id: type: integer name: type: string title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsModelManufacturer ApiV1SimGetResponsesContentApplicationJsonSchemaItemsResellerOrg: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1SimGetResponsesContentApplicationJsonSchemaItemsResellerOrgCountry' title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsResellerOrg ApiV1SimGetResponsesContentApplicationJsonSchemaItemsResellerOrgCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsResellerOrgCountry ApiV1SimGetResponsesContentApplicationJsonSchemaItemsStatus: type: object properties: id: type: integer description: type: string required: - id title: ApiV1SimGetResponsesContentApplicationJsonSchemaItemsStatus ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaAllowedSimStatusesItems: type: object properties: id: type: number format: double required: - id title: ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaAllowedSimStatusesItems ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaIccidRange: type: object properties: start: type: string description: 'First ICCID in the range (19-digit format). ' end: type: string description: 'Last ICCID in the range (19-digit format). Must be greater than or equal to `start`. ' required: - start - end description: "ICCID range to migrate.\nAll SIMs within the range must belong to the source Workspace.\nThe range may\ \ include up to 500 ICCIDs.\nThe `end` value must be greater than or equal to the `start` value.\n\n\n Cannot\ \ be used in combination with the `iccids` or the `sims` field.\n\n" title: ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaIccidRange ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaSimsItems: type: object properties: id: type: number format: double required: - id title: ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaSimsItems ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaTargetWorkspace: type: object properties: id: type: number format: double required: - id description: 'Target Workspace to migrate SIMs to. Must be an enterprise Workspace. The calling user must have **Administrator** permissions on the target Workspace. ' title: ApiV1SimMigrationWorkspacePostRequestBodyContentApplicationJsonSchemaTargetWorkspace ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaAllowedSimStatusesItems: type: object properties: id: type: number format: double description: type: string required: - id - description title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaAllowedSimStatusesItems ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: error_code: type: number format: double description: Specific error code (1502, 1503, 1504, or 1505) message: type: string description: Error message describing the issue sims: type: array items: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItems' description: List of SIMs affected by this specific error required: - error_code - message - sims title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItems ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItems: type: object properties: id: type: number format: double iccid: type: string iccid_with_luhn: type: string endpoint: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItemsEndpoint' description: 'The device currently attached to the SIM. Only present if a device is attached. ' status: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItemsStatus' source_workspace: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItemsSourceWorkspace' description: The source Workspace of the SIM title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItems ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItemsEndpoint: type: object properties: id: type: number format: double name: type: string description: 'The device currently attached to the SIM. Only present if a device is attached. ' title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItemsEndpoint ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItemsSourceWorkspace: type: object properties: id: type: number format: double name: type: string description: The source Workspace of the SIM title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItemsSourceWorkspace ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItemsStatus: type: object properties: id: type: number format: double description: type: string title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItemsSimsItemsStatus ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItems: type: object properties: id: type: number format: double iccid: type: string iccid_with_luhn: type: string endpoint: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItemsEndpoint' description: 'The device currently attached to the SIM. Defaults to `undefined` if no device is attached. ' status: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItemsStatus' source_workspace: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItemsSourceWorkspace' description: The source Workspace of the SIM required: - status title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItems ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItemsEndpoint: type: object properties: id: type: number format: double name: type: string required: - id - name description: 'The device currently attached to the SIM. Defaults to `undefined` if no device is attached. ' title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItemsEndpoint ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItemsSourceWorkspace: type: object properties: id: type: number format: double name: type: string required: - id - name description: The source Workspace of the SIM title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItemsSourceWorkspace ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItemsStatus: type: object properties: id: type: number format: double description: type: string required: - id - description title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItemsStatus ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaTargetWorkspace: type: object properties: id: type: number format: double name: type: string required: - id - name description: The `target_workspace` specified in the request title: ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaTargetWorkspace ApiV1SimMultiDeleteRequestBodyContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double required: - id title: ApiV1SimMultiDeleteRequestBodyContentApplicationJsonSchemaItems ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItems: type: object properties: timestamp: type: string alert: type: boolean description: type: string id: type: integer event_type: $ref: '#/components/schemas/ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEventType' event_source: $ref: '#/components/schemas/ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEventSource' event_severity: $ref: '#/components/schemas/ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEventSeverity' organisation: $ref: '#/components/schemas/ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsOrganisation' endpoint: $ref: '#/components/schemas/ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEndpoint' sim: $ref: '#/components/schemas/ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsSim' imsi: $ref: '#/components/schemas/ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsImsi' title: ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItems ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEndpoint: type: object properties: {} title: ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEndpoint ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEventSeverity: type: object properties: {} title: ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEventSeverity ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEventSource: type: object properties: {} title: ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEventSource ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEventType: type: object properties: {} title: ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsEventType ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsImsi: type: object properties: {} title: ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsImsi ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsOrganisation: type: object properties: {} title: ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsOrganisation ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsSim: type: object properties: {} title: ApiV1SimSimIdEventGetResponsesContentApplicationJsonSchemaItemsSim ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaCustomerOrg: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaCustomerOrgCountry' title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaCustomerOrg ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaCustomerOrgCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaCustomerOrgCountry ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaEndpoint: type: object properties: id: type: integer title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaEndpoint ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaIssuerOrg: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaIssuerOrgCountry' title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaIssuerOrg ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaIssuerOrgCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaIssuerOrgCountry ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaModel: type: object properties: id: type: integer description: type: string memory_size: type: integer formfactor: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaModelFormfactor' manufacturer: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaModelManufacturer' title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaModel ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaModelFormfactor: type: object properties: id: type: integer name: type: string title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaModelFormfactor ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaModelManufacturer: type: object properties: id: type: integer name: type: string title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaModelManufacturer ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaResellerOrg: type: object properties: id: type: integer name: type: string country: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaResellerOrgCountry' title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaResellerOrg ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaResellerOrgCountry: type: object properties: id: type: integer name: type: string country_code: type: integer mcc: type: integer iso_code: type: string latitude: type: number format: double longitude: type: number format: double title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaResellerOrgCountry ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaStatus: type: object properties: id: type: integer description: type: string required: - id title: ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaStatus ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaCustomerOrg: type: object properties: id: type: integer title: ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaCustomerOrg ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaIssuerOrg: type: object properties: id: type: integer title: ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaIssuerOrg ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaResellerOrg: type: object properties: id: type: integer title: ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaResellerOrg ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaStatus: type: object properties: id: type: integer description: type: string required: - id title: ApiV1SimSimIdPatchRequestBodyContentApplicationJsonSchemaStatus ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItems: type: object properties: last_month: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonth' current_month: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonth' last_hour: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHour' required: - last_month - current_month - last_hour title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItems ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonth: type: object properties: data: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthData' sms: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthSms' title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonth ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthData: type: object properties: sim_id: type: number format: double month: type: string format: date volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double traffic_type_id: type: number format: double last_updated: type: string format: date-time cost: type: number format: double currency_id: type: number format: double id: type: number format: double traffic_type: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthDataTrafficType' currency: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthDataCurrency' title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthData ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthDataCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthDataCurrency ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthDataTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthDataTrafficType ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthSms: type: object properties: sim_id: type: number format: double month: type: string format: date volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double traffic_type_id: type: number format: double last_updated: type: string format: date-time cost: type: number format: double currency_id: type: number format: double id: type: number format: double traffic_type: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthSmsTrafficType' currency: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthSmsCurrency' title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthSms ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthSmsCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthSmsCurrency ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthSmsTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsCurrentMonthSmsTrafficType ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHour: type: object properties: data: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourData' sms: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourSms' title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHour ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourData: type: object properties: sim_id: type: number format: double month: type: string format: date volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double traffic_type_id: type: number format: double last_updated: type: string format: date-time cost: type: number format: double currency_id: type: number format: double id: type: number format: double traffic_type: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourDataTrafficType' currency: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourDataCurrency' title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourData ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourDataCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourDataCurrency ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourDataTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourDataTrafficType ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourSms: type: object properties: sim_id: type: number format: double month: type: string format: date volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double traffic_type_id: type: number format: double last_updated: type: string format: date-time cost: type: number format: double currency_id: type: number format: double id: type: number format: double traffic_type: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourSmsTrafficType' currency: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourSmsCurrency' title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourSms ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourSmsCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourSmsCurrency ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourSmsTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastHourSmsTrafficType ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonth: type: object properties: data: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthData' sms: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthSms' title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonth ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthData: type: object properties: sim_id: type: number format: double month: type: string format: date volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double traffic_type_id: type: number format: double last_updated: type: string format: date-time cost: type: number format: double currency_id: type: number format: double id: type: number format: double traffic_type: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthDataTrafficType' currency: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthDataCurrency' title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthData ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthDataCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthDataCurrency ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthDataTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthDataTrafficType ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthSms: type: object properties: sim_id: type: number format: double month: type: string format: date volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double traffic_type_id: type: number format: double last_updated: type: string format: date-time cost: type: number format: double currency_id: type: number format: double id: type: number format: double traffic_type: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthSmsTrafficType' currency: $ref: '#/components/schemas/ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthSmsCurrency' title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthSms ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthSmsCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthSmsCurrency ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthSmsTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV1SimSimIdStatsGetResponsesContentApplicationJsonSchemaItemsLastMonthSmsTrafficType ApiV1SimStatusGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string title: ApiV1SimStatusGetResponsesContentApplicationJsonSchemaItems ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPrice: type: object properties: sim_activated_rate: type: array items: $ref: '#/components/schemas/ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPriceSimActivatedRateItems' description: 'the fees that apply for the current month according to the number of activated SIMs. calculation follows volume pricing at the moment, but may be changed at any time. the resulting price is the sum of each price line times the given volume. if it is a scaled price, the rate object contains a `scale_start` field, otherwise it is fixed. ' title: ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPrice ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPriceSimActivatedRateItems: type: object properties: scale_start: type: number format: double rate: type: number format: double volume: type: integer title: ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPriceSimActivatedRateItems ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaServiceLevel: type: object properties: id: type: number format: double name: type: string required: - id description: The default service level of a tariff plan. Possible values can be fetched with GET `/api/v1/service_level`. title: ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaServiceLevel ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlan: type: object properties: name: type: string description: type: string creation_date: type: string activation_date: type: string deprecation_date: type: string rate: type: number format: double yearly_rate: type: number format: double sim_activation_fee: type: number format: double max_active_sims: type: number format: double add_active_sims_rate: type: number format: double add_active_sim_batch: type: number format: double max_service_profiles: type: number format: double max_tariff_profiles: type: number format: double max_users: type: number format: double minimum_runtime: type: number format: double api_access_allowed: type: boolean vpn_access: type: boolean evaluation: type: boolean expiry_time: type: number format: double used_count: type: number format: double id: type: number format: double price: $ref: '#/components/schemas/ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPrice' currency: $ref: '#/components/schemas/ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanCurrency' workspaces_enabled: type: boolean description: The `workspaces_enabled` flag configured globally for the tariff plan title: ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlan ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanCurrency ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPrice: type: object properties: sim_activated_rate: type: array items: $ref: '#/components/schemas/ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPriceSimActivatedRateItems' title: ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPrice ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPriceSimActivatedRateItems: type: object properties: scale_start: type: number format: double rate: type: number format: double title: ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanPriceSimActivatedRateItems ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanRuntime: type: object properties: number_of_units: type: number format: double time_unit_id: type: number format: double id: type: number format: double title: ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanRuntime ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double name: type: string description: type: string used_count: type: string organisation_id: type: string tariff: $ref: '#/components/schemas/ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsTariff' inclusive_volume: $ref: '#/components/schemas/ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsInclusiveVolume' description: If there is an inclusive volume assigned to the tariff profile, the details will be returned within this object title: ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItems ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsInclusiveVolume: type: object properties: id: type: number format: double volume: type: number format: double rate: type: number format: double pooled: type: boolean start_date: type: string end_date: type: string ratezone: $ref: '#/components/schemas/ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsInclusiveVolumeRatezone' currency: $ref: '#/components/schemas/ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsInclusiveVolumeCurrency' description: If there is an inclusive volume assigned to the tariff profile, the details will be returned within this object title: ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsInclusiveVolume ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsInclusiveVolumeCurrency: type: object properties: id: type: number format: double code: type: string symbol: type: string title: ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsInclusiveVolumeCurrency ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsInclusiveVolumeRatezone: type: object properties: id: type: number format: double name: type: string title: ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsInclusiveVolumeRatezone ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsTariff: type: object properties: id: type: number format: double organisation_id: type: string name: type: string description: type: string created: type: string tariff_status_id: type: string currency_id: type: string default_sms_mt_rate: type: number format: double default_sms_mo_rate: type: number format: double sim_issued_rate: type: number format: double sim_activated_rate: type: number format: double sim_suspended_rate: type: number format: double sim_activation_rate: type: number format: double sim_reactivation_rate: type: number format: double sim_suspension_rate: type: number format: double sim_termination_rate: type: number format: double data_throttle_id: type: string data_blocksize_id: type: string public: type: string tariff_category_id: type: string visibility_id: type: string tariff_currency_category_id: type: string used_count: type: string assigned_count: type: string currency: $ref: '#/components/schemas/ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsTariffCurrency' title: ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsTariff ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsTariffCurrency: type: object properties: id: $ref: '#/components/schemas/ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsTariffCurrencyId' code: type: string symbol: type: string title: ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsTariffCurrency ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsTariffCurrencyId: type: object properties: {} title: ApiV1TariffProfileGetResponsesContentApplicationJsonSchemaItemsTariffCurrencyId ApiV1TariffProfilePostRequestBodyContentApplicationJsonSchemaTariff: type: object properties: {} title: ApiV1TariffProfilePostRequestBodyContentApplicationJsonSchemaTariff ApiV1TariffProfileTariffProfileIdCoverageGetResponsesContentApplicationJsonSchemaItems: type: object properties: country: $ref: '#/components/schemas/ApiV1TariffProfileTariffProfileIdCoverageGetResponsesContentApplicationJsonSchemaItemsCountry' redundancy_count: type: integer title: ApiV1TariffProfileTariffProfileIdCoverageGetResponsesContentApplicationJsonSchemaItems ApiV1TariffProfileTariffProfileIdCoverageGetResponsesContentApplicationJsonSchemaItemsCountry: type: object properties: {} title: ApiV1TariffProfileTariffProfileIdCoverageGetResponsesContentApplicationJsonSchemaItemsCountry ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaInclusiveVolume: type: object properties: id: type: number format: double volume: type: number format: double rate: type: number format: double pooled: type: boolean start_date: type: string end_date: type: string ratezone: $ref: '#/components/schemas/ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaInclusiveVolumeRatezone' currency: $ref: '#/components/schemas/ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaInclusiveVolumeCurrency' description: If there is an inclusive volume assigned to the tariff profile, the details will be returned within this object title: ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaInclusiveVolume ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaInclusiveVolumeCurrency: type: object properties: id: type: number format: double code: type: string symbol: type: string title: ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaInclusiveVolumeCurrency ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaInclusiveVolumeRatezone: type: object properties: id: type: number format: double name: type: string title: ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaInclusiveVolumeRatezone ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaTariff: type: object properties: id: type: number format: double organisation_id: type: string name: type: string description: type: string created: type: string tariff_status_id: type: string currency_id: type: string default_sms_mt_rate: type: number format: double default_sms_mo_rate: type: number format: double sim_issued_rate: type: number format: double sim_activated_rate: type: number format: double sim_suspended_rate: type: number format: double sim_activation_rate: type: number format: double sim_reactivation_rate: type: number format: double sim_suspension_rate: type: number format: double sim_termination_rate: type: number format: double data_throttle_id: type: string data_blocksize_id: type: string public: type: string tariff_category_id: type: string visibility_id: type: string tariff_currency_category_id: type: string used_count: type: string assigned_count: type: string currency: $ref: '#/components/schemas/ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaTariffCurrency' title: ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaTariff ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaTariffCurrency: type: object properties: id: $ref: '#/components/schemas/ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaTariffCurrencyId' code: type: string symbol: type: string title: ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaTariffCurrency ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaTariffCurrencyId: type: object properties: {} title: ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaTariffCurrencyId ApiV1TariffProfileTariffProfileIdPatchRequestBodyContentApplicationJsonSchemaTariff: type: object properties: {} title: ApiV1TariffProfileTariffProfileIdPatchRequestBodyContentApplicationJsonSchemaTariff ApiV1TrafficLimitGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer service: $ref: '#/components/schemas/ApiV1TrafficLimitGetResponsesContentApplicationJsonSchemaItemsService' volume: type: integer period: $ref: '#/components/schemas/ApiV1TrafficLimitGetResponsesContentApplicationJsonSchemaItemsPeriod' title: ApiV1TrafficLimitGetResponsesContentApplicationJsonSchemaItems ApiV1TrafficLimitGetResponsesContentApplicationJsonSchemaItemsPeriod: type: object properties: {} title: ApiV1TrafficLimitGetResponsesContentApplicationJsonSchemaItemsPeriod ApiV1TrafficLimitGetResponsesContentApplicationJsonSchemaItemsService: type: object properties: {} title: ApiV1TrafficLimitGetResponsesContentApplicationJsonSchemaItemsService ApiV1UserGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer username: type: string name: type: string created: type: string status: $ref: '#/components/schemas/ApiV1UserGetResponsesContentApplicationJsonSchemaItemsStatus' organisation: $ref: '#/components/schemas/ApiV1UserGetResponsesContentApplicationJsonSchemaItemsOrganisation' title: ApiV1UserGetResponsesContentApplicationJsonSchemaItems ApiV1UserGetResponsesContentApplicationJsonSchemaItemsOrganisation: type: object properties: id: type: number format: double name: type: string title: ApiV1UserGetResponsesContentApplicationJsonSchemaItemsOrganisation ApiV1UserGetResponsesContentApplicationJsonSchemaItemsStatus: type: object properties: id: type: number format: double description: type: string title: ApiV1UserGetResponsesContentApplicationJsonSchemaItemsStatus ApiV1UserMfaKeyIdPatchRequestBodyContentApplicationJsonSchemaStatus: type: object properties: id: type: integer description: 'Status ID. Use `1` to activate the key. You can retrieve available status IDs from [List MFA key statuses](/developers/api/authentication/user-mfa-status-get). ' required: - id description: The target status for the MFA key. title: ApiV1UserMfaKeyIdPatchRequestBodyContentApplicationJsonSchemaStatus ApiV1UserMfaPostRequestBodyContentApplicationJsonSchemaType: type: object properties: {} title: ApiV1UserMfaPostRequestBodyContentApplicationJsonSchemaType ApiV1UserMfaPostResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: {} title: ApiV1UserMfaPostResponsesContentApplicationJsonSchemaErrorsItems ApiV1UserMfaPostResponsesContentApplicationJsonSchemaStatus: type: object properties: id: type: number format: double description: type: string title: ApiV1UserMfaPostResponsesContentApplicationJsonSchemaStatus ApiV1UserMfaPostResponsesContentApplicationJsonSchemaType: type: object properties: id: type: number format: double description: type: string title: ApiV1UserMfaPostResponsesContentApplicationJsonSchemaType ApiV1UserMfaStatusGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string title: ApiV1UserMfaStatusGetResponsesContentApplicationJsonSchemaItems ApiV1UserMfaTypeGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string title: ApiV1UserMfaTypeGetResponsesContentApplicationJsonSchemaItems ApiV1UserPasswordPatchResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: {} title: ApiV1UserPasswordPatchResponsesContentApplicationJsonSchemaErrorsItems ApiV1UserPostRequestBodyContentApplicationJsonSchemaOrganisation: type: object properties: {} title: ApiV1UserPostRequestBodyContentApplicationJsonSchemaOrganisation ApiV1UserPostRequestBodyContentApplicationJsonSchemaRolesItems: type: object properties: {} title: ApiV1UserPostRequestBodyContentApplicationJsonSchemaRolesItems ApiV1UserPostResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: {} title: ApiV1UserPostResponsesContentApplicationJsonSchemaErrorsItems ApiV1UserRoleGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double name: type: string title: ApiV1UserRoleGetResponsesContentApplicationJsonSchemaItems ApiV1UserStatusGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: type: string title: ApiV1UserStatusGetResponsesContentApplicationJsonSchemaItems ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer alert: type: boolean description: type: string timestamp: type: string event_type: $ref: '#/components/schemas/ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsEventType' event_source: $ref: '#/components/schemas/ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsEventSource' event_severity: $ref: '#/components/schemas/ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsEventSeverity' organisation: $ref: '#/components/schemas/ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsOrganisation' user: $ref: '#/components/schemas/ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsUser' required: - id - alert - description - timestamp - event_type - event_source - event_severity - organisation - user title: ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItems ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsEventSeverity: type: object properties: {} title: ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsEventSeverity ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsEventSource: type: object properties: {} title: ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsEventSource ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsEventType: type: object properties: {} title: ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsEventType ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsOrganisation: type: object properties: {} title: ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsOrganisation ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsUser: type: object properties: {} title: ApiV1UserUserIdEventGetResponsesContentApplicationJsonSchemaItemsUser ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaMfaItems: type: object properties: {} title: ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaMfaItems ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaOrganisation: type: object properties: {} title: ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaOrganisation ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaRolesItems: type: object properties: {} title: ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaRolesItems ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaStatus: type: object properties: {} title: ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaStatus ApiV1UserUserIdMfaTrustedDeviceGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer operating_system: type: string browser: type: string activation_date: type: string title: ApiV1UserUserIdMfaTrustedDeviceGetResponsesContentApplicationJsonSchemaItems ApiV1UserUserIdPatchRequestBodyContentApplicationJsonSchemaStatus: type: object properties: {} title: ApiV1UserUserIdPatchRequestBodyContentApplicationJsonSchemaStatus ApiV1UserUserIdPatchResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: {} title: ApiV1UserUserIdPatchResponsesContentApplicationJsonSchemaErrorsItems ApiV2BulkOperationsEndpointAddTagsPostRequestBodyContentApplicationJsonSchemaItemsItems: type: object properties: endpoint: $ref: '#/components/schemas/ApiV2BulkOperationsEndpointAddTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsEndpoint' tags: type: array items: $ref: '#/components/schemas/ApiV2BulkOperationsEndpointAddTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsTagsItems' title: ApiV2BulkOperationsEndpointAddTagsPostRequestBodyContentApplicationJsonSchemaItemsItems ApiV2BulkOperationsEndpointAddTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsEndpoint: type: object properties: id: type: number format: double title: ApiV2BulkOperationsEndpointAddTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsEndpoint ApiV2BulkOperationsEndpointAddTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsTagsItems: type: object properties: id: type: number format: double title: ApiV2BulkOperationsEndpointAddTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsTagsItems ApiV2BulkOperationsEndpointRemoveTagsPostRequestBodyContentApplicationJsonSchemaItemsItems: type: object properties: endpoint: $ref: '#/components/schemas/ApiV2BulkOperationsEndpointRemoveTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsEndpoint' tags: type: array items: $ref: '#/components/schemas/ApiV2BulkOperationsEndpointRemoveTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsTagsItems' title: ApiV2BulkOperationsEndpointRemoveTagsPostRequestBodyContentApplicationJsonSchemaItemsItems ApiV2BulkOperationsEndpointRemoveTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsEndpoint: type: object properties: id: type: number format: double title: ApiV2BulkOperationsEndpointRemoveTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsEndpoint ApiV2BulkOperationsEndpointRemoveTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsTagsItems: type: object properties: id: type: number format: double title: ApiV2BulkOperationsEndpointRemoveTagsPostRequestBodyContentApplicationJsonSchemaItemsItemsTagsItems ApiV2BulkOperationsTagDeleteTagsPostRequestBodyContentApplicationJsonSchemaTagsItems: type: object properties: id: type: number format: double title: ApiV2BulkOperationsTagDeleteTagsPostRequestBodyContentApplicationJsonSchemaTagsItems ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestination: type: object properties: connection_type: type: string format: type: string credentials: $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials' description: Destination credentials required: - connection_type title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestination ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials: oneOf: - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials0' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials1' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials2' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials3' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials4' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials5' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials6' description: Destination credentials title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials0: type: object properties: region: type: string description: AWS Region of your Kinesis Data Stream stream_name: type: string description: Name of your Kinesis Data Stream role_arn: type: string description: Role ARN of IAM role with write permission for your Kinesis Stream required: - region - stream_name - role_arn description: Credential fields for Amazon Kinesis Data Streams title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials0 ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials1: type: object properties: region: type: string description: AWS Region of your Kinesis Data Stream bucket_name: type: string description: Name of your S3 bucket role_arn: type: string description: Role ARN of IAM role with write permission for your S3 bucket flush_size: type: integer description: Maximal number of entries in a single file. Default is `10000`. Valid flush sizes are between 10 and 100000. rotate_interval: type: integer description: Maximal time in milliseconds between file writes. Default is `10000` ms. Valid rotation intervals are between 10000 ms and 900000 ms. required: - region - bucket_name - role_arn description: Credential fields for Amazon S3 title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials1 ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials2: type: object properties: url: type: string description: URL of your Webhook / RestAPI endpoint method: type: string description: HTTP Method to use. Options are `POST` (default), `PUT` and `PATCH` headers: type: array items: type: string description: Array containing additional header tuples. Expected Format is `["header1:value1, "header2:value2", ...]`. Headers are masked in GET request. size: type: integer description: Number specifying of request should contain `1` message or an array of messages of the specified batch size. Default is `3000`. Valid sizes are between 1 and 10000. required: - url description: Credential fields for Webhook title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials2 ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials3: type: object properties: project_id: type: string description: Project ID reported by KeenIO write_key: type: string description: Write key of your KeenIO Project. collection_name: type: string description: Collection Name that you want to stream your data to. size: type: integer description: Number specifying of request should contain `1` message or an array of messages of the specified batch size. Default is `3000`. Valid sizes are between 1 and 10000. required: - project_id - write_key - collection_name description: Credential fields for KeenIO title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials3 ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials4: type: object properties: api_key: type: string description: Datadog API Key region: type: string description: Datadog region. Options are `US` (default), `US3`, `EU` and `US1FED` required: - api_key description: Credential fields for Datadog title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials4 ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials5: type: object properties: connection_string: type: string description: Connection string with Access Key to your Event Hub. required: - connection_string description: Credential fields for Microsoft Azure EventHub title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials5 ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials6: type: object properties: cps_topic: type: string description: Topic name of PubSub topic cps_project: type: string description: Project ID of the topic project. required: - cps_topic - cps_project description: Credential fields for Google Cloud Pub/Sub title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestinationCredentials6 ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaFiltersItems: type: object properties: field: type: string description: Field to filter on value: type: array items: type: string description: Values to filter on title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaFiltersItems ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaStatus: type: object properties: id: type: number format: double description: Status identifier description: type: string description: Status description required: - id title: ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaStatus ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestination: type: object properties: connection_type: type: string format: type: string credentials: $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials' description: Destination credentials required: - connection_type title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestination ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials: oneOf: - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials0' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials1' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials2' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials3' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials4' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials5' - $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials6' description: Destination credentials title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials0: type: object properties: region: type: string description: AWS Region of your Kinesis Data Stream stream_name: type: string description: Name of your Kinesis Data Stream role_arn: type: string description: Role ARN of IAM role with write permission for your Kinesis Stream required: - region - stream_name - role_arn description: Credential fields for Amazon Kinesis Data Streams title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials0 ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials1: type: object properties: region: type: string description: AWS Region of your Kinesis Data Stream bucket_name: type: string description: Name of your S3 bucket role_arn: type: string description: Role ARN of IAM role with write permission for your S3 bucket flush_size: type: integer description: Maximal number of entries in a single file. Default is `10000`. Valid flush sizes are between 10 and 100000. rotate_interval: type: integer description: Maximal time in milliseconds between file writes. Default is `10000` ms. Valid rotation intervals are between 10000 ms and 900000 ms. required: - region - bucket_name - role_arn description: Credential fields for Amazon S3 title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials1 ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials2: type: object properties: url: type: string description: URL of your Webhook / RestAPI endpoint method: type: string description: HTTP Method to use. Options are `POST` (default), `PUT` and `PATCH` headers: type: array items: type: string description: Array containing additional header tuples. Expected Format is `["header1:value1, "header2:value2", ...]`. Headers are masked in GET request. size: type: integer description: Number specifying of request should contain `1` message or an array of messages of the specified batch size. Default is `3000`. Valid sizes are between 1 and 10000. required: - url description: Credential fields for Webhook title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials2 ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials3: type: object properties: project_id: type: string description: Project ID reported by KeenIO write_key: type: string description: Write key of your KeenIO Project. collection_name: type: string description: Collection Name that you want to stream your data to. size: type: integer description: Number specifying of request should contain `1` message or an array of messages of the specified batch size. Default is `3000`. Valid sizes are between 1 and 10000. required: - project_id - write_key - collection_name description: Credential fields for KeenIO title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials3 ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials4: type: object properties: api_key: type: string description: Datadog API Key region: type: string description: Datadog region. Options are `US` (default), `US3`, `EU` and `US1FED` required: - api_key description: Credential fields for Datadog title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials4 ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials5: type: object properties: connection_string: type: string description: Connection string with Access Key to your Event Hub. required: - connection_string description: Credential fields for Microsoft Azure EventHub title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials5 ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials6: type: object properties: cps_topic: type: string description: Topic name of PubSub topic cps_project: type: string description: Project ID of the topic project. required: - cps_topic - cps_project description: Credential fields for Google Cloud Pub/Sub title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaDestinationCredentials6 ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaFiltersItems: type: object properties: field: type: string description: Field to filter on value: type: array items: type: string description: Values to filter on title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaFiltersItems ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaStatus: type: object properties: id: type: number format: double description: Status identifier description: type: string description: Status description required: - id title: ApiV2DataStreamDataStreamIdPatchRequestBodyContentApplicationJsonSchemaStatus ApiV2DataStreamFilterFieldTypeGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double description: Enum item identifier description: type: string description: Enum item description title: ApiV2DataStreamFilterFieldTypeGetResponsesContentApplicationJsonSchemaItems ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestination: type: object properties: connection_type: type: string format: type: string credentials: $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials' description: Destination credentials required: - connection_type title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestination ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials: oneOf: - $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials0' - $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials1' - $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials2' - $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials3' - $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials4' - $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials5' - $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials6' description: Destination credentials title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials0: type: object properties: region: type: string description: AWS Region of your Kinesis Data Stream stream_name: type: string description: Name of your Kinesis Data Stream role_arn: type: string description: Role ARN of IAM role with write permission for your Kinesis Stream required: - region - stream_name - role_arn description: Credential fields for Amazon Kinesis Data Streams title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials0 ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials1: type: object properties: region: type: string description: AWS Region of your Kinesis Data Stream bucket_name: type: string description: Name of your S3 bucket role_arn: type: string description: Role ARN of IAM role with write permission for your S3 bucket flush_size: type: integer description: Maximal number of entries in a single file. Default is `10000`. Valid flush sizes are between 10 and 100000. rotate_interval: type: integer description: Maximal time in milliseconds between file writes. Default is `10000` ms. Valid rotation intervals are between 10000 ms and 900000 ms. required: - region - bucket_name - role_arn description: Credential fields for Amazon S3 title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials1 ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials2: type: object properties: url: type: string description: URL of your Webhook / RestAPI endpoint method: type: string description: HTTP Method to use. Options are `POST` (default), `PUT` and `PATCH` headers: type: array items: type: string description: Array containing additional header tuples. Expected Format is `["header1:value1, "header2:value2", ...]`. Headers are masked in GET request. size: type: integer description: Number specifying of request should contain `1` message or an array of messages of the specified batch size. Default is `3000`. Valid sizes are between 1 and 10000. required: - url description: Credential fields for Webhook title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials2 ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials3: type: object properties: project_id: type: string description: Project ID reported by KeenIO write_key: type: string description: Write key of your KeenIO Project. collection_name: type: string description: Collection Name that you want to stream your data to. size: type: integer description: Number specifying of request should contain `1` message or an array of messages of the specified batch size. Default is `3000`. Valid sizes are between 1 and 10000. required: - project_id - write_key - collection_name description: Credential fields for KeenIO title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials3 ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials4: type: object properties: api_key: type: string description: Datadog API Key region: type: string description: Datadog region. Options are `US` (default), `US3`, `EU` and `US1FED` required: - api_key description: Credential fields for Datadog title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials4 ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials5: type: object properties: connection_string: type: string description: Connection string with Access Key to your Event Hub. required: - connection_string description: Credential fields for Microsoft Azure EventHub title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials5 ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials6: type: object properties: cps_topic: type: string description: Topic name of PubSub topic cps_project: type: string description: Project ID of the topic project. required: - cps_topic - cps_project description: Credential fields for Google Cloud Pub/Sub title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestinationCredentials6 ApiV2DataStreamGetResponsesContentApplicationJsonSchemaFiltersItems: type: object properties: field: type: string description: Field to filter on value: type: array items: type: string description: Values to filter on title: ApiV2DataStreamGetResponsesContentApplicationJsonSchemaFiltersItems ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestination: type: object properties: connection_type: type: string format: type: string credentials: $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials' description: Destination credentials required: - connection_type title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestination ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials: oneOf: - $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials0' - $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials1' - $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials2' - $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials3' - $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials4' - $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials5' - $ref: '#/components/schemas/ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials6' description: Destination credentials title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials0: type: object properties: region: type: string description: AWS Region of your Kinesis Data Stream stream_name: type: string description: Name of your Kinesis Data Stream role_arn: type: string description: Role ARN of IAM role with write permission for your Kinesis Stream required: - region - stream_name - role_arn description: Credential fields for Amazon Kinesis Data Streams title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials0 ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials1: type: object properties: region: type: string description: AWS Region of your Kinesis Data Stream bucket_name: type: string description: Name of your S3 bucket role_arn: type: string description: Role ARN of IAM role with write permission for your S3 bucket flush_size: type: integer description: Maximal number of entries in a single file. Default is `10000`. Valid flush sizes are between 10 and 100000. rotate_interval: type: integer description: Maximal time in milliseconds between file writes. Default is `10000` ms. Valid rotation intervals are between 10000 ms and 900000 ms. required: - region - bucket_name - role_arn description: Credential fields for Amazon S3 title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials1 ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials2: type: object properties: url: type: string description: URL of your Webhook / RestAPI endpoint method: type: string description: HTTP Method to use. Options are `POST` (default), `PUT` and `PATCH` headers: type: array items: type: string description: Array containing additional header tuples. Expected Format is `["header1:value1, "header2:value2", ...]`. Headers are masked in GET request. size: type: integer description: Number specifying of request should contain `1` message or an array of messages of the specified batch size. Default is `3000`. Valid sizes are between 1 and 10000. required: - url description: Credential fields for Webhook title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials2 ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials3: type: object properties: project_id: type: string description: Project ID reported by KeenIO write_key: type: string description: Write key of your KeenIO Project. collection_name: type: string description: Collection Name that you want to stream your data to. size: type: integer description: Number specifying of request should contain `1` message or an array of messages of the specified batch size. Default is `3000`. Valid sizes are between 1 and 10000. required: - project_id - write_key - collection_name description: Credential fields for KeenIO title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials3 ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials4: type: object properties: api_key: type: string description: Datadog API Key region: type: string description: Datadog region. Options are `US` (default), `US3`, `EU` and `US1FED` required: - api_key description: Credential fields for Datadog title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials4 ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials5: type: object properties: connection_string: type: string description: Connection string with Access Key to your Event Hub. required: - connection_string description: Credential fields for Microsoft Azure EventHub title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials5 ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials6: type: object properties: cps_topic: type: string description: Topic name of PubSub topic cps_project: type: string description: Project ID of the topic project. required: - cps_topic - cps_project description: Credential fields for Google Cloud Pub/Sub title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaDestinationCredentials6 ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaFiltersItems: type: object properties: field: type: string description: Field to filter on value: type: array items: type: string description: Values to filter on title: ApiV2DataStreamPostRequestBodyContentApplicationJsonSchemaFiltersItems ApiV2DataStreamStatusGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double description: Enum item identifier description: type: string description: Enum item description title: ApiV2DataStreamStatusGetResponsesContentApplicationJsonSchemaItems ApiV2DataStreamTypeGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double description: Enum item identifier description: type: string description: Enum item description title: ApiV2DataStreamTypeGetResponsesContentApplicationJsonSchemaItems ApiV2EndpointEndpointIdTagsGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double name: type: string resource_count: type: number format: double tag_color: $ref: '#/components/schemas/ApiV2EndpointEndpointIdTagsGetResponsesContentApplicationJsonSchemaItemsTagColor' title: ApiV2EndpointEndpointIdTagsGetResponsesContentApplicationJsonSchemaItems ApiV2EndpointEndpointIdTagsGetResponsesContentApplicationJsonSchemaItemsTagColor: type: object properties: id: type: number format: double title: ApiV2EndpointEndpointIdTagsGetResponsesContentApplicationJsonSchemaItemsTagColor ApiV2EndpointMultiDeleteRequestBodyContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double required: - id title: ApiV2EndpointMultiDeleteRequestBodyContentApplicationJsonSchemaItems ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItems: type: object properties: id: type: integer description: The endpoint ID to update name: type: string description: The endpoint name tags: type: string description: Comma-separated tags imei: type: string description: The IMEI number imei_lock: type: boolean description: Whether to lock the endpoint to this IMEI ip_address: type: string description: The IP address to assign ip_address_space: $ref: '#/components/schemas/ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsIpAddressSpace' description: Required when setting ip_address service_profile: $ref: '#/components/schemas/ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsServiceProfile' tariff_profile: $ref: '#/components/schemas/ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsTariffProfile' status: $ref: '#/components/schemas/ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsStatus' description: 'Endpoint status: 0 (Enabled) or 1 (Disabled)' sim: $ref: '#/components/schemas/ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsSim' required: - id title: ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItems ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsIpAddressSpace: type: object properties: id: type: integer description: Required when setting ip_address title: ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsIpAddressSpace ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsServiceProfile: type: object properties: id: type: integer title: ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsServiceProfile ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsSim: type: object properties: id: type: integer description: SIM ID to assign (set to null to unassign) status: $ref: '#/components/schemas/ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsSimStatus' description: 'SIM status: 1 (Activated) or 5 (Factory Test)' title: ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsSim ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsSimStatus: type: object properties: id: type: integer description: 'SIM status: 1 (Activated) or 5 (Factory Test)' title: ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsSimStatus ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsStatus: type: object properties: id: type: integer description: 'Endpoint status: 0 (Enabled) or 1 (Disabled)' title: ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsStatus ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsTariffProfile: type: object properties: id: type: integer title: ApiV2EndpointMultiPatchRequestBodyContentApplicationJsonSchemaItemsTariffProfile ApiV2EndpointMultiPatchResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: error_code: type: number format: double error_token: type: string message: type: string title: ApiV2EndpointMultiPatchResponsesContentApplicationJsonSchemaErrorsItems ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaEndpointsItems: type: object properties: name: type: string tags: type: string imei: type: string description: 'Must be unique across all endpoints in the array. ' imei_lock: type: boolean sim: $ref: '#/components/schemas/ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaEndpointsItemsSim' description: 'If provided for any endpoint, it must include a valid `id` (cannot be empty). ' ip_address: type: string description: 'Must be unique across all endpoints in the array. If provided, you must provide `ip_address_space` at the root level. ' description: 'Each item represents an endpoint to create. ' title: ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaEndpointsItems ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaEndpointsItemsSim: type: object properties: id: type: number format: double description: 'Must be unique across all endpoints in the array. ' activate: type: boolean status: $ref: '#/components/schemas/ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaEndpointsItemsSimStatus' required: - id description: 'If provided for any endpoint, it must include a valid `id` (cannot be empty). ' title: ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaEndpointsItemsSim ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaEndpointsItemsSimStatus: type: object properties: id: type: number format: double required: - id title: ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaEndpointsItemsSimStatus ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaIpAddressSpace: type: object properties: id: type: number format: double required: - id description: 'Required if any endpoint in the `endpoints` array has an `ip_address`. ' title: ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaIpAddressSpace ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaOrganisation: type: object properties: id: type: number format: double required: - id description: 'If provided, it must include a valid `id` (cannot be empty). ' title: ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaOrganisation ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaServiceProfile: type: object properties: id: type: number format: double required: - id description: 'Applies to all endpoints. ' title: ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaServiceProfile ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaStatus: type: object properties: id: type: number format: double required: - id description: 'Applies to all endpoints. ' title: ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaStatus ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaTariffProfile: type: object properties: id: type: number format: double required: - id description: 'Applies to all endpoints. ' title: ApiV2EndpointMultiPostRequestBodyContentApplicationJsonSchemaTariffProfile ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaErrorsItems: type: object properties: error_code: type: number format: double error_token: type: string message: type: string title: ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaErrorsItems ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double ip_address: type: string status: $ref: '#/components/schemas/ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsStatus' name: type: string tags: type: string imei: type: string created: type: string format: date-time last_updated: type: string format: date-time imei_lock: type: boolean service_profile: $ref: '#/components/schemas/ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsServiceProfile' tariff_profile: $ref: '#/components/schemas/ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsTariffProfile' sim: $ref: '#/components/schemas/ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsSim' ip_address_space: $ref: '#/components/schemas/ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsIpAddressSpace' imei_with_luhn: $ref: '#/components/schemas/ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsImeiWithLuhn' required: - id - ip_address - status - name - tags - imei - created - last_updated - imei_lock - service_profile - tariff_profile - sim - ip_address_space - imei_with_luhn title: ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItems ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsImeiWithLuhn: type: object properties: {} title: ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsImeiWithLuhn ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsIpAddressSpace: type: object properties: {} title: ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsIpAddressSpace ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsServiceProfile: type: object properties: id: type: number format: double name: type: string required: - id - name title: ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsServiceProfile ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsSim: type: object properties: {} title: ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsSim ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsStatus: type: object properties: description: type: string required: - description title: ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsStatus ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsTariffProfile: type: object properties: id: type: number format: double name: type: string satellite_capable: type: boolean required: - id - name - satellite_capable title: ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaItemsTariffProfile ApiV2TagColorsGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: number format: double hex_color: type: string description: type: string title: ApiV2TagColorsGetResponsesContentApplicationJsonSchemaItems ApiV2TagsGetResponsesContentApplicationJsonSchemaDataItems: type: object properties: id: type: number format: double name: type: string resource_count: type: number format: double tag_color: $ref: '#/components/schemas/ApiV2TagsGetResponsesContentApplicationJsonSchemaDataItemsTagColor' title: ApiV2TagsGetResponsesContentApplicationJsonSchemaDataItems ApiV2TagsGetResponsesContentApplicationJsonSchemaDataItemsTagColor: type: object properties: id: type: number format: double title: ApiV2TagsGetResponsesContentApplicationJsonSchemaDataItemsTagColor ApiV2TagsPostRequestBodyContentApplicationJsonSchemaColor: type: object properties: id: type: number format: double required: - id title: ApiV2TagsPostRequestBodyContentApplicationJsonSchemaColor ApiV2TagsPostResponsesContentApplicationJsonSchemaTagColor: type: object properties: id: type: number format: double required: - id title: ApiV2TagsPostResponsesContentApplicationJsonSchemaTagColor ApiV2TagsTagIdPatchRequestBodyContentApplicationJsonSchemaColor: type: object properties: id: type: number format: double required: - id title: ApiV2TagsTagIdPatchRequestBodyContentApplicationJsonSchemaColor ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaBlocklist: type: object properties: operator: type: boolean description: Will return true if the operator is blocked completely rat_types: type: array items: $ref: '#/components/schemas/ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaBlocklistRatTypesItems' title: ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaBlocklist ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaBlocklistRatTypesItems: type: object properties: id: type: integer description: type: string title: ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaBlocklistRatTypesItems ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaOperator: type: object properties: id: type: integer name: type: string title: ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaOperator ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaTariffProfile: type: object properties: id: type: integer title: ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaTariffProfile ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaBlocklist: type: object properties: operator: type: boolean description: Will return true if the operator is blocked completely rat_types: type: array items: $ref: '#/components/schemas/ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaBlocklistRatTypesItems' title: ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaBlocklist ? ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaBlocklistRatTypesItems : type: object properties: id: type: integer description: type: string title: ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaBlocklistRatTypesItems ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaOperator: type: object properties: id: type: integer name: type: string title: ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaOperator ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaTariffProfile: type: object properties: id: type: integer title: ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaTariffProfile ? ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdRatTypePostRequestBodyContentApplicationJsonSchemaRatTypesItems : type: object properties: id: type: integer title: ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdRatTypePostRequestBodyContentApplicationJsonSchemaRatTypesItems ApiV2UserInvitationPostRequestBodyContentApplicationJsonSchemaOrganisation: type: object properties: id: type: integer title: ApiV2UserInvitationPostRequestBodyContentApplicationJsonSchemaOrganisation ApiV2UserInvitationPostRequestBodyContentApplicationJsonSchemaRolesItems: type: object properties: id: type: integer title: ApiV2UserInvitationPostRequestBodyContentApplicationJsonSchemaRolesItems ApiV2UserInvitationPostResponsesContentApplicationJsonSchemaOrganisation: type: object properties: id: type: number format: double title: ApiV2UserInvitationPostResponsesContentApplicationJsonSchemaOrganisation ApiV2UserInvitationPostResponsesContentApplicationJsonSchemaRolesItems: type: object properties: id: type: number format: double name: type: string title: ApiV2UserInvitationPostResponsesContentApplicationJsonSchemaRolesItems ApiV2UserUserIdSupportTokenPostRequestBodyContentApplicationJsonSchemaRole: type: string enum: - '1' - '3' title: ApiV2UserUserIdSupportTokenPostRequestBodyContentApplicationJsonSchemaRole ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItems: type: object properties: id: type: integer name: type: string status: $ref: '#/components/schemas/ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItemsStatus' roles: type: array items: $ref: '#/components/schemas/ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItemsRolesItems' owner: type: boolean default_workspace: type: boolean required: - id - name - status - roles title: ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItems ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItemsRolesItems: type: object properties: id: type: integer name: type: string title: ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItemsRolesItems ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItemsStatus: type: object properties: status: $ref: '#/components/schemas/ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItemsStatusStatus' required: - status title: ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItemsStatus ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItemsStatusStatus: type: object properties: id: type: integer title: ApiV2UserUserIdWorkspaceGetResponsesContentApplicationJsonSchemaItemsStatusStatus ApiV2UserUserIdWorkspaceWorkspaceIdPatchRequestBodyContentApplicationJsonSchemaStatus: type: object properties: id: type: integer title: ApiV2UserUserIdWorkspaceWorkspaceIdPatchRequestBodyContentApplicationJsonSchemaStatus ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItems: type: object properties: date: type: string format: date sms_volume: $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSmsVolume' data_volume: $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsDataVolume' sat_geo_data_volume: $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoDataVolume' sat_geo_sms_volume: $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoSmsVolume' title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItems ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsDataVolume: type: object properties: volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double cost: type: - number - 'null' format: double traffic_type: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsDataVolumeTrafficType' - type: 'null' currency: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsDataVolumeCurrency' - type: 'null' title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsDataVolume ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsDataVolumeCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsDataVolumeCurrency ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsDataVolumeTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsDataVolumeTrafficType ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoDataVolume: type: object properties: volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double cost: type: - number - 'null' format: double traffic_type: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoDataVolumeTrafficType' - type: 'null' currency: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoDataVolumeCurrency' - type: 'null' title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoDataVolume ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoDataVolumeCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoDataVolumeCurrency ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoDataVolumeTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoDataVolumeTrafficType ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoSmsVolume: type: object properties: volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double cost: type: - number - 'null' format: double traffic_type: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoSmsVolumeTrafficType' - type: 'null' currency: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoSmsVolumeCurrency' - type: 'null' title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoSmsVolume ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoSmsVolumeCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoSmsVolumeCurrency ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoSmsVolumeTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSatGeoSmsVolumeTrafficType ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSmsVolume: type: object properties: volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double cost: type: - number - 'null' format: double traffic_type: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSmsVolumeTrafficType' - type: 'null' currency: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSmsVolumeCurrency' - type: 'null' title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSmsVolume ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSmsVolumeCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSmsVolumeCurrency ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSmsVolumeTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItemsSmsVolumeTrafficType ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotal: type: object properties: data_volume: $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalDataVolume' sms_volume: $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSmsVolume' sat_geo_data_volume: $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoDataVolume' sat_geo_sms_volume: $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoSmsVolume' required: - data_volume - sms_volume title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotal ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalDataVolume: type: object properties: volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double cost: type: - number - 'null' format: double traffic_type: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalDataVolumeTrafficType' - type: 'null' currency: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalDataVolumeCurrency' - type: 'null' title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalDataVolume ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalDataVolumeCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalDataVolumeCurrency ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalDataVolumeTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalDataVolumeTrafficType ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoDataVolume: type: object properties: volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double cost: type: - number - 'null' format: double traffic_type: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoDataVolumeTrafficType' - type: 'null' currency: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoDataVolumeCurrency' - type: 'null' title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoDataVolume ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoDataVolumeCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoDataVolumeCurrency ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoDataVolumeTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoDataVolumeTrafficType ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoSmsVolume: type: object properties: volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double cost: type: - number - 'null' format: double traffic_type: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoSmsVolumeTrafficType' - type: 'null' currency: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoSmsVolumeCurrency' - type: 'null' title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoSmsVolume ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoSmsVolumeCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoSmsVolumeCurrency ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoSmsVolumeTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSatGeoSmsVolumeTrafficType ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSmsVolume: type: object properties: volume: type: number format: double volume_tx: type: number format: double volume_rx: type: number format: double cost: type: - number - 'null' format: double traffic_type: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSmsVolumeTrafficType' - type: 'null' currency: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSmsVolumeCurrency' - type: 'null' title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSmsVolume ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSmsVolumeCurrency: type: object properties: code: type: string symbol: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSmsVolumeCurrency ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSmsVolumeTrafficType: type: object properties: description: type: string unit: type: string id: type: number format: double title: ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotalSmsVolumeTrafficType Application tokens_ApplicationTokenPost_Response_200: type: object properties: application_token: type: string title: Application tokens_ApplicationTokenPost_Response_200 ApplicationTokenPostRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: ApplicationTokenPostRequestUnprocessableEntityError AssignTagToEndpointRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: AssignTagToEndpointRequestBadRequestError AssignTagToEndpointRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: AssignTagToEndpointRequestConflictError AssignTagToEndpointRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: AssignTagToEndpointRequestUnprocessableEntityError AssignTagToEndpointsInBulkRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: AssignTagToEndpointsInBulkRequestBadRequestError AssignTagToEndpointsInBulkRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: AssignTagToEndpointsInBulkRequestConflictError AssignTagToEndpointsInBulkRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: AssignTagToEndpointsInBulkRequestUnprocessableEntityError AuthenticateRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: AuthenticateRequestNotFoundError AuthenticateRequestUnauthorizedError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: AuthenticateRequestUnauthorizedError Authentication_Authenticate_Response_200: type: object properties: auth_token: type: string description: JWT authentication token (returned for successful authentication) refresh_token: type: string description: Refresh token (returned with `auth_token` for user credentials auth) mfa_token: type: string description: MFA token (returned instead of `auth_token` when MFA is enabled and device isn't trusted) title: Authentication_Authenticate_Response_200 Authentication_postMfa_Response_200: type: object properties: id: type: number format: double status: $ref: '#/components/schemas/ApiV1UserMfaPostResponsesContentApplicationJsonSchemaStatus' type: $ref: '#/components/schemas/ApiV1UserMfaPostResponsesContentApplicationJsonSchemaType' secret_key: type: string otpauth: type: string creation_date: type: string title: Authentication_postMfa_Response_200 AutomationActionLogOutputDto: type: object properties: automation: $ref: '#/components/schemas/WithUuidInputDto' action: $ref: '#/components/schemas/WithUuidInputDto' message: type: string status: type: string event: $ref: '#/components/schemas/WithStringIdInputDto' smart_event: $ref: '#/components/schemas/WithUuidInputDto' created_at: type: string automation_execution_number: type: number format: double organisation: $ref: '#/components/schemas/WithIdInputDto' id: type: string required: - automation - action - message - status - event - smart_event - created_at - automation_execution_number - organisation - id title: AutomationActionLogOutputDto AutomationActionOutputDto: type: object properties: id: type: string status: type: string type: type: string configurationProperties: type: array items: type: string name: type: string translationKeyName: type: string description: type: string translationKeyDescription: type: string requiredEventOutputParameters: type: array items: type: string required: - id - status - type - configurationProperties - name - translationKeyName - description - translationKeyDescription - requiredEventOutputParameters title: AutomationActionOutputDto AutomationCreateDto: type: object properties: name: type: string description: type: string status: type: string actionable_event: $ref: '#/components/schemas/ActionableEventCreateDto' configured_actions: type: array items: $ref: '#/components/schemas/ConfiguredActionCreateDto' targeting_properties: type: array items: $ref: '#/components/schemas/ConfigurationInputPropertiesDto' required: - name - description - status - actionable_event - configured_actions - targeting_properties title: AutomationCreateDto AutomationOutputDto: type: object properties: id: type: string name: type: string description: type: string status: type: string organisation: $ref: '#/components/schemas/WithIdInputDto' number_of_executions: type: number format: double last_execution: type: string created_at: type: string modified_at: type: string actionable_event: $ref: '#/components/schemas/ActionableEventOutputDto' configured_actions: type: array items: $ref: '#/components/schemas/ConfiguredActionOutputDto' targeting_properties: type: array items: $ref: '#/components/schemas/ConfigurationInputPropertiesDto' required: - id - name - description - status - organisation - number_of_executions - last_execution - created_at - modified_at - actionable_event - configured_actions - targeting_properties title: AutomationOutputDto AutomationRecipientEmailVerificationInputDto: type: object properties: token: type: string required: - token title: AutomationRecipientEmailVerificationInputDto AutomationUpdateDto: type: object properties: name: type: string description: type: string status: type: string configured_actions: type: array items: $ref: '#/components/schemas/ConfiguredActionCreateDto' targeting_properties: type: array items: $ref: '#/components/schemas/ConfigurationInputPropertiesDto' required: - name - description - status - configured_actions - targeting_properties title: AutomationUpdateDto Automations_verifyAutomationRecipientEmail_Response_200: type: object properties: {} description: Empty response body title: Automations_verifyAutomationRecipientEmail_Response_200 BulkCreateEndpointRequestUnprocessableEntityError: type: object properties: message: type: string error_code: type: number format: double error_token: type: string errors: type: array items: $ref: '#/components/schemas/ApiV2EndpointMultiPostResponsesContentApplicationJsonSchemaErrorsItems' required: - message - error_code - error_token - errors title: BulkCreateEndpointRequestUnprocessableEntityError BulkUpdateEndpointRequestUnprocessableEntityError: type: object properties: message: type: string error_code: type: number format: double error_token: type: string errors: type: array items: $ref: '#/components/schemas/ApiV2EndpointMultiPatchResponsesContentApplicationJsonSchemaErrorsItems' required: - message - error_code - error_token - errors title: BulkUpdateEndpointRequestUnprocessableEntityError Cloud Connect_CreateCloudConnectAttachmentTGW_Response_201: type: object properties: {} description: Empty response body title: Cloud Connect_CreateCloudConnectAttachmentTGW_Response_201 Cloud Connect_CreateCloudConnectAttachmentVPN_Response_201: type: object properties: {} description: Empty response body title: Cloud Connect_CreateCloudConnectAttachmentVPN_Response_201 Cloud Connect_DeleteCloudConnectAttachment_Response_200: type: object properties: {} description: Empty response body title: Cloud Connect_DeleteCloudConnectAttachment_Response_200 Cloud Connect_RetryCloudConnectAttachment_Response_200: type: object properties: {} description: Empty response body title: Cloud Connect_RetryCloudConnectAttachment_Response_200 CommonValidity: type: integer default: 86400 description: Seconds until expiry title: CommonValidity ConfigurationInputPropertiesDto: type: object properties: property: type: string value: type: string value_array: type: array items: type: string required: - property - value - value_array title: ConfigurationInputPropertiesDto ConfigurationParameterDto: type: object properties: parameter: type: string type: type: string description: type: string required: - parameter - type - description title: ConfigurationParameterDto ConfigurationPropertiesDto: type: object properties: property: type: string type: type: string default: type: string required: type: boolean description: type: string validators: type: array items: $ref: '#/components/schemas/ValidatorDto' required: - property - type - default - required - description - validators title: ConfigurationPropertiesDto ConfiguredActionCreateDto: type: object properties: action: $ref: '#/components/schemas/ConfiguredActionReferenceDto' properties: type: array items: $ref: '#/components/schemas/ConfigurationInputPropertiesDto' required: - action - properties title: ConfiguredActionCreateDto ConfiguredActionOutputDto: type: object properties: action: $ref: '#/components/schemas/WithUuidInputDto' properties: type: array items: $ref: '#/components/schemas/ConfigurationInputPropertiesDto' recipients: $ref: '#/components/schemas/ConfiguredActionRecipientOutputDto' description: 'Details of the email notification recipients configured for the action. ' required: - action - properties - recipients title: ConfiguredActionOutputDto ConfiguredActionRecipientOutputDto: type: object properties: email: type: array items: type: string required: - email title: ConfiguredActionRecipientOutputDto ConfiguredActionReferenceDto: type: object properties: id: type: string type: type: string required: - id title: ConfiguredActionReferenceDto CreateDataStreamerRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string required: - error_code - error_token - message title: CreateDataStreamerRequestUnprocessableEntityError CreateEndpointRequestUnprocessableEntityError: type: object properties: status_code: type: integer description: HTTP status code. message: type: string description: Error summary. error_code: type: integer description: Application-specific error code. error_token: type: string description: Error type identifier. errors: type: array items: $ref: '#/components/schemas/ApiV1EndpointPostResponsesContentApplicationJsonSchemaErrorsItems' description: List of validation errors. required: - message - error_code - error_token - errors title: CreateEndpointRequestUnprocessableEntityError CreateTagRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: CreateTagRequestBadRequestError CreateTagRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: CreateTagRequestConflictError CreateTagRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: CreateTagRequestUnprocessableEntityError Custom Events_deleteCustomEvent_Response_200: type: object properties: {} description: Empty response body title: Custom Events_deleteCustomEvent_Response_200 CustomEventCreateDto: type: object properties: organisation: $ref: '#/components/schemas/WithIdInputDto' template: $ref: '#/components/schemas/WithIdInputDto' configuration_properties: type: array items: $ref: '#/components/schemas/ConfigurationInputPropertiesDto' name: type: string required: - organisation - template - configuration_properties - name title: CustomEventCreateDto CustomEventOutputDto: type: object properties: organisation: $ref: '#/components/schemas/WithIdInputDto' template: $ref: '#/components/schemas/WithIdInputDto' configuration_properties: type: array items: $ref: '#/components/schemas/ConfigurationInputPropertiesDto' name: type: string id: type: string supportedTargetingParameters: type: array items: type: string supportedActions: type: array items: type: string required: - organisation - template - configuration_properties - name - id - supportedTargetingParameters - supportedActions title: CustomEventOutputDto CustomEventTemplateOutputDto: type: object properties: id: type: string parent_organisation: $ref: '#/components/schemas/WithIdInputDto' name: type: string translationKeyName: type: string status: type: string description: type: string translationKeyDescription: type: string configuration_properties: type: array items: $ref: '#/components/schemas/ConfigurationPropertiesDto' supported_targeting_parameters: type: array items: $ref: '#/components/schemas/SupportedTargetingParametersDto' required: - id - parent_organisation - name - translationKeyName - status - description - translationKeyDescription - configuration_properties - supported_targeting_parameters title: CustomEventTemplateOutputDto DeleteTagsInBulkRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: DeleteTagsInBulkRequestBadRequestError DeleteTagsInBulkRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: DeleteTagsInBulkRequestUnprocessableEntityError Eid: type: string title: Eid Endpoint: type: object properties: id: type: integer name: type: string title: Endpoint EndpointByIdPatchRequestUnprocessableEntityError: type: object properties: message: type: string error_code: type: number format: double error_token: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1EndpointEndpointIdPatchResponsesContentApplicationJsonSchemaErrorsItems' required: - message - error_code - error_token - errors title: EndpointByIdPatchRequestUnprocessableEntityError EndpointGetConnectivityInfoByEndpointIdResponse2000: type: object properties: subscriber_info: $ref: '#/components/schemas/ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf0SubscriberInfo' request_timestamp: type: string format: date-time reply_timestamp: type: string format: date-time title: EndpointGetConnectivityInfoByEndpointIdResponse2000 EndpointGetConnectivityInfoByEndpointIdResponse2001: type: object properties: request_timestamp: type: string format: date-time reply_timestamp: type: string format: date-time title: EndpointGetConnectivityInfoByEndpointIdResponse2001 EndpointGetConnectivityInfoByEndpointIdResponse2002: type: object properties: subscriber_info: $ref: '#/components/schemas/ApiV1EndpointEndpointIdConnectivityInfoGetResponsesContentApplicationJsonSchemaOneOf2SubscriberInfo' request_timestamp: type: string format: date-time reply_timestamp: type: string format: date-time title: EndpointGetConnectivityInfoByEndpointIdResponse2002 EndpointOperatorBlacklistByEpIdAndOperatorIdDeleteRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: EndpointOperatorBlacklistByEpIdAndOperatorIdDeleteRequestNotFoundError EndpointOperatorBlacklistByEpIdAndOperatorIdPutRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: EndpointOperatorBlacklistByEpIdAndOperatorIdPutRequestConflictError EndpointQuotaDataByEndpointIdPostRequestUnprocessableEntityError: type: object properties: message: type: string title: EndpointQuotaDataByEndpointIdPostRequestUnprocessableEntityError Endpoint_CreateEndpointTrafficLimitExtension_Response_201: type: object properties: id: type: number format: double endpoint_id: type: number format: double traffic_limit_id: type: number format: double volume: type: number format: double expiration_date: type: string format: date-time created_at: type: string format: date-time required: - id - endpoint_id - traffic_limit_id - volume - expiration_date - created_at title: Endpoint_CreateEndpointTrafficLimitExtension_Response_201 Endpoint_CreateEndpoint_Response_201: type: object properties: id: type: integer description: Unique identifier for the endpoint. ip_address: type: string description: Private IP address assigned to this endpoint. status: $ref: '#/components/schemas/ApiV1EndpointPostResponsesContentApplicationJsonSchemaStatus' description: Endpoint connectivity status. name: type: string description: Display name for the endpoint. tags: type: - string - 'null' description: Comma-separated list of tags. imei: type: - string - 'null' description: IMEI with Software Version Number (IMEISV) (16 digits). created: type: string format: date-time description: Date and time when the endpoint was created (ISO 8601 format). last_updated: type: string format: date-time description: Date and time when the endpoint was last modified (ISO 8601 format). imei_lock: type: boolean description: If `true`, this endpoint only allows connections from the device with the specified IMEI. service_profile: $ref: '#/components/schemas/ApiV1EndpointPostResponsesContentApplicationJsonSchemaServiceProfile' description: Service profile assigned to this endpoint. tariff_profile: $ref: '#/components/schemas/ApiV1EndpointPostResponsesContentApplicationJsonSchemaTariffProfile' description: Tariff profile assigned to this endpoint. sim: oneOf: - $ref: '#/components/schemas/ApiV1EndpointPostResponsesContentApplicationJsonSchemaSim' - type: 'null' description: 'SIM card assigned to this endpoint. `null` if no SIM is assigned. ' ip_address_space: $ref: '#/components/schemas/ApiV1EndpointPostResponsesContentApplicationJsonSchemaIpAddressSpace' description: IP address space containing this endpoint's private IP address. imei_with_luhn: type: - string - 'null' description: IMEI with Luhn checksum digit, without Software Version Number (15 digits). required: - id - ip_address - status - name - tags - imei - created - last_updated - imei_lock - service_profile - tariff_profile - sim - ip_address_space - imei_with_luhn title: Endpoint_CreateEndpoint_Response_201 Endpoint_EndpointByIdGet_Response_200: type: object properties: id: type: integer name: type: string tags: type: string created: type: string format: date-time last_updated: type: string format: date-time status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaStatus' service_profile: $ref: '#/components/schemas/ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaServiceProfile' tariff_profile: $ref: '#/components/schemas/ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaTariffProfile' ip_address: type: string ip_address_space: $ref: '#/components/schemas/ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaIpAddressSpace' sim: $ref: '#/components/schemas/ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaSim' imei: type: string imei_lock: type: boolean runtime_data: $ref: '#/components/schemas/ApiV1EndpointEndpointIdGetResponsesContentApplicationJsonSchemaRuntimeData' required: - status - service_profile - tariff_profile title: Endpoint_EndpointByIdGet_Response_200 Endpoint_EndpointConnectivityByIdGet_Response_200: type: object properties: status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdConnectivityGetResponsesContentApplicationJsonSchemaStatus' location: $ref: '#/components/schemas/ApiV1EndpointEndpointIdConnectivityGetResponsesContentApplicationJsonSchemaLocation' pdp_context: $ref: '#/components/schemas/ApiV1EndpointEndpointIdConnectivityGetResponsesContentApplicationJsonSchemaPdpContext' services: type: array items: type: string title: Endpoint_EndpointConnectivityByIdGet_Response_200 Endpoint_EndpointQuotaDataByEndpointIdGet_Response_200: type: object properties: last_volume_added: type: number format: double last_status_change_date: type: string auto_refill: type: integer threshold_volume: type: number format: double threshold_percentage: type: number format: double status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaStatus' volume: type: number format: double expiry_date: type: string action_on_exhaustion: $ref: '#/components/schemas/ApiV1EndpointEndpointIdQuotaDataGetResponsesContentApplicationJsonSchemaActionOnExhaustion' required: - status - volume - expiry_date - action_on_exhaustion title: Endpoint_EndpointQuotaDataByEndpointIdGet_Response_200 Endpoint_EndpointQuotaDataByEndpointIdPost_Response_201: type: object properties: {} description: Empty response body title: Endpoint_EndpointQuotaDataByEndpointIdPost_Response_201 Endpoint_EndpointQuotaSmsByEndpointIdPost_Response_201: type: object properties: {} description: Empty response body title: Endpoint_EndpointQuotaSmsByEndpointIdPost_Response_201 Endpoint_EndpointSmsByEndpointIdAndSmsIdDelete_Response_200: type: object properties: {} description: Empty response body title: Endpoint_EndpointSmsByEndpointIdAndSmsIdDelete_Response_200 Endpoint_EndpointSmsByEndpointIdAndSmsIdGet_Response_200: type: object properties: submit_date: type: string delivery_date: type: string expiry_date: type: string final_date: type: string retry_date: type: - string - 'null' last_delivery_attempt: type: string retry_count: type: integer gsm_map_error: type: string dcs: type: integer pid: type: integer source_address: type: string endpoint: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaEndpoint' sim_id: type: string iccid: type: string msisdn: type: string imsi: type: string msc: type: string udh: type: string payload: type: string id: type: integer status: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaStatus' sms_type: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaSmsType' source_address_type: $ref: '#/components/schemas/ApiV1EndpointEndpointIdSmsSmsIdGetResponsesContentApplicationJsonSchemaSourceAddressType' title: Endpoint_EndpointSmsByEndpointIdAndSmsIdGet_Response_200 Endpoint_EndpointSmsByIdPost_Response_201: type: object properties: {} description: Empty response body title: Endpoint_EndpointSmsByIdPost_Response_201 Endpoint_EndpointStatsByIdGet_Response_200: type: object properties: last_month: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsGetResponsesContentApplicationJsonSchemaLastMonth' current_month: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsGetResponsesContentApplicationJsonSchemaCurrentMonth' last_hour: $ref: '#/components/schemas/ApiV1EndpointEndpointIdStatsGetResponsesContentApplicationJsonSchemaLastHour' title: Endpoint_EndpointStatsByIdGet_Response_200 Endpoint_GetConnectivityInfoByEndpointId_Response_200: oneOf: - $ref: '#/components/schemas/EndpointGetConnectivityInfoByEndpointIdResponse2000' - $ref: '#/components/schemas/EndpointGetConnectivityInfoByEndpointIdResponse2001' - $ref: '#/components/schemas/EndpointGetConnectivityInfoByEndpointIdResponse2002' title: Endpoint_GetConnectivityInfoByEndpointId_Response_200 Error: type: object properties: status_code: type: integer message: type: string required: - status_code - message title: Error ErrorResponse: type: object properties: reason: type: integer message: type: string required: - reason - message title: ErrorResponse Euicc: type: object properties: id: type: integer eid: $ref: '#/components/schemas/Eid' created: type: string format: date-time issuer_org: $ref: '#/components/schemas/Organisation' customer_org: $ref: '#/components/schemas/Organisation' supported_profile_type: $ref: '#/components/schemas/EuiccSupportedProfileType' status: $ref: '#/components/schemas/Status' last_audited: type: - string - 'null' format: date-time last_polled: type: - string - 'null' format: date-time last_synced: type: - string - 'null' format: date-time eim: $ref: '#/components/schemas/EuiccEim' profile: type: array items: $ref: '#/components/schemas/Profile' required: - id - eid - created - profile title: Euicc EuiccEim: type: object properties: id: type: integer description: type: string title: EuiccEim EuiccOperation: type: object properties: id: type: string format: uuid action: $ref: '#/components/schemas/OperationAction' status: $ref: '#/components/schemas/OperationStatus' creation_date: type: string format: date-time expiry_date: type: string format: date-time finalization_date: type: string format: date-time last_updated_at: type: string format: date-time user: $ref: '#/components/schemas/UserResponse' error: $ref: '#/components/schemas/ErrorResponse' iccid_with_luhn: $ref: '#/components/schemas/IccidWithLuhnRef' required: - id - action - status - creation_date - last_updated_at - user title: EuiccOperation EuiccOperationActionRef: type: object properties: id: type: integer required: - id title: EuiccOperationActionRef EuiccOperationRequest: type: object properties: action: $ref: '#/components/schemas/EuiccOperationActionRef' validity_period: $ref: '#/components/schemas/CommonValidity' default: 86400 iccid_with_luhn: $ref: '#/components/schemas/IccidWithLuhnRef' activation_code: type: string description: Activation code enable: type: boolean description: Flag whether downloaded profile should be enabled rollback: type: boolean description: Flag whether rollback mechanism should be triggered required: - action title: EuiccOperationRequest EuiccOperationRequestList: type: array items: $ref: '#/components/schemas/EuiccOperationRequest' title: EuiccOperationRequestList EuiccSupportedProfileType: type: object properties: id: type: integer description: type: string title: EuiccSupportedProfileType EuiccUnlinkedValidationRequest: type: object properties: target: type: array items: $ref: '#/components/schemas/EuiccUnlinkedValidationRequestTargetItems' required: - target title: EuiccUnlinkedValidationRequest EuiccUnlinkedValidationRequestTargetItems: type: object properties: eid: $ref: '#/components/schemas/Eid' required: - eid title: EuiccUnlinkedValidationRequestTargetItems EuiccUnlinkedValidationResponse: type: array items: $ref: '#/components/schemas/EuiccUnlinkedValidationResponseItems' title: EuiccUnlinkedValidationResponse EuiccUnlinkedValidationResponseItems: type: object properties: eid: $ref: '#/components/schemas/Eid' required: - eid title: EuiccUnlinkedValidationResponseItems GetConnectivityInfoByEndpointIdRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: GetConnectivityInfoByEndpointIdRequestNotFoundError IP Address Spaces_IpAddressSpacePost_Response_201: type: object properties: id: type: integer ip_address_space: type: string ip_address_version: type: integer title: IP Address Spaces_IpAddressSpacePost_Response_201 IccidWithLuhnRef: type: string description: Full ICCID including the Luhn check digit title: IccidWithLuhnRef IdName: type: object properties: id: type: integer name: type: string title: IdName Integrations_CreateCallbackSecret_Response_201: type: object properties: {} description: Empty response body title: Integrations_CreateCallbackSecret_Response_201 Integrations_CreateCallbackURL_Response_201: type: object properties: {} description: Empty response body title: Integrations_CreateCallbackURL_Response_201 Integrations_CreateDataStreamer_Response_201: type: object properties: {} description: Empty response body title: Integrations_CreateDataStreamer_Response_201 Integrations_DataStreamerV2ByIdRestart_Response_202: type: object properties: {} description: Empty response body title: Integrations_DataStreamerV2ByIdRestart_Response_202 Integrations_DeleteCallbackSecret_Response_200: type: object properties: {} description: Empty response body title: Integrations_DeleteCallbackSecret_Response_200 Integrations_DeleteCallbackURL_Response_200: type: object properties: {} description: Empty response body title: Integrations_DeleteCallbackURL_Response_200 Integrations_DeleteDataStreamerV2_Response_202: type: object properties: {} description: Empty response body title: Integrations_DeleteDataStreamerV2_Response_202 Integrations_GetCallbackSecretbyID_Response_200: type: object properties: organisation_id: type: string purpose: type: string id: type: integer title: Integrations_GetCallbackSecretbyID_Response_200 Integrations_GetDataStreamerByIdV2_Response_200: type: object properties: name: type: string description: Descriptive name or purpose of the data stream destination: $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaDestination' filters: type: array items: $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaFiltersItems' data_stream_type: description: Any type relation_resolution: description: Any type status: $ref: '#/components/schemas/ApiV2DataStreamDataStreamIdGetResponsesContentApplicationJsonSchemaStatus' description: Description of the status title: Integrations_GetDataStreamerByIdV2_Response_200 Integrations_ListDataStreamerV2s_Response_200: type: object properties: name: type: string description: Descriptive name or purpose of the data stream destination: $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaDestination' filters: type: array items: $ref: '#/components/schemas/ApiV2DataStreamGetResponsesContentApplicationJsonSchemaFiltersItems' data_stream_type: description: Any type relation_resolution: description: Any type status: description: Any type title: Integrations_ListDataStreamerV2s_Response_200 Integrations_PatchV2DataStream_Response_202: type: object properties: {} description: Empty response body title: Integrations_PatchV2DataStream_Response_202 IpAddressSpaceByIdDeleteRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: IpAddressSpaceByIdDeleteRequestConflictError IpAddressSpaceByIdDeleteRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: IpAddressSpaceByIdDeleteRequestNotFoundError IpAddressSpaceByIdPutRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: IpAddressSpaceByIdPutRequestConflictError IpAddressSpaceByIdPutRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: IpAddressSpaceByIdPutRequestNotFoundError IpAddressSpacePostRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1IpAddressSpacePostResponsesContentApplicationJsonSchemaErrorsItems' description: sub error descriptions required: - error_token - message title: IpAddressSpacePostRequestBadRequestError IpAddressSpacePostRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1IpAddressSpacePostResponsesContentApplicationJsonSchemaErrorsItems' description: sub error descriptions required: - error_token - message title: IpAddressSpacePostRequestConflictError IpAddressSpacePostRequestForbiddenError: type: object properties: error_code: type: integer error_token: type: string message: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1IpAddressSpacePostResponsesContentApplicationJsonSchemaErrorsItems' description: sub error descriptions required: - error_token - message title: IpAddressSpacePostRequestForbiddenError IpAddressSpacePostRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1IpAddressSpacePostResponsesContentApplicationJsonSchemaErrorsItems' description: sub error descriptions required: - error_token - message title: IpAddressSpacePostRequestNotFoundError IpAddressSpacePostRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1IpAddressSpacePostResponsesContentApplicationJsonSchemaErrorsItems' description: sub error descriptions required: - error_token - message title: IpAddressSpacePostRequestUnprocessableEntityError ListEndpointTagsRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: ListEndpointTagsRequestBadRequestError ListTagsRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: ListTagsRequestBadRequestError OperationAction: type: object properties: id: type: integer description: type: string required: - id - description title: OperationAction OperationStatus: type: object properties: id: type: integer description: type: string required: - id - description title: OperationStatus Organisation: type: object properties: id: type: integer name: type: string title: Organisation Organization_AssignRatezoneInclusiveVolume_Response_201: type: object properties: id: type: integer start_date: type: string format: date-time end_date: type: string format: date-time pooled: type: boolean title: Organization_AssignRatezoneInclusiveVolume_Response_201 Organization_GetOrganisationHourlyStats_Response_200: type: object properties: data: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsHourlyGetResponsesContentApplicationJsonSchemaData' sms: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsHourlyGetResponsesContentApplicationJsonSchemaSms' title: Organization_GetOrganisationHourlyStats_Response_200 Organization_GetOrganisationMonthlyStats_Response_200: type: object properties: current_month: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaCurrentMonth' last_month: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaLastMonth' sim: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaSim' description: 'Amount of SIMs per SIM status where the selected organisation is either the customer organisation or the issuer organisation ' service_profiles: type: number format: double description: Amount of service profiles tariff_profiles: type: number format: double description: Amount of service profiles users: type: number format: double description: Amount of users active_chargeable_sims: type: number format: double description: 'Amount of active SIMs that will be charged within the current month. This field is omitted if there are no chargeable SIMs. ' hosting_fees: type: number format: double description: Total of SIM hosting fees for all `active_chargeable_sims`. This field is omitted if there are no chargeable SIMs. inclusive_volume: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaInclusiveVolume' prepaid_balance: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyStatsGetResponsesContentApplicationJsonSchemaPrepaidBalance' title: Organization_GetOrganisationMonthlyStats_Response_200 Organization_MyOrganisationGet_Response_200: type: object properties: name: type: string organisation_type_id: type: string country_id: type: string organisation_status_id: type: string ext_reference: type: string monthly_cost_limit: type: - string - 'null' currency_id: type: integer organisation_class_id: type: integer created: type: string format: date-time verification_type_id: type: - string - 'null' verification: type: string brand_id: type: string default_sms_routing_id: type: - string - 'null' id: type: integer title: Organization_MyOrganisationGet_Response_200 Organization_UpdateOrganisationTariff_Response_200: type: object properties: {} description: Empty response body title: Organization_UpdateOrganisationTariff_Response_200 Password Management and Activation_UserV2Invitation_Response_201: type: object properties: id: type: number format: double username: type: string name: type: string organisation: $ref: '#/components/schemas/ApiV2UserInvitationPostResponsesContentApplicationJsonSchemaOrganisation' roles: type: array items: $ref: '#/components/schemas/ApiV2UserInvitationPostResponsesContentApplicationJsonSchemaRolesItems' title: Password Management and Activation_UserV2Invitation_Response_201 PostMfaRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: PostMfaRequestConflictError PostMfaRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1UserMfaPostResponsesContentApplicationJsonSchemaErrorsItems' title: PostMfaRequestUnprocessableEntityError ProductRef: type: object properties: id: type: integer required: - id title: ProductRef Profile: type: object properties: iccid_with_luhn: $ref: '#/components/schemas/IccidWithLuhnRef' status: $ref: '#/components/schemas/ProfileStatus' customer_org: oneOf: - $ref: '#/components/schemas/Organisation' - type: 'null' name: type: - string - 'null' operator: oneOf: - $ref: '#/components/schemas/IdName' - type: 'null' preloaded: type: - boolean - 'null' fallback_allowed: type: - boolean - 'null' fallback_attribute: type: - boolean - 'null' profile_type: oneOf: - $ref: '#/components/schemas/ProfileProfileType' - type: 'null' endpoint: oneOf: - $ref: '#/components/schemas/Endpoint' - type: 'null' required: - iccid_with_luhn title: Profile ProfileProfileType: type: object properties: id: type: integer description: type: string title: ProfileProfileType ProfileStatus: type: object properties: id: type: integer description: type: string title: ProfileStatus SIM_RegisterSIMBatchByBIC_Response_200: type: object properties: sim: type: array items: $ref: '#/components/schemas/ApiV1SimBatchBicBicPatchResponsesContentApplicationJsonSchemaSimItems' title: SIM_RegisterSIMBatchByBIC_Response_200 SIM_SimByIdGet_Response_200: type: object properties: id: type: integer iccid: type: string eid: type: string production_date: type: string format: date-time activation_date: type: string format: date-time status: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaStatus' customer_org: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaCustomerOrg' issuer_org: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaIssuerOrg' reseller_org: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaResellerOrg' endpoint: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaEndpoint' imsi: type: string msisdn: type: string model: $ref: '#/components/schemas/ApiV1SimSimIdGetResponsesContentApplicationJsonSchemaModel' title: SIM_SimByIdGet_Response_200 SIM_SimMigrationWorkspace_Response_200: type: object properties: sim_count: type: number format: double description: The amount of SIMs to be migrated dry_run: type: boolean description: The `dry_run` option specified in the request allowed_sim_statuses: type: array items: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaAllowedSimStatusesItems' description: The `allowed_sim_statuses` option specified in the request target_workspace: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaTargetWorkspace' description: The `target_workspace` specified in the request auto_detach_devices: type: boolean description: The `auto_detach_devices` option specified in the request sims: type: array items: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaSimsItems' description: List of SIMs to be migrated required: - sim_count - dry_run - target_workspace - auto_detach_devices - sims title: SIM_SimMigrationWorkspace_Response_200 SIM_ValidateSIMBatchByBIC_Response_200: type: object properties: sim_batch_status_id: type: string bsn: type: string bic: type: string quantity: type: string sim_model_id: type: string issuer_org_id: type: string customer_org_id: type: integer reseller_org_id: type: integer activated: type: string logistic_center_id: type: string article_id: type: string id: type: integer status: $ref: '#/components/schemas/ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaStatus' model: $ref: '#/components/schemas/ApiV1SimBatchBicBicGetResponsesContentApplicationJsonSchemaModel' title: SIM_ValidateSIMBatchByBIC_Response_200 Service Lookups and Configuration_DnsPost_Response_201: type: object properties: {} description: Empty response body title: Service Lookups and Configuration_DnsPost_Response_201 Service Profiles_AddServiceProfileTrafficLimit_Response_201: type: object properties: {} description: Empty response body title: Service Profiles_AddServiceProfileTrafficLimit_Response_201 Service Profiles_AddTrafficLimit_Response_200: type: object properties: {} description: Empty response body title: Service Profiles_AddTrafficLimit_Response_200 Service Profiles_RemoveTrafficLimit_Response_200: type: object properties: {} description: Empty response body title: Service Profiles_RemoveTrafficLimit_Response_200 Service Profiles_ServiceProfileByProfileIdGet_Response_200: type: object properties: id: type: integer name: type: string description: type: string allowed_3g: type: boolean allowed_4g: type: boolean allowed_nb_iot: type: boolean allowed_nb_iot_geo: type: boolean apply_sms_quota: type: boolean apply_data_quota: type: boolean retail: type: boolean sms_p2p_int: type: boolean sms_p2p_ext: type: boolean prepaid: type: boolean nipdp: type: boolean used_count: type: integer api_callback: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaApiCallback' api_secret: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaApiSecret' moc_callback: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaMocCallback' esme_interface_type: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaEsmeInterfaceType' breakout_region: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaBreakoutRegion' service: type: array items: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaServiceItems' ip_firewall_rule_set: $ref: '#/components/schemas/ApiV1ServiceProfileProfileIdGetResponsesContentApplicationJsonSchemaIpFirewallRuleSet' title: Service Profiles_ServiceProfileByProfileIdGet_Response_200 Service Profiles_ServiceProfileByProfileIdPatch_Response_201: type: object properties: {} title: Service Profiles_ServiceProfileByProfileIdPatch_Response_201 Service Profiles_ServiceProfilePost_Response_201: type: object properties: {} description: Empty response body title: Service Profiles_ServiceProfilePost_Response_201 ServiceProfileByProfileIdDeleteRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: ServiceProfileByProfileIdDeleteRequestConflictError ServiceProfileServiceByProfileAndServiceDeleteRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: ServiceProfileServiceByProfileAndServiceDeleteRequestConflictError ServiceProfileServiceByProfileAndServicePutRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: ServiceProfileServiceByProfileAndServicePutRequestConflictError SimByIdPatchRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: SimByIdPatchRequestBadRequestError SimMigrationWorkspaceRequestConflictError: type: object properties: status_code: type: number format: double description: HTTP status code (409) message: type: string description: Summary error message errors: type: array items: $ref: '#/components/schemas/ApiV1SimMigrationWorkspacePostResponsesContentApplicationJsonSchemaErrorsItems' description: List of specific errors grouped by error type required: - status_code - message - errors title: SimMigrationWorkspaceRequestConflictError SimOperationActionRef: type: object properties: id: type: integer required: - id title: SimOperationActionRef SimOperationRequest: type: object properties: action: $ref: '#/components/schemas/SimOperationActionRef' product: $ref: '#/components/schemas/ProductRef' target: type: array items: $ref: '#/components/schemas/SimOperationRequestTarget' required: - action - target title: SimOperationRequest SimOperationRequestTarget: type: object properties: sim: $ref: '#/components/schemas/SimOperationRequestTargetSim' eid: $ref: '#/components/schemas/Eid' title: SimOperationRequestTarget SimOperationRequestTargetSim: type: object properties: id: type: integer required: - id title: SimOperationRequestTargetSim SimOperationResponse: type: object properties: id: type: string format: uuid description: Operation ID action: $ref: '#/components/schemas/OperationAction' status: $ref: '#/components/schemas/OperationStatus' product: $ref: '#/components/schemas/ProductRef' creation_date: type: string format: date-time last_updated_at: type: string format: date-time finalization_date: type: - string - 'null' format: date-time target: type: array items: $ref: '#/components/schemas/SimOperationResponseTarget' total_count: type: integer failed_count: type: integer success_count: type: integer error: type: array items: $ref: '#/components/schemas/SimOperationResponseErrorItems' required: - id - action - status - creation_date - last_updated_at title: SimOperationResponse SimOperationResponseErrorItems: type: object properties: eid: $ref: '#/components/schemas/Eid' message: type: string required: - eid - message title: SimOperationResponseErrorItems SimOperationResponseTarget: type: object properties: sim: $ref: '#/components/schemas/SimOperationResponseTargetSim' eid: $ref: '#/components/schemas/Eid' required: - sim title: SimOperationResponseTarget SimOperationResponseTargetSim: type: object properties: id: type: integer required: - id title: SimOperationResponseTargetSim SimUnlinkedProductStatsResponse: type: array items: $ref: '#/components/schemas/SimUnlinkedProductStatsResponseItems' title: SimUnlinkedProductStatsResponse SimUnlinkedProductStatsResponseItems: type: object properties: product: $ref: '#/components/schemas/SimUnlinkedProductStatsResponseItemsProduct' quantity: type: integer required: - product - quantity title: SimUnlinkedProductStatsResponseItems SimUnlinkedProductStatsResponseItemsProduct: type: object properties: id: type: integer name: type: string title: SimUnlinkedProductStatsResponseItemsProduct Status: type: object properties: id: type: integer description: type: string required: - id - description title: Status SupportedTargetingParametersDto: type: object properties: parameter: type: string type: type: string description: type: string validators: type: array items: $ref: '#/components/schemas/ValidatorDto' required: - parameter - type - description - validators title: SupportedTargetingParametersDto SystemEventOutputDto: type: object properties: id: type: string parentOrg: $ref: '#/components/schemas/WithIdInputDto' eventType: $ref: '#/components/schemas/WithIdInputDto' name: type: string translationKeyName: type: string description: type: string translationKeyDescription: type: string supportedTargetingParameters: type: array items: type: string eventOutputParameters: type: array items: $ref: '#/components/schemas/ConfigurationParameterDto' supportedActions: type: array items: type: string required: - id - parentOrg - eventType - name - translationKeyName - description - translationKeyDescription - supportedTargetingParameters - eventOutputParameters - supportedActions title: SystemEventOutputDto Tag Management_AssignTagToEndpoint_Response_201: type: object properties: {} description: Empty response body title: Tag Management_AssignTagToEndpoint_Response_201 Tag Management_AssignTagToEndpointsInBulk_Response_200: type: object properties: {} description: Empty response body title: Tag Management_AssignTagToEndpointsInBulk_Response_200 Tag Management_CreateTag_Response_201: type: object properties: id: type: number format: double name: type: string tag_color: $ref: '#/components/schemas/ApiV2TagsPostResponsesContentApplicationJsonSchemaTagColor' title: Tag Management_CreateTag_Response_201 Tag Management_DeleteTagsInBulk_Response_200: type: object properties: {} description: Empty response body title: Tag Management_DeleteTagsInBulk_Response_200 Tag Management_ListTags_Response_200: type: object properties: total: type: number format: double page: type: number format: double page_size: type: number format: double last_page: type: number format: double data: type: array items: $ref: '#/components/schemas/ApiV2TagsGetResponsesContentApplicationJsonSchemaDataItems' title: Tag Management_ListTags_Response_200 Tag Management_UnassignEndpointTag_Response_200: type: object properties: {} description: Empty response body title: Tag Management_UnassignEndpointTag_Response_200 Tag Management_UnassignTagsFromEndpointsInBulk_Response_200: type: object properties: {} description: Empty response body title: Tag Management_UnassignTagsFromEndpointsInBulk_Response_200 Tariff Plans_GetActiveTariffPlan_Response_200: type: object properties: organisation_id: type: number format: double start_date: type: string expiry_date: type: string description: 'the end date of the tariff_plan, or null if it is open end ' sim_activated_rate: type: number format: double sim_activated_idle_rate: type: number format: double sim_suspended_rate: type: number format: double sim_suspended_active_rate: type: number format: double sim_activated_amount: type: number format: double description: 'the number of activated SIMs this month ' applied_price: $ref: '#/components/schemas/ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPrice' description: 'the fees that apply for the current month according to the number of activated SIMs. calculation follows volume pricing at the moment, but may be changed at any time. the resulting price is the sum of each price line times the given volume. if it is a scaled price, the rate object contains a `scale_start` field, otherwise it is fixed. ' tariff_plan: $ref: '#/components/schemas/ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlan' tariff_plan_runtime: $ref: '#/components/schemas/ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanRuntime' active: type: boolean applied_rate: type: number format: double id: type: number format: double service_level: $ref: '#/components/schemas/ApiV1TariffPlanActiveGetResponsesContentApplicationJsonSchemaServiceLevel' description: The default service level of a tariff plan. Possible values can be fetched with GET `/api/v1/service_level`. workspaces_enabled: type: boolean description: 'Determines if the organization is allowed to use the Workspace feature. Returns the global value from the tariff plan, unless this value is overridden on the organization level. If it''s set, the value configured on the organization level always takes priority. ' title: Tariff Plans_GetActiveTariffPlan_Response_200 Tariff Plans_GetOrganisationActiveTariffPlan_Response_200: type: object properties: organisation_id: type: number format: double start_date: type: string expiry_date: type: string description: 'the end date of the tariff_plan, or null if it is open end ' sim_activated_rate: type: number format: double sim_activated_idle_rate: type: number format: double sim_suspended_rate: type: number format: double sim_suspended_active_rate: type: number format: double sim_activated_amount: type: number format: double description: 'the number of activated SIMs this month ' applied_price: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaAppliedPrice' description: 'the fees that apply for the current month according to the number of activated SIMs. calculation follows volume pricing at the moment, but may be changed at any time. the resulting price is the sum of each price line times the given volume. if it is a scaled price, the rate object contains a `scale_start` field, otherwise it is fixed. ' tariff_plan: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlan' tariff_plan_runtime: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaTariffPlanRuntime' active: type: boolean applied_rate: type: number format: double id: type: number format: double service_level: $ref: '#/components/schemas/ApiV1OrganisationOrgIdOrMyTariffPlanActiveGetResponsesContentApplicationJsonSchemaServiceLevel' description: The default service level of a tariff plan. Possible values can be fetched with GET `/api/v1/service_level`. workspaces_enabled: type: boolean description: 'Determines if the organization is allowed to use the Workspace feature. Returns the global value from the tariff plan, unless this value is overridden on the organization level. If it''s set, the value configured on the organization level always takes priority. ' title: Tariff Plans_GetOrganisationActiveTariffPlan_Response_200 Tariff Profiles_TariffProfileByIdGet_Response_200: type: object properties: id: type: number format: double name: type: string description: type: string used_count: type: string organisation_id: type: string tariff: $ref: '#/components/schemas/ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaTariff' inclusive_volume: $ref: '#/components/schemas/ApiV1TariffProfileTariffProfileIdGetResponsesContentApplicationJsonSchemaInclusiveVolume' description: If there is an inclusive volume assigned to the tariff profile, the details will be returned within this object title: Tariff Profiles_TariffProfileByIdGet_Response_200 Tariff Profiles_TariffProfileOperatorBlockListOperatorGet_Response_200: type: object properties: operator: $ref: '#/components/schemas/ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaOperator' tariff_profile: $ref: '#/components/schemas/ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaTariffProfile' blocklist: $ref: '#/components/schemas/ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorGetResponsesContentApplicationJsonSchemaBlocklist' title: Tariff Profiles_TariffProfileOperatorBlockListOperatorGet_Response_200 Tariff Profiles_TariffProfileOperatorBlockOperatorByIDGet_Response_200: type: object properties: operator: $ref: '#/components/schemas/ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaOperator' tariff_profile: $ref: '#/components/schemas/ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaTariffProfile' blocklist: $ref: '#/components/schemas/ApiV2TariffProfileTariffProfileIdOperatorBlocklistOperatorOperatorIdGetResponsesContentApplicationJsonSchemaBlocklist' title: Tariff Profiles_TariffProfileOperatorBlockOperatorByIDGet_Response_200 Tariff Profiles_TariffProfilePost_Response_201: type: object properties: {} description: Empty response body title: Tariff Profiles_TariffProfilePost_Response_201 UnassignEndpointTagRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UnassignEndpointTagRequestBadRequestError UnassignEndpointTagRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UnassignEndpointTagRequestUnprocessableEntityError UnassignTagsFromEndpointsInBulkRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UnassignTagsFromEndpointsInBulkRequestBadRequestError UnassignTagsFromEndpointsInBulkRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UnassignTagsFromEndpointsInBulkRequestUnprocessableEntityError UpdateTagRequestBadRequestError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UpdateTagRequestBadRequestError UpdateTagRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UpdateTagRequestUnprocessableEntityError User Management_UserByIdGet_Response_200: type: object properties: id: type: integer username: type: string name: type: string created: type: string status: $ref: '#/components/schemas/ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaStatus' organisation: $ref: '#/components/schemas/ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaOrganisation' roles: type: array items: $ref: '#/components/schemas/ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaRolesItems' mfa: type: array items: $ref: '#/components/schemas/ApiV1UserUserIdGetResponsesContentApplicationJsonSchemaMfaItems' title: User Management_UserByIdGet_Response_200 User Management_UserByIdV2CreateSupportToken_Response_201: type: object properties: support_token: type: string title: User Management_UserByIdV2CreateSupportToken_Response_201 User Management_UserPerPageSortByQAndPagePost_Response_201: type: object properties: {} description: Empty response body title: User Management_UserPerPageSortByQAndPagePost_Response_201 User Management_UserRolePermissionByIdGet_Response_200: type: object properties: {} title: User Management_UserRolePermissionByIdGet_Response_200 UserByIdDeleteRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserByIdDeleteRequestNotFoundError UserByIdGetRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserByIdGetRequestNotFoundError UserByIdPatchRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1UserUserIdPatchResponsesContentApplicationJsonSchemaErrorsItems' title: UserByIdPatchRequestUnprocessableEntityError UserMfaByIdPatchRequestConflictError: type: object properties: error_code: type: integer description: Numeric error code for programmatic handling. error_token: type: string description: String identifier for the error type. message: type: string description: Human-readable error message. title: UserMfaByIdPatchRequestConflictError UserMfaByIdPatchRequestNotFoundError: type: object properties: error_code: type: integer description: Numeric error code for programmatic handling. error_token: type: string description: String identifier for the error type. message: type: string description: Human-readable error message. title: UserMfaByIdPatchRequestNotFoundError UserMfaByIdPatchRequestUnprocessableEntityError: type: object properties: error_code: type: integer description: Numeric error code for programmatic handling. error_token: type: string description: String identifier for the error type. message: type: string description: Human-readable error message. title: UserMfaByIdPatchRequestUnprocessableEntityError UserMfaByUserIdAndKeyIdDeleteRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserMfaByUserIdAndKeyIdDeleteRequestNotFoundError UserMfaTrustedDeviceByUserIdAndDeviceIdDeleteRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserMfaTrustedDeviceByUserIdAndDeviceIdDeleteRequestNotFoundError UserMfaTrustedDeviceByUserIdGetRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserMfaTrustedDeviceByUserIdGetRequestNotFoundError UserPasswordPatchRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1UserPasswordPatchResponsesContentApplicationJsonSchemaErrorsItems' title: UserPasswordPatchRequestUnprocessableEntityError UserPerPageSortByQAndPagePostRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserPerPageSortByQAndPagePostRequestNotFoundError UserPerPageSortByQAndPagePostRequestUnprocessableEntityError: type: object properties: error_code: type: integer error_token: type: string message: type: string errors: type: array items: $ref: '#/components/schemas/ApiV1UserPostResponsesContentApplicationJsonSchemaErrorsItems' title: UserPerPageSortByQAndPagePostRequestUnprocessableEntityError UserResponse: type: object properties: id: type: integer name: type: string required: - id - name title: UserResponse UserRoleByIdAndRoleIdDeleteRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserRoleByIdAndRoleIdDeleteRequestConflictError UserRoleByIdAndRoleIdDeleteRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserRoleByIdAndRoleIdDeleteRequestNotFoundError UserRoleByIdAndRoleIdPutRequestConflictError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserRoleByIdAndRoleIdPutRequestConflictError UserRoleByIdAndRoleIdPutRequestNotFoundError: type: object properties: error_code: type: integer error_token: type: string message: type: string title: UserRoleByIdAndRoleIdPutRequestNotFoundError ValidatorDto: type: object properties: validator_type: type: string validator_value: type: string required: - validator_type - validator_value title: ValidatorDto WithIdInputDto: type: object properties: id: type: number format: double required: - id title: WithIdInputDto WithStringIdInputDto: type: object properties: id: type: string required: - id title: WithStringIdInputDto WithUuidInputDto: type: object properties: id: type: string required: - id title: WithUuidInputDto Workspaces_AuthenticateWorkspace_Response_200: type: object properties: auth_token: type: string description: JWT authentication token valid for the target Workspace title: Workspaces_AuthenticateWorkspace_Response_200 Workspaces_GetWorkspaceDailyStats_Response_200: type: object properties: id: type: number format: double days: type: array items: $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaDaysItems' total: oneOf: - $ref: '#/components/schemas/ApiV2WorkspaceStatsDailyGetResponsesContentApplicationJsonSchemaTotal' - type: 'null' title: Workspaces_GetWorkspaceDailyStats_Response_200 Workspaces_UpdateDefaultWorkspace_Response_200: type: object properties: {} description: Empty response body title: Workspaces_UpdateDefaultWorkspace_Response_200