Signicat APNs tokens API

The MobileID Admin **APNs tokens** API provides you with operations related to creating and managing Apple Push Notifications service (APNs) tokens. APNs tokens can be used so that your end-users can receive push notifications in your mobile app. **Note**: The request and response samples are for illustrative purposes only, and discrepancies can occur between the sample values in request and response objects. ## Useful information An APNs token can be used by all accounts in the same organisation.

Operations 4

GET /apns-tokens Get APNS tokens #
POST /apns-tokens Add APNS token #
GET /apns-tokens/{apnsTokenId} Get APNS token #
DELETE /apns-tokens/{apnsTokenId} Delete APNS token #

Documentation

📖
APIReference
https://developer.signicat.com/apis/data-verification/
📖
APIReference
https://developer.signicat.com/apis/digital-evidence-management/
📖
APIReference
https://developer.signicat.com/apis/eid-hub/
📖
APIReference
https://developer.signicat.com/apis/electronic-signing/sign-api-v2/
📖
APIReference
https://developer.signicat.com/apis/electronic-signing/enterprise/
📖
APIReference
https://developer.signicat.com/apis/electronic-signing/express/
📖
APIReference
https://developer.signicat.com/apis/archive/
📖
APIReference
https://developer.signicat.com/apis/id-document-and-biometric-verification/
📖
APIReference
https://developer.signicat.com/apis/mobileid/
📖
APIReference
https://developer.signicat.com/apis/mobileid-admin/
📖
APIReference
https://developer.signicat.com/apis/ongoing-monitoring/
📖
APIReference
https://developer.signicat.com/apis/person-monitoring/
📖
APIReference
https://developer.signicat.com/apis/reuseid-onboarding/
📖
APIReference
https://developer.signicat.com/apis/reuseid/
📖
APIReference
https://developer.signicat.com/apis/secure-share/
📖
APIReference
https://developer.signicat.com/apis/mint/
📖
APIReference
https://developer.signicat.com/apis/siam/
📖
APIReference
https://developer.signicat.com/apis/audit-logs/
📖
APIReference
https://developer.signicat.com/apis/account-management/
📖
APIReference
https://developer.signicat.com/apis/domain-management/
📖
APIReference
https://developer.signicat.com/apis/events/
📖
APIReference
https://developer.signicat.com/apis/oidc-config/
📖
APIReference
https://developer.signicat.com/apis/usage/

Specifications

Schemas & Data

📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-basic-info-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-person-basic-info-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-ownership-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-business-registry-registration-authority-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-geodata-country-info-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-business-registry-registration-authority-item-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-request-body-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-record-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-record-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-stats-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-session-data-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-session-request-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signing-session-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-document-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-document-collection-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-post-document-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-paginated-signing-session-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-merchant-sign-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signing-order-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-task-status-info-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-forwarding-info-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-event-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-artifact-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-packaging-task-status-info-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signer-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-signer-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signer-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-document-summary-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-signer-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-attachment-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-jsonld-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-archive-objects-representation-jsonld-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-archive-patch-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-audit-log-jsonld-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-direct-jsonld-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-capture-configuration-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-capture-configuration-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-process-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-process-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-process-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-match-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signature-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-account-recovery-details-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-authentication-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-registration-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-user-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-idverification-add-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-application-config-properties-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-application-config-update-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-account-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-e2-ekey-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-apnstoken-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-account-platform-all-details-statistic-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organisation-data-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-person-response-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organisation-request-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-changes-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-create-monitor-request-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-person-get-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-create-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-base-monitor-person-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-get-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-person-changes-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-paged-collection-1-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-device-signature-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-device-registration-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-device-authentication-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-passkey-authentication-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-passkey-registration-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-create-share-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-create-recipient-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-recipient-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-share-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-share-response-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-recipient-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-journey-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-workflow-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-workflow-template-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-create-workflow-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-workflow-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-step-definition-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-user-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subject-custom-attribute-definition-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-membership-custom-attribute-definition-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-group-custom-attribute-definition-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-membership-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-list-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-audit-log-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-audit-query-result-audit-log-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-metadata-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-metadata-response-event-type-properties-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-invoice-item-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-invoice-list-item-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-read-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-account-read-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-create-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-write-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-domain-read-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-get-metadata-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-domain-create-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-check-domain-availability-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-domain-patch-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-check-dns-setup-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subscription-get-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subscription-update-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subscription-event-delivery-attempt-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subscription-create-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-event-log-item-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-page-subscription-list-item-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-client-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-patch-client-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-public-key-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signicat-error-template-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-secret-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-custom-claim-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-usage-set-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/signicat:signicat-apns-tokens-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

