SpotDraft V1 Contract APIs API

Contract creation, retrieval, updates, previews, downloads, uploads, and lifecycle actions across public API versions.

Business capability
Contract Management BC-150.10

Operations 7

GET /api/v1/public/contracts List Contracts #
POST /api/v1/public/contracts Create Contract #
GET /api/v1/public/contracts/by_external_metadata/{external_metadata_id} List Contracts by External Metadata ID #
POST /api/v1/public/contracts/{contract_id}/download Download Contract File #
POST /api/v1/public/contracts/{contract_id}/send_to_counterparties Send Contract to Counterparties #
GET /api/v1/public/contracts/{contract_id}/status Get Contract Status #

Documentation

Specifications

Schemas & Data

Other Resources

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/spotdraft-v1-contract-apis-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

spotdraft-v1-contract-apis-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: SpotDraft V1 Contract APIs API
  version: v1
  x-version: v1
  x-logo:
    url: https://cdn.spotdraft.com/assets/logo-black-new.png
    backgroundColor: transparent
    altText: SpotDraft Logo
    href: https://spotdraft.com
  x-favicon: https://cdn.spotdraft.com/assets/favicon.png
  x-footer: © SpotDraft Inc. All rights reserved.
  description: '# SpotDraft Public API


    Welcome to the **SpotDraft Public API**.'
servers:
- url: https://api.eu.spotdraft.com
  description: Europe
- url: https://api.in.spotdraft.com
  description: India
- url: https://api.us.spotdraft.com
  description: United States
- url: https://api.me.spotdraft.com
  description: Middle East
tags:
- name: V1 Contract APIs
  description: Contract creation, retrieval, updates, previews, downloads, uploads, and lifecycle actions across public API versions.
