Deel subpackage_eorContract API

The subpackage_eorContract API from Deel — 3 operation(s) for subpackage_eorcontract.

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-eorcontract-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-eorcontract-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Endpoints subpackage_eorContract API
  version: 1.0.0
servers:
- url: https://api.letsdeel.com/rest/v2
- url: https://api-staging.letsdeel.com/rest/v2
tags:
- name: subpackage_eorContract
paths:
  /eor:
    post:
      operationId: create-eor-contract
      summary: Create an EOR contract
      description: "Creates an Employee of Record (EOR) contract quote. This endpoint allows to submit details for an EOR contract. Deel will process the information and return a quote for the requested contract.\n **Token scopes**: `contracts:write`"
      tags:
      - subpackage_eorContract
      parameters:
      - 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: Successfully created the EOR contract quote.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/eor-contract_createEORContract_Response_201'
        '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'
      requestBody:
        description: The details of the Employee (EOR) contract to be created.
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/EorPostRequestBodyContentApplicationJsonSchemaData'
              required:
              - data
  /eor/contracts/{contract_id}/details:
    get:
      operationId: get-eor-contract-details
      summary: Retrieve EOR Contract Details
      description: "Returns the basic information for an EOR contract, along with employment costs associated to it\n **Token scopes**: `contracts:read`"
      tags:
      - subpackage_eorContract
      parameters:
      - name: contract_id
        in: path
        description: The unique identifier for the Deel 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:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/eor-contract_getEORContractDetails_Response_200'
        '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: Access denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrieveEorContractDetails-v2026-01-01RequestForbiddenError'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
  /eor/contract/{contract_id}:
    patch:
      operationId: update-eor-contract
      summary: Update EOR Contract
      description: "This endpoint is used to modify mutable fields of an EOR contract, such as salary, job title, or benefits. It supports partial updates—only include fields that should be updated. Required fields must still be present for validation.\n **Token scopes**: `contracts:write`"
      tags:
      - subpackage_eorContract
      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:
        '200':
          description: Contract updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/eor-contract_updateEORContract_Response_200'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateEorContractRequestBadRequestError'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateEorContractRequestForbiddenError'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateEorContractRequestNotFoundError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateEorContractRequestInternalServerError'
      requestBody:
        description: Contract update request object
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaData'
              required:
              - data
