Signicat Subscriptions API

Subscriptions are used to listen to events generated by Signicat services. Different types of subscriptions are available, allowing your application to listen to events in the way best suited for you. ## Subscription types ### Azure Service Bus By creating a subscription of type `AzureServiceBus` we can push events directly to your Azure Service Bus queue. **Configuration:** Locate your Service Bus in the Azure Portal. On the tab named "Shared Access Policies", add a policy named "Signicat" which has the `Send` claim and no other claims. Use the connection string from this shared access policy when creating your subscription. ### Google Pub/Sub By creating a subscription of type `GooglePubSub` we can push events directly to your Google Pub Sub topic. **Configuration:** Locate Service accounts in Google Cloud console under IAM and admin. Create a new service account or use existing. Click manage keys under actions and add a key using type json. Copy the contents of the file into the credential parameter when creating your subscription. ### Webhooks By creating a subscription of type `Webhook` we can push events directly to your application using HTTP requests.

Business capability
Webhook & Event Subscription Management BC-4270.80

Operations 6

GET /subscriptions List subscriptions #
POST /subscriptions Create subscription #
GET /subscriptions/{subscriptionId} Retrieve subscription #
PUT /subscriptions/{subscriptionId} Update subscription #
DELETE /subscriptions/{subscriptionId} Delete subscription #
POST /subscriptions/{subscriptionId}/send-mock-event Send mock event #

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-subscriptions-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-subscriptions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Signicat Subscriptions API
  version: v1
  contact: ''
  license: ''
  termsOfService: ''
  description: 'Operations tagged Subscriptions across 2 of this provider''s published API definitions: events-openapi.json, signicat-events-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.signicat.com/events-management
tags:
- name: Subscriptions
  description: 'Subscriptions are used to listen to events generated by Signicat services. Different types of subscriptions are available, allowing your application to listen to events in the way best suited for you.


    ## Subscription types


    ### Azure Service Bus


    By creating a subscription of type `AzureServiceBus` we can push events directly to your Azure Service Bus queue.


    **Configuration:**

    Locate your Service Bus in the Azure Portal. On the tab named "Shared Access Policies", add a policy named "Signicat" which has the `Send` claim and no other claims. Use the connection string from this shared access policy when creating your subscription.


    ### Google Pub/Sub


    By creating a subscription of type `GooglePubSub` we can push events directly to your Google Pub Sub topic.


    **Configuration:**

    Locate Service accounts in Google Cloud console under IAM and admin. Create a new service account or use existing. Click manage keys under actions and add a key using type json. Copy the contents of the file into the credential parameter when creating your subscription.


    ### Webhooks


    By creating a subscription of type `Webhook` we can push events directly to your application using HTTP requests.'
