Deel · Capability

Deel Core API — Contracts

Self-contained Naftiko capability for listing and retrieving Deel contracts across IC, EOR, GP types.

Deel Core API — Contracts is a Naftiko capability published by Deel, one of 20 capabilities the APIs.io network indexes for this provider. It bundles 2 operations across the GET method rooted at /v1/contracts.

Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Deel, Contracts, and HR.

Run with Naftiko DeelContractsHR

What You Can Do

GET
Listcontracts — List Deel contracts.
/v1/contracts
GET
Getcontract — Retrieve a Deel contract.
/v1/contracts/{contract_id}

Capability Spec

core-contracts.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Deel Core API — Contracts
  description: Self-contained Naftiko capability for listing and retrieving Deel contracts across IC, EOR, GP types.
  tags:
  - Deel
  - Contracts
  - HR
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    DEEL_API_TOKEN: DEEL_API_TOKEN
capability:
  consumes:
  - type: http
    namespace: core-contracts
    baseUri: https://api.letsdeel.com/rest/v2
    description: Deel Contracts capability — list and retrieve contracts.
    resources:
    - name: contracts
      path: /contracts
      operations:
      - name: listContracts
        method: GET
        description: List contracts with filtering by type, status, country, currency.
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
        inputParameters:
        - { name: types, in: query, type: array, required: false }
        - { name: statuses, in: query, type: array, required: false }
        - { name: limit, in: query, type: integer, required: false }
        - { name: after_cursor, in: query, type: string, required: false }
    - name: contract
      path: /contracts/{contract_id}
      operations:
      - name: getContract
        method: GET
        description: Retrieve a single contract by ID.
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
        inputParameters:
        - { name: contract_id, in: path, type: string, required: true }
    authentication:
      type: bearer
      value: '{{env.DEEL_API_TOKEN}}'
      placement: header
  exposes:
  - type: rest
    namespace: core-contracts-rest
    port: 8080
    description: REST adapter for Deel Contracts.
    resources:
    - path: /v1/contracts
      name: contracts
      description: REST surface for contracts.
      operations:
      - method: GET
        name: listContracts
        description: List Deel contracts.
        call: core-contracts.listContracts
        with: { types: rest.query.types, statuses: rest.query.statuses, limit: rest.query.limit, after_cursor: rest.query.after_cursor }
    - path: /v1/contracts/{contract_id}
      name: contract
      description: REST surface for a single contract.
      operations:
      - method: GET
        name: getContract
        description: Retrieve a Deel contract.
        call: core-contracts.getContract
        with: { contract_id: rest.path.contract_id }