paths:
  /api/v1/public/contracts:
    get:
      operationId: v1_public_contracts_retrieve
      description: 'Returns contracts visible to the current workspace.

        Use pagination parameters to step through the result set.'
      summary: List Contracts
      parameters:
      - in: query
        name: limit
        schema:
          type: integer
          default: 10
        description: The number of items to return per page.
      - in: query
        name: page
        schema:
          type: integer
          default: 1
        description: The page to return. Page numbers start at 1.
      tags:
      - V1 Contract APIs
      security:
      - ClientId: []
        ClientSecret: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalContractV3List'
              examples:
                Example:
                  value:
                    total_results: 2
                    page: 1
                    limit: 10
                    results:
                    - id: 1234
                      created: '2021-05-20T04:52:04Z'
                      created_by: Acme
                      contract_link: https://app.spotdraft.com/contracts/v2/1234
                      contract_status: REDLINING
                      contract_name: Standard NDA
                      counter_party_name: Microsoft
                      contract_type_name: Standard NDA
                      contract_type_id: 100
                      reference_id: SD-1234
                      created_by_user_name: Elena Kagan
                      created_by_user_email: elena@acme.com
                      created_by_workspace: 1
                    - id: 4322
                      created: '2021-05-10T04:42:00Z'
                      created_by: Apple
                      contract_link: https://app.spotdraft.com/contracts/v2/4322
                      contract_status: EXECUTED
                      contract_name: Standard NDA - With Apple
                      counter_party_name: Apple Inc.
                      contract_type_name: Standard NDA
                      contract_type_id: 100
                      reference_id: SD-4322
                      created_by_user_name: Sonia Sotomayor
                      created_by_user_email: sonia@apple.com
                      created_by_workspace: 1
          description: Contract List
      x-tagGroup: Contracts
    post:
      operationId: v1_public_contracts_create
      description: 'Creates a new contract from a SpotDraft template and returns the created contract.


        Provide contract data, counterparty details, and any required signatories for the workflow.


        In signatories list, sign_order should be set for either all items or no items of the list. Additionally when

        sign_order is set for all items of signatories list then at-least one counter party signatory user should also be part

        of the list.


        The `contract_data` object must use **template field names as keys**. Each value should match the data type configured for that field in SpotDraft.


        | Field type | Expected value | Example |

        | ---------- | -------------- | ------- |

        | String / text | String | `"Acme Inc."` |

        | Multi-line text | String with line breaks if needed | `"Not applicable\nCustomer redlines pending"` |

        | Number | Integer or decimal | `15` or `3.14` |

        | Boolean / checkbox | Boolean | `true` |

        | Date | `YYYY-MM-DD` | `"2026-03-28"` |

        | Datetime | ISO 8601 timestamp | `"2026-09-15T10:30:00Z"` |

        | Dropdown | Selected option value | `"annual_invoice"` |

        | Multi-select | Array of selected option values | `["US", "IN"]` |

        | Currency | `{ "type": "", "value": number }` | `{ "type": "USD", "value": 12000 }` |

        | Duration | `{ "days": int, "type": "DAYS\|MONTHS\|YEARS", "value": int }` | `{ "days": 180, "type": "MONTHS", "value": 6 }` |

        | Address | Object with address fields | `{ "line_one": "350 Fifth Avenue", "city": "New York", "country": "United States" }` |

        | Repeating group | Array of row objects | `[{"milestone": "Implementation", "amount": {"type": "USD", "value": 5000}}]` |

        | File / attachment | File object or uploaded file reference supported by the workflow | `{ "file_name": "security-schedule.pdf", "content_type": "application/pdf" }` |


        Sample contract data:


        ```json

        {

        "agreement_date": "2026-03-28",

        "renewal_review_at": "2026-09-15T10:30:00Z",

        "customer_name": "Acme Inc.",

        "billing_currency": {"type": "USD", "value": 12000},

        "subscription_term": {"type": "MONTHS", "value": 12, "days": 365},

        "auto_renewal": true,

        "notice_period_days": 30,

        "service_countries": ["US", "IN"],

        "billing_address": {

        "line_one": "350 Fifth Avenue",

        "city": "New York",

        "state": "NY",

        "country": "United States",

        "zipcode": "10118"

        },

        "pricing_schedule": [

        {"milestone": "Implementation", "amount": {"type": "USD", "value": 5000}},

        {"milestone": "Annual subscription", "amount": {"type": "USD", "value": 7000}}

        ],

        "msa_attachment": {"file_name": "security-schedule.pdf", "content_type": "application/pdf"}

        }

        ```'
      summary: Create Contract
      tags:
      - V1 Contract APIs
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalCreateContract'
            examples:
              CreateContractRequest:
                value:
                  contract_template_id: 1204
                  contract_data:
                    agreement_date: '2026-03-28'
                    renewal_review_at: '2026-09-15T10:30:00Z'
                    customer_name: Acme Inc.
                    billing_currency:
                      type: USD
                      value: 12000
                    subscription_term:
                      type: MONTHS
                      value: 12
                      days: 365
                    auto_renewal: true
                    notice_period_days: 30
                    service_countries:
                    - US
                    - IN
                    billing_address:
                      line_one: 350 Fifth Avenue
                      city: New York
                      state: NY
                      country: United States
                      zipcode: '10118'
                    pricing_schedule:
                    - milestone: Implementation
                      amount:
                        type: USD
                        value: 5000
                    - milestone: Annual subscription
                      amount:
                        type: USD
                        value: 7000
                    msa_attachment:
                      file_name: security-schedule.pdf
                      content_type: application/pdf
                  counter_party_details:
                  - is_individual: false
                    organization_type: company
                    organization_name: Acme Inc.
                    poc_details:
                      first_name: Avery
                      last_name: Stone
                      email: legal@acme.example
                    organization_details:
                      jurisdiction: Delaware
                      address:
                        line_one: 350 Fifth Avenue
                        city: New York
                        state: NY
                        country: United States
                        zipcode: '10118'
                  external_metadata:
                    id: hubspot-deal-10024
                    integration_name: HubSpot
                    record_type: Deal
                    record_data:
                      deal_stage: contractsent
                      owner_email: owner@acme.example
                  contract_name: Acme Master Services Agreement
                summary: Create contract request
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ExternalCreateContract'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ExternalCreateContract'
        required: true
      security:
      - ClientId: []
        ClientSecret: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalContractV3'
          description: ''
      x-tagGroup: Contracts
  /api/v1/public/contracts/by_external_metadata/{external_metadata_id}:
    get:
      operationId: v1_public_contracts_by_external_metadata_retrieve
      description: 'Returns up to 50 contracts linked to the supplied external metadata id.


        Use this when you have an external system record id and need to find the related SpotDraft contracts.'
      summary: List Contracts by External Metadata ID
      parameters:
      - in: path
        name: external_metadata_id
        schema:
          type: string
        description: External Metadata ID of the Contract. This can be used to search for contracts based on an ID specified when creating the contract using the external API.
        required: true
      tags:
      - V1 Contract APIs
      security:
      - ClientId: []
        ClientSecret: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExternalContractV3'
              examples:
                Example:
                  value:
                  - - id: 1234
                      created: '2021-05-20T04:52:04Z'
                      created_by: Elena Kagan
                      contract_link: https://app.spotdraft.com/contracts/v2/1234
                      contract_status: REDLINING
                      contract_name: Standard NDA
                      counter_party_name: Microsoft
                      contract_type_name: Standard NDA
                      reference_id: SD-1234
                    - id: 4322
                      created: '2021-05-10T04:42:00Z'
                      created_by: Sonia Sotomayor
                      contract_link: https://app.spotdraft.com/contracts/v2/4322
                      contract_status: EXECUTED
                      contract_name: Standard NDA - With Apple
                      counter_party_name: Apple Inc.
                      contract_type_name: Standard NDA
                      reference_id: SD-4322
          description: Contract List
      x-tagGroup: Contracts
  /api/v1/public/contracts/{contract_id}/download:
    post:
      operationId: v1_public_contracts_download_create
      description: 'Generates and returns the latest downloadable copy of the contract.


        Use this when you need the contract file itself rather than a temporary download URL.'
      summary: Download Contract File
      parameters:
      - in: path
        name: contract_id
        schema:
          type: integer
        description: ID of the Contract.
        required: true
      tags:
      - V1 Contract APIs
      security:
      - ClientId: []
        ClientSecret: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
                format: binary
          description: PDF copy of the Contract
      x-tagGroup: Contracts
  /api/v1/public/contracts/{contract_id}/download_link:
    post:
      operationId: v1_public_contracts_download_link_create
      description: 'Returns a temporary download URL for the contract file.


        Optionally provide a `format` in the request body (`PDF`, `DOCX`, or `DOCX_WITH_FALLBACK_TO_PDF`). If omitted, the response defaults to `PDF`.'
      summary: Create Contract Download Link
      parameters:
      - in: path
        name: contract_id
        schema:
          type: integer
        description: ID of the Contract.
        required: true
      tags:
      - V1 Contract APIs
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DownloadLinkRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/DownloadLinkRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/DownloadLinkRequest'
      security:
      - ClientId: []
        ClientSecret: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DownloadUrl'
              examples:
                Example:
                  value:
                    url: https://storage.googleapis.com/some/path?signature=ASDASD
                    file_name: Standard NDA a3b2.pdf
                    current_version_id: 1
          description: Download Link
      x-tagGroup: Contracts
  /api/v1/public/contracts/{contract_id}/send_to_counterparties:
    post:
      operationId: v1_public_contracts_send_to_counterparties_create
      description: Returns status code 200 if successful
      summary: Send Contract to Counterparties
      parameters:
      - in: path
        name: contract_id
        schema:
          type: integer
        description: ID of the Contract.
        required: true
      tags:
      - V1 Contract APIs
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendToCounterparty'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/SendToCounterparty'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/SendToCounterparty'
        required: true
      security:
      - ClientId: []
        ClientSecret: []
      responses:
        '200':
          description: Contract sent to counterparties.
      x-tagGroup: Contracts
  /api/v1/public/contracts/{contract_id}/status:
    get:
      operationId: v1_public_contracts_status_retrieve
      description: 'Returns the display **status** and **contract name** for the requested contract.


        When the `Enforce-User-Scoping` header is `true`, only contracts the specified user may access (based on their permissions) are returned.'
      summary: Get Contract Status
      parameters:
      - in: path
        name: contract_id
        schema:
          type: integer
        description: ID of the Contract.
        required: true
      tags:
      - V1 Contract APIs
      security:
      - ClientId: []
        ClientSecret: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalContractStatus'
              examples:
                Example:
                  value:
                    contract_status: EXECUTED
                    contract_name: Service Agreement - Acme Corp
          description: Contract Status
      x-tagGroup: Contracts
