Scout RFP (Workday Strategic Sourcing) contracts API

Use the contracts API to create, update, and query the contracts in Workday Strategic Sourcing. ## Contract Object ## Docusign Envelope Object ## Adobe Sign Agreement Object ## Adobe Sign Document Object

OpenAPI Specification

scoutrfp-contracts-api-openapi.yml Raw ↑
openapi: 3.0.2
info:
  title: Workday Strategic Sourcing attachments contracts API
  version: '1.0'
  description: '<span id="section/Authentication/api_key" data-section-id="section/Authentication/api_key"></span>

    <span id="section/Authentication/user_token" data-section-id="section/Authentication/user_token"></span>

    <span id="section/Authentication/user_email" data-section-id="section/Authentication/user_email"></span>

    '
servers:
- url: https://api.us.workdayspend.com/services/attachments/v1
  description: Production Server
- url: https://api.sandbox.us.workdayspend.com/services/attachments/v1
  description: Sandbox Server
security:
- api_key: []
  user_token: []
  user_email: []
tags:
- name: contracts
  x-displayName: Contracts
  description: 'Use the contracts API to create, update, and query the contracts in Workday Strategic Sourcing.


    ## Contract Object


    <SchemaDefinition schemaRef="#/components/schemas/Contract" exampleRef="#/components/examples/Contract" showReadOnly={true} showWriteOnly={true} />


    ## Docusign Envelope Object


    <SchemaDefinition schemaRef="#/components/schemas/DocusignEnvelope" showReadOnly={true} showWriteOnly={true} />


    ## Adobe Sign Agreement Object


    <SchemaDefinition schemaRef="#/components/schemas/AdobeSignAgreement" showReadOnly={true} showWriteOnly={true} />


    ## Adobe Sign Document Object


    <SchemaDefinition schemaRef="#/components/schemas/AdobeSignDocument" showReadOnly={true} showWriteOnly={true} />

    '