signicat-apns-tokens-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Signicat APNs tokens API
  version: '1.0'
  description: 'Operations tagged APNs tokens across 2 of this provider''s published API definitions: mobileid-admin-openapi.json, signicat-mobileid-admin-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.signicat.com/mobileid/admin
tags:
- name: APNs tokens
  description: 'The MobileID Admin **APNs tokens** API provides you with operations related to creating and managing Apple Push Notifications service (APNs) tokens.


    APNs tokens can be used so that your end-users can receive push notifications in your mobile app.


    **Note**: The request and response samples are for illustrative purposes only,

    and discrepancies can occur between the sample values in request and response objects.


    ## Useful information


    An APNs token can be used by all accounts in the same organisation.'
paths:
  /apns-tokens:
    get:
      tags:
      - APNs tokens
      summary: Get APNS tokens
      description: 'The **Get APNs tokens** operation returns a list of the APNs tokens for the organisation that the account belongs to.

        This includes both production and sandbox APNs tokens.


        The maximum number of APNs token objects per list is 100.'
      operationId: getAPNSTokens
      parameters:
      - name: signicat-accountid
        in: query
        description: 'The ID of the Signicat account, in a valid UUID format.


          **Note**: This is an optional parameter, as the account ID is fetched from the access token that you use when initiating the request.

          '
        required: false
        schema:
          type: string
          description: 'The ID of the Signicat account, in a valid UUID format.


            **Note**: This is an optional parameter, as the account ID is fetched from the access token that you use when initiating the request.

            '
          example: a-sdge-abcdefghijk123456789
        example: a-sdge-abcdefghijk123456789
      responses:
        '200':
          description: Successfully fetched the list of APNs tokens.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APNSTokenList'
              example:
                apnsTokens:
                - id: 82a634bf-a485-457c-90c4-88ddd5631922
                  description: test-token-description
                  name: Test app APNs token
                  created: '2022-12-11T12:35:52.000Z'
                  sha1Fingerprint: ab:6b:bb:f3:e3:5e:6f:11
                  sha256Fingerprint: 21:31:57:72:33:ec:23:84:ad:30:68:1c:e3:ab
                  keyId: ABCD1234
                  teamId: EDFG5678
                - id: c21d007a-d8ad-4856-a9ab-cee11a65de31
                  description: test-token-description
                  name: Test app APNs token
                  created: '2022-12-11T12:35:53.000Z'
                  sha1Fingerprint: ab:6b:bb:f3:e3:5e:6f:11
                  sha256Fingerprint: 21:31:57:72:33:ec:23:84:ad:30:68:1c:e3:ab
                  keyId: ABCD1234
                  teamId: EDFG5678
        '400':
          description: Bad request.
          content:
            application/json:
              example:
                type: https://developer.signicat.com/errors?code=account_does_not_exist
                title: No account exists with the specified Account ID
                code: account_does_not_exist
                status: 400
                detail: An account with ID 'a-sdge-abcdefghijk123456789' does not exist.
                traceId: fc0fb42a9c1821b7d9fe2f62dd45cf7b
        '403':
          description: Forbidden. The user is not authorised to perform this operation.
          content:
            application/json:
              example:
                code: missing_permission
                detail: The subject with ID 'dev-ghastly-thread-446' does not have the required permission 'mobileid:user:read' on the target resource 'a-sdge-abcdefghijk123456789'
                status: 403
                title: You do not have the required permission to perform this operation on the target resource
                type: https://developer.signicat.com/errors?code=missing_permission
      security:
      - Access token with client with MobileID Config Editor role:
        - signicat-api
    post:
      tags:
      - APNs tokens
      summary: Add APNS token
      description: 'The **Add APNs token** operation enables you to add a new APNs token to your MobileID account.


        An APNs token can be used by all accounts in the same organisation.'
      operationId: addAPNSToken
      parameters:
      - name: signicat-accountid
        in: query
        description: 'The ID of the Signicat account, in a valid UUID format.


          **Note**: This is an optional parameter, as the account ID is fetched from the access token that you use when initiating the request.

          '
        required: false
        schema:
          type: string
          description: 'The ID of the Signicat account, in a valid UUID format.


            **Note**: This is an optional parameter, as the account ID is fetched from the access token that you use when initiating the request.

            '
          example: a-sdge-abcdefghijk123456789
        example: a-sdge-abcdefghijk123456789
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EncapAPNSTokenAddRequest'
            example:
              name: Test app APNs token
              description: test-token-description
              privateKey: replace with base64 encoded private key
              keyId: ABCD1234
              teamId: EDFG5678
        required: true
      responses:
        '201':
          description: Successfully added an APNs token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APNSToken'
              example:
                id: 82a634bf-a485-457c-90c4-88ddd56319c1
                description: test-token-description
                name: Test app APNs token
                created: '2022-12-11T12:35:52.000Z'
                sha1Fingerprint: ab:6b:bb:f3:e3:5e:6f:11
                sha256Fingerprint: 21:31:57:72:33:ec:23:84:ad:30:68:1c:e3:ab
                keyId: ABCD1234
                teamId: EDFG5678
        '400':
          description: Bad request.
          content:
            application/json:
              examples:
                Unknown property.:
                  description: Unknown property.
                  value:
                    type: https://developer.signicat.com/apis/mobileid/#section/Using-this-API/Errors
                    title: Unknown property
                    code: unknown_property
                    status: 400
                    traceId: 4bf239c088089f2bca77d3a413909f1c
                    detail: 'Unknown property: ''naaame'''
                Could not parse JSON request:
                  description: Could not parse JSON request
                  value: "{\n    \"type\": \"https://developer.signicat.com/apis/mobileid/#section/Using-this-API/Errors\",\n  \"title\": \"Request parsing error property\",\n  \"code\": \"request_parsing_error\",\n  \"status\": 400,\n  \"traceId\": \"4bf239c088089f2bca77d3a413909f1c\",\n  \"detail\": \"Could not parse content. Message: 'Unexpected character ('\"' (code 34)): was expecting comma to separate Object entries'\"\n}\n"
                Account ID missing:
                  description: Account ID missing
                  value:
                    type: https://developer.signicat.com/errors?code=account_id_missing
                    title: An Account ID must be specified for this request
                    code: account_id_missing
                    status: 400
                    traceId: 4bf239c088089f2bca77d3a413909f1c
                    detail: 'An Account ID must be specified for this request. An AccountID can be specified in three ways. 1) For machine clients configured on an Account, the provided access token will specify the account ID. 2) Account ID can be provided as a query parameter `signicat-accountId=<accountId>`. 3) Account ID can be provided as a HTTP Header `Signicat-AccountId: <accountId>`. A request will be rejected if more than one account ID is specified.'
                Invalid request parameters:
                  description: Invalid request parameters
                  value:
                    type: https://developer.signicat.com/apis/mobileid/#section/Using-this-API/Errors
                    title: Invalid request
                    code: invalid_request
                    status: 400
                    detail: Your request body parameters have failed validation.
                    traceId: 4bf239c088089f2bca77d3a413909f1c
                    invalidParams:
                    - name: name
                      reason: name cannot be null or empty
        '403':
          description: Forbidden. The user is not authorised to perform this operation.
          content:
            application/json:
              example:
                code: missing_permission
                detail: The subject with ID 'dev-ghastly-thread-446' does not have the required permission 'mobileid:user:read' on the target resource 'a-sdge-abcdefghijk123456789'
                status: 403
                title: You do not have the required permission to perform this operation on the target resource
                type: https://developer.signicat.com/errors?code=missing_permission
      security:
      - Access token with client with MobileID Config Editor role:
        - signicat-api
    servers:
    - url: https://api.signicat.com/mobileid/admin
  /apns-tokens/{apnsTokenId}:
    get:
      tags:
      - APNs tokens
      summary: Get APNS token
      description: 'The **Get APNs token** operation returns a specified APNs token for your MobileID account.


        An APNs token can be used by all accounts in the same organisation.'
      operationId: getAPNSToken
      parameters:
      - name: apnsTokenId
        in: path
        description: The ID of the APNs token.
        required: true
        schema:
          type: string
        example: 82a634bf-a485-457c-90c4-88ddd56319ac
      - name: signicat-accountid
        in: query
        description: 'The ID of the Signicat account, in a valid UUID format.


          **Note**: This is an optional parameter, as the account ID is fetched from the access token that you use when initiating the request.

          '
        required: false
        schema:
          type: string
          description: 'The ID of the Signicat account, in a valid UUID format.


            **Note**: This is an optional parameter, as the account ID is fetched from the access token that you use when initiating the request.

            '
          example: a-sdge-abcdefghijk123456789
        example: a-sdge-abcdefghijk123456789
      responses:
        '200':
          description: Successfully fetched the list of APNs token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APNSToken'
              example:
                id: 82a634bf-a485-457c-90c4-88ddd56319c1
                description: test-token-description
                name: Test app APNs token
                created: '2022-12-11T12:35:52.000Z'
                sha1Fingerprint: ab:6b:bb:f3:e3:5e:6f:11
                sha256Fingerprint: 21:31:57:72:33:ec:23:84:ad:30:68:1c:e3:ab
                keyId: ABCD1234
                teamId: EDFG5678
        '400':
          description: Bad request.
          content:
            application/json:
              examples:
                Account ID missing:
                  description: Account ID missing
                  value:
                    type: https://developer.signicat.com/errors?code=account_id_missing
                    title: An Account ID must be specified for this request
                    code: account_id_missing
                    status: 400
                    traceId: 4bf239c088089f2bca77d3a413909f1c
                    detail: 'An Account ID must be specified for this request. An AccountID can be specified in three ways. 1) For machine clients configured on an Account, the provided access token will specify the account ID. 2) Account ID can be provided as a query parameter `signicat-accountId=<accountId>`. 3) Account ID can be provided as a HTTP Header `Signicat-AccountId: <accountId>`. A request will be rejected if more than one account ID is specified.'
                Invalid identifier:
                  description: Invalid identifier
                  value:
                    type: https://developer.signicat.com/apis/mobileid/#section/Using-this-API/Errors
                    title: Invalid identifier
                    code: invalid_identifier
                    status: 400
                    traceId: 4bf239c088089f2bca77d3a413909f1c
                    detail: 'Invalid UUID string: 5505649b6c0b4ff0aedd53935ec'
        '403':
          description: Forbidden. The user is not authorised to perform this operation.
          content:
            application/json:
              example:
                code: missing_permission
                detail: The subject with ID 'dev-ghastly-thread-446' does not have the required permission 'mobileid:user:read' on the target resource 'a-sdge-abcdefghijk123456789'
                status: 403
                title: You do not have the required permission to perform this operation on the target resource
                type: https://developer.signicat.com/errors?code=missing_permission
        '404':
          description: Not found. The server cannot find the requested resource.
          content:
            application/json:
              example:
                type: https://developer.signicat.com/apis/mobileid/#section/Using-this-API/Errors
                title: Resource not found
                code: resource_not_found
                status: 404
                traceId: 4bf239c088089f2bca77d3a413909f1c
                detail: 'Missing APNS Token with ID : 9672e0c7-8850-43df-a715-e9a388530383 for account ID : a-sdge-N27GjPSzXO8JLcf8G1AN.'
      security:
      - Access token with client with MobileID Config Editor role:
        - signicat-api
    delete:
      tags:
      - APNs tokens
      summary: Delete APNS token
      description: 'The **Delete APNs token** operation deletes a specified APNs token from your MobileID account.


        An APNs token can be used by all accounts in the same organisation.'
      operationId: deleteAPNSToken
      parameters:
      - name: apnsTokenId
        in: path
        description: The ID of the APNs token.
        required: true
        schema:
          type: string
        example: 82a634bf-a485-457c-90c4-88ddd56319ac
      - name: signicat-accountid
        in: query
        description: 'The ID of the Signicat account, in a valid UUID format.


          **Note**: This is an optional parameter, as the account ID is fetched from the access token that you use when initiating the request.

          '
        required: false
        schema:
          type: string
          description: 'The ID of the Signicat account, in a valid UUID format.


            **Note**: This is an optional parameter, as the account ID is fetched from the access token that you use when initiating the request.

            '
          example: a-sdge-abcdefghijk123456789
        example: a-sdge-abcdefghijk123456789
      responses:
        '204':
          description: Successfully deleted the APNs token.
        '400':
          description: Bad request.
          content:
            application/json:
              examples:
                Account ID missing:
                  description: Account ID missing
                  value:
                    type: https://developer.signicat.com/errors?code=account_id_missing
                    title: An Account ID must be specified for this request
                    code: account_id_missing
                    status: 400
                    traceId: 4bf239c088089f2bca77d3a413909f1c
                    detail: 'An Account ID must be specified for this request. An AccountID can be specified in three ways. 1) For machine clients configured on an Account, the provided access token will specify the account ID. 2) Account ID can be provided as a query parameter `signicat-accountId=<accountId>`. 3) Account ID can be provided as a HTTP Header `Signicat-AccountId: <accountId>`. A request will be rejected if more than one account ID is specified.'
                Invalid identifier:
                  description: Invalid identifier
                  value:
                    type: https://developer.signicat.com/apis/mobileid/#section/Using-this-API/Errors
                    title: Invalid identifier
                    code: invalid_identifier
                    status: 400
                    traceId: 4bf239c088089f2bca77d3a413909f1c
                    detail: 'Invalid UUID string: 5505649b6c0b4ff0aedd53935ec'
        '403':
          description: Forbidden. The user is not authorised to perform this operation.
          content:
            application/json:
              example:
                code: missing_permission
                detail: The subject with ID 'dev-ghastly-thread-446' does not have the required permission 'mobileid:user:read' on the target resource 'a-sdge-abcdefghijk123456789'
                status: 403
                title: You do not have the required permission to perform this operation on the target resource
                type: https://developer.signicat.com/errors?code=missing_permission
        '404':
          description: Not found. The server cannot find the requested resource.
          content:
            application/json:
              example:
                type: https://developer.signicat.com/apis/mobileid/#section/Using-this-API/Errors
                title: Resource not found
                code: resource_not_found
                status: 404
                traceId: 4bf239c088089f2bca77d3a413909f1c
                detail: 'Missing APNS Token with ID : 9672e0c7-8850-43df-a715-e9a388530383 for account ID : a-sdge-N27GjPSzXO8JLcf8G1AN.'
      security:
      - Access token with client with MobileID Config Editor role:
        - signicat-api
    servers:
    - url: https://api.signicat.com/mobileid/admin