components:
  schemas:
    DownloadLinkRequest:
      description: Request body for Get Contract Download Link API. Optional; defaults to PDF if omitted.
      properties:
        format:
          anyOf:
          - $ref: '#/components/schemas/EditableDocumentDownloadFormat'
          - type: 'null'
          default: PDF
          description: Download format for the contract file. Defaults to `PDF` when omitted.
      title: DownloadLinkRequest
      type: object
    SendToCounterparty:
      type: object
      properties:
        to_emails:
          type: array
          items:
            type: string
          description: Optional list of primary recipient email addresses. If omitted, SpotDraft uses the configured counterparty recipients for the contract.
        cc_emails:
          type: array
          items:
            type: string
          description: Optional list of email addresses to copy on the outbound contract email.
        bcc_emails:
          type: array
          items:
            type: string
          description: Optional list of blind-copy email addresses for the outbound contract email.
        attachment_formats:
          type: array
          items:
            $ref: '#/components/schemas/AttachmentFormatsEnum'
          description: At least one attachment format is required. Allowed values come from the ContractEmailFormat enum.
        extra_attachments:
          type: array
          items:
            $ref: '#/components/schemas/EmailBase64Attachment'
          description: Optional additional attachments to send with the contract email.
        custom_message:
          type: string
          description: Optional custom message to include in the contract email body.
        subject:
          type: string
          description: Optional custom email subject line.
      required:
      - attachment_formats
    ExternalContractV3List:
      type: object
      properties:
        total_results:
          type: integer
          description: Total number of items in the result set.
        page:
          type: integer
          description: The current page number. Page numbers start at 1.
        limit:
          type: integer
          description: The number of items returned per page.
        results:
          type: array
          items:
            $ref: '#/components/schemas/ExternalContractV3'
          description: The list of Contracts
      required:
      - limit
      - page
      - results
      - total_results
    ExternalCreateContract:
      type: object
      description: Defines the data that is required for contract creation
      properties:
        contract_template_id:
          type: integer
          description: ID of the SpotDraft contract template used to generate the contract.
        contract_data:
          description: 'A key-value object where each key must match a template field name from the contract template.


            Values should use the data type expected by that template field. Common patterns include:

            - `string`: free-form text

            - `number`: integer or decimal values

            - `boolean`: `true` or `false`

            - `date`: `YYYY-MM-DD`

            - `datetime`: ISO 8601 timestamp such as `2026-03-28T10:15:00Z`

            - `duration`: `{ "type": "MONTHS" | "YEARS" | "DAYS", "value": number, "days": number }`

            - `currency`: `{ "type": "USD" | "INR" | ... , "value": number }`

            - `dropdown`: the selected option value as configured in the template

            - `multi_select`: an array of selected option values

            - `address`: an object such as `{ "line_one": ..., "city": ..., "country": ..., "zipcode": ... }`

            - `repeating`: an array of row objects for repeating groups or dynamic tables

            - `file`: a file object or uploaded file reference where the workflow supports attachments


            Use template field names exactly as configured in SpotDraft.'
        counter_party_details:
          type: array
          items:
            $ref: '#/components/schemas/ExternalCounterPartyDetails'
          description: A list of counterparties involved in the contract. At least one counterparty must be provided.
        external_metadata:
          description: Optional external system metadata to associate with the contract, such as a CRM or ERP record reference.
        entity_reference_id:
          type: string
          description: Optional creator organization entity reference ID. If omitted, SpotDraft uses the primary organization entity for the creator organization.
        workflow_config:
          $ref: '#/components/schemas/WorkflowConfig'
        send_to_counterparty_config:
          allOf:
          - $ref: '#/components/schemas/SendToCounterparty'
          description: Optional email-delivery settings to apply when sending the contract to counterparties.
        contract_name:
          type: string
          description: Optional contract display name. If omitted, SpotDraft derives the contract name from the workflow or template configuration.
        signatories:
          type: array
          items:
            $ref: '#/components/schemas/ExternalCreateContractSignatory'
          description: An optional list of signatories for the contract. If provided, each signatory must be associated with a counterparty specified in `counter_party_details`.
        is_embedded_contract:
          type: boolean
          default: false
          description: Set to true when the contract will be used in an embedded signing flow.
      required:
      - contract_data
      - contract_template_id
      - counter_party_details
    ExternalContractV3:
      type: object
      description: Defines the data required to be shown affter contract creation
      properties:
        id:
          type: integer
          readOnly: true
        created:
          type: string
          format: date-time
          description: The timestamp at which this contract was first created.
        contract_name:
          type: string
          description: The name of the contract. Might be defaulted from the template or edited by the user.
        contract_link:
          type: string
          readOnly: true
          description: The link to the SpotDraft app where this contract can be viewed. The user will need to log in (and have view access) to be able to view the contract.
        contract_status:
          allOf:
          - $ref: '#/components/schemas/ContractDisplayStatusEnum'
          description: The status of this contract.
          readOnly: true
        created_by:
          type: string
          readOnly: true
          description: The email address of the user who created this contract.
        counter_party_name:
          type: string
          readOnly: true
          description: The name of the Counter Party for this contract.
        contract_type_name:
          type: string
          readOnly: true
          description: The type of Contract. The types are as defined by the Client.
        contract_type_id:
          type: integer
          readOnly: true
          description: The ID of the Contract Type.
        created_by_workspace:
          type: integer
          readOnly: true
          description: The workspace ID of the user who created or uploaded the executed contract on to SpotDraft's platform.
        external_metadata:
          type: object
          additionalProperties: {}
          readOnly: true
          description: The external metadata associated with this contract.
        reference_id:
          type: string
          readOnly: true
          description: The reference id of the contract.
      required:
      - contract_link
      - contract_name
      - contract_status
      - contract_type_id
      - contract_type_name
      - counter_party_name
      - created
      - created_by
      - created_by_workspace
      - external_metadata
      - id
      - reference_id
    OrganizationDetails:
      type: object
      description: Defines structure for organization details
      properties:
        jurisdiction:
          type: string
        address:
          $ref: '#/components/schemas/OrganizationAddress'
    ExternalContractStatus:
      type: object
      description: Defines the data that is required to show the status of a contract
      properties:
        contract_status:
          allOf:
          - $ref: '#/components/schemas/ContractDisplayStatusEnum'
          description: 'The status of this contract.


            * `DRAFT` - DRAFT

            * `REDLINING` - REDLINING

            * `SIGN` - SIGN

            * `EXECUTED` - EXECUTED

            * `ON_HOLD` - ON_HOLD

            * `VOIDED` - VOIDED'
        contract_name:
          type: string
          description: The name of the contract that is visible to users.
      required:
      - contract_name
      - contract_status
    OrganizationAddress:
      type: object
      description: Defines structure for organization address
      properties:
        city:
          type: string
        state:
          type: string
          default: ''
        country:
          type: string
        zipcode:
          type: string
          default: ''
        line_one:
          type: string
        line_two:
          type: string
        email:
          type: string
        phone:
          type: string
        gst_number:
          type: string
        tax_id:
          type: string
        country_iso_code:
          type: string
      required:
      - city
      - country
      - line_one
    EmailBase64Attachment:
      type: object
      properties:
        file_name:
          type: string
        mime_type:
          type: string
        content_base64:
          type: string
      required:
      - content_base64
      - file_name
      - mime_type
    AttachmentFormatsEnum:
      enum:
      - DOCX
      - PDF
      - TEMPLATE
      type: string
      description: '* `DOCX` - DOCX

        * `PDF` - PDF

        * `TEMPLATE` - TEMPLATE'
    EditableDocumentDownloadFormat:
      enum:
      - PDF
      - DOCX
      - DOCX_WITH_FALLBACK_TO_PDF
      title: EditableDocumentDownloadFormat
      type: string
    WorkflowConfig:
      type: object
      properties:
        auto_send_to_counterparty:
          type: boolean
          default: false
        api_only_contract_edits:
          type: boolean
          default: false
        skip_cp_info_collection:
          type: boolean
          default: false
        skip_creator_info_collection:
          type: boolean
          default: false
    ExternalCreateContractSignatory:
      type: object
      description: Defines the data that is required for create contract signatory
      properties:
        name:
          type: string
        email:
          type: string
        title:
          type: string
        is_counterparty_signatory:
          type: boolean
          description: Set this as True if the signatory belongs to a counterparty. Else set it as False.
        counterparty_name:
          type: string
          description: Required if `is_counterparty_signatory` is True. Must match the name of one of the counterparties in `counter_party_details`. If the counterparty `is_individual` is True, this should be the concatenation of the `first_name` and `last_name` from `poc_details` (e.g., 'John Doe'). If `is_individual` is False, this should match the `organization_name` of the counterparty.  If `is_counterparty_signatory` is False, leave this field blank.
        sign_order:
          type: integer
        note:
          type: string
      required:
      - email
      - is_counterparty_signatory
      - name
    DownloadUrl:
      type: object
      properties:
        url:
          type: string
          description: The URL from which this contract can be downloaded.
        file_name:
          type: string
          description: The file name of the contract.
        current_version_id:
          type: integer
          description: The ID of the current version of the contract.
      required:
      - file_name
      - url
    ExternalPOCDetails:
      type: object
      description: Defines the data required in poc details
      properties:
        first_name:
          type: string
        last_name:
          type: string
          default: ''
        email:
          type: string
      required:
      - email
      - first_name
    ContractDisplayStatusEnum:
      enum:
      - DRAFT
      - REDLINING
      - SIGN
      - EXECUTED
      - ON_HOLD
      - VOIDED
      type: string
    ExternalCounterPartyDetails:
      type: object
      description: Defines the data required for contract counterpartydetails
      properties:
        is_individual:
          type: boolean
        organization_type:
          type: string
        organization_name:
          type: string
          description: The legal name of the organization. Required if `is_individual` is False.
        poc_details:
          allOf:
          - $ref: '#/components/schemas/ExternalPOCDetails'
          description: Details of the primary point of contact for this counterparty. Required for both individuals and organizations.
        organization_details:
          $ref: '#/components/schemas/OrganizationDetails'
        party_role_identifier:
          type: string
          minLength: 1
      required:
      - is_individual
      - poc_details
  securitySchemes:
    ClickwrapId:
      type: apiKey
      in: header
      name: clickwrap-id
      description: Public clickwrap identifier header.
    ClientId:
      type: apiKey
      name: client-id
      in: header
    ClientSecret:
      type: apiKey
      name: client-secret
      in: header
    NativeIntegrationBasic:
      type: http
      scheme: basic
      description: HTTP Basic auth for supported native integrations. Send base64(client_id:client_secret) in the Authorization header.
    OAuthBearer:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: OAuth 2.0 bearer token for workspace user access.
    Origin:
      type: apiKey
      in: header
      name: Origin
      description: Browser origin header used for clickwrap domain validation.