paths:
  /contracts:
    get:
      tags:
      - contracts
      description: Returns a list of contracts for the specified criteria.
      operationId: List Contracts
      summary: List Contracts
      parameters:
      - name: filter
        in: query
        description: 'Filter contracts by multiple criteria. Only one filter per attribute is supported.

          For best performance, we recommend 5 or less filters.

          '
        schema:
          $ref: '#/components/schemas/ContractInputFilter'
      - name: include
        in: query
        schema:
          $ref: '#/components/schemas/ContractRelatedResources'
        description: 'To reduce the number of HTTP requests, related resources can be requested along with the

          requested primary resources. Such responses are called "compound documents". In a compound

          document, all included resources will be represented as an array of resource objects in a

          top-level `included` member.


          The value of the `include` parameter must be a comma-separated list of relationships from

          the list of available relationships.




          ```

          /contracts?include=contract_type,supplier_company

          ```


          In the response, relationships will be represented as normal linkage objects (containing

          `id` and `type`), and full related resource details will be presented in the `included`

          section as resource objects (with `attributes`, `links`, and potentially `relationships`).

          '
      - name: page
        in: query
        description: 'Customize pagination results with `size`.

          '
        schema:
          $ref: '#/components/schemas/PageInput'
      responses:
        '200':
          description: OK
          content:
            application/vnd.api+json:
              schema:
                type: object
                allOf:
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/Contract'
                    included:
                      $ref: '#/components/schemas/ContractIncludedResources'
                - $ref: '#/components/schemas/Pagination'
              examples:
                simple_request:
                  summary: Simple request
                  $ref: '#/components/examples/index_response'
                compound_request:
                  summary: Compound request
                  $ref: '#/components/examples/index_compound_response'
        '401':
          description: Unauthorized
      x-codeSamples:
      - label: Curl
        source: "curl -H \"X-Api-Key: ${COMPANY_KEY}\" \\\n     -H \"X-User-Token: ${USER_TOKEN}\" \\\n     -H \"X-User-Email: ${USER_EMAIL}\" \\\n     -H \"Content-Type: application/vnd.api+json\" \\\n     \"https://api.us.workdayspend.com/services/contracts/v1/contracts\"\n"
    post:
      tags:
      - contracts
      description: 'Create a contract with given attributes.

        '
      operationId: Create a Contract
      summary: Create a Contract
      parameters:
      - name: include
        in: query
        schema:
          $ref: '#/components/schemas/ContractRelatedResources'
        description: 'Use the `include` parameter to request related resources along with the primary resource.

          '
      requestBody:
        content:
          application/vnd.api+json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/ContractCreate'
            examples:
              simple_request:
                summary: Simple request
                $ref: '#/components/examples/create_simple_request'
              compound_request:
                summary: Assign relationships by Scout ID
                $ref: '#/components/examples/create_compound_request'
              compound_external_request:
                summary: Assign relationships by external ID
                $ref: '#/components/examples/create_compound_external_request'
      responses:
        '201':
          description: OK
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Contract'
                  included:
                    $ref: '#/components/schemas/ContractIncludedResources'
              examples:
                simple_request:
                  summary: Simple request
                  $ref: '#/components/examples/create_simple_response'
                compound_request:
                  summary: Compound request
                  $ref: '#/components/examples/create_compound_response'
        '401':
          description: Unauthorized
      x-codeSamples:
      - label: Curl
        source: "curl -H \"X-Api-Key: ${COMPANY_KEY}\" \\\n     -H \"X-User-Token: ${USER_TOKEN}\" \\\n     -H \"X-User-Email: ${USER_EMAIL}\" \\\n     -H \"Content-Type: application/vnd.api+json\" \\\n     -X POST \\\n     -d '{\"data\":{\"type\":\"contracts\",\"attributes\":{\"title\":\"My Contract\"}}}' \\\n     \"https://api.us.workdayspend.com/services/contracts/v1/contracts\"\n"
  /contracts/{id}:
    get:
      tags:
      - contracts
      description: 'Retrieves the details of an existing contract. You need to supply the unique contract

        identifier that was returned upon contract creation.

        '
      operationId: Get a Contract
      summary: Get a Contract
      parameters:
      - name: id
        in: path
        description: Unique Contract identifier.
        required: true
        schema:
          type: integer
        example: 1
      - name: include
        in: query
        schema:
          $ref: '#/components/schemas/ContractRelatedResources'
        description: 'Use the `include` parameter to request related resources along with the primary resource.

          '
      responses:
        '200':
          description: OK
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Contract'
                  included:
                    $ref: '#/components/schemas/ContractIncludedResources'
              examples:
                simple_request:
                  summary: Simple request
                  $ref: '#/components/examples/show_response'
                compound_request:
                  summary: Compound request
                  $ref: '#/components/examples/show_compound_response'
        '401':
          description: Unauthorized
        '404':
          description: Not Found
      x-codeSamples:
      - label: Curl
        source: "curl -H \"X-Api-Key: ${COMPANY_KEY}\" \\\n     -H \"X-User-Token: ${USER_TOKEN}\" \\\n     -H \"X-User-Email: ${USER_EMAIL}\" \\\n     -H \"Content-Type: application/vnd.api+json\" \\\n     \"https://api.us.workdayspend.com/services/contracts/v1/contracts/1\"\n"
    patch:
      tags:
      - contracts
      description: 'Updates the details of an existing contract. You need to supply the unique supplier

        contract that was returned upon contract creation.


        Please note, that request body must include an `id` attribute with the value of your contract

        unique identifier (the same one you passed in the URL).

        '
      operationId: Update a Contract
      summary: Update a Contract
      parameters:
      - name: id
        in: path
        description: Unique Contract identifier.
        required: true
        schema:
          type: integer
        example: 1
      - name: include
        in: query
        schema:
          $ref: '#/components/schemas/ContractRelatedResources'
        description: 'Use the `include` parameter to request related resources along with the primary resource.

          '
      requestBody:
        content:
          application/vnd.api+json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/ContractUpdate'
            examples:
              simple_request:
                summary: Simple request
                $ref: '#/components/examples/update_simple_request'
              compound_request:
                summary: Assign relationships by Scout ID
                $ref: '#/components/examples/update_compound_request'
              compound_external_request:
                summary: Assign relationships by external ID
                $ref: '#/components/examples/update_compound_external_request'
      responses:
        '200':
          description: OK
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Contract'
                  included:
                    $ref: '#/components/schemas/ContractIncludedResources'
              examples:
                simple_request:
                  summary: Simple request
                  $ref: '#/components/examples/update_simple_response'
                compound_request:
                  summary: Compound request
                  $ref: '#/components/examples/update_compound_response'
        '401':
          description: Unauthorized
        '404':
          description: Not Found
        '409':
          description: Conflict
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Errors'
              examples:
                invalid_type:
                  summary: Missing or invalid 'type' specified, expected 'contracts'
                  description: 'Returns error due to invalid `type` parameter.

                    '
                  value:
                    errors:
                    - detail: Missing or invalid 'type' specified, expected 'contracts'
      x-codeSamples:
      - label: Curl
        source: "curl -H \"X-Api-Key: ${COMPANY_KEY}\" \\\n     -H \"X-User-Token: ${USER_TOKEN}\" \\\n     -H \"X-User-Email: ${USER_EMAIL}\" \\\n     -H \"Content-Type: application/vnd.api+json\" \\\n     -X PATCH \\\n     -d '{\"data\":{\"type\":\"contracts\",\"id\":\"1\",\"attributes\":{\"segmentation_status\": \"out_of_compliance\"}}}' \\\n     \"https://api.us.workdayspend.com/services/contracts/v1/contracts/1\"\n"
    delete:
      tags:
      - contracts
      description: 'Deletes a contract. You need to supply the unique contract

        identifier that was returned upon contract creation.

        '
      operationId: Delete a Contract
      summary: Delete a Contract
      parameters:
      - name: id
        in: path
        description: Unique Contract identifier.
        required: true
        schema:
          type: integer
        example: 1
      responses:
        '204':
          description: OK
        '401':
          description: Unauthorized
        '404':
          description: Not Found
      x-codeSamples:
      - label: Curl
        source: "curl -H \"X-Api-Key: ${COMPANY_KEY}\" \\\n     -H \"X-User-Token: ${USER_TOKEN}\" \\\n     -H \"X-User-Email: ${USER_EMAIL}\" \\\n     -H \"Content-Type: application/vnd.api+json\" \\\n     -X DELETE \\\n     \"https://api.us.workdayspend.com/services/contracts/v1/contracts/1\"\n"
  /contracts/{external_id}/external_id:
    get:
      tags:
      - contracts
      description: 'Retrieves the details of an existing contract. You need to supply the unique

        contract external identifier (the one you used when created the contract).

        '
      operationId: Get a Contract by External ID
      summary: Get a Contract by External ID
      parameters:
      - name: external_id
        in: path
        description: Contract external identifier.
        required: true
        schema:
          type: string
        example: 1234-5678-abcd-efgh
      - name: include
        in: query
        schema:
          $ref: '#/components/schemas/ContractRelatedResources'
        description: 'Use the `include` parameter to request related resources along with the primary resource.

          '
      responses:
        '200':
          description: OK
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Contract'
                  included:
                    $ref: '#/components/schemas/ContractIncludedResources'
              examples:
                success:
                  $ref: '#/components/examples/external_show_response'
        '401':
          description: Unauthorized
        '404':
          description: Not Found
      x-codeSamples:
      - label: Curl
        source: "curl -H \"X-Api-Key: ${COMPANY_KEY}\" \\\n     -H \"X-User-Token: ${USER_TOKEN}\" \\\n     -H \"X-User-Email: ${USER_EMAIL}\" \\\n     -H \"Content-Type: application/vnd.api+json\" \\\n     \"https://api.us.workdayspend.com/services/contracts/v1/contracts/SUP-1234/external_id\"\n"
    patch:
      tags:
      - contracts
      description: 'Updates the details of an existing contract. You need to supply the unique contract

        external identifier (the one you used when created the contract).


        Please note, that request body must include an `id` attribute with the value of your contract

        external identifier (the same one you passed in the URL).

        '
      operationId: Update a Contract by External ID
      summary: Update a Contract by External ID
      parameters:
      - name: external_id
        in: path
        description: Contract external identifier.
        required: true
        schema:
          type: string
        example: 1234-5678-abcd-efgh
      - name: include
        in: query
        schema:
          $ref: '#/components/schemas/ContractRelatedResources'
        description: 'Use the `include` parameter to request related resources along with the primary resource.

          '
      requestBody:
        content:
          application/vnd.api+json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/ContractUpdate'
            examples:
              success:
                $ref: '#/components/examples/external_update_request'
      responses:
        '200':
          description: OK
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Contract'
                  included:
                    $ref: '#/components/schemas/ContractIncludedResources'
              examples:
                success:
                  $ref: '#/components/examples/external_update_response'
        '401':
          description: Unauthorized
        '404':
          description: Not Found
      x-codeSamples:
      - label: Curl
        source: "curl -H \"X-Api-Key: ${COMPANY_KEY}\" \\\n     -H \"X-User-Token: ${USER_TOKEN}\" \\\n     -H \"X-User-Email: ${USER_EMAIL}\" \\\n     -H \"Content-Type: application/vnd.api+json\" \\\n     -X PATCH \\\n     -d '{\"data\":{\"type\":\"contracts\",\"id\":\"SUP-1234\",attributes\":{\"segmentation_status\": \"out_of_compliance\"}}}' \\\n     \"https://api.us.workdayspend.com/services/contracts/v1/contracts/SUP-1234/external_id\"\n"
    delete:
      tags:
      - contracts
      description: 'Deletes a contract. You need to supply the unique contract

        external identifier (the one you used when created the contract).

        '
      operationId: Delete a Contract by External ID
      summary: Delete a Contract by External ID
      parameters:
      - name: external_id
        in: path
        description: Contract external identifier.
        required: true
        schema:
          type: string
        example: 1234-5678-abcd-efgh
      responses:
        '204':
          description: OK
        '401':
          description: Unauthorized
        '404':
          description: Not Found
      x-codeSamples:
      - label: Curl
        source: "curl -H \"X-Api-Key: ${COMPANY_KEY}\" \\\n     -H \"X-User-Token: ${USER_TOKEN}\" \\\n     -H \"X-User-Email: ${USER_EMAIL}\" \\\n     -H \"Content-Type: application/vnd.api+json\" \\\n     -X DELETE \\\n     \"https://api.us.workdayspend.com/services/contracts/v1/contracts/SUP-1234/external_id\"\n"
  /contracts/describe:
    get:
      tags:
      - contracts
      description: Returns a list of fields for the contract object.
      operationId: Describe Contract object
      summary: Describe Contract object
      responses:
        '200':
          description: OK
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/ContractFieldModel'
              examples:
                success:
                  $ref: '#/components/examples/describe_response'
        '401':
          description: Unauthorized
      x-codeSamples:
      - label: Curl
        source: "curl -H \"X-Api-Key: ${COMPANY_KEY}\" \\\n     -H \"X-User-Token: ${USER_TOKEN}\" \\\n     -H \"X-User-Email: ${USER_EMAIL}\" \\\n     -H \"Content-Type: application/vnd.api+json\" \\\n     \"https://api.us.workdayspend.com/services/contracts/v1/contracts/describe\"\n"
