{"openapi":"3.1.0","info":{"title":"Endpoints","version":"1.0.0"},"paths":{"/contracts/{contract_id}/amendments":{"post":{"operationId":"create-contract-amendment","summary":"Amend contract","description":"Submits an amendment to modify the details of an existing contract. If the contract is already signed or active, the amendment must be approved and re-signed before the changes 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":"Retrieves the paginated list of amendments associated with a given contract, with optional filtering by amendment status and sign status.\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"}}}}}}},"/contracts/{contract_id}/documents":{"post":{"operationId":"create-contract-document","summary":"Attach a file to contract","description":"Uploads a file and attaches it as a document to the specified contract by creating an amendment with the attachment. Only supported for ongoing_time_based, milestones, payg_tasks, time_based, pay_as_you_go_time_based, and eor contract types.\n **Token scopes**: `contracts:write`","tags":["subpackage_contractorHiring"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","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-hiring_createContractDocument_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":"A form to attach a file to contract document.","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"type":"string","format":"binary","description":"Upload the file you want to attach to this entry."}}}}}}}},"/contracts/{contract_id}/invite":{"get":{"operationId":"get-contract-invite","summary":"Get worker invite link","description":"Retrieves the signing invitation link generated for the worker on a contract, with optional localization via the `locale` parameter.\n **Token scopes**: `contracts:read`","tags":["subpackage_contractorHiring"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","required":true,"schema":{"type":"string"}},{"name":"locale","in":"query","description":"Locale to use for the invite link.","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-hiring_getContractInvite_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":"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"}}}}}}},"/contracts/{contract_id}/preview":{"get":{"operationId":"get-contract-preview","summary":"Preview a contract agreement","description":"Returns the rendered HTML content of an IC or EOR contract agreement for a given contract_id. If no templateId is provided, the default or currently assigned template is used. Global Payroll contract types are not supported.\n **Token scopes**: `contracts:read`, `worker:read`","tags":["subpackage_contractorHiring"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","required":true,"schema":{"type":"string"}},{"name":"templateId","in":"query","description":"ID of an existing contract template.","required":false,"schema":{"type":"string","format":"uuid"}},{"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":{"type":"object","properties":{}}}}},"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"}}}}}}},"/contracts/{contract_id}/invitations":{"delete":{"operationId":"get-contract-invitations","summary":"Remove invite","description":"Removes the active signing invitation from a contract to allow a new invitation to be issued to the worker.\n **Token scopes**: `contracts:write`","tags":["subpackage_contractorHiring"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","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 operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/contractor-hiring_getContractInvitations_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":"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"}}}}}},"post":{"operationId":"create-contract-invitation","summary":"Send contract to worker","description":"Sends a signing invitation email to a worker for the specified contract, setting their email as the expected signer. If the contract was previously rejected, resets its status back to a signing-eligible state. Can only be called if the worker has not already signed the contract.\n **Token scopes**: `contracts:write`","tags":["subpackage_contractorHiring"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","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-hiring_createContractInvitation_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":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdInvitationsPostRequestBodyContentApplicationJsonSchemaData"}}}}}}}},"/contracts/{contract_id}/payment_cycles":{"get":{"operationId":"get-contract-payment-cycles","summary":"Retrieve contractor payment dates","description":"Fetches the scheduled payment dates and current status of each payment cycle for a specific contract.\n **Token scopes**: `contracts:read`","tags":["subpackage_contractorHiring"],"parameters":[{"name":"contract_id","in":"path","description":"The Deel contract ID for which payment dates are being retrieved.","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":"A successful response containing contractor payment dates.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/contractor-hiring_getContractPaymentCycles_Response_200"}}}},"401":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}},"403":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}}}}},"/contracts/{contract_id}/signatures":{"post":{"operationId":"create-contract-signature","summary":"Sign a contract","description":"Signs a contract on behalf of the client (employer), advancing the contract through the hiring workflow. When the contract is awaiting the client signature, it transitions to a pending-contractor-signature state. Can also be used to sign a pending amendment on an already active contract.\n **Token scopes**: `contracts:write`","tags":["subpackage_contractorHiring"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","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-hiring_createContractSignature_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":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdSignaturesPostRequestBodyContentApplicationJsonSchemaData"}}}}}}}},"/contracts/{contract_id}":{"patch":{"operationId":"update-ic-contract","summary":"Add external Id","description":"Sets an external identifier. Link your internal reference IDs, such as employee numbers or ERP keys, to a Deel worker. The external ID must be unique and, once set, can be used as a filter when listing contracts to directly look up Deel records from an external system.\n **Token scopes**: `contracts:write`","tags":["subpackage_contracts"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","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 operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/contracts_updateICContract_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":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddExternalIdRequestNotFoundError"}}}},"500":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}}},"requestBody":{"description":"Contract object that needs to be created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdPatchRequestBodyContentApplicationJsonSchemaData"}},"required":["data"]}}}}},"get":{"operationId":"get-contract","summary":"Retrieve a single contract","description":"Retrieves the full record for a specific contract by `contract_id`, including status, compensation, worker details, and metadata. Pass `expand=cost_centers` as a query parameter to include cost center data in the response.\n **Token scopes**: `contracts:read`","tags":["subpackage_contracts"],"parameters":[{"name":"contract_id","in":"path","description":"Unique identifier of the contract.","required":true,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Include cost centers in the response.","required":false,"schema":{"$ref":"#/components/schemas/ContractsContractIdGetParametersExpand"}},{"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/contracts_getContract_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":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetrieveASingleContract-v2026-01-01RequestNotFoundError"}}}},"500":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}}}}},"/contracts":{"post":{"operationId":"create-ic-contract","summary":"Create a new contract","description":"Creates a new contractor contract and returns it with its assigned `id`. After creation, invite the contractor to sign via `POST /contracts/{contract_id}/invitations`.\n **Token scopes**: `contracts:write`","tags":["subpackage_contracts"],"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":"Successful operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/contracts_createICContract_Response_201"}}}},"400":{"description":"Bad Request - Validation error or invalid parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateANewContract-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/ApiErrorContainer"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaData"}},"required":["data"]}}}}},"get":{"operationId":"get-contracts","summary":"List of contracts","description":"Returns a paginated list of contract summaries for the organization, with optional filtering by status, type, team, country, currency, external ID, or a name search term. Use `GET /contracts/{contract_id}` to retrieve full details for a specific contract.\n **Token scopes**: `contracts:read`","tags":["subpackage_contracts"],"parameters":[{"name":"after_cursor","in":"query","description":"Return next page of results after the given cursor.","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Return a page of results with the given number of records.","required":false,"schema":{"type":"string"}},{"name":"order_direction","in":"query","description":"Order direction of results; ascending or descending.","required":false,"schema":{"$ref":"#/components/schemas/ContractsGetParametersOrderDirection"}},{"name":"types","in":"query","description":"Filter contracts by type. A contract is included in the results if its type is in this list.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ContractsGetParametersTypesSchemaItems"}}},{"name":"statuses","in":"query","description":"Filter contracts by current status. A contract is included in the results if its status is in this list.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ContractsGetParametersStatusesSchemaItems"}}},{"name":"team_id","in":"query","description":"Filter contracts for the given team ID. NOTE: All query parameters are technically strings or arrays of strings.","required":false,"schema":{"type":"string"}},{"name":"external_id","in":"query","description":"Filter contracts for the given external ID.","required":false,"schema":{"type":"string"}},{"name":"external_id_absent","in":"query","description":"Filter contracts by external ID presence. When true, returns contracts without an external ID. When false, returns contracts with an external ID. Cannot be used with external_id query param when set to true.","required":false,"schema":{"type":"string"}},{"name":"countries","in":"query","description":"Filter contracts by country codes.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"currencies","in":"query","description":"Filter contracts by currency codes.","required":false,"schema":{"$ref":"#/components/schemas/ContractsGetParametersCurrencies"}},{"name":"search","in":"query","description":"Include a contract if its name or the contractor's name contains the given search term.","required":false,"schema":{"type":"string"}},{"name":"sort_by","in":"query","description":"Sort contracts by the given field name.","required":false,"schema":{"$ref":"#/components/schemas/ContractsGetParametersSortBy"}},{"name":"expand","in":"query","description":"Include cost centers in the response.","required":false,"schema":{"$ref":"#/components/schemas/ContractsGetParametersExpand"}},{"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/contracts_getContracts_Response_200"}}}},"400":{"description":"Bad Request - Validation error or invalid parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListOfContractsRequestBadRequestError"}}}},"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"}}}}}}},"/invoice-adjustments":{"post":{"operationId":"create-invoice-adjustment","summary":"Create an invoice adjustment","description":"Creates an invoice adjustment — such as a bonus, commission, VAT percentage, or deduction — against a contract. Pass the `recurring` query parameter to apply the adjustment automatically to future invoices.\n **Token scopes**: `invoice-adjustments:write`, `worker:write`","tags":["subpackage_invoiceAdjustments"],"parameters":[{"name":"recurring","in":"query","description":"Add this invoice adjustment as recurring","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":{"201":{"description":"Successful operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/invoice-adjustments_createInvoiceAdjustment_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":"InvoiceAdjustment object that needs to be created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvoiceAdjustmentsPostRequestBodyContentApplicationJsonSchemaData","description":"Details of invoice adjustment to create."}},"required":["data"]}}}}},"get":{"operationId":"get-invoice-adjustments","summary":"List invoice adjustments","description":"Returns invoice adjustments, optionally filtered by contract, adjustment type, status, invoice, reporter, or submission date range.\n **Token scopes**: `invoice-adjustments:read`","tags":["subpackage_invoiceAdjustments"],"parameters":[{"name":"contract_id","in":"query","description":"Id of an Deel contract.","required":false,"schema":{"type":"string"}},{"name":"contract_types","in":"query","description":"types of contracts to filter","required":false,"schema":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersContractTypes"}},{"name":"types","in":"query","description":"types of invoice adjustments to filter","required":false,"schema":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersTypes"}},{"name":"statuses","in":"query","description":"statuses of invoice adjustment to filter","required":false,"schema":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersStatuses"}},{"name":"invoice_id","in":"query","description":"ID of an existing invoice","required":false,"schema":{"type":"string"}},{"name":"reporter_id","in":"query","description":"ID of an existing profile","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"date_from","in":"query","description":"To get invoice adjustments submitted on or after given start date (inclusive). Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31.","required":false,"schema":{"type":"string","format":"date"}},{"name":"date_to","in":"query","description":"To get invoice adjustments submitted before given end date (excludes records submitted on this date). Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31.","required":false,"schema":{"type":"string","format":"date"}},{"name":"limit","in":"query","description":"Return a page of results with given number of records; NOTE: technically ALL query parameters are strings or array of strings","required":false,"schema":{"type":"string"}},{"name":"offset","in":"query","description":"Return a page of results after given index of row; NOTE: technically ALL query parameters are strings or array of strings","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/invoice-adjustments_getInvoiceAdjustments_Response_200"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListInvoiceAdjustments-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/ApiErrorContainer"}}}}}}},"/invoice-adjustments/{id}":{"delete":{"operationId":"delete-invoice-adjustment","summary":"Delete adjustment","description":"Permanently removes an invoice adjustment by its `id`.\n **Token scopes**: `invoice-adjustments:write`","tags":["subpackage_invoiceAdjustments"],"parameters":[{"name":"id","in":"path","description":"Invoice adjustment id.","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 operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/invoice-adjustments_deleteInvoiceAdjustment_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":"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"}}}}}},"get":{"operationId":"get-invoice-adjustment-by-id","summary":"Invoice line item by Id","description":"Retrieves a single invoice line item by its `id`.\n **Token scopes**: `invoice-adjustments:read`, `worker:read`","tags":["subpackage_invoiceAdjustments"],"parameters":[{"name":"id","in":"path","description":"ID of an existing invoice","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 operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/invoice-adjustments_getInvoiceAdjustmentById_Response_200"}}}},"400":{"description":"Fetch failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceLineItemById-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/ApiErrorContainer"}}}}}},"patch":{"operationId":"update-invoice-adjustment","summary":"Update an invoice adjustment","description":"Applies a partial update to an existing invoice adjustment; only fields included in the request body are modified.\n **Token scopes**: `invoice-adjustments:write`, `worker:write`","tags":["subpackage_invoiceAdjustments"],"parameters":[{"name":"id","in":"path","description":"Invoice adjustment id.","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 operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/invoice-adjustments_updateInvoiceAdjustment_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":"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":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdPatchRequestBodyContentApplicationJsonSchemaData","description":"Details of adjustment to update"}},"required":["data"]}}}}}},"/contracts/{contract_id}/invoice-adjustments":{"get":{"operationId":"get-contract-invoice-adjustments","summary":"Invoice line items by contract","description":"Retrieves invoice line items (adjustments) associated with a given contract_id, with support for filtering by contract type, adjustment type, status, invoice, reporter, and submission date range.\n **Token scopes**: `invoice-adjustments:read`","tags":["subpackage_invoiceAdjustments"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","required":true,"schema":{"type":"string"}},{"name":"contract_types","in":"query","description":"types of contracts to filter","required":false,"schema":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersContractTypes"}},{"name":"types","in":"query","description":"types of invoice adjustments to filter","required":false,"schema":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersTypes"}},{"name":"statuses","in":"query","description":"statuses of invoice adjustment to filter","required":false,"schema":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersStatuses"}},{"name":"invoice_id","in":"query","description":"ID of an existing invoice","required":false,"schema":{"type":"string"}},{"name":"reporter_id","in":"query","description":"ID of an existing profile","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"date_from","in":"query","description":"To get invoice adjustments submitted on or after given start date (inclusive).    Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31.","required":false,"schema":{"type":"string","format":"date"}},{"name":"date_to","in":"query","description":"To get invoice adjustments submitted before given end date (excludes records submitted on this date).    Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31.","required":false,"schema":{"type":"string","format":"date"}},{"name":"limit","in":"query","description":"Return a page of results with given number of records; NOTE: technically ALL query parameters are strings or array of strings","required":false,"schema":{"type":"string"}},{"name":"offset","in":"query","description":"Return a page of results after given index of row; NOTE: technically ALL query parameters are strings or array of strings","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/invoice-adjustments_getContractInvoiceAdjustments_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":"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"}}}}}}},"/invoice-adjustments/{id}/reviews":{"post":{"operationId":"create-invoice-adjustment-review","summary":"Review a single invoice adjustment","description":"Submits an approve or decline review decision for a single invoice adjustment.\n **Token scopes**: `invoice-adjustments:write`","tags":["subpackage_invoiceAdjustments"],"parameters":[{"name":"id","in":"path","description":"ID of an existing invoice adjustment.","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/invoice-adjustments_createInvoiceAdjustmentReview_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":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdReviewsPostRequestBodyContentApplicationJsonSchemaData"}},"required":["data"]}}}}}},"/contracts/{contract_id}/milestones":{"post":{"operationId":"create-contract-milestone","summary":"Create a Milestone","description":"Creates a new payment milestone on a milestone-based contract. After creation, the milestone enters a review workflow before payment is processed.\n **Token scopes**: `milestones:write`","tags":["subpackage_milestones"],"parameters":[{"name":"contract_id","in":"path","description":"The unique identifier of the Deel contract where the milestone will be added.","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":"Milestone created successfully.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/milestones_createContractMilestone_Response_201"}}}},"400":{"description":"Invalid request. The input data did not meet the required validation rules.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateMilestoneRequestBadRequestError"}}}},"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":"The specified contract ID does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateMilestoneRequestNotFoundError"}}}},"500":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}}},"requestBody":{"description":"The milestone object containing the required details to be added to the contract.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdMilestonesPostRequestBodyContentApplicationJsonSchemaData"}},"required":["data"]}}}}},"get":{"operationId":"get-contract-milestones","summary":"Retrieve Milestones by Contract","description":"Retrieves all milestones associated with a specific contract, including each milestone's title, amount, status, relevant dates, and creator and reviewer information.\n **Token scopes**: `milestones:read`","tags":["subpackage_milestones"],"parameters":[{"name":"contract_id","in":"path","description":"The unique identifier of the Deel contract for which milestones are being retrieved.","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":"A list of milestones for the specified contract.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/milestones_getContractMilestones_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":"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"}}}}}}},"/contracts/{contract_id}/milestones/{milestone_id}":{"delete":{"operationId":"delete-contract-milestone","summary":"Delete a Milestone","description":"Permanently deletes a specific milestone from a contract. This operation is irreversible and removes all associated milestone data.\n **Token scopes**: `milestones:write`","tags":["subpackage_milestones"],"parameters":[{"name":"contract_id","in":"path","description":"The unique identifier of the Deel contract from which the milestone will be deleted.","required":true,"schema":{"type":"string"}},{"name":"milestone_id","in":"path","description":"The unique identifier of the milestone that is to be deleted.","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":"Milestone successfully deleted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/milestones_deleteContractMilestone_Response_200"}}}},"400":{"description":"Invalid request. The provided contract or milestone ID is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteMilestoneByIdRequestBadRequestError"}}}},"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":"Contract or milestone not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteMilestoneByIdRequestNotFoundError"}}}},"500":{"description":"Server error. Something went wrong while processing the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteMilestoneByIdRequestInternalServerError"}}}}}},"get":{"operationId":"get-contract-milestone-by-id","summary":"Retrieve a single milestone","description":"Retrieves a single milestone identified by milestone_id within a specific contract.\n **Token scopes**: `milestones:read`","tags":["subpackage_milestones"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","required":true,"schema":{"type":"string"}},{"name":"milestone_id","in":"path","description":"ID of milestone to return","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 operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/milestones_getContractMilestoneById_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":"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"}}}}}}},"/contracts/{contract_id}/off-cycle-payments":{"post":{"operationId":"create-contract-off-cycle-payment","summary":"Add off-cycle payment","description":"Creates a new invoice line item for an off-cycle payment against a specific contract, for use when a payment must be issued outside the regular payment schedule.\n **Token scopes**: `off-cycle-payments:write`","tags":["subpackage_offCycle"],"parameters":[{"name":"contract_id","in":"path","description":"The unique identifier (ID) of the Deel contract for which the off-cycle payment is being created.","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":"The off-cycle payment was successfully created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/off-cycle_createContractOffCyclePayment_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"}}}}},"requestBody":{"description":"Details of the off-cycle payment to be created.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdOffCyclePaymentsPostRequestBodyContentApplicationJsonSchemaData"}}}}}}},"get":{"operationId":"get-contract-off-cycle-payments","summary":"List of off-cycle payments","description":"Retrieves all off-cycle payments for a specified contract. Off-cycle payments represent payments made outside the regular payment schedule, such as exceptional or one-time expenses.\n **Token scopes**: `off-cycle-payments:read`","tags":["subpackage_offCycle"],"parameters":[{"name":"contract_id","in":"path","description":"The unique identifier (ID) of the Deel contract for which to retrieve off-cycle payments.","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 retrieval of off-cycle payments.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/off-cycle_getContractOffCyclePayments_Response_200"}}}},"401":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}},"403":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}}}}},"/contracts/{contract_id}/off-cycle-payments/{id}":{"get":{"operationId":"get-contract-off-cycle-payment-by-id","summary":"Retrieve a single off-cycle payment","description":"Retrieves a single off-cycle payment identified by id within a specific contract.\n **Token scopes**: `off-cycle-payments:read`","tags":["subpackage_offCycle"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"Deel off-cycle payment id.","required":true,"schema":{"type":"string","format":"uuid"}},{"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/off-cycle_getContractOffCyclePaymentById_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":"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"}}}}}}},"/timesheets/presets":{"post":{"operationId":"create-timesheets-preset","summary":"Create Hourly Report Preset","description":"Creates a new hourly report preset, returning the assigned id upon success.\n **Token scopes**: `timesheets:write`","tags":["subpackage_projects"],"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":"Successful operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Projects_createTimesheetsPreset_Response_201"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateHourlyReportPresetRequestBadRequestError"}}}},"401":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateHourlyReportPresetRequestForbiddenError"}}}},"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":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsPresetsPostRequestBodyContentApplicationJsonSchemaData"}},"required":["data"]}}}}}},"/timesheets/root-presets":{"post":{"operationId":"create-root-timesheets-preset","summary":"Create Hourly Report Root Preset","description":"Creates a new hourly report root preset and initiates asynchronous processing; the response includes an async_task object that can be used to track completion.\n **Token scopes**: `timesheets:write`","tags":["subpackage_projects"],"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":{"200":{"description":"Successful operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Projects_createRootTimesheetsPreset_Response_200"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateHourlyReportRootPresetRequestBadRequestError"}}}},"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":{"content":{"application/json":{"schema":{"type":"object","properties":{"file":{"type":["string","null"],"format":"binary","description":"Optional file attachment for the root preset"},"type":{"$ref":"#/components/schemas/TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaType","description":"The type of preset, RATE – indicates a preset that overrides the default contract rate, TRACKING - used exclusively for tracking, applying the default contract rate"},"title":{"type":"string","description":"The title of the hourly report root preset (maximum 255 characters)"},"description":{"type":"string","description":"Detailed description of the root preset's purpose and usage (maximum 30000 characters)"},"hourly_report_presets":{"type":"array","items":{"$ref":"#/components/schemas/TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaHourlyReportPresetsItems"},"description":"Array of preset configurations to be created along with the root preset"},"hourly_report_presets_processing_type":{"$ref":"#/components/schemas/TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaHourlyReportPresetsProcessingType","description":"Determines whether presets should be processed synchronously or asynchronously"}},"required":["title"]}}}}}},"/timesheets/presets/{id}":{"delete":{"operationId":"delete-timesheets-preset","summary":"Delete Hourly Report Preset","description":"Permanently deletes an hourly report preset identified by id.\n **Token scopes**: `timesheets:write`","tags":["subpackage_projects"],"parameters":[{"name":"id","in":"path","description":"The unique identifier of the hourly report preset to delete","required":true,"schema":{"type":"string","format":"uuid"}},{"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/Projects_deleteTimesheetsPreset_Response_200"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteHourlyReportPresetRequestBadRequestError"}}}},"401":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteHourlyReportPresetRequestForbiddenError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteHourlyReportPresetRequestNotFoundError"}}}},"500":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}}}},"get":{"operationId":"get-timesheets-preset-by-id","summary":"Get Hourly Report Preset by ID","description":"Retrieves a single hourly report preset by its id.\n **Token scopes**: `timesheets:read`","tags":["subpackage_projects"],"parameters":[{"name":"id","in":"path","description":"The unique identifier of the hourly report preset to retrieve","required":true,"schema":{"type":"string","format":"uuid"}},{"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/Projects_getTimesheetsPresetById_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":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetHourlyReportPresetByIdRequestForbiddenError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetHourlyReportPresetByIdRequestNotFoundError"}}}},"500":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}}}},"patch":{"operationId":"update-timesheets-preset","summary":"Update Hourly Report Preset","description":"Applies a partial update to an existing hourly report preset identified by id. Only fields included in the request body are modified.\n **Token scopes**: `timesheets:write`","tags":["subpackage_projects"],"parameters":[{"name":"id","in":"path","description":"The unique identifier of the hourly report preset to update","required":true,"schema":{"type":"string","format":"uuid"}},{"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/Projects_updateTimesheetsPreset_Response_200"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateHourlyReportPresetRequestBadRequestError"}}}},"401":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateHourlyReportPresetRequestForbiddenError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateHourlyReportPresetRequestNotFoundError"}}}},"500":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsPresetsIdPatchRequestBodyContentApplicationJsonSchemaData"}},"required":["data"]}}}}}},"/contracts/{contract_id}/timesheets/presets":{"get":{"operationId":"get-contract-timesheets-presets","summary":"Get Hourly Report Presets","description":"Returns saved hourly report presets for the specified contract, optionally scoped to a work statement. Results support cursor-based pagination and can be ordered by title or creation date.\n **Token scopes**: `timesheets:read`","tags":["subpackage_projects"],"parameters":[{"name":"contract_id","in":"path","description":"ID of the Deel contract","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"work_statement_id","in":"query","description":"ID of the work statement (optional)","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"order_by","in":"query","description":"Field to order results by (title or created_at)","required":false,"schema":{"type":"string","default":"title"}},{"name":"order_direction","in":"query","description":"Direction of ordering (ASC or DESC)","required":false,"schema":{"type":"string","default":"ASC"}},{"name":"cursor","in":"query","description":"Pagination cursor for fetching next set of results","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Number of results to return per page","required":false,"schema":{"type":"integer","default":100}},{"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/Projects_getContractTimesheetsPresets_Response_200"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetHourlyReportPresetsRequestBadRequestError"}}}},"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"}}}}}}},"/contracts/{contract_id}/tasks":{"post":{"operationId":"create-contract-task","summary":"Create a new task","description":"Creates a new task for the contractor associated with the specified contract. A task can include an amount, description, and submission date.\n **Token scopes**: `contracts:write`","tags":["subpackage_tasks"],"parameters":[{"name":"contract_id","in":"path","description":"The unique Deel contract ID associated with the task.","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":"The task was successfully created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/tasks_createContractTask_Response_201"}}}},"400":{"description":"Bad request. Missing required fields or invalid data format.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateANewTaskRequestBadRequestError"}}}},"401":{"description":"Unauthorized. Authentication credentials are missing or invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateANewTaskRequestUnauthorizedError"}}}},"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":"Internal server error. An unexpected error occurred while processing the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateANewTaskRequestInternalServerError"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdTasksPostRequestBodyContentApplicationJsonSchemaData"}}}}}}},"get":{"operationId":"get-contract-tasks","summary":"List of tasks","description":"Retrieves all tasks associated with a specific contract, including each task's ID, amount, submission date, status, and description.\n **Token scopes**: `contracts:read`","tags":["subpackage_tasks"],"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 operation. A list of tasks associated with the specified contract.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/tasks_getContractTasks_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":"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"}}}}}}},"/contracts/{contract_id}/tasks/{task_id}":{"delete":{"operationId":"delete-contract-task","summary":"Delete task","description":"Deletes a specific task from a contract. An optional `reason` can be supplied for audit or documentation purposes.\n **Token scopes**: `contracts:write`","tags":["subpackage_tasks"],"parameters":[{"name":"contract_id","in":"path","description":"The unique identifier of the Deel contract.","required":true,"schema":{"type":"string"}},{"name":"task_id","in":"path","description":"The unique identifier of the task to be deleted.","required":true,"schema":{"type":"string"}},{"name":"reason","in":"query","description":"The reason for deleting the task. This can be used for auditing purposes.","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":"The task was successfully deleted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/tasks_deleteContractTask_Response_200"}}}},"400":{"description":"Invalid request. For example, missing required parameters or invalid format.","content":{"application/json":{"schema":{"description":"Any type"}}}},"401":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}},"403":{"description":"Permission denied. The user does not have the required access to delete the task.","content":{"application/json":{"schema":{"description":"Any type"}}}},"404":{"description":"The specified task or contract was not found.","content":{"application/json":{"schema":{"description":"Any type"}}}},"500":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}}}}},"/contracts/{contract_id}/tasks/{task_id}/reviews":{"post":{"operationId":"create-contract-task-review","summary":"Review a single task","description":"Submits an approval or rejection review for a task associated with a contract. If the review status is declined, an optional reason may be included in the request body.\n **Token scopes**: `contracts:write`","tags":["subpackage_tasks"],"parameters":[{"name":"contract_id","in":"path","description":"The unique Deel contract ID associated with the task.","required":true,"schema":{"type":"string"}},{"name":"task_id","in":"path","description":"The unique ID of the task to be reviewed.","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":"The task review was successfully processed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/tasks_createContractTaskReview_Response_201"}}}},"400":{"description":"Bad request. Missing required fields or invalid data format.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewASingleTaskRequestBadRequestError"}}}},"401":{"description":"Unauthorized. Authentication credentials are missing or invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewASingleTaskRequestUnauthorizedError"}}}},"403":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorContainer"}}}},"404":{"description":"Not found. The specified task or contract was not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewASingleTaskRequestNotFoundError"}}}},"500":{"description":"Internal server error. An unexpected error occurred while processing the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewASingleTaskRequestInternalServerError"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdTasksTaskIdReviewsPostRequestBodyContentApplicationJsonSchemaData"}}}}}}}},"/contracts/{contract_id}/terminations":{"delete":{"operationId":"delete-contract-termination","summary":"Delete Contract Termination Request","description":"Cancels a pending termination request for the specified contract, reverting the contract to its pre-termination state. Only termination requests that have not yet reached their effective date can be cancelled.\n **Token scopes**: `contracts:write`","tags":["subpackage_terminations"],"parameters":[{"name":"contract_id","in":"path","description":"Unique identifier for the 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":{"204":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/terminations_deleteContractTermination_Response_204"}}}},"400":{"description":"Operation failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteContractTerminationRequestRequestBadRequestError"}}}},"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/DeleteContractTerminationRequestRequestInternalServerError"}}}}}},"post":{"operationId":"create-contract-termination","summary":"Terminate contract","description":"Initiates termination of an active contract, recording the termination reason, effective date, and any final payment details. Can only be called on contracts that are currently active.\n **Token scopes**: `contracts:write`","tags":["subpackage_terminations"],"parameters":[{"name":"contract_id","in":"path","description":"The unique identifier of the contractor 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/terminations_createContractTermination_Response_201"}}}},"400":{"description":"Validation or business-rule failure. Possible codes: invalid_parameter (Joi schema violation, e.g. missing completion_date when terminate_now is false); contract_not_active (contract is not in an active state and cannot be terminated); invalid_completion_date (completion_date is in the past or otherwise invalid); invalid_termination_reason (termination_reason_id does not exist or is not applicable).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminateContract-v2026-01-01RequestBadRequestError"}}}},"401":{"description":"Missing or invalid bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminateContract-v2026-01-01RequestUnauthorizedError"}}}},"403":{"description":"Caller lacks permission to terminate this contract. Either the caller does not have the contracts.terminate permission, is not a CLIENT profile, or does not have access to the specified contract.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminateContract-v2026-01-01RequestForbiddenError"}}}},"404":{"description":"No active contract was found for the provided contract_id, or the caller does not have access to it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminateContract-v2026-01-01RequestNotFoundError"}}}},"409":{"description":"A termination request already exists for this contract and cannot be duplicated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminateContract-v2026-01-01RequestConflictError"}}}},"500":{"description":"Unhandled server error or downstream service failure during contract termination. The transaction is rolled back and no termination is persisted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TerminateContract-v2026-01-01RequestInternalServerError"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostRequestBodyContentApplicationJsonSchemaData","description":"Termination data. At minimum, you must provide either terminate_now: true (for immediate termination) OR completion_date (for scheduled termination)."}},"required":["data"]}}}}}},"/timesheets":{"post":{"operationId":"create-timesheet","summary":"Create a timesheet entry","description":"Creates a timesheet entry for an hourly contractor, recording the contract, date, hours worked, and an optional description. The entry is immediately placed into a review workflow upon creation.\n **Token scopes**: `timesheets:write`","tags":["subpackage_timesheets"],"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":"Successful operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/timesheets_createTimesheet_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":"Timesheet object that needs to be created","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsPostRequestBodyContentApplicationJsonSchemaData","description":"Details of the timesheet to create. Both a client or a contractor may create a timesheet."}},"required":["data"]}}}}},"get":{"operationId":"get-timesheets","summary":"List of timesheets","description":"Returns a paginated list of timesheets in the account, optionally filtered by contract_id, contract_types, statuses, reporter_id, or date range.\n **Token scopes**: `timesheets:read`","tags":["subpackage_timesheets"],"parameters":[{"name":"contract_id","in":"query","description":"Id of an Deel contract.","required":false,"schema":{"type":"string"}},{"name":"contract_types","in":"query","description":"types of contracts to filter","required":false,"schema":{"$ref":"#/components/schemas/TimesheetsGetParametersContractTypes"}},{"name":"statuses","in":"query","required":false,"schema":{"$ref":"#/components/schemas/TimesheetsGetParametersStatuses"}},{"name":"reporter_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"date_from","in":"query","required":false,"schema":{"type":"string","format":"date"}},{"name":"date_to","in":"query","required":false,"schema":{"type":"string","format":"date"}},{"name":"limit","in":"query","required":false,"schema":{"type":"string"}},{"name":"offset","in":"query","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/timesheets_getTimesheets_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":"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"}}}}}}},"/contracts/{contract_id}/timesheets":{"get":{"operationId":"get-contract-timesheets","summary":"List of timesheets by contract","description":"Returns timesheets associated with the specified contract, with optional filtering by contract type, status, reporter, and date range.\n **Token scopes**: `timesheets:read`","tags":["subpackage_timesheets"],"parameters":[{"name":"contract_id","in":"path","description":"Deel contract id.","required":true,"schema":{"type":"string"}},{"name":"contract_types","in":"query","description":"Types of contracts to filter.","required":false,"schema":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetParametersContractTypes"}},{"name":"statuses","in":"query","description":"Statuses of timesheets to filter.","required":false,"schema":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetParametersStatuses"}},{"name":"reporter_id","in":"query","description":"ID of an existing profile","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"date_from","in":"query","description":"Filtered results will include records created on or after the provided date. Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31.","required":false,"schema":{"type":"string","format":"date"}},{"name":"date_to","in":"query","description":"Filtered results will include records created before the provided date. Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31.","required":false,"schema":{"type":"string","format":"date"}},{"name":"limit","in":"query","description":"Return a page of results with given number of records; NOTE: technically ALL query parameters are strings or array of strings","required":false,"schema":{"type":"string"}},{"name":"offset","in":"query","description":"Return a page of results after given index of row","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/timesheets_getContractTimesheets_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":"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"}}}}}}},"/timesheets/{id}":{"get":{"operationId":"get-timesheet-by-id","summary":"Retrieve a single timesheet entry","description":"Returns a single timesheet entry.\n **Token scopes**: `timesheets:read`","tags":["subpackage_timesheets"],"parameters":[{"name":"id","in":"path","description":"ID of an existing timesheet","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 operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/timesheets_getTimesheetById_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":"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"}}}}}},"patch":{"operationId":"update-timesheet","summary":"Update a timesheet entry","description":"Partially updates an existing timesheet entry; only fields supplied in the request body are modified. Both clients and contractors may perform this operation.\n **Token scopes**: `timesheets:write`","tags":["subpackage_timesheets"],"parameters":[{"name":"id","in":"path","description":"ID of an existing timesheet.","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/timesheets_updateTimesheet_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":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsIdPatchRequestBodyContentApplicationJsonSchemaData"}},"required":["data"]}}}}}},"/timesheets/{id}/reviews":{"post":{"operationId":"create-timesheet-review","summary":"Review a single timesheet","description":"Submits an approve or reject decision for a timesheet entry. Approved timesheets are queued for inclusion in the next payment cycle.\n **Token scopes**: `timesheets:write`","tags":["subpackage_timesheets"],"parameters":[{"name":"id","in":"path","description":"ID of an existing timesheet","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/timesheets_createTimesheetReview_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":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsIdReviewsPostRequestBodyContentApplicationJsonSchemaData"}}}}}}}}},"servers":[{"url":"https://api.letsdeel.com/rest/v2"},{"url":"https://api-staging.letsdeel.com/rest/v2"}],"components":{"schemas":{"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"},"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"},"ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataSeniorityId":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"ContractsContractIdAmendmentsPostRequestBodyContentApplicationJsonSchemaDataSeniorityId"},"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"},"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"},"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"},"ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataScale":{"type":"string","enum":["hourly","daily","weekly","monthly","biweekly","semimonthly","custom"],"description":"Payment scale for the amended work statement.","title":"ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataScale"},"ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["initial","pending","active","outdated","approved","declined"],"description":"Status of the amended work statement.","title":"ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaDataStatus"},"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"},"contractor-amendments_createContractAmendment_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdAmendmentsPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"contractor-amendments_createContractAmendment_Response_201"},"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"},"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"},"ContractsContractIdAmendmentsGetParametersStatusesSchemaItems":{"type":"string","enum":["INITIAL","PENDING","ACTIVE","OUTDATED","APPROVED","DECLINED"],"title":"ContractsContractIdAmendmentsGetParametersStatusesSchemaItems"},"ContractsContractIdAmendmentsGetParametersSignStatusesSchemaItems":{"type":"string","enum":["PENDING","WAITING_FOR_APPROVAL","APPROVED","DECLINED"],"title":"ContractsContractIdAmendmentsGetParametersSignStatusesSchemaItems"},"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"},"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"},"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"},"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"},"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"},"ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaErrorsItems":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code"},"message":{"type":"string","description":"Human-readable explanation of the error"}},"title":"ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaErrorsItems"},"ListContractAmendments-v2026-01-01RequestBadRequestError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"ListContractAmendments-v2026-01-01RequestBadRequestError"},"ListContractAmendments-v2026-01-01RequestInternalServerError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdAmendmentsGetResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"ListContractAmendments-v2026-01-01RequestInternalServerError"},"ContractsContractIdDocumentsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"key":{"type":"string","description":"You can call attachments end-point, get key and URL to upload your file."},"filename":{"type":"string","description":"Original filename you used to upload using attachments end-point."}},"required":["key","filename"],"description":"This object is used for linking file attachments to your records.","title":"ContractsContractIdDocumentsPostResponsesContentApplicationJsonSchemaData"},"contractor-hiring_createContractDocument_Response_201":{"type":"object","properties":{"data":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdDocumentsPostResponsesContentApplicationJsonSchemaData"},{"type":"null"}],"description":"This object is used for linking file attachments to your records."}},"required":["data"],"title":"contractor-hiring_createContractDocument_Response_201"},"contractor-hiring_getContractInvite_Response_200":{"type":"object","properties":{"data":{"type":"string"}},"required":["data"],"title":"contractor-hiring_getContractInvite_Response_200"},"ContractsContractIdInvitationsDeleteResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"deleted":{"type":"boolean","description":"Confirms the deletion."}},"required":["deleted"],"title":"ContractsContractIdInvitationsDeleteResponsesContentApplicationJsonSchemaData"},"contractor-hiring_getContractInvitations_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdInvitationsDeleteResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"contractor-hiring_getContractInvitations_Response_200"},"ContractsContractIdPaymentCyclesGetResponsesContentApplicationJsonSchemaDataItemsStatus":{"type":"string","enum":["active","upcoming","awaiting_payment","overdue"],"description":"The current status of the payment cycle.","title":"ContractsContractIdPaymentCyclesGetResponsesContentApplicationJsonSchemaDataItemsStatus"},"ContractsContractIdPaymentCyclesGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the payment."},"status":{"$ref":"#/components/schemas/ContractsContractIdPaymentCyclesGetResponsesContentApplicationJsonSchemaDataItemsStatus","description":"The current status of the payment cycle."},"due_date":{"type":"string","format":"date-time","description":"The date and time when the payment is due."}},"required":["id","status","due_date"],"title":"ContractsContractIdPaymentCyclesGetResponsesContentApplicationJsonSchemaDataItems"},"contractor-hiring_getContractPaymentCycles_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdPaymentCyclesGetResponsesContentApplicationJsonSchemaDataItems"}}},"required":["data"],"title":"contractor-hiring_getContractPaymentCycles_Response_200"},"ContractsContractIdInvitationsPostRequestBodyContentApplicationJsonSchemaDataLocale":{"type":"string","enum":["en","es","fr","de","it","pt","pl","nn","nl","da","deAT","fi","sv","nlBE","ja"],"default":"en","description":"Locale of the email","title":"ContractsContractIdInvitationsPostRequestBodyContentApplicationJsonSchemaDataLocale"},"ContractsContractIdInvitationsPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"email":{"type":"string","format":"email","description":"Worker email"},"locale":{"$ref":"#/components/schemas/ContractsContractIdInvitationsPostRequestBodyContentApplicationJsonSchemaDataLocale","description":"Locale of the email"},"message":{"type":"string","description":"Message to the worker"}},"title":"ContractsContractIdInvitationsPostRequestBodyContentApplicationJsonSchemaData"},"ContractsContractIdInvitationsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"created":{"type":"boolean"}},"required":["created"],"title":"ContractsContractIdInvitationsPostResponsesContentApplicationJsonSchemaData"},"contractor-hiring_createContractInvitation_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdInvitationsPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"contractor-hiring_createContractInvitation_Response_201"},"ContractsContractIdSignaturesPostRequestBodyContentApplicationJsonSchemaDataContractTemplateId":{"oneOf":[{"type":"number","format":"double"},{"type":"string"}],"description":"Please use null to use default Deel contract template; otherwise you can use the template you created and customized. If template ID is not in payload, template stays unchanged.","title":"ContractsContractIdSignaturesPostRequestBodyContentApplicationJsonSchemaDataContractTemplateId"},"ContractsContractIdSignaturesPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"client_signature":{"type":"string","description":"Signature of client."},"contract_template_id":{"$ref":"#/components/schemas/ContractsContractIdSignaturesPostRequestBodyContentApplicationJsonSchemaDataContractTemplateId","description":"Please use null to use default Deel contract template; otherwise you can use the template you created and customized. If template ID is not in payload, template stays unchanged."}},"required":["client_signature"],"title":"ContractsContractIdSignaturesPostRequestBodyContentApplicationJsonSchemaData"},"ContractsContractIdSignaturesPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"created":{"type":"boolean"}},"required":["created"],"title":"ContractsContractIdSignaturesPostResponsesContentApplicationJsonSchemaData"},"contractor-hiring_createContractSignature_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdSignaturesPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"contractor-hiring_createContractSignature_Response_201"},"ContractsContractIdPatchRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"external_id":{"type":["string","null"],"description":"A unique identifier for the object provided by an external system. Use or send null when you want to reset the external id."}},"required":["external_id"],"title":"ContractsContractIdPatchRequestBodyContentApplicationJsonSchemaData"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","contractor_outside_deel","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of a contract.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaType"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaQuoteBenefitsItems":{"type":"object","properties":{"fee":{"type":"number","format":"double","description":"Fee in local currency."},"name":{"type":"string","description":"Benefit's name."},"plan":{"type":"string","description":"Benefit's plan."},"price":{"type":"number","format":"double","description":"Price in local currency."},"fee_usd":{"type":"number","format":"double","description":"Fee in USD."},"currency":{"type":"string","description":"Currency code."},"price_usd":{"type":"number","format":"double","description":"Price in USD."}},"title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaQuoteBenefitsItems"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaQuote":{"type":"object","properties":{"benefits":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaQuoteBenefitsItems"},"description":"Array of benefits."},"currency":{"type":"string","description":"Currency used for the quote."}},"description":"EOR quote approved by Deel.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaQuote"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaClientTeamId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaClientTeamId"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaClientTeam":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaClientTeamId","description":"Unique identifier of this resource."},"name":{"type":"string","description":"Name of a team."}},"required":["id","name"],"description":"Team information for the client organization.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaClientTeam"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaClientLegalEntity":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"name":{"type":"string","description":"Name of a team."},"type":{"type":["string","null"],"description":"Type of the legal entity."},"email":{"type":["string","null"],"description":"Email address of the legal entity."},"subtype":{"type":["string","null"],"description":"Sub-type of the legal entity."},"vat_number":{"type":["string","null"],"description":"VAT number of the legal entity."},"registration_number":{"type":["string","null"],"description":"Registration number of the legal entity."}},"description":"Legal entity details of the client.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaClientLegalEntity"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaClient":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"team":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaClientTeam","description":"Team information for the client organization."},"email":{"type":["string","null"],"description":"User's email address. It can be an empty string when no email has been provided for the worker. This can happen for draft contracts or workers with incomplete onboarding."},"full_name":{"type":"string","description":"Full name of the client."},"legal_entity":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaClientLegalEntity"},{"type":"null"}],"description":"Legal entity details of the client."}},"required":["team"],"description":"Client details associated with the contract.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaClient"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaStatus":{"type":"string","enum":["new","under_review","waiting_for_employee_contract","waiting_for_client_sign","processing_payment","waiting_for_contractor_sign","waiting_for_eor_sign","waiting_for_employee_sign","awaiting_deposit_payment","in_progress","completed","cancelled","user_cancelled","rejected","waiting_for_client_payment","onboarding","waiting_for_approval","onboarded"],"description":"Status of a contract in Deel workflow.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaStatus"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkerDateOfBirth2":{"type":"string","enum":[""],"description":"Empty string for unknown/unset values.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkerDateOfBirth2"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkerDateOfBirth":{"oneOf":[{"type":"string","format":"date-time"},{"type":"string","format":"date"},{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkerDateOfBirth2"}],"description":"Date of birth of the worker. Supports full date-time, date-only, or an empty string.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkerDateOfBirth"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkerAlternateEmailItems":{"type":"object","properties":{"email":{"type":"string","description":"Email address of the worker."},"isVerified":{"type":"boolean","description":"Indicates whether this alternate email address has been verified."}},"title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkerAlternateEmailItems"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorker":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"email":{"type":["string","null"],"format":"email","description":"User's email address."},"country":{"type":["string","null"],"description":"Country of the worker."},"full_name":{"type":"string","description":"Full name of the client."},"last_name":{"type":"string","description":"Last name of the worker."},"first_name":{"type":"string","description":"First name of the worker."},"nationality":{"type":["string","null"],"description":"Nationality of the worker."},"date_of_birth":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkerDateOfBirth","description":"Date of birth of the worker. Supports full date-time, date-only, or an empty string."},"expected_email":{"type":"string","description":"Expected email address of the worker (e.g., invitation target email)."},"alternate_email":{"type":["array","null"],"items":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkerAlternateEmailItems"},"description":"List of alternate email addresses."}},"description":"Worker details associated with the contract.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorker"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaSeniority":{"type":"object","properties":{"id":{"type":["number","null"],"format":"double","description":"Unique identifier of this resource."},"name":{"type":["string","null"],"description":"Name of seniority level e.g. Mid (Individual Contributor Level 2)."},"level":{"type":["number","null"],"format":"double","description":"Level of seniority level e.g. 2."}},"description":"Seniority describes level of expertise at a job e.g. junior.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaSeniority"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaSignatures":{"type":"object","properties":{"signed_at":{"type":["string","null"],"format":"date-time","description":"Date and time when the contract was signed."},"client_signature":{"type":"string","description":"Client representative signature (typically a name)."},"client_signed_at":{"type":["string","null"],"format":"date-time","description":"Date and time when the client signed the contract."},"worker_signature":{"type":"string","description":"Worker signature (typically a name)."},"worker_signed_at":{"type":["string","null"],"format":"date-time","description":"Date and time when the worker signed the contract."}},"description":"Signature information for the contract parties.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaSignatures"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaInvitations":{"type":"object","properties":{"client_email":{"type":["string","null"],"description":"User's email address."},"worker_email":{"type":["string","null"],"description":"User's email address."}},"description":"Invitation email addresses for signing the contract.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaInvitations"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaCostCentersItems":{"type":"object","properties":{"name":{"type":"string","description":"Cost center name."},"number":{"type":"string","description":"Cost center number."},"allocation_percentage":{"type":"number","format":"double","description":"Percentage of the cost center allocation."}},"title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaCostCentersItems"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaCustomFieldsItems":{"type":"object","properties":{"name":{"type":"string","description":"Custom field property name."},"value":{"type":"string","description":"Custom field property value."}},"description":"Customized attributes on contracts (Employee ID, Project code, etc).","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaCustomFieldsItems"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleDaysItemsDay":{"type":"string","enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],"description":"Day of the week","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleDaysItemsDay"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleDaysItems":{"type":"object","properties":{"day":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleDaysItemsDay","description":"Day of the week"},"end":{"type":["string","null"],"format":"time","description":"End time for the work day (HH:MM:SS format)"},"start":{"type":"string","format":"time","description":"Start time for the work day (HH:MM:SS format)"},"work_hours":{"type":"number","format":"double","description":"Number of working hours for this day"}},"required":["day","end","start","work_hours"],"description":"Defines working hours for a specific day of the week","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleDaysItems"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleWorkerTypesItems":{"type":"string","enum":["SALARIED_DIRECT_EMPLOYEE_PAYROLL","SALARIED_HRIS_DIRECT_EMPLOYEE","SALARIED_EOR_EMPLOYEE","HOURLY_EOR_EMPLOYEE","HOURLY_DIRECT_EMPLOYEE_PAYROLL"],"title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleWorkerTypesItems"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleEmploymentType":{"type":"string","enum":["FULL_TIME","PART_TIME","CONTRACT","TEMPORARY"],"description":"Type of employment arrangement","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleEmploymentType"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkSchedule":{"type":"object","properties":{"days":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleDaysItems"},"description":"Working days and hours configuration"},"name":{"type":"string","description":"Unique identifier or name for the work schedule"},"country":{"type":"string","description":"Country code where this work schedule applies (ISO 3166-1 alpha-2)"},"worker_types":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleWorkerTypesItems"},"description":"List of worker types that can use this schedule"},"employment_type":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkScheduleEmploymentType"},{"type":"null"}],"description":"Type of employment arrangement"},"work_schedule_type":{"type":"string","description":"Work schedule type"},"work_hours_per_week":{"type":"integer","description":"Total number of working hours per week"}},"required":["days","name","country","worker_types","work_schedule_type","work_hours_per_week"],"description":"Defines a work schedule including working days, hours, and employment details","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkSchedule"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaEmploymentType":{"type":"string","enum":["FULL_TIME","PART_TIME"],"description":"Type of employment.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaEmploymentType"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaContractTemplate":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of a contract template."},"title":{"type":"string","description":"Title of a contract template"}},"description":"Contract template details.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaContractTemplate"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaEmploymentDetails":{"type":"object","properties":{"type":{"type":"string","description":"Type of employment."},"days_per_week":{"type":"number","format":"double","description":"Number of days per week."},"hours_per_day":{"type":"number","format":"double","description":"Number of hours per day."},"probation_period":{"type":["number","null"],"format":"double","description":"Probation period in days."},"paid_vacation_days":{"type":"number","format":"double","description":"Number of paid vacation days."}},"description":"Employment-related details for the contract.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaEmploymentDetails"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaCompensationDetailsCycleEndType":{"type":"string","enum":["DAY_OF_WEEK","DAY_OF_LAST_WEEK","DAY_OF_MONTH"],"description":" Cycle end type","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaCompensationDetailsCycleEndType"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaCompensationDetails":{"type":"object","properties":{"scale":{"type":["string","null"],"description":"Scale of the payment."},"amount":{"type":["string","null"],"description":"Amount to be paid. This field can be excluded when creating a Pay-as-you-go task-based or Milestone contracts."},"cycle_end":{"type":["number","null"],"format":"double","description":"Day of the cycle end"},"frequency":{"type":"string","description":"Scale of the invoice cycle."},"currency_code":{"type":["string","null"],"description":"Currency code."},"first_payment":{"type":["string","null"],"description":"First payment amount."},"cycle_end_type":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaCompensationDetailsCycleEndType"},{"type":"null"}],"description":" Cycle end type"},"first_payment_date":{"type":["string","null"],"description":"First payment date."},"gross_annual_salary":{"type":["string","null"],"description":"Gross annual salary."},"gross_signing_bonus":{"type":["string","null"],"description":"Gross signing bonus."},"gross_variable_bonus":{"type":["string","null"],"description":"Gross variable bonus."}},"description":"Compensation and payment configuration for the contract.","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaCompensationDetails"},"contracts_updateICContract_Response_200":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the contract."},"type":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaType","description":"Type of a contract."},"quote":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaQuote","description":"EOR quote approved by Deel."},"title":{"type":"string","description":"Title of the contract."},"client":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaClient"},{"type":"null"}],"description":"Client details associated with the contract."},"status":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaStatus","description":"Status of a contract in Deel workflow."},"worker":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorker"},{"type":"null"}],"description":"Worker details associated with the contract."},"job_title":{"type":"string","description":"Job title associated with the contract."},"seniority":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaSeniority"},{"type":"null"}],"description":"Seniority describes level of expertise at a job e.g. junior."},"created_at":{"type":"string","format":"date-time","description":"Date and time when the contract was created."},"signatures":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaSignatures","description":"Signature information for the contract parties."},"start_date":{"type":"string","format":"date-time","description":"Date and time when the contract starts."},"updated_at":{"type":"string","format":"date-time","description":"Date and time when the contract was updated."},"external_id":{"type":["string","null"],"description":"External identifier of the contract."},"invitations":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaInvitations","description":"Invitation email addresses for signing the contract."},"is_archived":{"type":["boolean","null"],"description":"Flag to indicate if the contract is archived."},"who_reports":{"type":"string","description":"Who reports the hours."},"cost_centers":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaCostCentersItems"},"description":"List of cost centers associated with the contract."},"custom_fields":{"type":["array","null"],"items":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaCustomFieldsItems"},"description":"List of custom fields attached to the contract."},"notice_period":{"type":["number","null"],"format":"double","description":"Notice period in days."},"scope_of_work":{"type":["string","null"],"description":"Scope of work of the contract."},"work_schedule":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaWorkSchedule"},{"type":"null"}],"description":"Defines a work schedule including working days, hours, and employment details"},"special_clause":{"type":["string","null"],"description":"Special clause of the contract."},"employment_type":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaEmploymentType"},{"type":"null"}],"description":"Type of employment."},"termination_date":{"type":["string","null"],"description":"Date and time when the contract ends."},"contract_template":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaContractTemplate"},{"type":"null"}],"description":"Contract template details."},"work_statement_id":{"type":["string","null"],"description":"The unique identifier of the associated work statement."},"employment_details":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaEmploymentDetails","description":"Employment-related details for the contract."},"compensation_details":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaCompensationDetails","description":"Compensation and payment configuration for the contract."}},"required":["id","type","title","client","status","worker","created_at","signatures","start_date","updated_at","invitations","is_archived","special_clause","termination_date"],"title":"contracts_updateICContract_Response_200"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaErrorsItems":{"type":"object","properties":{"message":{"type":"string","description":"Error response"}},"required":["message"],"title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaErrorsItems"},"ContractsContractIdPatchResponsesContentApplicationJsonSchemaRequest":{"type":"object","properties":{"method":{"type":"string","description":"Method of the API"},"status":{"type":"number","format":"double","description":"Status of API response"}},"description":"Error request details","title":"ContractsContractIdPatchResponsesContentApplicationJsonSchemaRequest"},"AddExternalIdRequestNotFoundError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaErrorsItems"},"description":"Error messages"},"request":{"$ref":"#/components/schemas/ContractsContractIdPatchResponsesContentApplicationJsonSchemaRequest","description":"Error request details"}},"required":["errors"],"title":"AddExternalIdRequestNotFoundError"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Meta":{"type":"object","properties":{"is_main_income":{"type":"boolean","description":"Flag to indicate if the contract is the main income for the contractor."},"documents_required":{"type":"boolean","description":"Require the contractor to upload necessary compliance documents as per their country’s labor laws."}},"required":["documents_required"],"description":"Additional custom info about a contract","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Meta"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientTeamId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientTeamId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientTeam":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientTeamId","description":"Unique identifier of this resource."}},"required":["id"],"description":"Choose the Deel team for this contract. Use teams endpoint to retrieve a list of teams in your organization.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientTeam"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientLegalEntityId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientLegalEntityId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientLegalEntity":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientLegalEntityId","description":"Unique identifier of this resource."}},"required":["id"],"description":"Choose the Deel legal entity for this contract. Use legal entity endpoint to retrieve a list of legal entities in your organization.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientLegalEntity"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Client":{"type":"object","properties":{"team":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientTeam","description":"Choose the Deel team for this contract. Use teams endpoint to retrieve a list of teams in your organization."},"legal_entity":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0ClientLegalEntity","description":"Choose the Deel legal entity for this contract. Use legal entity endpoint to retrieve a list of legal entities in your organization."}},"required":["team","legal_entity"],"description":"Client details for the contract, including the legal entity and team.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Client"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Worker":{"type":"object","properties":{"last_name":{"type":["string","null"],"description":"Worker's last name"},"first_name":{"type":["string","null"],"description":"Worker's first name"},"work_email":{"type":["string","null"],"format":"email","description":"Worker's work email address."},"expected_email":{"type":["string","null"],"format":"email","description":"Worker's email address."}},"required":["first_name","expected_email"],"description":"Worker properties","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Worker"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0JobTitleId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0JobTitleId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0JobTitle":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0JobTitleId","description":"Unique identifier of this resource."},"name":{"type":["string","null"],"description":"Job title. Please leave it blank when entering an Id."}},"description":"Worker's job title. You can enter a custom job title or use a pre-defined job title using the Id retrieved in job-titles endpoint.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0JobTitle"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0SeniorityId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0SeniorityId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Seniority":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0SeniorityId","description":"Unique identifier of this resource."}},"description":"Job seniority level. Please use the seniority levels endpoint to retrieve the list of seniority levels.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Seniority"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0WhoReports":{"type":"string","enum":["both","client","contractor"],"description":"Flag to indicate who is supposed to provide regular reports","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0WhoReports"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Type":{"type":"string","enum":["pay_as_you_go_time_based"],"description":"Type of contract","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Type"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsFrequency":{"type":"string","enum":["weekly","monthly","biweekly","semimonthly","calendar-month"],"description":"Scale of the invoice cycle.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsFrequency"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsCycleEndType":{"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":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsCycleEndType"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsPaymentDueType":{"type":"string","enum":["REGULAR","WITHIN_MONTH","AFTER_MONTH","BEFORE_CYCLE_END"],"default":"REGULAR","description":"Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'. If the payment is due some days after the end of the month, enter 'AFTER_MONTH'. If the payment is due before the end of the invoice cycle, enter 'BEFORE_CYCLE_END'.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsPaymentDueType"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsScale":{"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":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsScale"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetails":{"type":"object","properties":{"amount":{"type":"number","format":"double","description":"Amount to be paid. This field can be excluded when creating a Pay-as-you-go task-based or Milestone contracts."},"cycle_end":{"type":"number","format":"double","description":"Date invoice cycle ends."},"frequency":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsFrequency","description":"Scale of the invoice cycle."},"currency_code":{"type":"string","description":"Currency code."},"first_payment":{"type":"number","format":"double","default":0,"description":"First payment amount."},"notice_period":{"type":"number","format":"double","default":10,"description":"Days before to notice the termination of contract for either party."},"cycle_end_type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsCycleEndType","description":"Cycle end can be weekly 1-7 (Monday = 1) or monthly 1-31."},"payment_due_days":{"type":"number","format":"double","description":"Number of days to pay the invoice."},"payment_due_type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsPaymentDueType","description":"Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'. If the payment is due some days after the end of the month, enter 'AFTER_MONTH'. If the payment is due before the end of the invoice cycle, enter 'BEFORE_CYCLE_END'."},"first_payment_date":{"type":["string","null"],"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."},"scale":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetailsScale","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."}},"required":["amount","cycle_end","frequency","currency_code","cycle_end_type","payment_due_days","payment_due_type","scale"],"title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetails"},"ContractsPostRequestBodyContentApplicationJsonSchemaData0":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Meta","description":"Additional custom info about a contract"},"title":{"type":"string","description":"The title of the contract."},"client":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Client","description":"Client details for the contract, including the legal entity and team."},"worker":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Worker"},{"type":"null"}],"description":"Worker properties"},"job_title":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0JobTitle","description":"Worker's job title. You can enter a custom job title or use a pre-defined job title using the Id retrieved in job-titles endpoint."},"seniority":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Seniority"},{"type":"null"}],"description":"Job seniority level. Please use the seniority levels endpoint to retrieve the list of seniority levels."},"state_code":{"type":["string","null"],"description":"The state or province code. Use country lookup endpoint to retrieve state codes."},"citizenship":{"type":["string","null"],"description":"ISO 3166-1 alpha-2 country code of the worker's citizenship."},"external_id":{"type":["string","null"],"description":"External Id."},"who_reports":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0WhoReports","description":"Flag to indicate who is supposed to provide regular reports"},"country_code":{"type":"string","description":"Country code."},"notice_period":{"type":"number","format":"double","default":10,"description":"Days before to notice the termination of contract for either party."},"scope_of_work":{"type":["string","null"],"description":"Describe the work to be performed."},"special_clause":{"type":["string","null"],"description":"Enter any special clause you may have."},"scope_of_work_id":{"type":["string","null"],"format":"uuid","description":"Existing scope of work public id"},"termination_date":{"type":["string","null"],"format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"contract_template_id":{"type":["string","null"],"description":"Contract Template Id."},"type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0Type","description":"Type of contract"},"start_date":{"type":"string","format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"compensation_details":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf0CompensationDetails","description":"Compensation and invoicing configuration for the contract."}},"required":["meta","title","client","job_title","type","start_date","compensation_details"],"description":"Details of contract to create","title":"ContractsPostRequestBodyContentApplicationJsonSchemaData0"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Meta":{"type":"object","properties":{"is_main_income":{"type":"boolean","description":"Flag to indicate if the contract is the main income for the contractor."},"documents_required":{"type":"boolean","description":"Require the contractor to upload necessary compliance documents as per their country’s labor laws."}},"required":["documents_required"],"description":"Additional custom info about a contract","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Meta"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientTeamId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientTeamId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientTeam":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientTeamId","description":"Unique identifier of this resource."}},"required":["id"],"description":"Choose the Deel team for this contract. Use teams endpoint to retrieve a list of teams in your organization.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientTeam"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientLegalEntityId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientLegalEntityId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientLegalEntity":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientLegalEntityId","description":"Unique identifier of this resource."}},"required":["id"],"description":"Choose the Deel legal entity for this contract. Use legal entity endpoint to retrieve a list of legal entities in your organization.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientLegalEntity"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Client":{"type":"object","properties":{"team":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientTeam","description":"Choose the Deel team for this contract. Use teams endpoint to retrieve a list of teams in your organization."},"legal_entity":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1ClientLegalEntity","description":"Choose the Deel legal entity for this contract. Use legal entity endpoint to retrieve a list of legal entities in your organization."}},"required":["team","legal_entity"],"description":"Client details for the contract, including the legal entity and team.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Client"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Worker":{"type":"object","properties":{"last_name":{"type":["string","null"],"description":"Worker's last name"},"first_name":{"type":["string","null"],"description":"Worker's first name"},"work_email":{"type":["string","null"],"format":"email","description":"Worker's work email address."},"expected_email":{"type":["string","null"],"format":"email","description":"Worker's email address."}},"required":["first_name","expected_email"],"description":"Worker properties","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Worker"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1JobTitleId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1JobTitleId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1JobTitle":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1JobTitleId","description":"Unique identifier of this resource."},"name":{"type":["string","null"],"description":"Job title. Please leave it blank when entering an Id."}},"description":"Worker's job title. You can enter a custom job title or use a pre-defined job title using the Id retrieved in job-titles endpoint.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1JobTitle"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1SeniorityId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1SeniorityId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Seniority":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1SeniorityId","description":"Unique identifier of this resource."}},"description":"Job seniority level. Please use the seniority levels endpoint to retrieve the list of seniority levels.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Seniority"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1WhoReports":{"type":"string","enum":["both","client","contractor"],"description":"Flag to indicate who is supposed to provide regular reports","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1WhoReports"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Type":{"type":"string","enum":["payg_tasks"],"description":"Type of contract","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Type"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetailsFrequency":{"type":"string","enum":["weekly","monthly","biweekly","semimonthly","calendar-month"],"description":"Scale of the invoice cycle.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetailsFrequency"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetailsCycleEndType":{"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":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetailsCycleEndType"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetailsPaymentDueType":{"type":"string","enum":["REGULAR","WITHIN_MONTH","AFTER_MONTH","BEFORE_CYCLE_END"],"default":"REGULAR","description":"Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'. If the payment is due some days after the end of the month, enter 'AFTER_MONTH'. If the payment is due before the end of the invoice cycle, enter 'BEFORE_CYCLE_END'.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetailsPaymentDueType"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetails":{"type":"object","properties":{"amount":{"type":"number","format":"double","description":"Amount to be paid. This field can be excluded when creating a Pay-as-you-go task-based or Milestone contracts."},"cycle_end":{"type":"number","format":"double","description":"Date invoice cycle ends."},"frequency":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetailsFrequency","description":"Scale of the invoice cycle."},"currency_code":{"type":"string","description":"Currency code."},"first_payment":{"type":"number","format":"double","default":0,"description":"First payment amount."},"notice_period":{"type":"number","format":"double","default":10,"description":"Days before to notice the termination of contract for either party."},"cycle_end_type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetailsCycleEndType","description":"Cycle end can be weekly 1-7 (Monday = 1) or monthly 1-31."},"payment_due_days":{"type":"number","format":"double","description":"Number of days to pay the invoice."},"payment_due_type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetailsPaymentDueType","description":"Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'. If the payment is due some days after the end of the month, enter 'AFTER_MONTH'. If the payment is due before the end of the invoice cycle, enter 'BEFORE_CYCLE_END'."},"first_payment_date":{"type":["string","null"],"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."}},"required":["cycle_end","frequency","currency_code","cycle_end_type","payment_due_days","payment_due_type"],"description":"Compensation and invoicing configuration for the contract.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetails"},"ContractsPostRequestBodyContentApplicationJsonSchemaData1":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Meta","description":"Additional custom info about a contract"},"title":{"type":"string","description":"The title of the contract."},"client":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Client","description":"Client details for the contract, including the legal entity and team."},"worker":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Worker"},{"type":"null"}],"description":"Worker properties"},"job_title":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1JobTitle","description":"Worker's job title. You can enter a custom job title or use a pre-defined job title using the Id retrieved in job-titles endpoint."},"seniority":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Seniority"},{"type":"null"}],"description":"Job seniority level. Please use the seniority levels endpoint to retrieve the list of seniority levels."},"state_code":{"type":["string","null"],"description":"The state or province code. Use country lookup endpoint to retrieve state codes."},"citizenship":{"type":["string","null"],"description":"ISO 3166-1 alpha-2 country code of the worker's citizenship."},"external_id":{"type":["string","null"],"description":"External Id."},"who_reports":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1WhoReports","description":"Flag to indicate who is supposed to provide regular reports"},"country_code":{"type":"string","description":"Country code."},"notice_period":{"type":"number","format":"double","default":10,"description":"Days before to notice the termination of contract for either party."},"scope_of_work":{"type":["string","null"],"description":"Describe the work to be performed."},"special_clause":{"type":["string","null"],"description":"Enter any special clause you may have."},"scope_of_work_id":{"type":["string","null"],"format":"uuid","description":"Existing scope of work public id"},"termination_date":{"type":["string","null"],"format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"contract_template_id":{"type":["string","null"],"description":"Contract Template Id."},"type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1Type","description":"Type of contract"},"start_date":{"type":"string","format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"compensation_details":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf1CompensationDetails","description":"Compensation and invoicing configuration for the contract."}},"required":["meta","title","client","job_title","type","start_date","compensation_details"],"description":"Details of contract to create","title":"ContractsPostRequestBodyContentApplicationJsonSchemaData1"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Meta":{"type":"object","properties":{"is_main_income":{"type":"boolean","description":"Flag to indicate if the contract is the main income for the contractor."},"documents_required":{"type":"boolean","description":"Require the contractor to upload necessary compliance documents as per their country’s labor laws."}},"required":["documents_required"],"description":"Additional custom info about a contract","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Meta"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientTeamId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientTeamId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientTeam":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientTeamId","description":"Unique identifier of this resource."}},"required":["id"],"description":"Choose the Deel team for this contract. Use teams endpoint to retrieve a list of teams in your organization.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientTeam"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientLegalEntityId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientLegalEntityId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientLegalEntity":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientLegalEntityId","description":"Unique identifier of this resource."}},"required":["id"],"description":"Choose the Deel legal entity for this contract. Use legal entity endpoint to retrieve a list of legal entities in your organization.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientLegalEntity"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Client":{"type":"object","properties":{"team":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientTeam","description":"Choose the Deel team for this contract. Use teams endpoint to retrieve a list of teams in your organization."},"legal_entity":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2ClientLegalEntity","description":"Choose the Deel legal entity for this contract. Use legal entity endpoint to retrieve a list of legal entities in your organization."}},"required":["team","legal_entity"],"description":"Client details for the contract, including the legal entity and team.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Client"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Worker":{"type":"object","properties":{"last_name":{"type":["string","null"],"description":"Worker's last name"},"first_name":{"type":["string","null"],"description":"Worker's first name"},"work_email":{"type":["string","null"],"format":"email","description":"Worker's work email address."},"expected_email":{"type":["string","null"],"format":"email","description":"Worker's email address."}},"required":["first_name","expected_email"],"description":"Worker properties","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Worker"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2JobTitleId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2JobTitleId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2JobTitle":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2JobTitleId","description":"Unique identifier of this resource."},"name":{"type":["string","null"],"description":"Job title. Please leave it blank when entering an Id."}},"description":"Worker's job title. You can enter a custom job title or use a pre-defined job title using the Id retrieved in job-titles endpoint.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2JobTitle"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2SeniorityId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2SeniorityId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Seniority":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2SeniorityId","description":"Unique identifier of this resource."}},"description":"Job seniority level. Please use the seniority levels endpoint to retrieve the list of seniority levels.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Seniority"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2WhoReports":{"type":"string","enum":["both","client","contractor"],"description":"Flag to indicate who is supposed to provide regular reports","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2WhoReports"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Type":{"type":"string","enum":["payg_milestones"],"description":"Type of contract","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Type"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetailsFrequency":{"type":"string","enum":["weekly","monthly","biweekly","semimonthly","calendar-month"],"description":"Scale of the invoice cycle.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetailsFrequency"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetailsCycleEndType":{"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":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetailsCycleEndType"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetailsPaymentDueType":{"type":"string","enum":["REGULAR","WITHIN_MONTH","AFTER_MONTH","BEFORE_CYCLE_END"],"default":"REGULAR","description":"Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'. If the payment is due some days after the end of the month, enter 'AFTER_MONTH'. If the payment is due before the end of the invoice cycle, enter 'BEFORE_CYCLE_END'.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetailsPaymentDueType"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetails":{"type":"object","properties":{"amount":{"type":"number","format":"double","description":"Amount to be paid. This field can be excluded when creating a Pay-as-you-go task-based or Milestone contracts."},"cycle_end":{"type":"number","format":"double","description":"Date invoice cycle ends."},"frequency":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetailsFrequency","description":"Scale of the invoice cycle."},"currency_code":{"type":"string","description":"Currency code."},"first_payment":{"type":"number","format":"double","default":0,"description":"First payment amount."},"notice_period":{"type":"number","format":"double","default":10,"description":"Days before to notice the termination of contract for either party."},"cycle_end_type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetailsCycleEndType","description":"Cycle end can be weekly 1-7 (Monday = 1) or monthly 1-31."},"payment_due_days":{"type":"number","format":"double","description":"Number of days to pay the invoice."},"payment_due_type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetailsPaymentDueType","description":"Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'. If the payment is due some days after the end of the month, enter 'AFTER_MONTH'. If the payment is due before the end of the invoice cycle, enter 'BEFORE_CYCLE_END'."},"first_payment_date":{"type":["string","null"],"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."}},"required":["cycle_end","frequency","currency_code","cycle_end_type","payment_due_days","payment_due_type"],"description":"Compensation and invoicing configuration for the contract.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetails"},"ContractsPostRequestBodyContentApplicationJsonSchemaData2":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Meta","description":"Additional custom info about a contract"},"title":{"type":"string","description":"The title of the contract."},"client":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Client","description":"Client details for the contract, including the legal entity and team."},"worker":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Worker"},{"type":"null"}],"description":"Worker properties"},"job_title":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2JobTitle","description":"Worker's job title. You can enter a custom job title or use a pre-defined job title using the Id retrieved in job-titles endpoint."},"seniority":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Seniority"},{"type":"null"}],"description":"Job seniority level. Please use the seniority levels endpoint to retrieve the list of seniority levels."},"state_code":{"type":["string","null"],"description":"The state or province code. Use country lookup endpoint to retrieve state codes."},"citizenship":{"type":["string","null"],"description":"ISO 3166-1 alpha-2 country code of the worker's citizenship."},"external_id":{"type":["string","null"],"description":"External Id."},"who_reports":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2WhoReports","description":"Flag to indicate who is supposed to provide regular reports"},"country_code":{"type":"string","description":"Country code."},"notice_period":{"type":"number","format":"double","default":10,"description":"Days before to notice the termination of contract for either party."},"scope_of_work":{"type":["string","null"],"description":"Describe the work to be performed."},"special_clause":{"type":["string","null"],"description":"Enter any special clause you may have."},"scope_of_work_id":{"type":["string","null"],"format":"uuid","description":"Existing scope of work public id"},"termination_date":{"type":["string","null"],"format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"contract_template_id":{"type":["string","null"],"description":"Contract Template Id."},"type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2Type","description":"Type of contract"},"start_date":{"type":["string","null"],"format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"compensation_details":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf2CompensationDetails","description":"Compensation and invoicing configuration for the contract."}},"required":["meta","title","client","job_title","type","compensation_details"],"description":"Details of contract to create","title":"ContractsPostRequestBodyContentApplicationJsonSchemaData2"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Meta":{"type":"object","properties":{"is_main_income":{"type":"boolean","description":"Flag to indicate if the contract is the main income for the contractor."},"documents_required":{"type":"boolean","description":"Require the contractor to upload necessary compliance documents as per their country’s labor laws."}},"required":["documents_required"],"description":"Additional custom info about a contract","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Meta"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientTeamId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientTeamId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientTeam":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientTeamId","description":"Unique identifier of this resource."}},"required":["id"],"description":"Choose the Deel team for this contract. Use teams endpoint to retrieve a list of teams in your organization.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientTeam"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientLegalEntityId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientLegalEntityId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientLegalEntity":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientLegalEntityId","description":"Unique identifier of this resource."}},"required":["id"],"description":"Choose the Deel legal entity for this contract. Use legal entity endpoint to retrieve a list of legal entities in your organization.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientLegalEntity"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Client":{"type":"object","properties":{"team":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientTeam","description":"Choose the Deel team for this contract. Use teams endpoint to retrieve a list of teams in your organization."},"legal_entity":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3ClientLegalEntity","description":"Choose the Deel legal entity for this contract. Use legal entity endpoint to retrieve a list of legal entities in your organization."}},"required":["team","legal_entity"],"description":"Client details for the contract, including the legal entity and team.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Client"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Worker":{"type":"object","properties":{"last_name":{"type":["string","null"],"description":"Worker's last name"},"first_name":{"type":["string","null"],"description":"Worker's first name"},"work_email":{"type":["string","null"],"format":"email","description":"Worker's work email address."},"expected_email":{"type":["string","null"],"format":"email","description":"Worker's email address."}},"required":["first_name","expected_email"],"description":"Worker properties","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Worker"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3JobTitleId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3JobTitleId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3JobTitle":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3JobTitleId","description":"Unique identifier of this resource."},"name":{"type":["string","null"],"description":"Job title. Please leave it blank when entering an Id."}},"description":"Worker's job title. You can enter a custom job title or use a pre-defined job title using the Id retrieved in job-titles endpoint.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3JobTitle"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3SeniorityId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3SeniorityId"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Seniority":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3SeniorityId","description":"Unique identifier of this resource."}},"description":"Job seniority level. Please use the seniority levels endpoint to retrieve the list of seniority levels.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Seniority"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3WhoReports":{"type":"string","enum":["both","client","contractor"],"description":"Flag to indicate who is supposed to provide regular reports","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3WhoReports"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Type":{"type":"string","enum":["ongoing_time_based"],"description":"Type of contract","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Type"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsFrequency":{"type":"string","enum":["weekly","monthly","biweekly","semimonthly","calendar-month"],"description":"Scale of the invoice cycle.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsFrequency"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsCycleEndType":{"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":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsCycleEndType"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsPaymentDueType":{"type":"string","enum":["REGULAR","WITHIN_MONTH","AFTER_MONTH","BEFORE_CYCLE_END"],"default":"REGULAR","description":"Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'. If the payment is due some days after the end of the month, enter 'AFTER_MONTH'. If the payment is due before the end of the invoice cycle, enter 'BEFORE_CYCLE_END'.","title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsPaymentDueType"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsScale":{"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":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsScale"},"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetails":{"type":"object","properties":{"amount":{"type":"number","format":"double","description":"Amount to be paid. This field can be excluded when creating a Pay-as-you-go task-based or Milestone contracts."},"cycle_end":{"type":"number","format":"double","description":"Date invoice cycle ends."},"frequency":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsFrequency","description":"Scale of the invoice cycle."},"currency_code":{"type":"string","description":"Currency code."},"first_payment":{"type":"number","format":"double","default":0,"description":"First payment amount."},"notice_period":{"type":"number","format":"double","default":10,"description":"Days before to notice the termination of contract for either party."},"cycle_end_type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsCycleEndType","description":"Cycle end can be weekly 1-7 (Monday = 1) or monthly 1-31."},"payment_due_days":{"type":"number","format":"double","description":"Number of days to pay the invoice."},"payment_due_type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsPaymentDueType","description":"Type of payment due. If the payment is due on the last day of month, enter 'WITHIN_MONTH'. If the payment is due some days after the end of the month, enter 'AFTER_MONTH'. If the payment is due before the end of the invoice cycle, enter 'BEFORE_CYCLE_END'."},"first_payment_date":{"type":["string","null"],"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."},"scale":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetailsScale","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."}},"required":["amount","cycle_end","frequency","currency_code","cycle_end_type","payment_due_days","payment_due_type","scale"],"title":"ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetails"},"ContractsPostRequestBodyContentApplicationJsonSchemaData3":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Meta","description":"Additional custom info about a contract"},"title":{"type":"string","description":"The title of the contract."},"client":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Client","description":"Client details for the contract, including the legal entity and team."},"worker":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Worker"},{"type":"null"}],"description":"Worker properties"},"job_title":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3JobTitle","description":"Worker's job title. You can enter a custom job title or use a pre-defined job title using the Id retrieved in job-titles endpoint."},"seniority":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Seniority"},{"type":"null"}],"description":"Job seniority level. Please use the seniority levels endpoint to retrieve the list of seniority levels."},"state_code":{"type":["string","null"],"description":"The state or province code. Use country lookup endpoint to retrieve state codes."},"citizenship":{"type":["string","null"],"description":"ISO 3166-1 alpha-2 country code of the worker's citizenship."},"external_id":{"type":["string","null"],"description":"External Id."},"who_reports":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3WhoReports","description":"Flag to indicate who is supposed to provide regular reports"},"country_code":{"type":"string","description":"Country code."},"notice_period":{"type":"number","format":"double","default":10,"description":"Days before to notice the termination of contract for either party."},"scope_of_work":{"type":["string","null"],"description":"Describe the work to be performed."},"special_clause":{"type":["string","null"],"description":"Enter any special clause you may have."},"scope_of_work_id":{"type":["string","null"],"format":"uuid","description":"Existing scope of work public id"},"termination_date":{"type":["string","null"],"format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"contract_template_id":{"type":["string","null"],"description":"Contract Template Id."},"type":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3Type","description":"Type of contract"},"start_date":{"type":"string","format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"compensation_details":{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaDataOneOf3CompensationDetails","description":"Compensation and invoicing configuration for the contract."}},"required":["meta","title","client","job_title","type","start_date","compensation_details"],"description":"Details of contract to create","title":"ContractsPostRequestBodyContentApplicationJsonSchemaData3"},"ContractsPostRequestBodyContentApplicationJsonSchemaData":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaData0"},{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaData1"},{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaData2"},{"$ref":"#/components/schemas/ContractsPostRequestBodyContentApplicationJsonSchemaData3"}],"title":"ContractsPostRequestBodyContentApplicationJsonSchemaData"},"ContractsPostResponsesContentApplicationJsonSchemaDataType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee"],"description":"Type of a contract","title":"ContractsPostResponsesContentApplicationJsonSchemaDataType"},"ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBenefitsItems":{"type":"object","properties":{"fee":{"type":"number","format":"double","description":"Fee in local currency"},"name":{"type":"string","description":"Benefit's name"},"plan":{"type":"string","description":"Benefit's plan"},"price":{"type":"number","format":"double","description":"Price in local currency"},"fee_usd":{"type":"number","format":"double","description":"Fee in USD"},"currency":{"type":"string","description":"Currency code."},"price_usd":{"type":"number","format":"double","description":"Price in USD"}},"title":"ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBenefitsItems"},"ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBreakdownCostsMonthlyCostsItems":{"type":"object","properties":{"name":{"type":"string","description":"Cost's name"},"total":{"type":"number","format":"double","description":"Total cost in local currency"},"currency":{"type":"string","description":"Currency code."},"total_usd":{"type":"number","format":"double","description":"Total cost in USD"}},"title":"ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBreakdownCostsMonthlyCostsItems"},"ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBreakdownCostsMonthly":{"type":"object","properties":{"costs":{"type":"array","items":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBreakdownCostsMonthlyCostsItems"},"description":"List of individual monthly cost line items included in the quote."},"total":{"type":"number","format":"double","description":"Total costs in local currency"},"total_usd":{"type":"number","format":"double","description":"Total costs in USD"}},"description":"Monthly cost breakdown for the quote.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBreakdownCostsMonthly"},"ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBreakdownCosts":{"type":"object","properties":{"monthly":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBreakdownCostsMonthly","description":"Monthly cost breakdown for the quote."}},"description":"Cost breakdown for the quote, grouped by billing cadence (e.g., monthly).","title":"ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBreakdownCosts"},"ContractsPostResponsesContentApplicationJsonSchemaDataQuote":{"type":"object","properties":{"benefits":{"type":"array","items":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBenefitsItems"},"description":"Array of benefits"},"currency":{"type":"string","description":"Currency code."},"cba_total":{"type":"number","format":"double","description":"Total CBA in local currency"},"created_at":{"type":["string","null"],"format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"updated_at":{"type":["string","null"],"format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"salary_total":{"type":"number","format":"double","description":"Total salary in local currency"},"annual_salary":{"type":"number","format":"double","description":"Annual Salary in local currency"},"cba_total_usd":{"type":"number","format":"double","description":"Total CBA in USD"},"breakdown_costs":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataQuoteBreakdownCosts","description":"Cost breakdown for the quote, grouped by billing cadence (e.g., monthly)."},"salary_total_usd":{"type":"number","format":"double","description":"Total salary in USD"},"gross_salary_total":{"type":"number","format":"double","description":"Total gross salary in local currency"},"mobility_fee_total":{"type":"number","format":"double","description":"Total mobility fee in local currency"},"monthly_cost_total":{"type":"number","format":"double","description":"Total monthly cost in local currency"},"platform_fee_total":{"type":"number","format":"double","description":"Total platform fee in local currency"},"employer_cost_total":{"type":"number","format":"double","description":"Total employer cost in local currency"},"gross_salary_total_usd":{"type":"number","format":"double","description":"Total gross salary in USD"},"mobility_fee_total_usd":{"type":"number","format":"double","description":"Total mobility fee in USD"},"monthly_cost_total_usd":{"type":"number","format":"double","description":"Total monthly cost in USD"},"platform_fee_total_usd":{"type":"number","format":"double","description":"Total platform fee in USD"},"employer_cost_total_usd":{"type":"number","format":"double","description":"Total employer cost in USD"},"severance_accrual_total":{"type":"number","format":"double","description":"Total severance accrual in local currency"},"recurring_allowance_total":{"type":"number","format":"double","description":"Total recurring allowance in local currency"},"severance_accrual_total_usd":{"type":"number","format":"double","description":"Total severance accrual in USD"},"recurring_allowance_total_usd":{"type":"number","format":"double","description":"Total recurring allowance in USD"}},"description":"EOR quote approved by Deel","title":"ContractsPostResponsesContentApplicationJsonSchemaDataQuote"},"ContractsPostResponsesContentApplicationJsonSchemaDataClientTeam":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"name":{"type":"string","description":"Name of a team"}},"required":["id","name"],"description":"Team information for the client organization.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataClientTeam"},"ContractsPostResponsesContentApplicationJsonSchemaDataClientLegalEntityType":{"type":"string","enum":["individual","company"],"description":"Type of a legal entity","title":"ContractsPostResponsesContentApplicationJsonSchemaDataClientLegalEntityType"},"ContractsPostResponsesContentApplicationJsonSchemaDataClientLegalEntity":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"name":{"type":"string","description":"Name of a legal entity"},"type":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataClientLegalEntityType","description":"Type of a legal entity"},"email":{"type":["string","null"],"description":"User's email address."},"subtype":{"type":"string","description":"Subtype of a legal entity"},"vat_number":{"type":"string","description":"VAT number of a legal entity"},"registration_number":{"type":"string","description":"Registration number of a legal entity"}},"required":["id","name","type","email","subtype","vat_number","registration_number"],"description":"Legal entity information for the client organization.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataClientLegalEntity"},"ContractsPostResponsesContentApplicationJsonSchemaDataClient":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"team":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataClientTeam","description":"Team information for the client organization."},"email":{"type":["string","null"],"format":"email","description":"User's email address."},"full_name":{"type":"string","description":"User's full name."},"legal_entity":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataClientLegalEntity"},{"type":"null"}],"description":"Legal entity information for the client organization."}},"required":["team","legal_entity"],"description":"Client details associated with the contract.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataClient"},"ContractsPostResponsesContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["new","under_review","waiting_for_employee_contract","waiting_for_client_sign","processing_payment","waiting_for_contractor_sign","waiting_for_eor_sign","waiting_for_employee_sign","awaiting_deposit_payment","in_progress","completed","cancelled","user_cancelled","rejected","waiting_for_client_payment"],"description":"Status of a contract in Deel workflow","title":"ContractsPostResponsesContentApplicationJsonSchemaDataStatus"},"ContractsPostResponsesContentApplicationJsonSchemaDataWorkerLegalEntityType":{"type":"string","enum":["individual","company"],"description":"Type of a legal entity","title":"ContractsPostResponsesContentApplicationJsonSchemaDataWorkerLegalEntityType"},"ContractsPostResponsesContentApplicationJsonSchemaDataWorkerLegalEntity":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataWorkerLegalEntityType","description":"Type of a legal entity"},"personal_name":{"type":"string","description":"Name of a legal entity"},"registration_number":{"type":"string","description":"Registration number of a legal entity"}},"required":["type","personal_name","registration_number"],"description":"Worker legal entity information, if applicable.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataWorkerLegalEntity"},"ContractsPostResponsesContentApplicationJsonSchemaDataWorkerAlternateEmailItems":{"type":"object","properties":{"email":{"type":["string","null"],"format":"email","description":"User's email address."},"isVerified":{"type":"boolean","description":"True if email has been verified"}},"required":["email","isVerified"],"title":"ContractsPostResponsesContentApplicationJsonSchemaDataWorkerAlternateEmailItems"},"ContractsPostResponsesContentApplicationJsonSchemaDataWorker":{"type":"object","properties":{"id":{"type":["string","null"],"description":"A unique identifier for this resource."},"email":{"type":["string","null"],"format":"email","description":"User's email address."},"image":{"type":"string","format":"url","description":"URL to worker's image"},"country":{"type":["string","null"],"description":"Worker's country (location not nationality)"},"full_name":{"type":"string","description":"Worker's full name."},"last_name":{"type":["string","null"],"description":"Worker's last name"},"first_name":{"type":["string","null"],"description":"Worker's first name"},"nationality":{"type":["string","null"],"description":"Worker's nationality."},"legal_entity":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataWorkerLegalEntity","description":"Worker legal entity information, if applicable."},"date_of_birth":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"},"expected_email":{"type":["string","null"],"format":"email","description":"Worker's email address."},"alternate_email":{"type":"array","items":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataWorkerAlternateEmailItems"},"description":"List of alternate email addresses."}},"description":"Worker details associated with the contract.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataWorker"},"ContractsPostResponsesContentApplicationJsonSchemaDataSeniority":{"type":"object","properties":{"id":{"type":"number","format":"double","description":"Unique identifier of this resource."},"name":{"type":"string","description":"Name of seniority level e.g. Mid (Individual Contributor Level 2)"},"level":{"type":["number","null"],"format":"double","description":"Level of seniority level e.g. 2"}},"required":["id","name"],"description":"Seniority describes level of expertise at a job e.g. junior","title":"ContractsPostResponsesContentApplicationJsonSchemaDataSeniority"},"ContractsPostResponsesContentApplicationJsonSchemaDataSignatures":{"type":"object","properties":{"signed_at":{"type":["string","null"],"description":"Long date-time format following ISO-8601"},"client_signature":{"type":"string","description":"normally name of client is used as signature"},"client_signed_at":{"type":["string","null"],"description":"Long date-time format following ISO-8601"},"worker_signature":{"type":"string","description":"Signatures of client representative."},"worker_signed_at":{"type":["string","null"],"description":"Long date-time format following ISO-8601"}},"required":["signed_at","client_signature","client_signed_at","worker_signature","worker_signed_at"],"description":"List of signatures recorded for this contract.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataSignatures"},"ContractsPostResponsesContentApplicationJsonSchemaDataInvitations":{"type":"object","properties":{"client_email":{"type":["string","null"],"description":"User's email address."},"worker_email":{"type":["string","null"],"description":"User's email address."}},"description":"List of signature invitations sent for this contract.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataInvitations"},"ContractsPostResponsesContentApplicationJsonSchemaDataWhoReports":{"type":"string","enum":["both","client","contractor",""],"description":"Flag to indicate who is supposed to provide regular reports","title":"ContractsPostResponsesContentApplicationJsonSchemaDataWhoReports"},"ContractsPostResponsesContentApplicationJsonSchemaDataCustomFieldsItems":{"type":"object","properties":{"name":{"type":"string","description":"Custom field property name."},"value":{"type":"string","description":"Custom field property value."}},"description":"Customized attributes on contracts (Employee ID, Project code, etc).","title":"ContractsPostResponsesContentApplicationJsonSchemaDataCustomFieldsItems"},"ContractsPostResponsesContentApplicationJsonSchemaDataTerminationDate1":{"type":"string","enum":[""],"title":"ContractsPostResponsesContentApplicationJsonSchemaDataTerminationDate1"},"ContractsPostResponsesContentApplicationJsonSchemaDataTerminationDate":{"oneOf":[{"type":"string","format":"date-time"},{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataTerminationDate1"}],"description":"Contract termination date. When present, it is a date-time string in ISO-8601 format.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataTerminationDate"},"ContractsPostResponsesContentApplicationJsonSchemaDataEmploymentDetails":{"type":"object","properties":{"type":{"type":"string","description":"Employment type classification for the contract."},"state":{"type":["string","null"],"description":"State code."},"country":{"type":"string","description":"Country code."},"days_per_week":{"type":"number","format":"double","description":"Number of days per week"},"hours_per_day":{"type":"number","format":"double","description":"Number of hours per day"},"probation_period":{"type":["number","null"],"format":"double","description":"Number of days for probation period"},"paid_vacation_days":{"type":"number","format":"double","description":"Number of paid vacation days"}},"required":["type","days_per_week","hours_per_day","probation_period","paid_vacation_days"],"description":"Employment-related details for the contract, when applicable.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataEmploymentDetails"},"ContractsPostResponsesContentApplicationJsonSchemaDataCompensationDetails":{"type":"object","properties":{"scale":{"type":"string","description":"Scale of compensation"},"amount":{"type":["string","null"],"description":"Amount of compensation"},"frequency":{"type":"string","description":"Frequency of compensation"},"currency_code":{"type":"string","description":"Currency code."},"first_payment":{"type":["string","null"],"description":"First payment"},"first_payment_date":{"type":["string","null"],"description":"Long date-time format following ISO-8601"},"gross_annual_salary":{"type":["string","null"],"description":"Gross annual salary"},"gross_signing_bonus":{"type":["string","null"],"description":"Gross signing bonus"},"gross_variable_bonus":{"type":["string","null"],"description":"Gross variable bonus"}},"required":["scale","amount","frequency","currency_code","first_payment","first_payment_date","gross_annual_salary","gross_signing_bonus","gross_variable_bonus"],"description":"Compensation configuration and payment schedule details for the contract.","title":"ContractsPostResponsesContentApplicationJsonSchemaDataCompensationDetails"},"ContractsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","description":"The public id of the object"},"type":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataType","description":"Type of a contract"},"quote":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataQuote","description":"EOR quote approved by Deel"},"title":{"type":"string","description":"Title of a contract"},"client":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataClient"},{"type":"null"}],"description":"Client details associated with the contract."},"status":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataStatus","description":"Status of a contract in Deel workflow"},"worker":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataWorker"},{"type":"null"}],"description":"Worker details associated with the contract."},"job_title":{"type":"string","description":"Job title associated with the contract."},"seniority":{"oneOf":[{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataSeniority"},{"type":"null"}],"description":"Seniority describes level of expertise at a job e.g. junior"},"created_at":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"},"signatures":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataSignatures","description":"List of signatures recorded for this contract."},"start_date":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"},"external_id":{"type":["string","null"],"description":"A unique identifier for the object provided by an external system."},"invitations":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataInvitations","description":"List of signature invitations sent for this contract."},"is_archived":{"type":"boolean","description":"Flag to indicate if the contract is archived"},"who_reports":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataWhoReports","description":"Flag to indicate who is supposed to provide regular reports"},"custom_fields":{"type":"array","items":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataCustomFieldsItems"},"description":"Custom fields attached to the contract."},"notice_period":{"type":"number","format":"double","default":10,"description":"Days before to notice the termination of contract for either party."},"scope_of_work":{"type":["string","null"],"description":"Scope of work for the contract"},"special_clause":{"type":"string","description":"Special clause for the contract"},"termination_date":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataTerminationDate","description":"Contract termination date. When present, it is a date-time string in ISO-8601 format."},"work_statement_id":{"type":"string","description":"The public unique identifier of the work statement"},"employment_details":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataEmploymentDetails","description":"Employment-related details for the contract, when applicable."},"compensation_details":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaDataCompensationDetails","description":"Compensation configuration and payment schedule details for the contract."}},"required":["id","type","title","client","status","worker","job_title","created_at","signatures","start_date","invitations","is_archived","special_clause","termination_date","work_statement_id","employment_details","compensation_details"],"title":"ContractsPostResponsesContentApplicationJsonSchemaData"},"contracts_createICContract_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"contracts_createICContract_Response_201"},"ContractsPostResponsesContentApplicationJsonSchemaErrorsItems":{"type":"object","properties":{"message":{"type":"string","description":"Error response"}},"required":["message"],"title":"ContractsPostResponsesContentApplicationJsonSchemaErrorsItems"},"ContractsPostResponsesContentApplicationJsonSchemaRequest":{"type":"object","properties":{"method":{"type":"string","description":"Method of the API"},"status":{"type":"number","format":"double","description":"Status of API response"}},"description":"Error request details","title":"ContractsPostResponsesContentApplicationJsonSchemaRequest"},"CreateANewContract-v2026-01-01RequestBadRequestError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaErrorsItems"},"description":"Error messages"},"request":{"$ref":"#/components/schemas/ContractsPostResponsesContentApplicationJsonSchemaRequest","description":"Error request details"}},"required":["errors"],"title":"CreateANewContract-v2026-01-01RequestBadRequestError"},"ContractsGetParametersOrderDirection":{"type":"string","enum":["asc","desc"],"title":"ContractsGetParametersOrderDirection"},"ContractsGetParametersTypesSchemaItems":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","peo","unknown","employee","global_payroll","shield_msa","hris_direct_employee","contractor_outside_deel"],"description":"Type of a contract.","title":"ContractsGetParametersTypesSchemaItems"},"ContractsGetParametersStatusesSchemaItems":{"type":"string","enum":["new","under_review","waiting_for_employee_contract","waiting_for_client_sign","processing_payment","waiting_for_contractor_sign","waiting_for_eor_sign","waiting_for_employee_sign","awaiting_deposit_payment","in_progress","completed","cancelled","user_cancelled","rejected","waiting_for_client_payment","onboarding","onboarded"],"description":"Status of a contract in Deel workflow.","title":"ContractsGetParametersStatusesSchemaItems"},"ContractsGetParametersCurrencies":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}],"title":"ContractsGetParametersCurrencies"},"ContractsGetParametersSortBy":{"type":"string","enum":["contract_title","worker_name"],"title":"ContractsGetParametersSortBy"},"ContractsGetParametersExpand":{"type":"string","enum":["cost_centers"],"title":"ContractsGetParametersExpand"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","peo","employee","global_payroll","shield_msa","hris_direct_employee","contractor_outside_deel"],"description":"Type of a contract.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsType"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsClientTeam":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"name":{"type":["string","null"],"description":"Name of a team."}},"required":["id","name"],"description":"Team information for the client.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsClientTeam"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsClient":{"type":"object","properties":{"team":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsClientTeam","description":"Team information for the client."}},"description":"Client information associated with the contract.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsClient"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsStatus":{"type":"string","enum":["new","under_review","waiting_for_approval","waiting_for_employee_contract","waiting_for_client_sign","processing_payment","waiting_for_contractor_sign","waiting_for_eor_sign","waiting_for_employee_sign","waiting_for_hris_employee_sign","awaiting_deposit_payment","in_progress","completed","cancelled","user_cancelled","rejected","waiting_for_client_payment","onboarding","onboarded"],"description":"Status of a contract in Deel workflow.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsWorkerAlternateEmailItems":{"type":"object","properties":{"email":{"type":["string","null"],"format":"email","description":"User's email address."},"isVerified":{"type":"boolean","description":"Indicates whether the alternate email address is verified."}},"description":"Alternate email address object.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsWorkerAlternateEmailItems"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsWorker":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"email":{"type":["string","null"],"description":"User's email address."},"image":{"type":["string","null"],"format":"uri","description":"URL of the worker's profile image."},"full_name":{"type":"string","description":"Full name of the worker."},"alternate_email":{"type":"array","items":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsWorkerAlternateEmailItems"},"description":"List of alternate email addresses."}},"required":["id"],"description":"Worker information associated with the contract.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsWorker"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsSignatures":{"type":"object","properties":{"client_signed_at":{"type":["string","null"],"format":"date-time","description":"Timestamp when the client signed the contract, in ISO-8601 format."},"worker_signature":{"type":["string","null"],"description":"Worker's signature."},"worker_signed_at":{"type":["string","null"],"format":"date-time","description":"Timestamp when the worker signed the contract, in ISO-8601 format."}},"required":["client_signed_at","worker_signature","worker_signed_at"],"description":"Signature information for the contract.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsSignatures"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsInvitations":{"type":"object","properties":{"client_email":{"type":["string","null"],"description":"Email address of the client to invite."},"worker_email":{"type":["string","null"],"description":"Email address of the worker to invite."}},"description":"Details of invitations sent for signing the contract.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsInvitations"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsWhoReports":{"type":"string","enum":["both","client","contractor"],"description":"Indicates who is responsible for providing regular reports.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsWhoReports"},"ContractsGetResponsesContentApplicationJsonSchemaDataItemsCostCentersItems":{"type":"object","properties":{"name":{"type":"string","description":"Cost center name."},"number":{"type":"string","description":"Cost center number."},"allocation_percentage":{"type":"number","format":"double","description":"Percentage of the cost center allocation."}},"description":"Cost center object.","title":"ContractsGetResponsesContentApplicationJsonSchemaDataItemsCostCentersItems"},"ContractsGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"type":"string","description":"UUID of the contract."},"type":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsType","description":"Type of a contract."},"scale":{"type":["string","null"],"description":"The payment scale (e.g., hourly, weekly, monthly, etc.)."},"title":{"type":"string","description":"Title of the contract."},"client":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsClient","description":"Client information associated with the contract."},"status":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsStatus","description":"Status of a contract in Deel workflow."},"worker":{"oneOf":[{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsWorker"},{"type":"null"}],"description":"Worker information associated with the contract."},"created_at":{"type":["string","null"],"format":"date-time","description":"Timestamp when the contract was created, in ISO-8601 format."},"signatures":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsSignatures","description":"Signature information for the contract."},"external_id":{"type":["string","null"],"description":"A unique identifier for the object provided by an external system."},"invitations":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsInvitations","description":"Details of invitations sent for signing the contract."},"is_archived":{"type":"boolean","description":"Indicates whether the contract is archived."},"is_shielded":{"type":"boolean","description":"Indicates whether the contract is shielded."},"who_reports":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsWhoReports","description":"Indicates who is responsible for providing regular reports."},"cost_centers":{"type":"array","items":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItemsCostCentersItems"},"description":"List of cost centers associated with the contract."},"notice_period":{"type":"number","format":"double","default":0,"description":"Number of days required to give notice before terminating the contract."},"termination_date":{"type":["string","null"],"format":"date-time","description":"Date when the contract is terminated, in ISO-8601 format."}},"required":["id","type","title","client","status","created_at","signatures","invitations","is_archived","is_shielded","termination_date"],"title":"ContractsGetResponsesContentApplicationJsonSchemaDataItems"},"ContractsGetResponsesContentApplicationJsonSchemaPage":{"type":"object","properties":{"cursor":{"type":"string","description":"Cursor for paginated results."},"total_rows":{"type":"number","format":"double","description":"Total number of rows in the result set."}},"required":["cursor","total_rows"],"description":"Pagination information for the response.","title":"ContractsGetResponsesContentApplicationJsonSchemaPage"},"contracts_getContracts_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaDataItems"},"description":"Array of contract objects."},"page":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaPage","description":"Pagination information for the response."}},"required":["data","page"],"title":"contracts_getContracts_Response_200"},"ContractsGetResponsesContentApplicationJsonSchemaErrorsItems":{"type":"object","properties":{"message":{"type":"string","description":"Error response"}},"required":["message"],"title":"ContractsGetResponsesContentApplicationJsonSchemaErrorsItems"},"ContractsGetResponsesContentApplicationJsonSchemaRequest":{"type":"object","properties":{"method":{"type":"string","description":"Method of the API"},"status":{"type":"number","format":"double","description":"Status of API response"}},"description":"Error request details","title":"ContractsGetResponsesContentApplicationJsonSchemaRequest"},"ListOfContractsRequestBadRequestError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaErrorsItems"},"description":"Error messages"},"request":{"$ref":"#/components/schemas/ContractsGetResponsesContentApplicationJsonSchemaRequest","description":"Error request details"}},"required":["errors"],"title":"ListOfContractsRequestBadRequestError"},"ContractsContractIdGetParametersExpand":{"type":"string","enum":["cost_centers"],"title":"ContractsContractIdGetParametersExpand"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","contractor_outside_deel","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of a contract.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataType"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataQuoteBenefitsItems":{"type":"object","properties":{"fee":{"type":"number","format":"double","description":"Fee in local currency."},"name":{"type":"string","description":"Benefit's name."},"plan":{"type":"string","description":"Benefit's plan."},"price":{"type":"number","format":"double","description":"Price in local currency."},"fee_usd":{"type":"number","format":"double","description":"Fee in USD."},"currency":{"type":"string","description":"Currency code."},"price_usd":{"type":"number","format":"double","description":"Price in USD."}},"title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataQuoteBenefitsItems"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataQuote":{"type":"object","properties":{"benefits":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataQuoteBenefitsItems"},"description":"Array of benefits."},"currency":{"type":"string","description":"Currency used for the quote."}},"description":"EOR quote approved by Deel.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataQuote"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClientTeamId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Unique identifier of this resource.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClientTeamId"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClientTeam":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClientTeamId","description":"Unique identifier of this resource."},"name":{"type":"string","description":"Name of a team."}},"required":["id","name"],"description":"Team information for the client organization.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClientTeam"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClientLegalEntity":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"name":{"type":"string","description":"Name of a team."},"type":{"type":["string","null"],"description":"Type of the legal entity."},"email":{"type":["string","null"],"description":"Email address of the legal entity."},"subtype":{"type":["string","null"],"description":"Sub-type of the legal entity."},"vat_number":{"type":["string","null"],"description":"VAT number of the legal entity."},"registration_number":{"type":["string","null"],"description":"Registration number of the legal entity."}},"description":"Legal entity details of the client.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClientLegalEntity"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClient":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"team":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClientTeam","description":"Team information for the client organization."},"email":{"type":["string","null"],"description":"User's email address."},"full_name":{"type":"string","description":"Full name of the client."},"legal_entity":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClientLegalEntity"},{"type":"null"}],"description":"Legal entity details of the client."}},"required":["team"],"description":"Client details associated with the contract.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClient"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["new","under_review","waiting_for_employee_contract","waiting_for_client_sign","processing_payment","waiting_for_contractor_sign","waiting_for_eor_sign","waiting_for_employee_sign","awaiting_deposit_payment","in_progress","completed","cancelled","user_cancelled","rejected","waiting_for_client_payment","onboarding","waiting_for_approval","onboarded"],"description":"Status of a contract in Deel workflow.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataStatus"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkerDateOfBirth":{"oneOf":[{"type":"string","format":"date"},{"type":"string"}],"title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkerDateOfBirth"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkerAlternateEmailItems":{"type":"object","properties":{"email":{"type":"string","description":"Email address of the worker."},"isVerified":{"type":"boolean","description":"Indicates whether this alternate email address has been verified."}},"title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkerAlternateEmailItems"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorker":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"email":{"type":["string","null"],"description":"User's email address."},"country":{"type":["string","null"],"description":"Country of the worker."},"full_name":{"type":"string","description":"Full name of the client."},"last_name":{"type":"string","description":"Last name of the worker."},"first_name":{"type":"string","description":"First name of the worker."},"nationality":{"type":["string","null"],"description":"Nationality of the worker."},"date_of_birth":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkerDateOfBirth"},"expected_email":{"type":"string","description":"Expected email address of the worker (e.g., invitation target email)."},"alternate_email":{"type":["array","null"],"items":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkerAlternateEmailItems"},"description":"List of alternate email addresses."}},"description":"Worker details associated with the contract.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorker"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataSeniority":{"type":"object","properties":{"id":{"type":["number","null"],"format":"double","description":"Unique identifier of this resource."},"name":{"type":["string","null"],"description":"Name of seniority level e.g. Mid (Individual Contributor Level 2)."},"level":{"type":["number","null"],"format":"double","description":"Level of seniority level e.g. 2."}},"description":"Seniority describes level of expertise at a job e.g. junior.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataSeniority"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataSignatures":{"type":"object","properties":{"signed_at":{"type":["string","null"],"format":"date-time","description":"Date and time when the contract was signed."},"client_signature":{"type":"string","description":"Client representative signature (typically a name)."},"client_signed_at":{"type":["string","null"],"format":"date-time","description":"Date and time when the client signed the contract."},"worker_signature":{"type":"string","description":"Worker signature (typically a name)."},"worker_signed_at":{"type":["string","null"],"format":"date-time","description":"Date and time when the worker signed the contract."}},"description":"Signature information for the contract parties.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataSignatures"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataInvitations":{"type":"object","properties":{"client_email":{"type":["string","null"],"description":"User's email address."},"worker_email":{"type":["string","null"],"description":"User's email address."}},"description":"Invitation email addresses for signing the contract.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataInvitations"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCostCentersItems":{"type":"object","properties":{"name":{"type":"string","description":"Cost center name."},"number":{"type":"string","description":"Cost center number."},"allocation_percentage":{"type":"number","format":"double","description":"Percentage of the cost center allocation."}},"title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCostCentersItems"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCustomFieldsItems":{"type":"object","properties":{"id":{"type":["string","null"],"description":"Unique identifier of the custom field."},"name":{"type":"string","description":"Custom field property name."},"value":{"type":"string","description":"Custom field property value."}},"description":"Customized attributes on contracts (Employee ID, Project code, etc).","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCustomFieldsItems"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleDaysItemsDay":{"type":"string","enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],"description":"Day of the week","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleDaysItemsDay"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleDaysItems":{"type":"object","properties":{"day":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleDaysItemsDay","description":"Day of the week"},"end":{"type":["string","null"],"format":"time","description":"End time for the work day (HH:MM:SS format)"},"start":{"type":"string","format":"time","description":"Start time for the work day (HH:MM:SS format)"},"work_hours":{"type":"number","format":"double","description":"Number of working hours for this day"}},"required":["day","end","start","work_hours"],"description":"Defines working hours for a specific day of the week","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleDaysItems"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleWorkerTypesItems":{"type":"string","enum":["SALARIED_DIRECT_EMPLOYEE_PAYROLL","SALARIED_HRIS_DIRECT_EMPLOYEE","SALARIED_EOR_EMPLOYEE","HOURLY_EOR_EMPLOYEE","HOURLY_DIRECT_EMPLOYEE_PAYROLL"],"title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleWorkerTypesItems"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleEmploymentType":{"type":"string","enum":["FULL_TIME","PART_TIME","CONTRACT","TEMPORARY"],"description":"Type of employment arrangement","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleEmploymentType"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkSchedule":{"type":"object","properties":{"days":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleDaysItems"},"description":"Working days and hours configuration"},"name":{"type":"string","description":"Unique identifier or name for the work schedule"},"country":{"type":"string","description":"Country code where this work schedule applies (ISO 3166-1 alpha-2)"},"worker_types":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleWorkerTypesItems"},"description":"List of worker types that can use this schedule"},"effective_from":{"type":"string","description":"Date and time when the contract's work schedule became effective."},"employment_type":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkScheduleEmploymentType"},{"type":"null"}],"description":"Type of employment arrangement"},"work_schedule_type":{"type":"string","description":"Work schedule type"},"work_hours_per_week":{"type":"integer","description":"Total number of working hours per week"}},"required":["days","name","country","worker_types","effective_from","work_schedule_type","work_hours_per_week"],"description":"Defines a work schedule including working days, hours, and employment details","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkSchedule"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataEmploymentType":{"type":"string","enum":["FULL_TIME","PART_TIME"],"description":"Type of employment.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataEmploymentType"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataContractTemplate":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of a contract template."},"title":{"type":"string","description":"Title of a contract template"}},"description":"Contract template details.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataContractTemplate"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataEmploymentDetails":{"type":"object","properties":{"type":{"type":"string","description":"Type of employment."},"days_per_week":{"type":"number","format":"double","description":"Number of days per week."},"hours_per_day":{"type":"number","format":"double","description":"Number of hours per day."},"probation_period":{"type":["number","null"],"format":"double","description":"Probation period in days."},"paid_vacation_days":{"type":"number","format":"double","description":"Number of paid vacation days."}},"description":"Employment-related details for the contract.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataEmploymentDetails"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCompensationDetailsCycleEndType":{"type":"string","enum":["DAY_OF_WEEK","DAY_OF_LAST_WEEK","DAY_OF_MONTH"],"description":" Cycle end type","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCompensationDetailsCycleEndType"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCompensationDetails":{"type":"object","properties":{"scale":{"type":["string","null"],"description":"Scale of the payment."},"amount":{"type":["string","null"],"description":"Amount to be paid. This field can be excluded when creating a Pay-as-you-go task-based or Milestone contracts."},"cycle_end":{"type":["number","null"],"format":"double","description":"Day of the cycle end"},"frequency":{"type":"string","description":"Scale of the invoice cycle."},"currency_code":{"type":["string","null"],"description":"Currency code."},"first_payment":{"type":["string","null"],"description":"First payment amount."},"cycle_end_type":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCompensationDetailsCycleEndType"},{"type":"null"}],"description":" Cycle end type"},"first_payment_date":{"type":["string","null"],"description":"First payment date."},"gross_annual_salary":{"type":["string","null"],"description":"Gross annual salary."},"gross_signing_bonus":{"type":["string","null"],"description":"Gross signing bonus."},"gross_variable_bonus":{"type":["string","null"],"description":"Gross variable bonus."}},"description":"Compensation and payment configuration for the contract.","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCompensationDetails"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the contract."},"type":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataType","description":"Type of a contract."},"quote":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataQuote","description":"EOR quote approved by Deel."},"title":{"type":"string","description":"Title of the contract."},"client":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataClient"},{"type":"null"}],"description":"Client details associated with the contract."},"status":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataStatus","description":"Status of a contract in Deel workflow."},"worker":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorker"},{"type":"null"}],"description":"Worker details associated with the contract."},"location":{"type":["string","null"],"description":"Location name associated with the contract."},"job_title":{"type":"string","description":"Job title associated with the contract."},"seniority":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataSeniority"},{"type":"null"}],"description":"Seniority describes level of expertise at a job e.g. junior."},"created_at":{"type":"string","format":"date-time","description":"Date and time when the contract was created."},"signatures":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataSignatures","description":"Signature information for the contract parties."},"start_date":{"type":"string","format":"date-time","description":"Date and time when the contract starts."},"updated_at":{"type":"string","format":"date-time","description":"Date and time when the contract was updated."},"external_id":{"type":["string","null"],"description":"External identifier of the contract."},"invitations":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataInvitations","description":"Invitation email addresses for signing the contract."},"is_archived":{"type":["boolean","null"],"description":"Flag to indicate if the contract is archived."},"who_reports":{"type":"string","description":"Who reports the hours."},"cost_centers":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCostCentersItems"},"description":"List of cost centers associated with the contract."},"product_area":{"type":["number","null"],"format":"double","description":"Product area code associated with the contract."},"custom_fields":{"type":["array","null"],"items":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCustomFieldsItems"},"description":"List of custom fields attached to the contract."},"notice_period":{"type":["number","null"],"format":"double","description":"Notice period in days."},"scope_of_work":{"type":["string","null"],"description":"Scope of work of the contract."},"work_schedule":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataWorkSchedule"},{"type":"null"}],"description":"Defines a work schedule including working days, hours, and employment details"},"fte_percentage":{"type":["number","null"],"format":"double","description":"Full time percentage"},"special_clause":{"type":["string","null"],"description":"Special clause of the contract."},"employment_type":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataEmploymentType"},{"type":"null"}],"description":"Type of employment."},"termination_date":{"type":["string","null"],"description":"Date and time when the contract ends."},"contract_template":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataContractTemplate"},{"type":"null"}],"description":"Contract template details."},"work_statement_id":{"type":["string","null"],"description":"The unique identifier of the associated work statement."},"employment_details":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataEmploymentDetails","description":"Employment-related details for the contract."},"compensation_details":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaDataCompensationDetails","description":"Compensation and payment configuration for the contract."}},"required":["id","type","title","client","status","worker","created_at","signatures","start_date","updated_at","invitations","is_archived","special_clause","termination_date"],"title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaData"},"contracts_getContract_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"contracts_getContract_Response_200"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaErrorsItems":{"type":"object","properties":{"message":{"type":"string","description":"Error response"}},"required":["message"],"title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaErrorsItems"},"ContractsContractIdGetResponsesContentApplicationJsonSchemaRequest":{"type":"object","properties":{"method":{"type":"string","description":"Method of the API"},"status":{"type":"number","format":"double","description":"Status of API response"}},"description":"Error request details","title":"ContractsContractIdGetResponsesContentApplicationJsonSchemaRequest"},"RetrieveASingleContract-v2026-01-01RequestNotFoundError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaErrorsItems"},"description":"Error messages"},"request":{"$ref":"#/components/schemas/ContractsContractIdGetResponsesContentApplicationJsonSchemaRequest","description":"Error request details"}},"required":["errors"],"title":"RetrieveASingleContract-v2026-01-01RequestNotFoundError"},"InvoiceAdjustmentsPostRequestBodyContentApplicationJsonSchemaDataType":{"type":"string","enum":["bonus","commission","deduction","expense","other","overtime","time_off","vat"],"description":"Type of invoice adjustment.","title":"InvoiceAdjustmentsPostRequestBodyContentApplicationJsonSchemaDataType"},"InvoiceAdjustmentsPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/InvoiceAdjustmentsPostRequestBodyContentApplicationJsonSchemaDataType","description":"Type of invoice adjustment."},"amount":{"type":"number","format":"double","description":"Amount to be paid. Must be a positive number."},"contract_id":{"type":"string","description":"Id of a Deel contract."},"description":{"type":"string","description":"Description of the adjustment."},"date_submitted":{"type":"string","format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"paymentCycleId":{"type":["number","null"],"format":"double","description":"ID of an existing active payment cycle - required if type is \"vat\""},"is_auto_approved":{"type":"boolean","description":"If true, the invoice adjustment will be automatically approved as part of the request."},"hourly_report_preset_id":{"type":["string","null"],"format":"uuid","description":"Id of an existing preset."}},"required":["type","amount","contract_id","description","date_submitted"],"description":"Details of invoice adjustment to create.","title":"InvoiceAdjustmentsPostRequestBodyContentApplicationJsonSchemaData"},"InvoiceAdjustmentsPostResponsesContentApplicationJsonSchemaDataId":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"InvoiceAdjustmentsPostResponsesContentApplicationJsonSchemaDataId"},"InvoiceAdjustmentsPostResponsesContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"status of invoice adjustment","title":"InvoiceAdjustmentsPostResponsesContentApplicationJsonSchemaDataStatus"},"InvoiceAdjustmentsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/InvoiceAdjustmentsPostResponsesContentApplicationJsonSchemaDataId"},"status":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsPostResponsesContentApplicationJsonSchemaDataStatus"},{"type":"null"}],"description":"status of invoice adjustment"},"created":{"type":"boolean"},"created_at":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"}},"required":["created"],"description":"Details of invoice adjustment created.","title":"InvoiceAdjustmentsPostResponsesContentApplicationJsonSchemaData"},"invoice-adjustments_createInvoiceAdjustment_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvoiceAdjustmentsPostResponsesContentApplicationJsonSchemaData","description":"Details of invoice adjustment created."}},"required":["data"],"title":"invoice-adjustments_createInvoiceAdjustment_Response_201"},"InvoiceAdjustmentsIdDeleteResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"deleted":{"type":"boolean","description":"Confirms the deletion."}},"required":["deleted"],"title":"InvoiceAdjustmentsIdDeleteResponsesContentApplicationJsonSchemaData"},"invoice-adjustments_deleteInvoiceAdjustment_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdDeleteResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"invoice-adjustments_deleteInvoiceAdjustment_Response_200"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataType":{"type":"string","enum":["accrued_holiday","additional_fee","allowance","bonus","commission","deduction","deposit","deposit_refund","employer_cost","expense","health_allowance","health_benefit","health_insurance_fee","legal_fee","management_fee","milestone","offcycle","other","overtime","pension","pro_rata","setup_fee","severance","shield_service","signing_bonus","signing_bonus_employer_cost","refund","task","time_off","vat","withholding_tax","work"],"description":"Type of invoice adjustment.","title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataType"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"status of invoice adjustment","title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataStatus"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataContractType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of a contract","title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataContractType"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataContract":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier of the contract."},"type":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataContractType","description":"Type of a contract"},"title":{"type":"string","description":"The display title of the contract."}},"required":["id","type","title"],"title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataContract"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataApproversItems":{"type":"object","properties":{"email":{"type":"string","description":"Email address of the approver."},"approved":{"type":"boolean","description":"Whether the specific approver has approved the adjustment."},"full_name":{"type":"string","description":"Full name of the approver."}},"required":["approved"],"title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataApproversItems"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataWorksheet":{"type":"object","properties":{"days":{"type":"number","format":"double","description":"Number of days."},"hours":{"type":"number","format":"double","description":"Number of hours."},"weeks":{"type":"number","format":"double","description":"Number of weeks."},"minutes":{"type":"number","format":"double","description":"Number of minutes."}},"required":["days","hours","weeks","minutes"],"description":"Breakdown of the time/effort involved in the adjustment.","title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataWorksheet"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataAttachment":{"type":"object","properties":{"key":{"type":"string","description":"Storage key returned from the attachments endpoint, can be used as a unique identifier for the file"},"filename":{"type":"string","description":"Original filename of the uploaded attachment"},"download_url":{"type":["string","null"],"description":"URL used to download the uploaded attachment file."}},"required":["key","filename"],"description":"File attachment linked to the invoice adjustment.","title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataAttachment"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReportedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReportedById"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReportedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReportedById"},"full_name":{"type":"string","description":"Full name of the reporter."}},"required":["id"],"description":"The user who reported/submitted the adjustment.","title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReportedBy"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReviewedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReviewedById"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReviewedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReviewedById"},"remarks":{"type":"string","description":"Comments or notes left by the reviewer."},"full_name":{"type":"string","description":"Full name of the reviewer."},"reviewed_at":{"type":"string","description":"The timestamp when the review occurred."}},"required":["id","remarks","reviewed_at"],"description":"The user who reviewed the adjustment.","title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReviewedBy"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataPaymentCycle":{"type":"object","properties":{"end_date":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"},"start_date":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"}},"required":["end_date","start_date"],"title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataPaymentCycle"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":["string","null"],"format":"uuid","description":"Unique identifier of this resource."},"type":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataType","description":"Type of invoice adjustment."},"scale":{"type":["string","null"],"description":"The scale used for calculation (e.g., hourly, daily)."},"status":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataStatus"},{"type":"null"}],"description":"status of invoice adjustment"},"contract":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataContract"},"quantity":{"type":["number","null"],"format":"double","description":"The quantity/number of units applied."},"approvers":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataApproversItems"}},"worksheet":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataWorksheet"},{"type":"null"}],"description":"Breakdown of the time/effort involved in the adjustment."},"attachment":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataAttachment"},{"type":"null"}],"description":"File attachment linked to the invoice adjustment."},"created_at":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"},"invoice_id":{"type":["number","null"],"format":"double","description":"Deprecated. No longer used"},"description":{"type":"string","description":"Details or notes regarding the adjustment."},"reported_by":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReportedBy","description":"The user who reported/submitted the adjustment."},"reviewed_by":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataReviewedBy"},{"type":"null"}],"description":"The user who reviewed the adjustment."},"custom_scale":{"type":["string","null"],"description":"A custom unit of measurement if the standard 'scale' is not applicable."},"total_amount":{"type":"string","description":"The total monetary value of the adjustment."},"currency_code":{"type":"string","description":"Three-letter ISO-4217 currency code."},"payment_cycle":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaDataPaymentCycle"},"date_submitted":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"},"invoice_public_id":{"type":["string","null"],"description":"Public Identifier for the associated invoice."}},"required":["id","type","status","contract","quantity","worksheet","attachment","created_at","description","reported_by","reviewed_by","total_amount","currency_code","payment_cycle","date_submitted"],"title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaData"},"invoice-adjustments_getInvoiceAdjustmentById_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"invoice-adjustments_getInvoiceAdjustmentById_Response_200"},"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaErrorsItems":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code"},"field":{"type":"string","description":"Name of the field causing the error (for validation issues)"},"message":{"type":"string","description":"Human-readable explanation of the error"}},"title":"InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaErrorsItems"},"InvoiceLineItemById-v2026-01-01RequestBadRequestError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdGetResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"InvoiceLineItemById-v2026-01-01RequestBadRequestError"},"ContractsContractIdInvoiceAdjustmentsGetParametersContractTypesSchemaOneOf0Items":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of a contract","title":"ContractsContractIdInvoiceAdjustmentsGetParametersContractTypesSchemaOneOf0Items"},"ContractsContractIdInvoiceAdjustmentsGetParametersContractTypes0":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersContractTypesSchemaOneOf0Items"},"description":"List of contract types","title":"ContractsContractIdInvoiceAdjustmentsGetParametersContractTypes0"},"ContractsContractIdInvoiceAdjustmentsGetParametersContractTypes1":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"title":"ContractsContractIdInvoiceAdjustmentsGetParametersContractTypes1"},"ContractsContractIdInvoiceAdjustmentsGetParametersContractTypes":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersContractTypes0"},{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersContractTypes1"}],"title":"ContractsContractIdInvoiceAdjustmentsGetParametersContractTypes"},"ContractsContractIdInvoiceAdjustmentsGetParametersTypesSchemaOneOf0Items":{"type":"string","enum":["accrued_holiday","additional_fee","allowance","bonus","commission","deduction","deposit","deposit_refund","employer_cost","expense","health_allowance","health_benefit","health_insurance_fee","legal_fee","management_fee","milestone","offcycle","other","overtime","pension","pro_rata","setup_fee","severance","shield_service","signing_bonus","signing_bonus_employer_cost","refund","task","time_off","vat","withholding_tax","work"],"description":"Type of invoice adjustment.","title":"ContractsContractIdInvoiceAdjustmentsGetParametersTypesSchemaOneOf0Items"},"ContractsContractIdInvoiceAdjustmentsGetParametersTypes0":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersTypesSchemaOneOf0Items"},"title":"ContractsContractIdInvoiceAdjustmentsGetParametersTypes0"},"ContractsContractIdInvoiceAdjustmentsGetParametersTypes1":{"type":"string","enum":["accrued_holiday","additional_fee","allowance","bonus","commission","deduction","deposit","deposit_refund","employer_cost","expense","health_allowance","health_benefit","health_insurance_fee","legal_fee","management_fee","milestone","offcycle","other","overtime","pension","pro_rata","setup_fee","severance","shield_service","signing_bonus","signing_bonus_employer_cost","refund","task","time_off","vat","withholding_tax","work"],"title":"ContractsContractIdInvoiceAdjustmentsGetParametersTypes1"},"ContractsContractIdInvoiceAdjustmentsGetParametersTypes":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersTypes0"},{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersTypes1"}],"title":"ContractsContractIdInvoiceAdjustmentsGetParametersTypes"},"ContractsContractIdInvoiceAdjustmentsGetParametersStatusesSchemaOneOf0Items":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"status of invoice adjustment","title":"ContractsContractIdInvoiceAdjustmentsGetParametersStatusesSchemaOneOf0Items"},"ContractsContractIdInvoiceAdjustmentsGetParametersStatuses0":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersStatusesSchemaOneOf0Items"},"title":"ContractsContractIdInvoiceAdjustmentsGetParametersStatuses0"},"ContractsContractIdInvoiceAdjustmentsGetParametersStatuses1":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"title":"ContractsContractIdInvoiceAdjustmentsGetParametersStatuses1"},"ContractsContractIdInvoiceAdjustmentsGetParametersStatuses":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersStatuses0"},{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetParametersStatuses1"}],"title":"ContractsContractIdInvoiceAdjustmentsGetParametersStatuses"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsType":{"type":"string","enum":["accrued_holiday","additional_fee","allowance","bonus","commission","deduction","deposit","deposit_refund","employer_cost","expense","health_allowance","health_benefit","health_insurance_fee","legal_fee","management_fee","milestone","offcycle","other","overtime","pension","pro_rata","setup_fee","severance","shield_service","signing_bonus","signing_bonus_employer_cost","refund","task","time_off","vat","withholding_tax","work"],"description":"Type of invoice adjustment.","title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsType"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"status of invoice adjustment","title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContractType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of a contract","title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContractType"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContract":{"type":"object","properties":{"id":{"type":"string"},"type":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContractType","description":"Type of a contract"},"title":{"type":"string"}},"required":["id","type","title"],"title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContract"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet":{"type":"object","properties":{"days":{"type":"number","format":"double"},"hours":{"type":"number","format":"double"},"weeks":{"type":"number","format":"double"},"minutes":{"type":"number","format":"double"}},"required":["days","hours","weeks","minutes"],"title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsAttachment":{"type":"object","properties":{"key":{"type":"string","description":"You can call attachments end-point, get key and URL to upload your file."},"filename":{"type":"string","description":"Original filename you used to upload using attachments end-point."}},"required":["key","filename"],"description":"This object is used for linking file attachments to your records.","title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedById"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedById"},"full_name":{"type":"string"}},"required":["id"],"title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedById"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedById"},"remarks":{"type":"string"},"full_name":{"type":"string"},"reviewed_at":{"type":"string"}},"required":["id","remarks","reviewed_at"],"title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle":{"type":"object","properties":{"end_date":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"},"start_date":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"}},"required":["end_date","start_date"],"title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"type":["string","null"],"format":"uuid","description":"Unique identifier of this resource."},"type":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsType","description":"Type of invoice adjustment."},"scale":{"type":["string","null"]},"status":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},{"type":"null"}],"description":"status of invoice adjustment"},"contract":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContract"},"quantity":{"type":["number","null"],"format":"double"},"worksheet":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet"},{"type":"null"}]},"attachment":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},{"type":"null"}],"description":"This object is used for linking file attachments to your records."},"created_at":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"},"invoice_id":{"type":["number","null"],"format":"double"},"description":{"type":"string"},"reported_by":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy"},"reviewed_by":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},{"type":"null"}]},"custom_scale":{"type":["string","null"]},"total_amount":{"type":"string"},"currency_code":{"type":"string"},"payment_cycle":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle"},"date_submitted":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"}},"required":["id","type","status","contract","quantity","worksheet","attachment","created_at","description","reported_by","reviewed_by","total_amount","currency_code","payment_cycle","date_submitted"],"title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItems"},"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaPage":{"type":"object","properties":{"offset":{"type":"number","format":"double","description":"Index of the first row in this page"},"total_rows":{"type":"number","format":"double","description":"Total number of rows in the result set"},"items_per_page":{"type":"number","format":"double","description":"Number of items per page"}},"required":["offset","total_rows","items_per_page"],"title":"ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaPage"},"invoice-adjustments_getContractInvoiceAdjustments_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItems"}},"page":{"$ref":"#/components/schemas/ContractsContractIdInvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaPage"}},"required":["data","page"],"title":"invoice-adjustments_getContractInvoiceAdjustments_Response_200"},"InvoiceAdjustmentsGetParametersContractTypesSchemaOneOf0Items":{"type":"string","enum":["ongoing_time_based","pay_as_you_go_time_based","payg_milestones","payg_tasks"],"description":"Type of a contract","title":"InvoiceAdjustmentsGetParametersContractTypesSchemaOneOf0Items"},"InvoiceAdjustmentsGetParametersContractTypes0":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersContractTypesSchemaOneOf0Items"},"description":"List of contract types","title":"InvoiceAdjustmentsGetParametersContractTypes0"},"InvoiceAdjustmentsGetParametersContractTypes1":{"type":"string","enum":["ongoing_time_based","pay_as_you_go_time_based","payg_milestones","payg_tasks"],"title":"InvoiceAdjustmentsGetParametersContractTypes1"},"InvoiceAdjustmentsGetParametersContractTypes":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersContractTypes0"},{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersContractTypes1"}],"title":"InvoiceAdjustmentsGetParametersContractTypes"},"InvoiceAdjustmentsGetParametersTypesSchemaOneOf0Items":{"type":"string","enum":["accrued_holiday","additional_fee","allowance","bonus","commission","deduction","deposit","deposit_refund","employer_cost","expense","health_allowance","health_benefit","health_insurance_fee","legal_fee","management_fee","milestone","offcycle","other","overtime","pension","pro_rata","setup_fee","severance","shield_service","signing_bonus","signing_bonus_employer_cost","refund","task","time_off","vat","withholding_tax","work"],"description":"Type of invoice adjustment.","title":"InvoiceAdjustmentsGetParametersTypesSchemaOneOf0Items"},"InvoiceAdjustmentsGetParametersTypes0":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersTypesSchemaOneOf0Items"},"title":"InvoiceAdjustmentsGetParametersTypes0"},"InvoiceAdjustmentsGetParametersTypes1":{"type":"string","enum":["accrued_holiday","additional_fee","allowance","bonus","commission","deduction","deposit","deposit_refund","employer_cost","expense","health_allowance","health_benefit","health_insurance_fee","legal_fee","management_fee","milestone","offcycle","other","overtime","pension","pro_rata","setup_fee","severance","shield_service","signing_bonus","signing_bonus_employer_cost","refund","task","time_off","vat","withholding_tax","work"],"title":"InvoiceAdjustmentsGetParametersTypes1"},"InvoiceAdjustmentsGetParametersTypes":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersTypes0"},{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersTypes1"}],"title":"InvoiceAdjustmentsGetParametersTypes"},"InvoiceAdjustmentsGetParametersStatusesSchemaOneOf0Items":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"status of invoice adjustment","title":"InvoiceAdjustmentsGetParametersStatusesSchemaOneOf0Items"},"InvoiceAdjustmentsGetParametersStatuses0":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersStatusesSchemaOneOf0Items"},"title":"InvoiceAdjustmentsGetParametersStatuses0"},"InvoiceAdjustmentsGetParametersStatuses1":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"title":"InvoiceAdjustmentsGetParametersStatuses1"},"InvoiceAdjustmentsGetParametersStatuses":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersStatuses0"},{"$ref":"#/components/schemas/InvoiceAdjustmentsGetParametersStatuses1"}],"title":"InvoiceAdjustmentsGetParametersStatuses"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsType":{"type":"string","enum":["accrued_holiday","additional_fee","allowance","bonus","commission","deduction","deposit","deposit_refund","employer_cost","expense","health_allowance","health_benefit","health_insurance_fee","legal_fee","management_fee","milestone","offcycle","other","overtime","pension","pro_rata","setup_fee","severance","shield_service","signing_bonus","signing_bonus_employer_cost","refund","task","time_off","vat","withholding_tax","work"],"description":"Type of invoice adjustment.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsType"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"Current processing status of the invoice adjustment.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContractType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of the contract.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContractType"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContract":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of the contract."},"type":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContractType","description":"Type of the contract."},"title":{"type":"string","description":"Human-readable contract title."}},"required":["id","type","title"],"description":"Contract associated with this invoice adjustment.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContract"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet":{"type":"object","properties":{"days":{"type":"number","format":"double","description":"Number of days reported."},"hours":{"type":"number","format":"double","description":"Number of hours reported."},"weeks":{"type":"number","format":"double","description":"Number of weeks reported."},"minutes":{"type":"number","format":"double","description":"Number of minutes reported."}},"required":["days","hours","weeks","minutes"],"description":"Breakdown of time used for time-based calculations.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsAttachment":{"type":"object","properties":{"key":{"type":"string","description":"Storage key returned from the attachments endpoint, can be used as a unique identifier for the file"},"filename":{"type":"string","description":"Original filename of the uploaded attachment, download link can be found on the individual invoice adjustment endpoint"}},"required":["key","filename"],"description":"File attachment linked to the invoice adjustment.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"description":"Unique identifier of the reporting user.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedById"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedById","description":"Unique identifier of the reporting user."},"full_name":{"type":"string","description":"Full name of the reporting user."}},"required":["id"],"description":"User who reported the invoice adjustment.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"description":"Unique identifier of the reviewer.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedById"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedById","description":"Unique identifier of the reviewer."},"remarks":{"type":["string","null"],"description":"Reviewer remarks or decision notes."},"full_name":{"type":"string","description":"Full name of the reviewer."},"reviewed_at":{"type":["string","null"],"description":"Timestamp when the review occurred."}},"required":["id","remarks","reviewed_at"],"description":"Reviewer information if the adjustment has been reviewed.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle":{"type":"object","properties":{"end":{"type":["string","null"],"format":"date-time","description":"End date of the payment cycle."},"start":{"type":["string","null"],"format":"date-time","description":"Start date of the payment cycle."}},"description":"Payment cycle associated with this adjustment.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportPreset":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of assigned preset"},"rate":{"type":["number","null"],"format":"double","description":"Assigned preset rate"},"title":{"type":"string","description":"Description of assigned preset"}},"title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportPreset"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"type":["string","null"],"format":"uuid","description":"Unique identifier of this invoice adjustment."},"type":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsType","description":"Type of invoice adjustment."},"scale":{"type":["string","null"],"description":"Predefined scale used to calculate the adjustment amount."},"status":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},{"type":"null"}],"description":"Current processing status of the invoice adjustment."},"contract":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsContract","description":"Contract associated with this invoice adjustment."},"quantity":{"type":["number","null"],"format":"double","description":"Quantity used to calculate the total amount."},"worksheet":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet"},{"type":"null"}],"description":"Breakdown of time used for time-based calculations."},"attachment":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},{"type":"null"}],"description":"File attachment linked to the invoice adjustment."},"created_at":{"type":"string","format":"date-time","description":"Timestamp when the adjustment was created (ISO-8601)."},"invoice_id":{"type":["number","null"],"format":"double","description":"Identifier of the generated invoice this adjustment belongs to."},"description":{"type":["string","null"],"description":"Human-readable explanation of the invoice adjustment."},"reported_by":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy","description":"User who reported the invoice adjustment."},"reviewed_by":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},{"type":"null"}],"description":"Reviewer information if the adjustment has been reviewed."},"custom_scale":{"type":["string","null"],"description":"Custom scale label defined by the client."},"total_amount":{"type":"string","description":"Total monetary value of the invoice adjustment."},"currency_code":{"type":"string","description":"ISO 4217 currency code used for the amount."},"payment_cycle":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle","description":"Payment cycle associated with this adjustment."},"date_submitted":{"type":["string","null"],"format":"date-time","description":"Timestamp when the adjustment was submitted for review."},"hourlyReportPreset":{"oneOf":[{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportPreset"},{"type":"null"}]}},"required":["id","type","status","contract","quantity","worksheet","attachment","created_at","description","reported_by","reviewed_by","total_amount","currency_code","payment_cycle"],"title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItems"},"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaPage":{"type":"object","properties":{"offset":{"type":"number","format":"double","description":"Index of the first record in the current page."},"total_rows":{"type":"number","format":"double","description":"Total number of records available."},"items_per_page":{"type":"number","format":"double","description":"Number of records returned per page."}},"required":["offset","total_rows","items_per_page"],"description":"Pagination metadata for the response.","title":"InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaPage"},"invoice-adjustments_getInvoiceAdjustments_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaDataItems"},"description":"List of invoice adjustments returned for the request."},"page":{"$ref":"#/components/schemas/InvoiceAdjustmentsGetResponsesContentApplicationJsonSchemaPage","description":"Pagination metadata for the response."}},"required":["data","page"],"title":"invoice-adjustments_getInvoiceAdjustments_Response_200"},"ListInvoiceAdjustments-v2026-01-01RequestBadRequestError":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"],"title":"ListInvoiceAdjustments-v2026-01-01RequestBadRequestError"},"InvoiceAdjustmentsIdReviewsPostRequestBodyContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["approved","declined"],"description":"The status of the adjustment.","title":"InvoiceAdjustmentsIdReviewsPostRequestBodyContentApplicationJsonSchemaDataStatus"},"InvoiceAdjustmentsIdReviewsPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"reason":{"type":["string","null"],"description":"The reason for the adjustment update."},"status":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdReviewsPostRequestBodyContentApplicationJsonSchemaDataStatus","description":"The status of the adjustment."}},"required":["status"],"title":"InvoiceAdjustmentsIdReviewsPostRequestBodyContentApplicationJsonSchemaData"},"InvoiceAdjustmentsIdReviewsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"created":{"type":"boolean"}},"required":["created"],"title":"InvoiceAdjustmentsIdReviewsPostResponsesContentApplicationJsonSchemaData"},"invoice-adjustments_createInvoiceAdjustmentReview_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdReviewsPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"invoice-adjustments_createInvoiceAdjustmentReview_Response_201"},"InvoiceAdjustmentsIdPatchRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"title":{"type":"string","description":"Title of adjustment."},"amount":{"type":"number","format":"double","description":"Amount of adjustment."},"description":{"type":"string","description":"Description of adjustment."}},"description":"Details of adjustment to update","title":"InvoiceAdjustmentsIdPatchRequestBodyContentApplicationJsonSchemaData"},"InvoiceAdjustmentsIdPatchResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"updated":{"type":"boolean","description":"Confirms the update."}},"required":["updated"],"title":"InvoiceAdjustmentsIdPatchResponsesContentApplicationJsonSchemaData"},"invoice-adjustments_updateInvoiceAdjustment_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvoiceAdjustmentsIdPatchResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"invoice-adjustments_updateInvoiceAdjustment_Response_200"},"ContractsContractIdMilestonesPostRequestBodyContentApplicationJsonSchemaDataAmount":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"title":"ContractsContractIdMilestonesPostRequestBodyContentApplicationJsonSchemaDataAmount"},"ContractsContractIdMilestonesPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"title":{"type":"string","description":"The title of the milestone."},"amount":{"$ref":"#/components/schemas/ContractsContractIdMilestonesPostRequestBodyContentApplicationJsonSchemaDataAmount"},"description":{"type":"string","description":"A detailed description of the milestone."}},"required":["title","amount","description"],"title":"ContractsContractIdMilestonesPostRequestBodyContentApplicationJsonSchemaData"},"ContractsContractIdMilestonesPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"created":{"type":"boolean","description":"Indicates whether the milestone was successfully created."}},"required":["created"],"title":"ContractsContractIdMilestonesPostResponsesContentApplicationJsonSchemaData"},"milestones_createContractMilestone_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdMilestonesPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"milestones_createContractMilestone_Response_201"},"CreateMilestoneRequestBadRequestError":{"type":"object","properties":{"error":{"type":"string","description":"A detailed error message explaining the validation issue."}},"title":"CreateMilestoneRequestBadRequestError"},"CreateMilestoneRequestNotFoundError":{"type":"object","properties":{"error":{"type":"string","description":"A message indicating the contract was not found."}},"title":"CreateMilestoneRequestNotFoundError"},"ContractsContractIdMilestonesMilestoneIdDeleteResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"deleted":{"type":"boolean","description":"Confirms that the milestone was successfully deleted."}},"required":["deleted"],"title":"ContractsContractIdMilestonesMilestoneIdDeleteResponsesContentApplicationJsonSchemaData"},"milestones_deleteContractMilestone_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdMilestonesMilestoneIdDeleteResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"milestones_deleteContractMilestone_Response_200"},"DeleteMilestoneByIdRequestBadRequestError":{"type":"object","properties":{"error":{"type":"string","description":"A message indicating the provided contract or milestone ID is not valid."}},"title":"DeleteMilestoneByIdRequestBadRequestError"},"DeleteMilestoneByIdRequestNotFoundError":{"type":"object","properties":{"error":{"type":"string","description":"A message indicating that the specified contract or milestone does not exist."}},"title":"DeleteMilestoneByIdRequestNotFoundError"},"DeleteMilestoneByIdRequestInternalServerError":{"type":"object","properties":{"error":{"type":"string","description":"A general error message for internal server issues."}},"title":"DeleteMilestoneByIdRequestInternalServerError"},"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataId":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataId"},"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReportedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReportedById"},"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReportedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReportedById"},"full_name":{"type":"string","description":"Reporter's full name."}},"required":["id"],"description":"Milestone creator.","title":"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReportedBy"},"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReviewedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReviewedById"},"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReviewedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReviewedById"},"full_name":{"type":"string","description":"Reviewer's full name."}},"required":["id"],"description":"Reviewer's information.","title":"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReviewedBy"},"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataId"},"title":{"type":"string","description":"Title of milestone."},"amount":{"type":"string","description":"Amount to be paid for the milestone."},"status":{"type":"string","description":"Current status of milestone."},"created_at":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"},"description":{"type":"string","description":"Description of milestone."},"reported_by":{"$ref":"#/components/schemas/ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReportedBy","description":"Milestone creator."},"reviewed_by":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaDataReviewedBy"},{"type":"null"}],"description":"Reviewer's information."},"approval_requested":{"type":"boolean","description":"Indicates if the contractor has requested the approval for the milestone."}},"required":["id","title","amount","status","created_at","description","reported_by","reviewed_by","approval_requested"],"title":"ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaData"},"milestones_getContractMilestoneById_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdMilestonesMilestoneIdGetResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"milestones_getContractMilestoneById_Response_200"},"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsId":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsId"},"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReportedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReportedById"},"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReportedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReportedById"},"full_name":{"type":"string","description":"The full name of the person who reported the milestone."}},"required":["id"],"description":"Information about the creator of the milestone.","title":"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReportedBy"},"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReviewedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReviewedById"},"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReviewedById"},"full_name":{"type":"string","description":"The full name of the person who reviewed the milestone."}},"required":["id"],"description":"Information about the person who reviewed the milestone.","title":"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsId"},"title":{"type":"string","description":"The title of the milestone."},"amount":{"type":"string","description":"The amount to be paid for completing this milestone."},"status":{"type":"string","description":"The current status of the milestone, such as 'Pending Approval', 'Approved', or 'Completed'."},"created_at":{"type":["string","null"],"format":"date-time","description":"The creation date of the milestone in ISO-8601 format."},"description":{"type":"string","description":"A detailed description of the milestone."},"reported_by":{"$ref":"#/components/schemas/ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReportedBy","description":"Information about the creator of the milestone."},"reviewed_by":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},{"type":"null"}],"description":"Information about the person who reviewed the milestone."},"approval_requested":{"type":"boolean","description":"Indicates whether approval has been requested for the milestone."}},"required":["id","title","amount","status","created_at","description","reported_by","reviewed_by","approval_requested"],"title":"ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItems"},"milestones_getContractMilestones_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdMilestonesGetResponsesContentApplicationJsonSchemaDataItems"},"description":"An array of milestone objects associated with the contract."}},"required":["data"],"title":"milestones_getContractMilestones_Response_200"},"ContractsContractIdOffCyclePaymentsPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"amount":{"type":"number","format":"double","description":"The amount of the off-cycle payment."},"description":{"type":"string","description":"A description or reason for the off-cycle payment."},"date_submitted":{"type":"string","format":"date","description":"The date the off-cycle payment is submitted, in ISO-8601 format (YYYY-MM-DD)."},"is_auto_approved":{"type":"boolean","description":"If true, the off-cycle payment will be automatically approved as part of the request."},"hourly_report_preset_id":{"type":["string","null"],"format":"uuid","description":"Id of an existing preset."}},"required":["amount","description","date_submitted"],"title":"ContractsContractIdOffCyclePaymentsPostRequestBodyContentApplicationJsonSchemaData"},"ContractsContractIdOffCyclePaymentsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the created off-cycle payment."},"created":{"type":"boolean","description":"Indicates whether the off-cycle payment was successfully created."}},"required":["created"],"title":"ContractsContractIdOffCyclePaymentsPostResponsesContentApplicationJsonSchemaData"},"off-cycle_createContractOffCyclePayment_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdOffCyclePaymentsPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"off-cycle_createContractOffCyclePayment_Response_201"},"ContractsContractIdOffCyclePaymentsGetResponsesContentApplicationJsonSchemaDataItemsStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"The current status of the off-cycle payment.","title":"ContractsContractIdOffCyclePaymentsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},"ContractsContractIdOffCyclePaymentsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the reporter."},"full_name":{"type":"string","description":"Full name of the individual who reported the payment."}},"required":["id"],"description":"Details of the person who reported the off-cycle payment.","title":"ContractsContractIdOffCyclePaymentsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy"},"ContractsContractIdOffCyclePaymentsGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the off-cycle payment."},"amount":{"type":"string","description":"The amount of the off-cycle payment."},"status":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdOffCyclePaymentsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},{"type":"null"}],"description":"The current status of the off-cycle payment."},"created_at":{"type":"string","format":"date-time","description":"The timestamp when the off-cycle payment was created."},"description":{"type":"string","description":"A description or reason for the off-cycle payment."},"reported_by":{"$ref":"#/components/schemas/ContractsContractIdOffCyclePaymentsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy","description":"Details of the person who reported the off-cycle payment."},"currency_code":{"type":"string","description":"The three-letter ISO currency code for the payment amount."},"date_submitted":{"type":"string","format":"date-time","description":"The timestamp when the off-cycle payment was submitted."}},"required":["id","amount","status","created_at","description","reported_by","currency_code","date_submitted"],"title":"ContractsContractIdOffCyclePaymentsGetResponsesContentApplicationJsonSchemaDataItems"},"off-cycle_getContractOffCyclePayments_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdOffCyclePaymentsGetResponsesContentApplicationJsonSchemaDataItems"}}},"required":["data"],"title":"off-cycle_getContractOffCyclePayments_Response_200"},"ContractsContractIdOffCyclePaymentsIdGetResponsesContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"Current status of the off-cycle payment.","title":"ContractsContractIdOffCyclePaymentsIdGetResponsesContentApplicationJsonSchemaDataStatus"},"ContractsContractIdOffCyclePaymentsIdGetResponsesContentApplicationJsonSchemaDataReportedBy":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the reporter."},"full_name":{"type":"string","description":"Full name of the person who reported the payment."}},"required":["id"],"title":"ContractsContractIdOffCyclePaymentsIdGetResponsesContentApplicationJsonSchemaDataReportedBy"},"ContractsContractIdOffCyclePaymentsIdGetResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the off-cycle payment."},"amount":{"type":"string","description":"Amount of the off-cycle payment."},"status":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdOffCyclePaymentsIdGetResponsesContentApplicationJsonSchemaDataStatus"},{"type":"null"}],"description":"Current status of the off-cycle payment."},"created_at":{"type":"string","format":"date-time","description":"Timestamp of when the off-cycle payment was created."},"description":{"type":"string","description":"Description of the off-cycle payment."},"reported_by":{"$ref":"#/components/schemas/ContractsContractIdOffCyclePaymentsIdGetResponsesContentApplicationJsonSchemaDataReportedBy"},"currency_code":{"type":"string","description":"ISO 4217 currency code of the payment."},"date_submitted":{"type":"string","format":"date-time","description":"Timestamp of when the payment was submitted."}},"required":["id","amount","status","created_at","description","reported_by","currency_code","date_submitted"],"title":"ContractsContractIdOffCyclePaymentsIdGetResponsesContentApplicationJsonSchemaData"},"off-cycle_getContractOffCyclePaymentById_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdOffCyclePaymentsIdGetResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"off-cycle_getContractOffCyclePaymentById_Response_200"},"TimesheetsPresetsPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"file":{"type":["string","null"],"format":"binary","description":"Optional file attachment for the hourly report preset"},"rate":{"type":"number","format":"double","description":"The hourly rate for this preset (must be greater than 0)"},"title":{"type":"string","description":"The title of the hourly report preset"},"description":{"type":["string","null"],"description":"A detailed description of the hourly report preset's purpose and contents"},"work_statement_id":{"type":"string","format":"uuid","description":"The unique identifier of the associated work statement"},"hourly_report_root_preset_id":{"type":"string","format":"uuid","description":"The unique identifier of the root preset this report is based on"}},"required":["work_statement_id","hourly_report_root_preset_id"],"title":"TimesheetsPresetsPostRequestBodyContentApplicationJsonSchemaData"},"TimesheetsPresetsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the newly created hourly report preset"}},"required":["id"],"title":"TimesheetsPresetsPostResponsesContentApplicationJsonSchemaData"},"Projects_createTimesheetsPreset_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsPresetsPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"Projects_createTimesheetsPreset_Response_201"},"CreateHourlyReportPresetRequestBadRequestError":{"type":"object","properties":{"error":{"type":"string"}},"title":"CreateHourlyReportPresetRequestBadRequestError"},"CreateHourlyReportPresetRequestForbiddenError":{"type":"object","properties":{"error":{"type":"string"}},"title":"CreateHourlyReportPresetRequestForbiddenError"},"TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaType":{"type":"string","enum":["RATE","TRACKING"],"description":"The type of preset, RATE – indicates a preset that overrides the default contract rate, TRACKING - used exclusively for tracking, applying the default contract rate","title":"TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaType"},"TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaHourlyReportPresetsItemsActionType":{"type":"string","enum":["ADD"],"default":"ADD","description":"The action to perform with this preset (currently only ADD is supported)","title":"TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaHourlyReportPresetsItemsActionType"},"TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaHourlyReportPresetsItems":{"type":"object","properties":{"file":{"type":["string","null"],"format":"binary","description":"Optional file attachment for this specific preset instance"},"rate":{"type":"number","format":"double","description":"The hourly rate for this preset (must be greater than 0)"},"title":{"type":"string","description":"The title for this specific preset instance (maximum 255 characters)"},"action_type":{"$ref":"#/components/schemas/TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaHourlyReportPresetsItemsActionType","description":"The action to perform with this preset (currently only ADD is supported)"},"contract_id":{"type":"string","description":"The unique identifier of the contract this preset is associated with"},"description":{"type":["string","null"],"description":"Detailed description for this specific preset instance (maximum 30000 characters)"}},"required":["contract_id"],"title":"TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaHourlyReportPresetsItems"},"TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaHourlyReportPresetsProcessingType":{"type":"string","enum":["ASYNC","SYNC"],"default":"SYNC","description":"Determines whether presets should be processed synchronously or asynchronously","title":"TimesheetsRootPresetsPostRequestBodyContentApplicationJsonSchemaHourlyReportPresetsProcessingType"},"TimesheetsRootPresetsPostResponsesContentApplicationJsonSchemaDataAsyncTask":{"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the asynchronous task processing this request"}},"title":"TimesheetsRootPresetsPostResponsesContentApplicationJsonSchemaDataAsyncTask"},"TimesheetsRootPresetsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the created root preset"},"async_task":{"$ref":"#/components/schemas/TimesheetsRootPresetsPostResponsesContentApplicationJsonSchemaDataAsyncTask"}},"required":["id"],"title":"TimesheetsRootPresetsPostResponsesContentApplicationJsonSchemaData"},"Projects_createRootTimesheetsPreset_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsRootPresetsPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"Projects_createRootTimesheetsPreset_Response_200"},"CreateHourlyReportRootPresetRequestBadRequestError":{"type":"object","properties":{"error":{"type":"string"}},"title":"CreateHourlyReportRootPresetRequestBadRequestError"},"TimesheetsPresetsIdDeleteResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"deleted":{"type":"boolean","description":"Indicates whether the hourly report preset was successfully deleted"}},"required":["deleted"],"title":"TimesheetsPresetsIdDeleteResponsesContentApplicationJsonSchemaData"},"Projects_deleteTimesheetsPreset_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsPresetsIdDeleteResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"Projects_deleteTimesheetsPreset_Response_200"},"DeleteHourlyReportPresetRequestBadRequestError":{"type":"object","properties":{"error":{"type":"string"}},"title":"DeleteHourlyReportPresetRequestBadRequestError"},"DeleteHourlyReportPresetRequestForbiddenError":{"type":"object","properties":{"error":{"type":"string"}},"title":"DeleteHourlyReportPresetRequestForbiddenError"},"DeleteHourlyReportPresetRequestNotFoundError":{"type":"object","properties":{"error":{"type":"string"}},"title":"DeleteHourlyReportPresetRequestNotFoundError"},"TimesheetsPresetsIdGetResponsesContentApplicationJsonSchemaDataFile":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier of the file"},"name":{"type":"string","description":"The name of the file"},"type":{"type":"string","description":"The type of the file"}},"title":"TimesheetsPresetsIdGetResponsesContentApplicationJsonSchemaDataFile"},"TimesheetsPresetsIdGetResponsesContentApplicationJsonSchemaDataType":{"type":"string","enum":["RATE","TRACKING"],"description":"The type of preset based on type of root preset","title":"TimesheetsPresetsIdGetResponsesContentApplicationJsonSchemaDataType"},"TimesheetsPresetsIdGetResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the hourly report preset"},"file":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsPresetsIdGetResponsesContentApplicationJsonSchemaDataFile"},{"type":"null"}]},"type":{"$ref":"#/components/schemas/TimesheetsPresetsIdGetResponsesContentApplicationJsonSchemaDataType","description":"The type of preset based on type of root preset"},"title":{"type":"string","description":"The title of the hourly report preset"},"status":{"type":"string","description":"The current status of the hourly report preset"},"description":{"type":"string","description":"A detailed description of the hourly report preset"}},"required":["id","title","status","description"],"title":"TimesheetsPresetsIdGetResponsesContentApplicationJsonSchemaData"},"Projects_getTimesheetsPresetById_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsPresetsIdGetResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"Projects_getTimesheetsPresetById_Response_200"},"GetHourlyReportPresetByIdRequestForbiddenError":{"type":"object","properties":{"error":{"type":"string"}},"title":"GetHourlyReportPresetByIdRequestForbiddenError"},"GetHourlyReportPresetByIdRequestNotFoundError":{"type":"object","properties":{"error":{"type":"string"}},"title":"GetHourlyReportPresetByIdRequestNotFoundError"},"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsFile":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier of the file"},"name":{"type":"string","description":"The name of the file"},"type":{"type":"string","description":"The type of the file"}},"title":"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsFile"},"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportRootPresetFile":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier of the file"},"name":{"type":"string","description":"The name of the file"},"type":{"type":"string","description":"The type of the file"}},"title":"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportRootPresetFile"},"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportRootPresetType":{"type":"string","enum":["RATE","TRACKING"],"description":"The type of preset based on type of root preset","title":"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportRootPresetType"},"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportRootPreset":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the root preset"},"file":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportRootPresetFile"},{"type":"null"}]},"type":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportRootPresetType","description":"The type of preset based on type of root preset"},"title":{"type":"string","description":"The title of the root preset template"},"description":{"type":"string","description":"Detailed description of the root preset template"}},"required":["id","title","description"],"title":"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportRootPreset"},"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the hourly report preset"},"file":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsFile"},{"type":"null"}]},"rate":{"type":"number","format":"double","description":"The hourly rate for this preset"},"title":{"type":"string","description":"Title of the hourly report preset."},"description":{"type":"string","description":"Detailed description of the hourly report preset"},"hourly_report_root_preset":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportRootPreset"}},"required":["id","rate","title","description","hourly_report_root_preset"],"title":"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItems"},"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaPage":{"type":"object","properties":{"cursor":{"type":"string","description":"Pagination cursor for fetching the next set of results"},"total_rows":{"type":"integer","description":"Total number of rows available in the result set"}},"required":["cursor","total_rows"],"title":"ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaPage"},"Projects_getContractTimesheetsPresets_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaDataItems"}},"page":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsPresetsGetResponsesContentApplicationJsonSchemaPage"}},"required":["data","page"],"title":"Projects_getContractTimesheetsPresets_Response_200"},"GetHourlyReportPresetsRequestBadRequestError":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"],"title":"GetHourlyReportPresetsRequestBadRequestError"},"TimesheetsPresetsIdPatchRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"file":{"type":["string","null"],"format":"binary","description":"The file to be attached to this hourly report preset (optional)"},"rate":{"type":"number","format":"double","description":"The hourly rate for this preset (must be greater than 0)"},"title":{"type":"string","description":"The title of the hourly report preset (maximum 255 characters)"},"description":{"type":["string","null"],"description":"A detailed description of the hourly report preset's purpose and contents (maximum 30000 characters)"}},"title":"TimesheetsPresetsIdPatchRequestBodyContentApplicationJsonSchemaData"},"TimesheetsPresetsIdPatchResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the updated hourly report preset"}},"required":["id"],"title":"TimesheetsPresetsIdPatchResponsesContentApplicationJsonSchemaData"},"Projects_updateTimesheetsPreset_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsPresetsIdPatchResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"Projects_updateTimesheetsPreset_Response_200"},"UpdateHourlyReportPresetRequestBadRequestError":{"type":"object","properties":{"error":{"type":"string"}},"title":"UpdateHourlyReportPresetRequestBadRequestError"},"UpdateHourlyReportPresetRequestForbiddenError":{"type":"object","properties":{"error":{"type":"string"}},"title":"UpdateHourlyReportPresetRequestForbiddenError"},"UpdateHourlyReportPresetRequestNotFoundError":{"type":"object","properties":{"error":{"type":"string"}},"title":"UpdateHourlyReportPresetRequestNotFoundError"},"ContractsContractIdTasksPostRequestBodyContentApplicationJsonSchemaDataDateSubmitted":{"oneOf":[{"type":"string","format":"date"},{"type":"string","format":"date-time"}],"description":"The date the task was submitted, in ISO 8601 format. Also accepts date-time (YYYY-MM-DDTHH:MM:SSZ).","title":"ContractsContractIdTasksPostRequestBodyContentApplicationJsonSchemaDataDateSubmitted"},"ContractsContractIdTasksPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"amount":{"type":"string","description":"The amount to be associated with the task, in the appropriate currency."},"description":{"type":["string","null"],"description":"A description of the task."},"date_submitted":{"$ref":"#/components/schemas/ContractsContractIdTasksPostRequestBodyContentApplicationJsonSchemaDataDateSubmitted","description":"The date the task was submitted, in ISO 8601 format. Also accepts date-time (YYYY-MM-DDTHH:MM:SSZ)."},"is_auto_approved":{"type":"boolean","description":"If true, the task will be automatically approved as part of the request."}},"required":["amount","description","date_submitted"],"title":"ContractsContractIdTasksPostRequestBodyContentApplicationJsonSchemaData"},"ContractsContractIdTasksPostResponsesContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"The current status of the task.","title":"ContractsContractIdTasksPostResponsesContentApplicationJsonSchemaDataStatus"},"ContractsContractIdTasksPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier for the created task."},"status":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTasksPostResponsesContentApplicationJsonSchemaDataStatus"},{"type":"null"}],"description":"The current status of the task."},"created":{"type":"boolean","description":"Indicates whether the task creation operation was successful."}},"title":"ContractsContractIdTasksPostResponsesContentApplicationJsonSchemaData"},"tasks_createContractTask_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdTasksPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"tasks_createContractTask_Response_201"},"CreateANewTaskRequestBadRequestError":{"type":"object","properties":{"error":{"type":"string"}},"title":"CreateANewTaskRequestBadRequestError"},"CreateANewTaskRequestUnauthorizedError":{"type":"object","properties":{"error":{"type":"string"}},"title":"CreateANewTaskRequestUnauthorizedError"},"CreateANewTaskRequestInternalServerError":{"type":"object","properties":{"error":{"type":"string"}},"title":"CreateANewTaskRequestInternalServerError"},"ContractsContractIdTasksTaskIdDeleteResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"deleted":{"type":"boolean","description":"Indicates whether the task was successfully deleted."}},"required":["deleted"],"title":"ContractsContractIdTasksTaskIdDeleteResponsesContentApplicationJsonSchemaData"},"tasks_deleteContractTask_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdTasksTaskIdDeleteResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"tasks_deleteContractTask_Response_200"},"ContractsContractIdTasksGetResponsesContentApplicationJsonSchemaDataItemsStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"The current status of the task.","title":"ContractsContractIdTasksGetResponsesContentApplicationJsonSchemaDataItemsStatus"},"ContractsContractIdTasksGetResponsesContentApplicationJsonSchemaDataItemsAttachment":{"type":"object","properties":{"key":{"type":["string","null"],"description":"(Optional) The key for accessing the attachment."},"filename":{"type":["string","null"],"description":"(Optional) The name of the file attached to the task."}},"title":"ContractsContractIdTasksGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},"ContractsContractIdTasksGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier for the task."},"amount":{"type":"string","description":"The monetary amount associated with the task."},"status":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTasksGetResponsesContentApplicationJsonSchemaDataItemsStatus"},{"type":"null"}],"description":"The current status of the task."},"attachment":{"$ref":"#/components/schemas/ContractsContractIdTasksGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},"description":{"type":"string","description":"(Required) A brief description of the task."},"date_submitted":{"type":"string","description":"(Required) The date when the task was submitted."}},"required":["id","amount","status","description","date_submitted"],"title":"ContractsContractIdTasksGetResponsesContentApplicationJsonSchemaDataItems"},"tasks_getContractTasks_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTasksGetResponsesContentApplicationJsonSchemaDataItems"}}},"required":["data"],"title":"tasks_getContractTasks_Response_200"},"ContractsContractIdTasksTaskIdReviewsPostRequestBodyContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["approved","declined"],"description":"The review status of the task. Possible values are 'approved' or 'declined'.","title":"ContractsContractIdTasksTaskIdReviewsPostRequestBodyContentApplicationJsonSchemaDataStatus"},"ContractsContractIdTasksTaskIdReviewsPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"reason":{"type":["string","null"],"description":"Optional reason for declining the task."},"status":{"$ref":"#/components/schemas/ContractsContractIdTasksTaskIdReviewsPostRequestBodyContentApplicationJsonSchemaDataStatus","description":"The review status of the task. Possible values are 'approved' or 'declined'."}},"required":["status"],"title":"ContractsContractIdTasksTaskIdReviewsPostRequestBodyContentApplicationJsonSchemaData"},"ContractsContractIdTasksTaskIdReviewsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"created":{"type":"boolean","description":"Indicating whether the task review was created"}},"required":["created"],"title":"ContractsContractIdTasksTaskIdReviewsPostResponsesContentApplicationJsonSchemaData"},"tasks_createContractTaskReview_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdTasksTaskIdReviewsPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"tasks_createContractTaskReview_Response_201"},"ReviewASingleTaskRequestBadRequestError":{"type":"object","properties":{"error":{"type":"string"}},"title":"ReviewASingleTaskRequestBadRequestError"},"ReviewASingleTaskRequestUnauthorizedError":{"type":"object","properties":{"error":{"type":"string"}},"title":"ReviewASingleTaskRequestUnauthorizedError"},"ReviewASingleTaskRequestNotFoundError":{"type":"object","properties":{"error":{"type":"string"}},"title":"ReviewASingleTaskRequestNotFoundError"},"ReviewASingleTaskRequestInternalServerError":{"type":"object","properties":{"error":{"type":"string"}},"title":"ReviewASingleTaskRequestInternalServerError"},"terminations_deleteContractTermination_Response_204":{"type":"object","properties":{},"description":"Empty response body","title":"terminations_deleteContractTermination_Response_204"},"ContractsContractIdTerminationsDeleteResponsesContentApplicationJsonSchemaErrorsItems":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code"},"message":{"type":"string","description":"Human-readable explanation of the error"}},"title":"ContractsContractIdTerminationsDeleteResponsesContentApplicationJsonSchemaErrorsItems"},"DeleteContractTerminationRequestRequestBadRequestError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTerminationsDeleteResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"DeleteContractTerminationRequestRequestBadRequestError"},"DeleteContractTerminationRequestRequestInternalServerError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTerminationsDeleteResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"DeleteContractTerminationRequestRequestInternalServerError"},"ContractsContractIdTerminationsPostRequestBodyContentApplicationJsonSchemaDataTerminationType":{"type":"string","enum":["RESIGNATION","TERMINATION","END_OF_CONTRACT"],"description":"The type of termination. Specifies whether it is a resignation (contractor-initiated), termination (client-initiated), or end of contract (mutual/planned).","title":"ContractsContractIdTerminationsPostRequestBodyContentApplicationJsonSchemaDataTerminationType"},"ContractsContractIdTerminationsPostRequestBodyContentApplicationJsonSchemaDataEligibleForRehire":{"type":"string","enum":["YES","NO","DONT_KNOW"],"description":"Indicates whether the contractor is eligible for rehire in the future.","title":"ContractsContractIdTerminationsPostRequestBodyContentApplicationJsonSchemaDataEligibleForRehire"},"ContractsContractIdTerminationsPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"message":{"type":"string","description":"Optional message to include with the termination"},"terminate_now":{"type":"boolean","default":false,"description":"If true, terminates the contract immediately. If false, completion_date is required."},"completion_date":{"type":"string","format":"date","description":"Contract completion date (YYYY-MM-DD). Required when terminate_now is false or not provided. Since terminate_now defaults to false, this field is required unless you explicitly set terminate_now to true."},"termination_type":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostRequestBodyContentApplicationJsonSchemaDataTerminationType","description":"The type of termination. Specifies whether it is a resignation (contractor-initiated), termination (client-initiated), or end of contract (mutual/planned)."},"eligible_for_rehire":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostRequestBodyContentApplicationJsonSchemaDataEligibleForRehire","description":"Indicates whether the contractor is eligible for rehire in the future."},"termination_reason_id":{"type":"string","format":"uuid","description":"The UUID of the termination reason. Use GET /contracts/termination-reasons to retrieve the list of available reasons."},"eligible_for_rehire_reason":{"type":"string","description":"Provides context when eligible_for_rehire is 'DONT_KNOW'. Should be empty or null for other values."},"termination_reason_description":{"type":"string","description":"Free-form text providing additional context about the termination reason. Can be provided independently without termination_reason_id, or used to add context to a selected reason."}},"description":"Termination data. At minimum, you must provide either terminate_now: true (for immediate termination) OR completion_date (for scheduled termination).","title":"ContractsContractIdTerminationsPostRequestBodyContentApplicationJsonSchemaData"},"ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","description":"Contract id"},"completion_date":{"type":"string","format":"date-time","description":"Contract completion date"}},"title":"ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaData"},"terminations_createContractTermination_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaData"}},"title":"terminations_createContractTermination_Response_201"},"ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaErrorsItems":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code"},"message":{"type":"string","description":"Human-readable explanation of the error"}},"title":"ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaErrorsItems"},"TerminateContract-v2026-01-01RequestBadRequestError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"TerminateContract-v2026-01-01RequestBadRequestError"},"TerminateContract-v2026-01-01RequestUnauthorizedError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"TerminateContract-v2026-01-01RequestUnauthorizedError"},"TerminateContract-v2026-01-01RequestForbiddenError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"TerminateContract-v2026-01-01RequestForbiddenError"},"TerminateContract-v2026-01-01RequestNotFoundError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"TerminateContract-v2026-01-01RequestNotFoundError"},"TerminateContract-v2026-01-01RequestConflictError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"TerminateContract-v2026-01-01RequestConflictError"},"TerminateContract-v2026-01-01RequestInternalServerError":{"type":"object","properties":{"errors":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTerminationsPostResponsesContentApplicationJsonSchemaErrorsItems"}}},"title":"TerminateContract-v2026-01-01RequestInternalServerError"},"TimesheetsPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"quantity":{"type":"number","format":"double","description":"This is based on the scale of work statement of the associated contract"},"contract_id":{"type":"string","description":"Id of a Deel contract."},"description":{"type":"string","default":""},"date_submitted":{"type":"string","format":"date","description":"Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31."},"is_auto_approved":{"type":"boolean","description":"If true, the timesheet will be automatically approved as part of the request."},"hourly_report_preset_id":{"type":["string","null"],"description":"Id of an existing timesheets preset. Created through /rest/v2/timesheets/presets"}},"required":["quantity","contract_id","description","date_submitted"],"description":"Details of the timesheet to create. Both a client or a contractor may create a timesheet.","title":"TimesheetsPostRequestBodyContentApplicationJsonSchemaData"},"TimesheetsPostResponsesContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"status of invoice adjustment","title":"TimesheetsPostResponsesContentApplicationJsonSchemaDataStatus"},"TimesheetsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier of this resource."},"status":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsPostResponsesContentApplicationJsonSchemaDataStatus"},{"type":"null"}],"description":"status of invoice adjustment"},"created":{"type":"boolean"},"created_at":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"}},"required":["created"],"description":"Details of invoice adjustment created.","title":"TimesheetsPostResponsesContentApplicationJsonSchemaData"},"timesheets_createTimesheet_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsPostResponsesContentApplicationJsonSchemaData","description":"Details of invoice adjustment created."}},"required":["data"],"title":"timesheets_createTimesheet_Response_201"},"TimesheetsGetParametersContractTypesSchemaOneOf0Items":{"type":"string","enum":["ongoing_time_based","pay_as_you_go_time_based","payg_milestones","payg_tasks"],"description":"Type of a contract","title":"TimesheetsGetParametersContractTypesSchemaOneOf0Items"},"TimesheetsGetParametersContractTypes0":{"type":"array","items":{"$ref":"#/components/schemas/TimesheetsGetParametersContractTypesSchemaOneOf0Items"},"description":"List of contract types","title":"TimesheetsGetParametersContractTypes0"},"TimesheetsGetParametersContractTypes1":{"type":"string","enum":["ongoing_time_based","pay_as_you_go_time_based","payg_milestones","payg_tasks"],"title":"TimesheetsGetParametersContractTypes1"},"TimesheetsGetParametersContractTypes":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsGetParametersContractTypes0"},{"$ref":"#/components/schemas/TimesheetsGetParametersContractTypes1"}],"title":"TimesheetsGetParametersContractTypes"},"TimesheetsGetParametersStatusesSchemaOneOf0Items":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"status of invoice adjustment","title":"TimesheetsGetParametersStatusesSchemaOneOf0Items"},"TimesheetsGetParametersStatuses0":{"type":"array","items":{"$ref":"#/components/schemas/TimesheetsGetParametersStatusesSchemaOneOf0Items"},"title":"TimesheetsGetParametersStatuses0"},"TimesheetsGetParametersStatuses1":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"title":"TimesheetsGetParametersStatuses1"},"TimesheetsGetParametersStatuses":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsGetParametersStatuses0"},{"$ref":"#/components/schemas/TimesheetsGetParametersStatuses1"}],"title":"TimesheetsGetParametersStatuses"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"status of invoice adjustment","title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContractType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of a contract","title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContractType"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContract":{"type":"object","properties":{"id":{"type":"string"},"type":{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContractType","description":"Type of a contract"},"title":{"type":"string"}},"required":["id","type","title"],"title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContract"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet":{"type":"object","properties":{"days":{"type":"number","format":"double"},"hours":{"type":"number","format":"double"},"weeks":{"type":"number","format":"double"},"minutes":{"type":"number","format":"double"}},"required":["days","hours","weeks","minutes"],"title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsAttachment":{"type":"object","properties":{"key":{"type":"string","description":"You can call attachments end-point, get key and URL to upload your file."},"filename":{"type":"string","description":"Original filename you used to upload using attachments end-point."}},"required":["key","filename"],"description":"This object is used for linking file attachments to your records.","title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of this resource."},"full_name":{"type":"string"}},"required":["id"],"title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of this resource."},"remarks":{"type":"string"},"full_name":{"type":"string"},"reviewed_at":{"type":"string","format":"date-time"}},"required":["id","remarks","reviewed_at"],"title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle":{"type":"object","properties":{"end_date":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"},"start_date":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"}},"title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportPreset":{"type":"object","properties":{"id":{"type":["string","null"],"description":"unique identifier of the related timesheet preset"},"rate":{"type":["number","null"],"format":"double","description":"the hourly rate of the related timesheet preset"},"title":{"type":["string","null"],"description":"the title of the related timesheet preset"},"description":{"type":["string","null"],"description":"the description of the related timesheet preset"}},"title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportPreset"},"TimesheetsGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of this resource."},"type":{"type":"string","description":"Deprecated - it is always \"work\""},"scale":{"type":["string","null"]},"status":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},{"type":"null"}],"description":"status of invoice adjustment"},"contract":{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContract"},"quantity":{"type":["number","null"],"format":"double"},"worksheet":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet"},{"type":"null"}]},"attachment":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},{"type":"null"}],"description":"This object is used for linking file attachments to your records."},"created_at":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"},"description":{"type":"string"},"reported_by":{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy"},"reviewed_by":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},{"type":"null"}]},"custom_scale":{"type":["string","null"]},"total_amount":{"type":"string","description":"is equal to quantity times rate of active work statement + bonus in this record"},"currency_code":{"type":"string"},"payment_cycle":{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle"},"date_submitted":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"},"hourly_report_preset":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportPreset"},{"type":"null"}]}},"required":["id","type","status","contract","quantity","worksheet","created_at","description","reported_by","total_amount","currency_code","date_submitted"],"title":"TimesheetsGetResponsesContentApplicationJsonSchemaDataItems"},"TimesheetsGetResponsesContentApplicationJsonSchemaPage":{"type":"object","properties":{"total_rows":{"type":"number","format":"double"}},"required":["total_rows"],"title":"TimesheetsGetResponsesContentApplicationJsonSchemaPage"},"timesheets_getTimesheets_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaDataItems"}},"page":{"$ref":"#/components/schemas/TimesheetsGetResponsesContentApplicationJsonSchemaPage"}},"required":["data","page"],"title":"timesheets_getTimesheets_Response_200"},"ContractsContractIdTimesheetsGetParametersContractTypesSchemaOneOf0Items":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of a contract","title":"ContractsContractIdTimesheetsGetParametersContractTypesSchemaOneOf0Items"},"ContractsContractIdTimesheetsGetParametersContractTypes0":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetParametersContractTypesSchemaOneOf0Items"},"description":"List of contract types","title":"ContractsContractIdTimesheetsGetParametersContractTypes0"},"ContractsContractIdTimesheetsGetParametersContractTypes1":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"title":"ContractsContractIdTimesheetsGetParametersContractTypes1"},"ContractsContractIdTimesheetsGetParametersContractTypes":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetParametersContractTypes0"},{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetParametersContractTypes1"}],"title":"ContractsContractIdTimesheetsGetParametersContractTypes"},"ContractsContractIdTimesheetsGetParametersStatusesSchemaOneOf0Items":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"Status of this entry.","title":"ContractsContractIdTimesheetsGetParametersStatusesSchemaOneOf0Items"},"ContractsContractIdTimesheetsGetParametersStatuses0":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetParametersStatusesSchemaOneOf0Items"},"title":"ContractsContractIdTimesheetsGetParametersStatuses0"},"ContractsContractIdTimesheetsGetParametersStatuses1":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"title":"ContractsContractIdTimesheetsGetParametersStatuses1"},"ContractsContractIdTimesheetsGetParametersStatuses":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetParametersStatuses0"},{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetParametersStatuses1"}],"title":"ContractsContractIdTimesheetsGetParametersStatuses"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"Status of this entry.","title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContractType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of a contract","title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContractType"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContract":{"type":"object","properties":{"id":{"type":"string"},"type":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContractType","description":"Type of a contract"},"title":{"type":"string"}},"required":["id","type","title"],"title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContract"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet":{"type":"object","properties":{"days":{"type":"number","format":"double"},"hours":{"type":"number","format":"double"},"weeks":{"type":"number","format":"double"},"minutes":{"type":"number","format":"double"}},"required":["days","hours","weeks","minutes"],"title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsAttachment":{"type":"object","properties":{"key":{"type":"string","description":"You can call attachments end-point, get key and URL to upload your file."},"filename":{"type":"string","description":"Original filename you used to upload using attachments end-point."}},"required":["key","filename"],"description":"This object is used for linking file attachments to your records.","title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of this resource."},"full_name":{"type":"string"}},"required":["id"],"title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of this resource."},"remarks":{"type":"string"},"full_name":{"type":"string"},"reviewed_at":{"type":"string"}},"required":["id","remarks","reviewed_at"],"title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle":{"type":"object","properties":{"end_date":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"},"start_date":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"}},"title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportPreset":{"type":"object","properties":{"id":{"type":["string","null"],"description":"unique identifier of the related timesheet preset"},"rate":{"type":["number","null"],"format":"double","description":"the hourly rate of the related timesheet preset"},"title":{"type":["string","null"],"description":"the title of the related timesheet preset"},"description":{"type":["string","null"],"description":"the description of the related timesheet preset"}},"title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportPreset"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItems":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of this resource."},"type":{"type":"string","description":"Deprecated - it is always \"work\""},"scale":{"type":["string","null"]},"status":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsStatus"},{"type":"null"}],"description":"Status of this entry."},"contract":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsContract"},"quantity":{"type":["number","null"],"format":"double"},"worksheet":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsWorksheet"},{"type":"null"}]},"attachment":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsAttachment"},{"type":"null"}],"description":"This object is used for linking file attachments to your records."},"created_at":{"type":"string"},"description":{"type":"string"},"reported_by":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReportedBy"},"reviewed_by":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsReviewedBy"},{"type":"null"}]},"custom_scale":{"type":["string","null"]},"total_amount":{"type":"string","description":"is equal to quantity times rate of active work statement + bonus in this record"},"currency_code":{"type":"string"},"payment_cycle":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsPaymentCycle"},"date_submitted":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"},"hourly_report_preset":{"oneOf":[{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItemsHourlyReportPreset"},{"type":"null"}]}},"required":["id","type","status","contract","quantity","worksheet","created_at","description","reported_by","total_amount","currency_code","date_submitted"],"title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItems"},"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaPage":{"type":"object","properties":{"total_rows":{"type":"number","format":"double"}},"required":["total_rows"],"description":"This object is used for pagination.","title":"ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaPage"},"timesheets_getContractTimesheets_Response_200":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaDataItems"}},"page":{"$ref":"#/components/schemas/ContractsContractIdTimesheetsGetResponsesContentApplicationJsonSchemaPage","description":"This object is used for pagination."}},"required":["data","page"],"title":"timesheets_getContractTimesheets_Response_200"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataId":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataId"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["approved","declined","not_payable","paid","pending","processing"],"description":"Status of this entry.","title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataStatus"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataContractType":{"type":"string","enum":["ongoing_time_based","milestones","time_based","pay_as_you_go_time_based","commission","payg_milestones","payg_tasks","eor","unknown","employee","global_payroll","shield_msa","hris_direct_employee","peo"],"description":"Type of a contract","title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataContractType"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataContract":{"type":"object","properties":{"id":{"type":"string"},"type":{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataContractType","description":"Type of a contract"},"title":{"type":"string"}},"required":["id","type","title"],"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataContract"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataWorksheet":{"type":"object","properties":{"days":{"type":"number","format":"double"},"hours":{"type":"number","format":"double"},"weeks":{"type":"number","format":"double"},"minutes":{"type":"number","format":"double"}},"required":["days","hours","weeks","minutes"],"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataWorksheet"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataAttachment":{"type":"object","properties":{"key":{"type":"string","description":"You can call attachments end-point, get key and URL to upload your file."},"filename":{"type":"string","description":"Original filename you used to upload using attachments end-point."}},"required":["key","filename"],"description":"This object is used for linking file attachments to your records.","title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataAttachment"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReportedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReportedById"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReportedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReportedById"},"full_name":{"type":"string"}},"required":["id"],"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReportedBy"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReviewedById":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReviewedById"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReviewedBy":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReviewedById"},"remarks":{"type":"string"},"full_name":{"type":"string"},"reviewed_at":{"type":"string"}},"required":["id","remarks","reviewed_at"],"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReviewedBy"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataPaymentCycle":{"type":"object","properties":{"end_date":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"},"start_date":{"type":["string","null"],"format":"date-time","description":"Long date-time format following ISO-8601"}},"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataPaymentCycle"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataHourlyReportPreset":{"type":"object","properties":{"id":{"type":["string","null"],"description":"unique identifier of the related timesheet preset"},"rate":{"type":["number","null"],"format":"double","description":"the hourly rate of the related timesheet preset"},"title":{"type":["string","null"],"description":"the title of the related timesheet preset"},"description":{"type":["string","null"],"description":"the description of the related timesheet preset"}},"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataHourlyReportPreset"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataApproversItems":{"type":"object","properties":{"email":{"type":"string"},"approved":{"type":"boolean"},"full_name":{"type":"string"}},"required":["approved"],"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaDataApproversItems"},"TimesheetsIdGetResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataId"},"type":{"type":"string","description":"Deprecated - it is always \"work\""},"scale":{"type":["string","null"]},"status":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataStatus"},{"type":"null"}],"description":"Status of this entry."},"contract":{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataContract"},"quantity":{"type":["number","null"],"format":"double"},"worksheet":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataWorksheet"},{"type":"null"}]},"attachment":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataAttachment"},{"type":"null"}],"description":"This object is used for linking file attachments to your records."},"created_at":{"type":"string"},"description":{"type":"string"},"reported_by":{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReportedBy"},"reviewed_by":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataReviewedBy"},{"type":"null"}]},"custom_scale":{"type":["string","null"]},"total_amount":{"type":"string","description":"is equal to quantity times rate of active work statement + bonus in this record"},"currency_code":{"type":"string"},"payment_cycle":{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataPaymentCycle"},"date_submitted":{"type":"string","format":"date-time","description":"Long date-time format following ISO-8601"},"hourly_report_preset":{"oneOf":[{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataHourlyReportPreset"},{"type":"null"}]},"approvers":{"type":"array","items":{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaDataApproversItems"}}},"required":["id","type","status","contract","quantity","worksheet","attachment","created_at","description","reported_by","reviewed_by","total_amount","currency_code","date_submitted","approvers"],"title":"TimesheetsIdGetResponsesContentApplicationJsonSchemaData"},"timesheets_getTimesheetById_Response_200":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsIdGetResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"timesheets_getTimesheetById_Response_200"},"TimesheetsIdReviewsPostRequestBodyContentApplicationJsonSchemaDataStatus":{"type":"string","enum":["approved","declined"],"title":"TimesheetsIdReviewsPostRequestBodyContentApplicationJsonSchemaDataStatus"},"TimesheetsIdReviewsPostRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"reason":{"type":["string","null"]},"status":{"$ref":"#/components/schemas/TimesheetsIdReviewsPostRequestBodyContentApplicationJsonSchemaDataStatus"}},"required":["status"],"title":"TimesheetsIdReviewsPostRequestBodyContentApplicationJsonSchemaData"},"TimesheetsIdReviewsPostResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"created":{"type":"boolean"}},"required":["created"],"title":"TimesheetsIdReviewsPostResponsesContentApplicationJsonSchemaData"},"timesheets_createTimesheetReview_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsIdReviewsPostResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"timesheets_createTimesheetReview_Response_201"},"TimesheetsIdPatchRequestBodyContentApplicationJsonSchemaData":{"type":"object","properties":{"quantity":{"type":"number","format":"double"},"description":{"type":"string"},"hourly_report_preset_id":{"type":["string","null"],"description":"Id of an existing timesheets preset. Created through /rest/v2/timesheets/presets"}},"required":["quantity","description"],"title":"TimesheetsIdPatchRequestBodyContentApplicationJsonSchemaData"},"TimesheetsIdPatchResponsesContentApplicationJsonSchemaData":{"type":"object","properties":{"updated":{"type":"boolean"}},"required":["updated"],"title":"TimesheetsIdPatchResponsesContentApplicationJsonSchemaData"},"timesheets_updateTimesheet_Response_201":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TimesheetsIdPatchResponsesContentApplicationJsonSchemaData"}},"required":["data"],"title":"timesheets_updateTimesheet_Response_201"}},"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/"}}}}