components:
  schemas:
    EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataProbationPeriodTypeForDefinite:
      type: string
      enum:
      - CUSTOM
      - STANDARD
      description: Unit of time for probation period
      title: EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataProbationPeriodTypeForDefinite
    EorPostRequestBodyContentApplicationJsonSchemaDataClientTeam:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/EorPostRequestBodyContentApplicationJsonSchemaDataClientTeamId'
          description: Team identifying information.
      required:
      - id
      title: EorPostRequestBodyContentApplicationJsonSchemaDataClientTeam
    RetrieveEorContractDetails-v2026-01-01RequestForbiddenError:
      type: object
      properties:
        error:
          type: string
          description: Contract is not accessible to the user/organization
      title: RetrieveEorContractDetails-v2026-01-01RequestForbiddenError
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaTeam:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for the team.
        name:
          type: string
          description: The name of the team.
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaTeam
    EorPostRequestBodyContentApplicationJsonSchemaDataEmploymentProbationPeriodTimeUnit:
      type: string
      enum:
      - DAY
      - WEEK
      - MONTH
      description: Time unit of probation period.
      title: EorPostRequestBodyContentApplicationJsonSchemaDataEmploymentProbationPeriodTimeUnit
    EorPostResponsesContentApplicationJsonSchemaDataCostsSectionsItemsGroupsItemsTotalsItems:
      type: object
      properties:
        total:
          type: string
          description: Group total in local currency.
        frequency:
          type: string
          description: How often the total is calculated (e.g., monthly, annual).
        total_supporting:
          type: string
          description: Group total in supporting currency.
      title: EorPostResponsesContentApplicationJsonSchemaDataCostsSectionsItemsGroupsItemsTotalsItems
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmployee:
      type: object
      properties:
        email:
          type: string
          description: The email of the employee.
        pic_url:
          type:
          - string
          - 'null'
          description: URL to employee's picture.
        last_name:
          type: string
          description: The last name of the employee.
        first_name:
          type: string
          description: The first name of the employee.
        legal_name:
          type: string
          description: The legal name of the employee.
        nationality:
          type: string
          description: Two letter country code of the employee nationality.
      description: Employee details
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmployee
    UpdateEorContractRequestNotFoundError:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/EorContractContractIdPatchResponsesContentApplicationJsonSchemaError'
      required:
      - error
      title: UpdateEorContractRequestNotFoundError
    EorPostRequestBodyContentApplicationJsonSchemaDataClientLegalEntity:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/EorPostRequestBodyContentApplicationJsonSchemaDataClientLegalEntityId'
          description: Legal entity reference for the client.
      title: EorPostRequestBodyContentApplicationJsonSchemaDataClientLegalEntity
    EorPostRequestBodyContentApplicationJsonSchemaDataClientLegalEntityId:
      oneOf:
      - type: string
      - type: integer
        format: int64
      description: Legal entity reference for the client.
      title: EorPostRequestBodyContentApplicationJsonSchemaDataClientLegalEntityId
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaLastQuoteRejectionRejectionReason:
      type: string
      enum:
      - TOO_EXPENSIVE
      - DECIDED_AGAINST_EMPLOYING_EOR
      - TEST_QUOTE
      - NOT_SATISFIED_WITH_DEEL
      - INACCURATE_INFO_JOB_TITLE
      - INACCURATE_INFO_JOB_DESCRIPTION
      - INACCURATE_INFO_JOB_DUTIES_SCOPE_OF_WORK
      - OTHER
      description: Reason why the rejection occurred.
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaLastQuoteRejectionRejectionReason
    EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataContractTermType:
      type: string
      enum:
      - DEFINITE
      - INDEFINITE
      description: Type of contract term
      title: EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataContractTermType
    EorPostRequestBodyContentApplicationJsonSchemaDataClient:
      type: object
      properties:
        team:
          $ref: '#/components/schemas/EorPostRequestBodyContentApplicationJsonSchemaDataClientTeam'
        legal_entity:
          $ref: '#/components/schemas/EorPostRequestBodyContentApplicationJsonSchemaDataClientLegalEntity'
      required:
      - team
      description: Client details for the contract.
      title: EorPostRequestBodyContentApplicationJsonSchemaDataClient
    EorPostResponsesContentApplicationJsonSchemaDataHealthPlan:
      type: object
      properties:
        id:
          type: string
          description: Health plan ID
        name:
          type: string
          description: Health plan name
      title: EorPostResponsesContentApplicationJsonSchemaDataHealthPlan
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaCreator:
      type: object
      properties:
        name:
          type: string
          description: The name of the contract creator.
        email:
          type: string
          description: The email address of the contract creator.
        firstname:
          type: string
          description: The first name of the contract creator.
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaCreator
    EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataQuoteAdditionalFieldsEmployeeType:
      type: string
      enum:
      - Employee
      - Manager
      description: Type of employee
      title: EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataQuoteAdditionalFieldsEmployeeType
    EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataWorkEligibility:
      type: object
      properties:
        key:
          type: string
          description: Unique identifier for the work eligibility document
        file_name:
          type: string
          description: Name of the work eligibility document file
      required:
      - key
      - file_name
      description: Work eligibility documentation
      title: EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataWorkEligibility
    EorPostRequestBodyContentApplicationJsonSchemaDataEmploymentScopeOfWork2:
      type: object
      properties:
        scope_validation_id:
          type: string
          format: uuid
          description: Scope validation UUID.
      title: EorPostRequestBodyContentApplicationJsonSchemaDataEmploymentScopeOfWork2
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentCostsSectionsItems:
      type: object
      properties:
        name:
          type: string
          description: Internal identifier for the cost section (e.g., MONTHLY_EMPLOYMENT_BREAKDOWN).
        label:
          type: string
          description: Display name for the cost section.
        groups:
          type: array
          items:
            $ref: '#/components/schemas/EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentCostsSectionsItemsGroupsItems'
          description: Collections of related costs grouped under a common label.
        totals:
          type: array
          items:
            $ref: '#/components/schemas/EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentCostsSectionsItemsTotalsItems'
          description: Overall totals for the section, summing all groups and standalone items.
        is_summarized:
          type: boolean
          description: Indicates whether the section is presented in summarized form.
        standalone_items:
          type: array
          items:
            $ref: '#/components/schemas/EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentCostsSectionsItemsStandaloneItemsItems'
          description: Cost items that do not belong to regular groups, often irregular or one-off costs.
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentCostsSectionsItems
    EorPostRequestBodyContentApplicationJsonSchemaDataCompensationDetailsSigningBonusPayoutType:
      type: string
      enum:
      - FIRST_CYCLE
      - AFTER_PROBATION
      - AFTER_FIRST_CONTRACT_ANNIVERSARY
      description: Should be set only if signing_bonus is set. It defines when the bonus is paid.
      title: EorPostRequestBodyContentApplicationJsonSchemaDataCompensationDetailsSigningBonusPayoutType
    UpdateEorContractRequestInternalServerError:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/EorContractContractIdPatchResponsesContentApplicationJsonSchemaError'
      required:
      - error
      title: UpdateEorContractRequestInternalServerError
    EorPostRequestBodyContentApplicationJsonSchemaDataSeniority:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/EorPostRequestBodyContentApplicationJsonSchemaDataSeniorityId'
          description: Identifier for the seniority level (string or numeric ID).
      description: Seniority selection for the role.
      title: EorPostRequestBodyContentApplicationJsonSchemaDataSeniority
    EorPostResponsesContentApplicationJsonSchemaDataClientLegalEntity:
      type: object
      properties:
        name:
          type: string
          description: Legal entity name
      title: EorPostResponsesContentApplicationJsonSchemaDataClientLegalEntity
    EorPostResponsesContentApplicationJsonSchemaDataCostsSummary:
      type: object
      properties:
        salary:
          type: string
          description: Annual gross salary in local currency.
        currency:
          type: string
          description: Local currency code (e.g., BRL, PLN).
        exchange_rate:
          type: string
          description: Exchange rate used to convert from local to supporting currency.
        totals_formatted:
          type: array
          items:
            $ref: '#/components/schemas/EorPostResponsesContentApplicationJsonSchemaDataCostsSummaryTotalsFormattedItems'
          description: Formatted summary totals in both local and supporting currencies.
        supporting_currency:
          type: string
          description: Reference or secondary currency (e.g., USD) used for reporting totals.
      description: Top-level overview of costs, including key totals and currency metadata.
      title: EorPostResponsesContentApplicationJsonSchemaDataCostsSummary
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentCostsSectionsItemsGroupsItemsTotalsItems:
      type: object
      properties:
        total:
          type: string
          description: Group total in local currency.
        frequency:
          type: string
          description: How often the total is calculated (e.g., monthly, annual).
        total_supporting:
          type: string
          description: Group total in supporting currency.
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentCostsSectionsItemsGroupsItemsTotalsItems
    eor-contract_updateEORContract_Response_200:
      type: object
      properties:
        oid:
          type: string
          description: The unique identifier of the employee contract.
        status:
          $ref: '#/components/schemas/EorContractContractIdPatchResponsesContentApplicationJsonSchemaStatus'
          description: Current status of the contract
        scope_of_work:
          type: string
          description: Scope of work description.
      required:
      - oid
      - status
      title: eor-contract_updateEORContract_Response_200
    EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataQuoteAdditionalFields:
      type: object
      properties:
        employee_type:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataQuoteAdditionalFieldsEmployeeType'
          description: Type of employee
        qualifications:
          type: string
          description: Required qualifications
        scope_german_translation:
          type: string
          description: German translation of scope
        qualifications_german_translation:
          type: string
          description: German translation of qualifications
      description: Additional quote-specific information
      title: EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataQuoteAdditionalFields
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaSeniority:
      type: object
      properties:
        id:
          type: number
          format: double
          description: The unique identifier for the seniority level.
        name:
          type: string
          description: The name of the seniority level.
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaSeniority
    EorPostRequestBodyContentApplicationJsonSchemaDataEmploymentType:
      type: string
      enum:
      - Full-time
      - Part-time
      description: Is it a full-time contract or a part-time contract?
      title: EorPostRequestBodyContentApplicationJsonSchemaDataEmploymentType
    EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataReasonForFixedTerm:
      type: string
      enum:
      - SEASONAL_OR_TEMPORARY_WORK
      - PROJECT_BASED_EMPLOYMENT
      - REPLACEMENT_FOR_PERMANENT_STAFF
      - TRIAL_PERIODS_FOR_NEW_ROLES_OR_BUSINESSES
      description: Reason for fixed-term contract
      title: EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataReasonForFixedTerm
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaPayrollType:
      type: string
      enum:
      - BIMONTHLY
      - MONTHLY
      description: Payroll frequency for the contract
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaPayrollType
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentType:
      type: string
      enum:
      - Full-time
      - Part-time
      description: The type of employment.
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentType
    EorPostRequestBodyContentApplicationJsonSchemaDataBenefitsItems:
      type: object
      properties:
        plan_id:
          type: string
          description: The ID of a benefits plan to include in the calculation.
        cover_all:
          type: boolean
          description: Flag indicating if benefit will fully cover the employee.
        provider_id:
          type: string
          description: The ID of a benefits provider to include in the calculation.
        contribution:
          type: number
          format: double
          description: The amount the client will contribute for the benefit in the currency of the contract. Only taken into account if cover_all is set to false. For Unisure provider contribution is always in USD.
        cover_dependents:
          type: boolean
          description: Flag indicating if benefit will cover dependents. Only needed if cover_all is set to true.
      description: List of additional benefits to include in the calculation
      title: EorPostRequestBodyContentApplicationJsonSchemaDataBenefitsItems
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaContractType:
      type: string
      enum:
      - eor
      description: The type of contract.
      title: EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaContractType
    EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaData:
      type: object
      properties:
        scope:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataScope'
        salary:
          type: number
          format: double
          description: Annual salary amount
        benefits:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataBenefitsItems'
          description: Array of employee benefits
        currency:
          type: string
          description: Currency code for salary and benefits
        end_date:
          type:
          - string
          - 'null'
          format: date
          description: Employment end date
        holidays:
          type:
          - number
          - 'null'
          format: double
          description: Number of holiday days per year
        is_hourly:
          type:
          - boolean
          - 'null'
          description: Indicates if compensation is hourly
        job_title:
          type: string
          description: Job title (cannot be C-level position)
        work_visa:
          type:
          - boolean
          - 'null'
          description: Indicates if work visa is required
        start_date:
          type: string
          format: date
          description: Employment start date
        employee_id:
          type: string
          description: Employee's unique identifier
        hourly_rate:
          type:
          - number
          - 'null'
          format: double
          description: Hourly rate (required if is_hourly is true)
        is_resubmit:
          type:
          - boolean
          - 'null'
          description: Indicates if this is a resubmission
        schedule_id:
          type:
          - string
          - 'null'
          description: Unique identifier for the employee's work schedule
        seniority_id:
          type: number
          format: double
          description: Seniority level identifier
        work_pension:
          type:
          - boolean
          - 'null'
          description: Indicates if work pension is included
        signing_bonus:
          type:
          - number
          - 'null'
          format: double
          description: Signing bonus amount
        time_off_type:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataTimeOffType'
          description: Type of time off
        employee_email:
          type: string
          format: email
          description: Employee's email address
        seniority_date:
          type: string
          format: date
          description: Employee seniority date
        employment_type:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataEmploymentType'
          description: Type of employment
        sick_leave_days:
          type:
          - number
          - 'null'
          format: double
          description: Number of sick leave days per year
        employee_address:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataEmployeeAddress'
          description: Employee's address information
        employment_state:
          type:
          - string
          - 'null'
          description: State/Province of employment
        hiring_objective:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataHiringObjective'
          description: Objective for hiring
        probation_period:
          type:
          - number
          - 'null'
          format: double
          description: Probation period duration
        work_arrangement:
          oneOf:
          - $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataWorkArrangement'
          - type: 'null'
          description: Work arrangement type
        work_eligibility:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataWorkEligibility'
          description: Work eligibility documentation
        medical_insurance:
          type: boolean
          description: Medical insurance coverage
        contract_term_type:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataContractTermType'
          description: Type of contract term
        employee_last_name:
          type: string
          description: Employee's last name
        employment_country:
          type: string
          description: Country of employment
        notice_period_type:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataNoticePeriodType'
          description: Type of notice period
        employee_first_name:
          type: string
          description: Employee's first name
        work_hours_per_week:
          type: number
          format: double
          description: Working hours per week
        employee_nationality:
          type: string
          description: Employee's nationality
        reason_for_fixed_term:
          oneOf:
          - $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataReasonForFixedTerm'
          - type: 'null'
          description: Reason for fixed-term contract
        quote_additional_fields:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataQuoteAdditionalFields'
          description: Additional quote-specific information
        signing_bonus_payout_type:
          oneOf:
          - $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataSigningBonusPayoutType'
          - type: 'null'
          description: Determines when the signing bonus will be paid out
        hiring_objective_extra_info:
          type:
          - string
          - 'null'
          description: Additional information about hiring objective
        notice_period_after_probation:
          type: number
          format: double
          description: Notice period after probation (days)
        notice_period_during_probation:
          type: number
          format: double
          description: Notice period during probation (days)
        is_auto_quote_validation_passed:
          type:
          - boolean
          - 'null'
          description: Auto quote validation status
        probation_period_type_for_definite:
          $ref: '#/components/schemas/EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataProbationPeriodTypeForDefinite'
          description: Unit of time for probation period
        allow_consultant_equipment_reimbursement:
          type: boolean
          description: Allow equipment reimbursement for consultants
      required:
      - salary
      - job_title
      - start_date
      - employee_email
      - employment_type
      - employee_last_name
      - employment_country
      - employee_first_name
      title: EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaData
    EorContractContractIdPatchResponsesContentApplicationJsonSchemaError:
      type: object
      properties:
        code:
          type: string
          description: Error code identifier
        status:
          type: integer
          description: HTTP status code
        message:
          type: string
          description: Error message details
      title: EorContractContractIdPatchResponsesContentApplicationJsonSchemaError
    EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataTimeOffType:
      type: string
      enum:
      - STANDARD
      - SPECIFIC
      - PRORATED
      description: Type of time off
      title: EorContractContractIdPatchRequestBodyContentApplicationJsonSchemaDataTimeOffType
    EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentCostsSummary:
      type: object
      properties:
        salary:
          type: string
          description: Annual gross salary in local currency.
        currency:
          type: string
          description: Local currency code (e.g., BRL, PLN).
        exchange_rate:
          type: string
          description: Exchange rate used to convert from local to supporting currency.
        totals_formatted:
          type: array
          items:
            $ref: '#/components/schemas/EorContractsContractIdDetailsGetResponsesContentApplicationJsonSchemaEmploymentCostsSummaryTotalsFormattedItems'
          description: Formatted summary totals in both local and supporting currencies.
 

# --- truncated at 32 KB (94 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/deel/refs/heads/main/openapi/deel-subpackage-eorcontract-api-openapi.yml