components:
  schemas:
    ContractIncludedResources:
      allOf:
      - type: array
        items:
          anyOf:
          - $ref: '#/components/schemas/ContractType'
          - $ref: '#/components/schemas/SpendCategory'
          - $ref: '#/components/schemas/SupplierCompany'
          - $ref: '#/components/schemas/DocusignEnvelope'
          - $ref: '#/components/schemas/AdobeSignAgreement'
    ContractCreate:
      type: object
      required:
      - type
      properties:
        type:
          $ref: '#/components/schemas/ContractTypeValue'
        attributes:
          $ref: '#/components/schemas/ContractAttributes'
        relationships:
          $ref: '#/components/schemas/ContractCreateRequestRelationship'
    DescribeFieldBase:
      title: DescribeFieldModel
      type: object
      required:
      - type
      - id
      properties:
        type:
          $ref: '#/components/schemas/DescribeFieldType'
        id:
          $ref: '#/components/schemas/DescribeFieldId'
    CustomFieldDecimal:
      title: Decimal
      allOf:
      - $ref: '#/components/schemas/CustomFieldBase'
      - type: object
        properties:
          value:
            type: string
            format: decimal
            description: A decimal value represented as a number with floating point.
    OpenApiEnum:
      type: string
      enum:
      - string
      - number
      - integer
      - boolean
      - array
      - object
      description: OpenAPI data type.
      example: string
    AdobeSignAgreementType:
      type: string
      description: Object type, should always be `adobe_sign_agreements`
      example: adobe_sign_agreements
    ContractRelationship:
      type: object
      description: Contract relationship.
      properties:
        attachments:
          type: array
          items:
            $ref: '#/components/schemas/AttachmentBase'
        supplier_company:
          type: object
          properties:
            data:
              $ref: '#/components/schemas/SupplierCompanyBase'
        creator:
          type: object
          description: Contract creator is set based on API keys.
          properties:
            data:
              $ref: '#/components/schemas/StakeholderBase'
        owner:
          type: object
          description: Contract owner.
          properties:
            data:
              $ref: '#/components/schemas/StakeholderBase'
        docusign_envelopes:
          type: array
          description: List of docusign envelopes
          items:
            $ref: '#/components/schemas/DocusignEnvelopeBase'
        adobe_sign_agreements:
          type: array
          description: List of Adobe Sign Agreements
          items:
            $ref: '#/components/schemas/AdobeSignAgreementBase'
        contract_type:
          type: object
          description: Contract type
          properties:
            data:
              $ref: '#/components/schemas/ContractTypeBase'
        spend_category:
          type: object
          description: Spend category type
          properties:
            data:
              $ref: '#/components/schemas/SpendCategoryBase'
    PrevPageLink:
      type: object
      properties:
        prev:
          type: string
          format: url
          description: Link to the previous results page.
          nullable: true
          deprecated: true
    StakeholderEmail:
      type: string
      format: email
      description: Stakeholder's email.
      example: stakeholder.email@example.com
    ContractState:
      type: string
      enum:
      - draft
      - requested
      - in_progress
      - out_for_approval
      - approved
      - active
      - expired
      - terminated
      description: Current contract state.
      example: in_progress
    DocusignEnvelopeBase:
      title: DocusignEnvelope
      type: object
      required:
      - type
      - id
      properties:
        type:
          $ref: '#/components/schemas/DocusignEnvelopeType'
        id:
          $ref: '#/components/schemas/DocusignEnvelopeId'
    PaymentCurrencyType:
      type: string
      description: Object type, should always be `payment_currencies`.
      example: payment_currencies
    CustomFieldCheckbox:
      title: Checkbox
      allOf:
      - $ref: '#/components/schemas/CustomFieldBase'
      - type: object
        properties:
          value:
            type: boolean
            example: true
    SpendCategoryAttributes:
      type: object
      description: Spend category attributes.
      required:
      - name
      properties:
        name:
          $ref: '#/components/schemas/SpendCategoryName'
        external_id:
          $ref: '#/components/schemas/SpendCategoryExternalId'
        usages:
          $ref: '#/components/schemas/SpendCategoryUsages'
    Pagination:
      type: object
      properties:
        meta:
          type: object
          description: Result set metadata.
          properties:
            count:
              type: integer
              description: Number of pages in the result set.
        links:
          $ref: '#/components/schemas/PaginationLinks'
    DescribeFieldType:
      type: string
      description: Object type, should always be `describe_fields`.
      example: describe_fields
    ExternalSupplierCompanyId:
      type: integer
      description: Supplier company external identifier string.
      example: 1
    StakeholderId:
      type: integer
      description: Stakeholder identifier string.
      example: 1
    CustomFieldShortText:
      title: Short Text
      allOf:
      - $ref: '#/components/schemas/CustomFieldBase'
      - type: object
        properties:
          value:
            type: string
            description: A short text (usually under 255 characters).
    ContractTypeValue:
      type: string
      description: Object type, should always be `contracts`.
      example: contracts
    CustomFieldCurrency:
      title: Currency
      allOf:
      - $ref: '#/components/schemas/CustomFieldBase'
      - type: object
        properties:
          value:
            format: integer
            description: A currency value represented as an integer. The maximum value is 9,007,199,254,740,991.
    CustomFieldParagraph:
      title: Paragraph
      allOf:
      - $ref: '#/components/schemas/CustomFieldBase'
      - type: object
        properties:
          value:
            type: string
            description: A longer text paragraph.
    ContractUpdate:
      type: object
      required:
      - type
      - id
      properties:
        type:
          $ref: '#/components/schemas/ContractTypeValue'
        id:
          $ref: '#/components/schemas/ContractId'
        attributes:
          $ref: '#/components/schemas/ContractAttributes'
        relationships:
          $ref: '#/components/schemas/ContractRequestRelationship'
    ContractInputFilter:
      type: object
      properties:
        updated_at_from:
          type: string
          format: date-time
          description: Return contracts updated on or after the specified timestamp.
          example: '2019-10-29T21:28:46.790Z'
        updated_at_to:
          type: string
          format: date-time
          description: Return contracts updated on or before the specified timestamp.
          example: '2019-10-29T21:28:46.790Z'
        number_from:
          type: string
          format: integer
          description: Find contracts with the number equal or greater than the specified one.
        number_to:
          type: string
          format: integer
          description: Find contracts with the number equal or smaller than the specified one.
        title_contains:
          type: string
          description: Return contracts with title containing the specified string.
        title_not_contains:
          type: string
          description: Return contracts with title not containing the specified string.
        description_contains:
          type: string
          description: Return contracts with description containing the specified string.
        description_not_contains:
          type: string
          description: Return contracts with description not containing the specified string.
        external_id_empty:
          type: boolean
          description: Return contracts with `external_id` blank.
          example: true
        external_id_not_empty:
          type: boolean
          description: Return contracts with non-blank `external_id`.
          example: false
        external_id_equals:
          type: string
          description: Find contracts by a specific external ID.
          example: SUP-123
        external_id_not_equals:
          type: string
          description: Find contracts excluding the one with the specified external ID.
          example: SUP-123
        actual_start_date_from:
          type: string
          format: date
          description: Return contracts started on or after the specified date.
        actual_start_date_to:
          type: string
          format: date
          description: Return contracts started on or before the specified date.
        actual_end_date_from:
          type: string
          format: date
          description: Return contracts ended on or after the specified date.
        actual_end_date_to:
          type: string
          format: date
          description: Return contracts ended on or before the specified date.
        actual_spend_amount_from:
          type: number
          format: double
          description: Return contracts with an actual spend amount equal or greater than the specified amount.
        actual_spend_amount_to:
          type: number
          format: double
          description: Return contracts with an actual spend amount equal or smaller than the specified amount.
        auto_renewal:
          type: array
          description: Auto-renewal mode.
          items:
            type: string
            enum:
            - 'yes'
            - 'no'
            - evergreen
          example:
          - 'yes'
          - evergreen
        needs_attention_equals:
          type: boolean
          description: Return contracts with the specified "needs attention" status.
        needs_attention_not_equals:
          type: boolean
          description: Return contracts with the "needs attention" status not equal to the specified one.
        renew_number_of_times_from:
          type: integer
          description: Find contracts that should be renewed at least the specified number of times.
        renew_number_of_times_to:
          type: integer
          description: Find contracts that should be renewed at most the specified number of times.
        state_equals:
          type: array
          items:
            $ref: '#/components/schemas/ContractState'
          description: Find contracts with specified states.
          example:
          - expired
          - terminated
        terminated_note_contains:
          type: string
          description: Return contracts with termination note containing the specified string.
        terminated_note_not_contains:
          type: string
          description: Return contracts with termination note not containing the specified string.
        terminated_note_empty:
          type: string
          description: Return contracts with an empty termination note.
        terminated_note_not_empty:
          type: string
          description: Return contracts with a non-empty termination note.
        terminated_reason_contains:
          type: string
          description: Return contracts with termination reason containing the specified string.
        terminated_reason_not_contains:
          type: string
          description: Return contracts with termination reason not containing the specified string.
        terminated_reason_empty:
          type: string
          description: Return contracts with an empty termination reason.
        terminated_reason_not_empty:
          type: string
          description: Return contracts with a non-empty termination reason.
        contract_type_id_equals:
          type: integer
          description: Find contracts with the specified contract type.
        contract_type_id_not_equals:
          type: integer
          description: Find contracts with the contract type different from the specified one.
        marked_as_needs_attention_at_from:
          type: string
          format: date-time
          description: Find contracts marked as "needs attention" after or on the specified date.
        marked_as_needs_attention_at_to:
          type: string
          format: date-time
          description: Find contracts marked as "needs attention" before or on the specified date.
        needs_attention_note_contains:
          type: string
          description: Return contracts with "needs attention" note containing the specified string.
        needs_attention_note_not_contains:
          type: string
          description: Return contracts with "needs attention" note not containing the specified string.
        needs_attention_note_empty:
          type: string
          description: Return contracts with an empty "needs attention" note.
        needs_attention_note_not_empty:
          type: string
          description: Return contracts with a non-empty "needs attention" note.
        needs_attention_

# --- truncated at 32 KB (123 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/scoutrfp/refs/heads/main/openapi/scoutrfp-contracts-api-openapi.yml