Deel subpackage_contractorAmendments API

The subpackage_contractorAmendments API from Deel — 1 operation(s) for subpackage_contractoramendments.

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/deel-subpackage-contractoramendments-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 email required.

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

OpenAPI Specification

deel-subpackage-contractoramendments-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Endpoints subpackage_contractorAmendments API
  version: 1.0.0
servers:
- url: https://api.letsdeel.com/rest/v2
- url: https://api-staging.letsdeel.com/rest/v2
tags:
- name: subpackage_contractorAmendments
paths:
  /contracts/{contract_id}/amendments:
    post:
      operationId: create-contract-amendment
      summary: Amend contract
      description: "Amend the details of a contract. Please note that if the contract is already signed or active, then the update will have to be approved and re-signed for to take effect.\n **Token scopes**: `contracts:write`"
      tags:
      - subpackage_contractorAmendments
      parameters:
      - name: contract_id
        in: path
        description: The unique identifier of the employee contract.
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Successful operation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/contractor-amendments_createContractAmendment_Response_201'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
      requestBody:
        description: Contract object that needs to be amended
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaData'
                  description: You can specify any combination of data points that need changing.
              required:
              - data
    get:
      operationId: get-contract-amendments
      summary: List contract amendments
      description: "Retrieve amendments of a contract\n **Token scopes**: `contracts:read`, `contracts:write`"
      tags:
      - subpackage_contractorAmendments
      parameters:
      - name: contract_id
        in: path
        description: Unique identifier of the contract
        required: true
        schema:
          type: string
      - name: statuses
        in: query
        description: Filter by work statement status.
        required: false
        schema:
          type: array
          items:
            $ref: '#/components/schemas/ContractsContractIdAmendmentsGetParametersStatusesSchemaItems'
      - name: sign_statuses
        in: query
        description: Filter by work statement sign status.
        required: false
        schema:
          type: array
          items:
            $ref: '#/components/schemas/ContractsContractIdAmendmentsGetParametersSignStatusesSchemaItems'
      - name: limit
        in: query
        description: Maximum number of work statements to return.
        required: false
        schema:
          type: integer
          default: 20
      - name: cursor
        in: query
        description: Cursor for pagination.
        required: false
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful operation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/contractor-amendments_getContractAmendments_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListContractAmendments-v2026-01-01RequestBadRequestError'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListContractAmendments-v2026-01-01RequestInternalServerError'
components:
  schemas:
    ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataScale:
      type: string
      enum:
      - hourly
      - daily
      - weekly
      - monthly
      - biweekly
      - semimonthly
      - custom
      description: Payment scale for the amended work statement.
      title: ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataScale
    ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaErrorsItems:
      type: object
      properties:
        code:
          type: string
          description: Machine-readable error code
        message:
          type: string
          description: Human-readable explanation of the error
      title: ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaErrorsItems
    ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataSeniorityId:
      oneOf:
      - type: string
      - type: integer
        format: int64
      title: ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataSeniorityId
    ContractsContractIdAmendmentsGetParametersStatusesSchemaItems:
      type: string
      enum:
      - INITIAL
      - PENDING
      - ACTIVE
      - OUTDATED
      - APPROVED
      - DECLINED
      title: ContractsContractIdAmendmentsGetParametersStatusesSchemaItems
    contractor-amendments_getContractAmendments_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItems'
          description: List of work statements (amendments).
        cursor:
          type:
          - string
          - 'null'
          description: Cursor for the next page of results.
        has_more:
          type: boolean
          description: Indicates if there are more work statements available.
        total_count:
          type: integer
          description: Total number of work statements matching the filters.
      required:
      - data
      - cursor
      - has_more
      - total_count
      title: contractor-amendments_getContractAmendments_Response_200
    ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsStatus:
      type: string
      enum:
      - INITIAL
      - PENDING
      - ACTIVE
      - OUTDATED
      - APPROVED
      - DECLINED
      description: Current status of the work statement.
      title: ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsStatus
    ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsSignStatus:
      type: string
      enum:
      - PENDING
      - WAITING_FOR_APPROVAL
      - APPROVED
      - DECLINED
      description: Current sign status of the work statement.
      title: ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsSignStatus
    ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: The unique identifier of the created amendment.
        rate:
          type:
          - number
          - 'null'
          format: double
          description: Rate/amount for the amended work statement.
        scale:
          oneOf:
          - $ref: '#/components/schemas/ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataScale'
          - type: 'null'
          description: Payment scale for the amended work statement.
        status:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataStatus'
          description: Status of the amended work statement.
        created:
          type: boolean
          description: Contract has been successfully amended.
        job_title:
          type:
          - string
          - 'null'
          description: Job title for the amended work statement.
        worker_id:
          type: string
          format: uuid
          description: The unique identifier of the worker.
        created_at:
          type: string
          format: date-time
          description: Timestamp when the work statement was created.
        updated_at:
          type: string
          format: date-time
          description: Timestamp when the work statement was last updated.
        currency_code:
          type: string
          description: Currency code for the amended work statement.
        scope_of_work:
          type:
          - string
          - 'null'
          description: Scope of work for the amended work statement.
        special_clause:
          type:
          - string
          - 'null'
          description: Special clause for the amended work statement.
        termination_notice_days:
          type: integer
          description: Number of days notice required for termination. Defaults to 10 if not provided.
      required:
      - id
      - status
      - created
      - worker_id
      - created_at
      - updated_at
      title: ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaData
    ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsContractType:
      type: string
      enum:
      - milestones
      - time_based
      - ongoing_time_based
      - pay_as_you_go_time_based
      - commission
      - payg_milestones
      - payg_tasks
      description: Type of the associated IC contract.
      title: ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsContractType
    ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaData:
      type: object
      properties:
        scale:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataScale'
          description: Defines the scale at which the amount is paid. For example, enter 'hourly' to define the amount per hour. This field can be excluded when creating a Pay-as-you-go task-based or Milestone contracts.
        amount:
          type: number
          format: double
          description: Amount to be paid per scale.
        cycle_end:
          type: number
          format: double
          description: Day of the month when the cycle ends.
        frequency:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataFrequency'
          description: Scale of the invoice cycle.
        start_date:
          type: string
          format: date
          description: The contract start date in ISO-8601 format (YYYY-MM-DD). Updates the contract's effective date.
        job_title_id:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataJobTitleId'
        seniority_id:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataSeniorityId'
        currency_code:
          type: string
          description: Currency code in ISO 4217 format.
        first_payment:
          type: number
          format: double
          description: Amount to be paid as the first payment.
        scope_of_work:
          type: string
          description: Text to describe the scope of work of the contract.
        cycle_end_type:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataCycleEndType'
          description: Cycle end can be weekly 1-7 (Monday = 1) or monthly 1-31.
        effective_date:
          type: string
          format: date
          description: 'Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31.'
        job_title_name:
          type: string
          description: You can enter new job title.
        special_clause:
          type: string
          description: Text to describe any special clause in contract.
        payment_due_days:
          type: number
          format: double
          description: Number of days after the invoice is sent that the payment is due.
        payment_due_type:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataPaymentDueType'
          description: Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'.
        first_payment_date:
          type: string
          format: date
          description: 'Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31.'
        pay_before_weekends:
          type: boolean
          description: If the payment due is on a weekend, pay on Friday.
      description: You can specify any combination of data points that need changing.
      title: ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaData
    ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataFrequency:
      type: string
      enum:
      - weekly
      - monthly
      - biweekly
      - semimonthly
      - calendar-month
      description: Scale of the invoice cycle.
      title: ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataFrequency
    ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataJobTitleId:
      oneOf:
      - type: string
      - type: integer
        format: int64
      title: ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataJobTitleId
    ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataCycleEndType:
      type: string
      enum:
      - DAY_OF_WEEK
      - DAY_OF_LAST_WEEK
      - DAY_OF_MONTH
      description: Cycle end can be weekly 1-7 (Monday = 1) or monthly 1-31.
      title: ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataCycleEndType
    ApiError:
      type: object
      properties:
        message:
          type: string
          description: A description of the returned error
        path:
          type: string
          description: The JSON path where input validation failed
      title: ApiError
    ApiErrorContainer:
      type: object
      properties:
        request:
          $ref: '#/components/schemas/ApiErrorRequest'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ApiError'
      title: ApiErrorContainer
    ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataScale:
      type: string
      enum:
      - hourly
      - daily
      - weekly
      - monthly
      - biweekly
      - semimonthly
      - custom
      description: Defines the scale at which the amount is paid. For example, enter 'hourly' to define the amount per hour. This field can be excluded when creating a Pay-as-you-go task-based or Milestone contracts.
      title: ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataScale
    ListContractAmendments-v2026-01-01RequestBadRequestError:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaErrorsItems'
      title: ListContractAmendments-v2026-01-01RequestBadRequestError
    contractor-amendments_createContractAmendment_Response_201:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaData'
      required:
      - data
      title: contractor-amendments_createContractAmendment_Response_201
    ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsScale:
      type: string
      enum:
      - hourly
      - daily
      - weekly
      - monthly
      - biweekly
      - semimonthly
      - custom
      description: Payment frequency/scale that defines how often the rate is paid.
      title: ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsScale
    ListContractAmendments-v2026-01-01RequestInternalServerError:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaErrorsItems'
      title: ListContractAmendments-v2026-01-01RequestInternalServerError
    ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataStatus:
      type: string
      enum:
      - initial
      - pending
      - active
      - outdated
      - approved
      - declined
      description: Status of the amended work statement.
      title: ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataStatus
    ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataPaymentDueType:
      type: string
      enum:
      - REGULAR
      - WITHIN_MONTH
      default: REGULAR
      description: Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'.
      title: ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataPaymentDueType
    ContractsContractIdAmendmentsGetParametersSignStatusesSchemaItems:
      type: string
      enum:
      - PENDING
      - WAITING_FOR_APPROVAL
      - APPROVED
      - DECLINED
      title: ContractsContractIdAmendmentsGetParametersSignStatusesSchemaItems
    ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItems:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the work statement.
        rate:
          type:
          - number
          - 'null'
          format: double
          description: Compensation rate per scale. The amount paid according to the specified scale (e.g., 5000 per month).
        scale:
          oneOf:
          - $ref: '#/components/schemas/ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsScale'
          - type: 'null'
          description: Payment frequency/scale that defines how often the rate is paid.
        status:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsStatus'
          description: Current status of the work statement.
        created_at:
          type: string
          format: date-time
          description: Timestamp when the work statement was created.
        updated_at:
          type: string
          format: date-time
          description: Timestamp when the work statement was last updated.
        sign_status:
          $ref: '#/components/schemas/ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsSignStatus'
          description: Current sign status of the work statement.
        contract_name:
          type:
          - string
          - 'null'
          description: Name of the associated contract.
        contract_type:
          oneOf:
          - $ref: '#/components/schemas/ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItemsContractType'
          - type: 'null'
          description: Type of the associated IC contract.
        currency_code:
          type:
          - string
          - 'null'
          description: Currency code in ISO 4217 format (e.g., USD, EUR, GBP).
        effective_date:
          type:
          - string
          - 'null'
          format: date-time
          description: Effective date when the work statement becomes active.
      required:
      - id
      - status
      - created_at
      - updated_at
      - sign_status
      title: ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaDataItems
    ApiErrorRequest:
      type: object
      properties:
        method:
          type: string
          description: The HTTP method of the failed request
        url:
          type: string
          description: The relative URL of the failed request
        status:
          type: number
          format: double
          description: The status code of the response
        api_req_id:
          type: string
          description: The request ID of the failed request
        docs:
          type: string
          description: A link to the official documentation for the requested endpoint resource
        source:
          type: string
          description: The source handler which produced the returned error
        code:
          type: number
          format: double
          description: The code of the source handler which produced the returned error
      title: ApiErrorRequest
  securitySchemes:
    deelToken:
      type: http
      scheme: bearer
      description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
    oauth2:
      type: http
      scheme: bearer
      description: Standard OAuth2 security scheme based on https://swagger.io/docs/specification/authentication/