components:
  schemas:
    APNSTokenList:
      type: object
      properties:
        items:
          type: array
          description: List of APNs Tokens
          items:
            $ref: '#/components/schemas/APNSToken'
          writeOnly: true
        apnsTokens:
          type: array
          items:
            $ref: '#/components/schemas/APNSToken'
    APNSToken:
      type: object
      properties:
        id:
          type: string
          description: The UUID for the APNs token
          example: 6dbb0262-eecc-4dd0-928d-f20a72ad751f
        description:
          type: string
          description: The description of the APNs token
          example: This is the APNs token ...
        name:
          type: string
          description: The name of the APNs token
          example: APNs token name
        created:
          type: string
          description: The date on which the APNs token was created
          example: '2021-01-22T21:47:27.123Z'
        sha1Fingerprint:
          type: string
          description: The SHA1 hash of the APNs token
          example: sha1Fingerprint
        sha256Fingerprint:
          type: string
          description: The SHA256 hash of the APNs token
          example: sha256Fingerprint
        keyId:
          type: string
          description: Key ID of the APNs token
          example: test-key-id
        teamId:
          type: string
          description: Team ID of Apple Developer Account
          example: test-team-id
    EncapAPNSTokenAddRequest:
      type: object
      properties:
        name:
          type: string
          description: The name of the APNs token
          example: APNs token name
          minLength: 1
        description:
          type: string
          description: The description of the APNs token
          example: This is the APNs token ...
        privateKey:
          type: string
          description: The Base64 encoded string of APNs token private key
          example: replace with base64 encoded private key
          minLength: 1
          writeOnly: true
        keyId:
          type: string
          description: Key ID of the APNs token
          example: key-id
          minLength: 1
          writeOnly: true
        teamId:
          type: string
          description: Team ID of Apple Developer Account
          example: team-id
          minLength: 1
          writeOnly: true
      required:
      - keyId
      - name
      - privateKey
      - teamId
  securitySchemes:
    Access_token_with_client_with_MobileID_Config_Editor_role:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Access token with client with MobileID Config Editor role
    Access_token_with_client_with_Signicat_MobileID_Config_Admin_role:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Access token with client with Signicat MobileID Config Admin role
x-refined-from:
- mobileid-admin-openapi.json
- signicat-mobileid-admin-openapi.yml