scope-bid Webhooks API

The Webhooks API from scope-bid — 2 operation(s) for webhooks.

Operations 4

POST /api/v1/webhooks/subscriptions Subscribe a callback URL to dispatch lifecycle events #
GET /api/v1/webhooks/subscriptions List this firm's webhook subscriptions #
DELETE /api/v1/webhooks/subscriptions Revoke a subscription #
POST /api/v1/webhooks/subscriptions/{id}/test Send a test event to verify signature handling #

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/scope-bid:scope-bid-webhooks-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

scope-bid-webhooks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Scope Bid Webhooks API
  version: 1.1.0
  description: 'Operations tagged Webhooks across 2 of this provider''s published API definitions: scope-bid-openapi.json, scope-bid-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://scope.bid
  description: Production
security:
- bearerAuth: []
tags:
- name: Webhooks
paths:
  /api/v1/webhooks/subscriptions:
    post:
      summary: Subscribe a callback URL to dispatch lifecycle events
      description: 'HTTPS callback. Returns the signing secret once. Deliveries carry X-Scope-Signature (v1=HMAC_SHA256(secret, timestamp + ''.'' + body)), X-Scope-Event-Id (idempotency), X-Scope-Timestamp. The body is { id, type, occurred_at, tenant_id, scope_id, data }. For type ''dispatch.pending_approval'', data carries scope_id, display_id, approval_id, triggered_rules, computed_price_cents (the professional''s price), vendor_id (the professional''s organization) and auto_escalate_after_minutes. Beside the professional''s price, five fields say what the firm will be billed if it approves. firm_total_cents (integer or null): the estimated firm total, the professional''s price plus Scope''s fee line, computed with the invoice''s own arithmetic on the terms on file now; null when Scope cannot determine the fee before the job is sent. scope_fee_cents (integer or null): Scope''s fee line as it would be billed; null when firm_total_cents is null. scope_fee_label (string): the invoice line Scope''s fee appears under, "Service coordination and compliance record". firm_total_is_estimate (boolean or null): true whenever firm_total_cents is a number, because the amount billed is set when the job is sent (for example, the professional''s current rates apply then); null when firm_total_cents is null. billing_note (string): one sentence for a person: the estimated firm total with the invoice''s two lines and why it can move; or the professional''s price and the sentence that Scope''s fee is added on the invoice; or, when Scope could not read the price, that sentence alone. These fields describe the bill; they do not change what is approved or sent.'
      responses:
        '201':
          description: Created; secret returned once.
        '400':
          description: callback_url required / must be https.
      tags:
      - Webhooks
      operationId: postApiV1WebhooksSubscriptions
      x-operation-id-source: derived
    get:
      summary: List this firm's webhook subscriptions
      responses:
        '200':
          description: Subscriptions.
      tags:
      - Webhooks
      operationId: getApiV1WebhooksSubscriptions
      x-operation-id-source: derived
    delete:
      summary: Revoke a subscription
      description: A partner token needs the read or govern scope and revokes only the subscriptions that partner created. A firm caller (session or PAT) needs settings.write or must be a firm admin. Revoking a subscription that is already revoked answers 200.
      parameters:
      - name: id
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Revoked.
        '400':
          description: id is required.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          description: 'No subscription with this id at this firm (for a partner: none it created), including an id that is not a uuid. Nothing was revoked.'
        '429':
          $ref: '#/components/responses/RateLimited'
        '500':
          description: Database error. Nothing was revoked.
        '503':
          description: Scope could not confirm the caller's role at the firm. Nothing was revoked. Retry.
      tags:
      - Webhooks
      operationId: deleteApiV1WebhooksSubscriptions
      x-operation-id-source: derived
    servers:
    - url: https://scope.bid
      description: Production
  /api/v1/webhooks/subscriptions/{id}/test:
    post:
      summary: Send a test event to verify signature handling
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Test event enqueued.
        '404':
          description: Subscription not found.
      tags:
      - Webhooks
      operationId: postApiV1WebhooksSubscriptionsByIdTest
      x-operation-id-source: derived
    servers:
    - url: https://scope.bid
      description: Production
components:
  responses:
    Forbidden:
      description: 'The caller is not authorized: the caller''s role does not grant the required capability, the partner token lacks the required scope, or the partner is not authorized to act for this firm.'
    Unauthorized:
      description: Missing or invalid access token.
    RateLimited:
      description: Per-tenant rate limit exceeded.
      headers:
        Retry-After:
          description: Seconds until the window resets.
          schema:
            type: integer
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'OAuth 2.0 access token, or a personal access token (PAT) for CI and power users. Pass as Authorization: Bearer <token>. Every token resolves to exactly one tenant.'
x-refined-from:
- scope-bid-openapi.json
- scope-bid-openapi.json