paths:
  /subscriptions:
    get:
      tags:
      - Subscriptions
      summary: List subscriptions
      description: Lists all subscriptions owned by the specified account or organization.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Page_SubscriptionListItem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Page_SubscriptionListItem'
      operationId: getSubscriptions
      x-operation-id-source: derived
    post:
      tags:
      - Subscriptions
      summary: Create subscription
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/SubscriptionCreate'
            example:
              name: My Subscription
              ownerId: null
              type: Webhook
              typeConfiguration:
                webhook:
                  target: https://my-company.com/callbacks
              eventNameFilter:
              - account-api:account.created
              - communication-api:*
              tagFilter: []
              includeInternalEvents: null
              isGlobalSubscription: null
              messageAuthentication:
                authenticationType: HmacSha256
                hmacSha256:
                  secret: E*wl1K87LYnUoZSm
              expiresAt: null
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionGet'
              example:
                id: s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                name: My Subscription
                active: true
                url: https://api.signicat.com/events-management/subscriptions/s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                ownerId: a-spge-RzcZFs2Z5Kfd5T6mbTPM
                type: Webhook
                eventNameFilter:
                - account-api:account.created
                - communication-api:*
                tagFilter: []
                typeConfiguration:
                  webhook:
                    target: https://my-company.com/callbacks
                expiresAt: null
                createdAt: null
                includeInternalEvents: null
                isGlobalSubscription: null
                messageAuthentication:
                  authenticationType: HmacSha256
                  hmacSha256:
                    secret: E*wl1K87LYnUoZSm
            application/problem+json:
              schema:
                $ref: '#/components/schemas/SubscriptionGet'
              example:
                id: s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                name: My Subscription
                active: true
                url: https://api.signicat.com/events-management/subscriptions/s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                ownerId: a-spge-RzcZFs2Z5Kfd5T6mbTPM
                type: Webhook
                eventNameFilter:
                - account-api:account.created
                - communication-api:*
                tagFilter: []
                typeConfiguration:
                  webhook:
                    target: https://my-company.com/callbacks
                expiresAt: null
                createdAt: null
                includeInternalEvents: null
                isGlobalSubscription: null
                messageAuthentication:
                  authenticationType: HmacSha256
                  hmacSha256:
                    secret: E*wl1K87LYnUoZSm
      operationId: postSubscriptions
      x-operation-id-source: derived
    servers:
    - url: https://api.signicat.com/events-management
  /subscriptions/{subscriptionId}:
    get:
      tags:
      - Subscriptions
      summary: Retrieve subscription
      description: 'A subscription can be created on an organization or an account.

        A subscription will subscribe to events on the organization or account on which it exists.

        You can specify which organization or account to create the subscription on by appending the query parameter `?signicat-organizationId=[your-id]` or `?signicat-accountId=[your-id]`'
      operationId: retrieve_subscription
      parameters:
      - name: subscriptionId
        in: path
        description: ''
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionGet'
              example:
                id: s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                name: My Subscription
                active: true
                url: https://api.signicat.com/events-management/subscriptions/s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                ownerId: a-spge-RzcZFs2Z5Kfd5T6mbTPM
                type: Webhook
                eventNameFilter:
                - account-api:account.created
                - communication-api:*
                tagFilter: []
                typeConfiguration:
                  webhook:
                    target: https://my-company.com/callbacks
                expiresAt: null
                createdAt: null
                includeInternalEvents: null
                isGlobalSubscription: null
                messageAuthentication:
                  authenticationType: HmacSha256
                  hmacSha256:
                    secret: E*wl1K87LYnUoZSm
            application/problem+json:
              schema:
                $ref: '#/components/schemas/SubscriptionGet'
              example:
                id: s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                name: My Subscription
                active: true
                url: https://api.signicat.com/events-management/subscriptions/s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                ownerId: a-spge-RzcZFs2Z5Kfd5T6mbTPM
                type: Webhook
                eventNameFilter:
                - account-api:account.created
                - communication-api:*
                tagFilter: []
                typeConfiguration:
                  webhook:
                    target: https://my-company.com/callbacks
                expiresAt: null
                createdAt: null
                includeInternalEvents: null
                isGlobalSubscription: null
                messageAuthentication:
                  authenticationType: HmacSha256
                  hmacSha256:
                    secret: E*wl1K87LYnUoZSm
    put:
      tags:
      - Subscriptions
      summary: Update subscription
      parameters:
      - name: subscriptionId
        in: path
        description: ''
        required: true
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/SubscriptionUpdate'
            example:
              name: My Subscription
              active: true
              type: Webhook
              eventNameFilter:
              - account-api:account.created
              - communication-api:*
              tagFilter: []
              typeConfiguration:
                webhook:
                  target: https://my-company.com/callbacks
              messageAuthentication:
                authenticationType: HmacSha256
                hmacSha256:
                  secret: E*wl1K87LYnUoZSm
              expiresAt: null
              includeInternalEvents: null
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionGet'
              example:
                id: s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                name: My Subscription
                active: true
                url: https://api.signicat.com/events-management/subscriptions/s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                ownerId: a-spge-RzcZFs2Z5Kfd5T6mbTPM
                type: Webhook
                eventNameFilter:
                - account-api:account.created
                - communication-api:*
                tagFilter: []
                typeConfiguration:
                  webhook:
                    target: https://my-company.com/callbacks
                expiresAt: null
                createdAt: null
                includeInternalEvents: null
                isGlobalSubscription: null
                messageAuthentication:
                  authenticationType: HmacSha256
                  hmacSha256:
                    secret: E*wl1K87LYnUoZSm
            application/problem+json:
              schema:
                $ref: '#/components/schemas/SubscriptionGet'
              example:
                id: s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                name: My Subscription
                active: true
                url: https://api.signicat.com/events-management/subscriptions/s-a-spge-RzcZFs2Z5Kfd5T6mbTPM-mIdjC
                ownerId: a-spge-RzcZFs2Z5Kfd5T6mbTPM
                type: Webhook
                eventNameFilter:
                - account-api:account.created
                - communication-api:*
                tagFilter: []
                typeConfiguration:
                  webhook:
                    target: https://my-company.com/callbacks
                expiresAt: null
                createdAt: null
                includeInternalEvents: null
                isGlobalSubscription: null
                messageAuthentication:
                  authenticationType: HmacSha256
                  hmacSha256:
                    secret: E*wl1K87LYnUoZSm
      operationId: putSubscriptionsBySubscriptionId
      x-operation-id-source: derived
    delete:
      tags:
      - Subscriptions
      summary: Delete subscription
      parameters:
      - name: subscriptionId
        in: path
        description: ''
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
      operationId: deleteSubscriptionsBySubscriptionId
      x-operation-id-source: derived
    servers:
    - url: https://api.signicat.com/events-management
  /subscriptions/{subscriptionId}/send-mock-event:
    post:
      tags:
      - Subscriptions
      summary: Send mock event
      description: 'Attempts to deliver a mocked event to the subscription. Note that the delivery is an asynchronous operation.

        The resulting `deliveryAttemptId` value can be used to poll the delivery logs for the corresponding delivery attempt log item.'
      parameters:
      - name: subscriptionId
        in: path
        description: ''
        required: true
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/MockRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MockResponse'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/MockResponse'
      x-signicat-auth:
        quotaIds:
        - events:mock_events_per_account_per_minute
      operationId: postSubscriptionsBySubscriptionIdSendMockEvent
      x-operation-id-source: derived
    servers:
    - url: https://api.signicat.com/events-management
