emnify subpackage_integrations API

The subpackage_integrations API from emnify — 10 operation(s) for subpackage_integrations.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

emnify-subpackage-integrations-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: emnify REST subpackage_applicationTokens subpackage_integrations 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_integrations
  x-display-name: Integrations
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<Info>\n  The `secret` property itself is not returned in this call.\n</Info>\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/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
components:
  schemas:
    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
    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
    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
    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
    Integrations_CreateDataStreamer_Response_201:
      type: object
      properties: {}
      description: Empty response body
      title: Integrations_CreateDataStreamer_Response_201
    Integrations_GetCallbackSecretbyID_Response_200:
      type: object
      properties:
        organisation_id:
          type: string
        purpose:
          type: string
        id:
          type: integer
      title: Integrations_GetCallbackSecretbyID_Response_200
    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
    Integrations_DeleteCallbackSecret_Response_200:
      type: object
      properties: {}
      description: Empty response body
      title: Integrations_DeleteCallbackSecret_Response_200
    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
      - 

# --- truncated at 32 KB (61 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/emnify/refs/heads/main/openapi/emnify-subpackage-integrations-api-openapi.yml