x-logo:
  url: https://cdn.spotdraft.com/assets/logo-black-new.png
  backgroundColor: transparent
  altText: SpotDraft Logo
  href: https://spotdraft.com
x-tagGroups:
- name: Contracts
  tags:
  - V2.1 Contract APIs
  - V2 Contract APIs
  - V1 Contract APIs
  - V2.1 Contract Approvals
  - V2 Contract Approvals
  - V2.1 Contract Activity
  - V2 Contract Activity
  - V2.1 Contract Invitations
  - V2 Contract Invitations
  - V2.1 Contract Metadata Values
  - V2 Contract Metadata Values
  - V2.1 Contract External Metadata
  - V2.1 Contract Notes
  - V2 Contract Notes
  - V2.1 Contract Obligations
  - V2.1 Contract Facets
  - V2.1 Contract Versions
  - V2 Contract Versions
  - V2.1 Recipients
  - V2 Recipients
- name: Clickwrap
  tags:
  - V2.1 Clickwrap
- name: Legal Intake
  tags:
  - V1 Legal Intake
- name: Workflow
  tags:
  - V2.1 Contract Metadata Definitions
  - V2 Contract Metadata Definitions
  - V2.1 Contract Types
  - V2 Contract Types
  - V2.1 Templates
  - V2 Templates
  - V1 Templates
- name: Platform
  tags:
  - V2.1 Users
  - V2 Users
  - V1 Users
  - V2.1 Counterparties
  - V2 Counterparties
  - V2.1 Organizations
  - V2 Organizations
  - V1 Obligation Types
  - V1 Native Integrations
  - V2.1 Workspace Files
  - V2.1 Tasks and Reminders
  - V2 Tasks and Reminders
  - V2.1 Webhooks
  - V1 Webhooks
  - V1 Emails
  - V2.1 Analytics Query
  - V2.1 Workspaces
  - V2.1 Workspace Tags
- name: Sidebar
  tags:
  - V2.1 Sidebar