components:
  schemas:
    GooglePubSubConfigurationRead:
      required:
      - topicName
      type: object
      properties:
        topicName:
          minLength: 1
          type: string
        serviceAccount:
          type: string
      additionalProperties: false
    HmacSha256AuthenticationOptions:
      type: object
      properties:
        secret:
          maxLength: 64
          minLength: 16
          pattern: ^\S+$
          type:
          - string
          - 'null'
          description: Secret used for HmacSha256 authentication.
      additionalProperties: false
    MintSubscriptionConfigurationUpdate:
      type: object
      properties:
        workflowDefinitionId:
          type:
          - string
          - 'null'
        workflowDefinitionAccountId:
          type:
          - string
          - 'null'
      additionalProperties: false
    SubscriptionListItem:
      required:
      - active
      - eventNameFilter
      - id
      - name
      - ownerId
      - tagFilter
      - type
      - url
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        active:
          type:
          - boolean
          - 'null'
        url:
          type: string
        ownerId:
          type: string
        eventNameFilter:
          type:
          - array
          - 'null'
          items:
            type: string
        tagFilter:
          type:
          - array
          - 'null'
          items:
            type: string
        type:
          enum:
          - GooglePubSub
          - Mint
          - Webhook
          - AzureServiceBus
          type: string
        expiresAt:
          type:
          - string
          - 'null'
          format: date-time
        createdAt:
          type:
          - string
          - 'null'
          format: date-time
      additionalProperties: false
    MockResponse:
      required:
      - deliveryAttemptId
      - eventId
      type: object
      properties:
        eventId:
          type: string
          description: ID of the mocked event
        deliveryAttemptId:
          type: string
          description: Delivery Attempt ID of the mocked event
      additionalProperties: false
    SubscriptionUpdate:
      required:
      - name
      - type
      - typeConfiguration
      type: object
      properties:
        name:
          maxLength: 64
          minLength: 3
          type: string
        active:
          type:
          - boolean
          - 'null'
        type:
          maxLength: 64
          minLength: 3
          enum:
          - GooglePubSub
          - Mint
          - Webhook
          - AzureServiceBus
          type: string
          description: The type of subscription. This value may not be changed.
        eventNameFilter:
          type:
          - array
          - 'null'
          items:
            type: string
        tagFilter:
          type:
          - array
          - 'null'
          items:
            type: string
        typeConfiguration:
          properties:
            googlePubSub:
              allOf:
              - $ref: '#/components/schemas/GooglePubSubConfigurationUpdate'
              description: Required when `type` equals `GooglePubSub`, otherwise ignored.
            mint:
              allOf:
              - $ref: '#/components/schemas/MintSubscriptionConfigurationUpdate'
              description: Required when `type` equals `Mint`, otherwise ignored.
            webhook:
              allOf:
              - $ref: '#/components/schemas/WebhookConfigurationUpdate'
              description: Required when `type` equals `Webhook`, otherwise ignored.
            azureServiceBus:
              allOf:
              - $ref: '#/components/schemas/AzureServiceBusConfigurationUpdate'
              description: Required when `type` equals `AzureServiceBus`, otherwise ignored.
        messageAuthentication:
          allOf:
          - $ref: '#/components/schemas/MessageAuthenticationOptions'
        expiresAt:
          type:
          - string
          - 'null'
          format: date-time
      additionalProperties: false
    MockRequest:
      required:
      - event
      type: object
      properties:
        event:
          minLength: 1
          pattern: ^[^\:]+\:[^\:]+$
          type: string
          description: Type of event to mock
        tags:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Arbitrary tags to add to the event
      additionalProperties: false
    MessageAuthenticationType:
      enum:
      - None
      - HmacSha256
      type: string
    GooglePubSubConfigurationUpdate:
      required:
      - topicName
      type: object
      properties:
        topicName:
          minLength: 1
          pattern: ^projects/[a-z0-9-]{4,30}/topics/(?!goog)[A-Za-z0-9-+_.%~]{3,255}$
          type: string
        credential:
          type: string
      additionalProperties: false
    Page_SubscriptionListItem:
      required:
      - data
      - next
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionListItem'
          description: The contents of the current page.
        next:
          type:
          - string
          - 'null'
          description: URL to the next page, if more data may be available.
      additionalProperties: false
    MessageAuthenticationOptions:
      type: object
      properties:
        authenticationType:
          allOf:
          - $ref: '#/components/schemas/MessageAuthenticationType'
          description: Which authentication method to use for events. Defaults to None.
        hmacSha256:
          allOf:
          - $ref: '#/components/schemas/HmacSha256AuthenticationOptions'
          description: Options for HmacSha256 authentication. Required when `AuthenticationType` equals `HmacSha256`.
      additionalProperties: false
    WebhookConfigurationRead:
      type: object
      properties:
        target:
          type: string
      additionalProperties: false
    AzureServiceBusConfigurationUpdate:
      required:
      - queueName
      type: object
      properties:
        connectionString:
          maxLength: 1024
          minLength: 0
          pattern: ^\S+$
          type: string
        queueName:
          maxLength: 1024
          minLength: 0
          pattern: ^\S+$
          type: string
      additionalProperties: false
    SubscriptionCreate:
      required:
      - name
      - type
      - typeConfiguration
      type: object
      properties:
        name:
          maxLength: 64
          minLength: 3
          type: string
        type:
          maxLength: 64
          minLength: 3
          enum:
          - GooglePubSub
          - Mint
          - Webhook
          - AzureServiceBus
          type: string
        typeConfiguration: {}
        eventNameFilter:
          type:
          - array
          - 'null'
          items:
            type: string
        tagFilter:
          type:
          - array
          - 'null'
          items:
            type: string
        messageAuthentication:
          allOf:
          - $ref: '#/components/schemas/MessageAuthenticationOptions'
        expiresAt:
          type:
          - string
          - 'null'
          format: date-time
      additionalProperties: false
    WebhookConfigurationUpdate:
      required:
      - target
      type: object
      properties:
        target:
          maxLength: 1024
          minLength: 0
          pattern: ^\S+$
          type: string
      additionalProperties: false
    AzureServiceBusConfigurationRead:
      required:
      - endpoint
      - queueName
      - sharedAccessKeyName
      type: object
      properties:
        queueName:
          minLength: 1
          type: string
        endpoint:
          minLength: 1
          type: string
        sharedAccessKeyName:
          minLength: 1
          type: string
      additionalProperties: false
    MintSubscriptionConfigurationRead:
      required:
      - workflowDefinitionAccountId
      - workflowDefinitionId
      type: object
      properties:
        workflowDefinitionId:
          maxLength: 64
          minLength: 0
          pattern: ^\S+$
          type: string
        workflowDefinitionAccountId:
          maxLength: 64
          minLength: 0
          pattern: ^\S+$
          type: string
      additionalProperties: false
    SubscriptionGet:
      required:
      - active
      - eventNameFilter
      - id
      - messageAuthentication
      - name
      - ownerId
      - tagFilter
      - type
      - typeConfiguration
      - url
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        active:
          type:
          - boolean
          - 'null'
        url:
          type: string
        ownerId:
          type: string
        type:
          enum:
          - GooglePubSub
          - Mint
          - Webhook
          - AzureServiceBus
          type: string
        eventNameFilter:
          type:
          - array
          - 'null'
          items:
            type: string
        tagFilter:
          type:
          - array
          - 'null'
          items:
            type: string
        typeConfiguration:
          properties:
            googlePubSub:
              allOf:
              - $ref: '#/components/schemas/GooglePubSubConfigurationRead'
              description: Only present when `type` equals `GooglePubSub`.
            mint:
              allOf:
              - $ref: '#/components/schemas/MintSubscriptionConfigurationRead'
              description: Only present when `type` equals `Mint`.
            webhook:
              allOf:
              - $ref: '#/components/schemas/WebhookConfigurationRead'
              description: Only present when `type` equals `Webhook`.
            azureServiceBus:
              allOf:
              - $ref: '#/components/schemas/AzureServiceBusConfigurationRead'
              description: Only present when `type` equals `AzureServiceBus`.
        expiresAt:
          type:
          - string
          - 'null'
          format: date-time
        createdAt:
          type:
          - string
          - 'null'
          format: date-time
        messageAuthentication:
          allOf:
          - $ref: '#/components/schemas/MessageAuthenticationOptions'
      additionalProperties: false
x-refined-from:
- events-openapi.json
- signicat-events-openapi.yml