naftiko: 1.0.0-alpha2 info: label: EOR Endpoints — subpackage_eorAmendments description: 'EOR Endpoints — subpackage_eorAmendments. 12 operations. Lead operation: Create amendment. Self-contained Naftiko capability covering one Deel business surface.' tags: - Deel - subpackage_eorAmendments created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: DEEL_API_KEY: DEEL_API_KEY capability: consumes: - type: http namespace: eor-endpoints-subpackage-eoramendments baseUri: https://api.letsdeel.com/rest/v2 description: EOR Endpoints — subpackage_eorAmendments business capability. Self-contained, no shared references. resources: - name: eor-contracts-contract_id-amendments path: /eor/contracts/{contract_id}/amendments operations: - name: createcontractamendment method: POST description: Create amendment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of the EOR worker contract required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: body in: body type: object description: Request body (JSON). required: false - name: getcontractamendments method: GET description: Get amendments by contract outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of EOR worker contract. required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: eor-contracts-contract_id-amendments-validate path: /eor/contracts/{contract_id}/amendments/validate operations: - name: validateeoramendments method: POST description: Validate amendment data points outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of the employee contract. required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: body in: body type: object description: Request body (JSON). required: false - name: eor-contracts-contract_id-amendments-validation-settings path: /eor/contracts/{contract_id}/amendments/validation/settings operations: - name: getcontractamendmentsvalidationsettings method: GET description: Get amendment validation settings outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of EOR worker contract. required: true - name: employment_state in: query type: string description: The employment state of the EOR worker contract - name: Authorization in: header type: string description: '## Authentication' required: true - name: eor-contracts-contract_id-amendments-amendment_id path: /eor/contracts/{contract_id}/amendments/{amendment_id} operations: - name: deletecontractamendment method: DELETE description: Cancel amendment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of EOR worker contract. required: true - name: amendment_id in: path type: string description: A unique identifier for the employee contract amendment. required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: getcontractamendmentbyid method: GET description: Get amendment by ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of EOR worker contract. required: true - name: amendment_id in: path type: string description: A unique identifier for the employee contract amendment. required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: updatecontractamendment method: PATCH description: Update amendment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of EOR worker contract. required: true - name: amendment_id in: path type: string description: A unique identifier for the employee contract amendment. This string is either supplied by the client or generated by the system and is used to uniquely identif required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: body in: body type: object description: Request body (JSON). required: false - name: eor-contracts-contract_id-amendments-amendment_id-accept path: /eor/contracts/{contract_id}/amendments/{amendment_id}/accept operations: - name: acceptcontractamendment method: POST description: Accept amendment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of EOR worker contract. required: true - name: amendment_id in: path type: string description: A unique identifier for the employee contract amendment. required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: body in: body type: object description: Request body (JSON). required: false - name: eor-contracts-contract_id-amendments-amendment_id-confirm path: /eor/contracts/{contract_id}/amendments/{amendment_id}/confirm operations: - name: confirmcontractamendment method: POST description: Confirm amendment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of EOR worker contract. required: true - name: amendment_id in: path type: string description: A unique identifier for the employee contract amendment. required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: body in: body type: object description: Request body (JSON). required: false - name: eor-contracts-contract_id-amendments-amendment_id-effective-date-limitations path: /eor/contracts/{contract_id}/amendments/{amendment_id}/effective-date-limitations operations: - name: getcontractamendmenteffectivedatelimitations method: GET description: Retrieve Effective Date Limitations outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of the EOR worker contract required: true - name: amendment_id in: path type: string description: A unique identifier for the employee contract amendment required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: eor-contracts-contract_id-amendments-amendment_id-pdf path: /eor/contracts/{contract_id}/amendments/{amendment_id}/pdf operations: - name: getcontractamendmentpdf method: GET description: Contract amendment PDF outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of EOR worker contract. required: true - name: amendment_id in: path type: string description: A unique identifier for the employee contract amendment. required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: eor-contracts-contract_id-amendments-amendment_id-sign path: /eor/contracts/{contract_id}/amendments/{amendment_id}/sign operations: - name: signeoramendment method: POST description: Sign a contract amendment (employee) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contract_id in: path type: string description: The unique identifier of EOR worker contract. required: true - name: amendment_id in: path type: string description: A unique identifier for the employee contract amendment. required: true - name: Authorization in: header type: string description: '## Authentication' required: true - name: body in: body type: object description: Request body (JSON). required: false authentication: type: bearer token: '{{env.DEEL_API_KEY}}' exposes: - type: rest namespace: eor-endpoints-subpackage-eoramendments-rest port: 8080 description: REST adapter for EOR Endpoints — subpackage_eorAmendments. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/eor/contracts/{contract-id}/amendments name: eor-contracts-contract-id-amendments description: REST surface for eor-contracts-contract_id-amendments. operations: - method: POST name: createcontractamendment description: Create amendment call: eor-endpoints-subpackage-eoramendments.createcontractamendment with: contract_id: rest.contract_id Authorization: rest.Authorization body: rest.body outputParameters: - type: object mapping: $. - method: GET name: getcontractamendments description: Get amendments by contract call: eor-endpoints-subpackage-eoramendments.getcontractamendments with: contract_id: rest.contract_id Authorization: rest.Authorization outputParameters: - type: object mapping: $. - path: /v1/eor/contracts/{contract-id}/amendments/validate name: eor-contracts-contract-id-amendments-validate description: REST surface for eor-contracts-contract_id-amendments-validate. operations: - method: POST name: validateeoramendments description: Validate amendment data points call: eor-endpoints-subpackage-eoramendments.validateeoramendments with: contract_id: rest.contract_id Authorization: rest.Authorization body: rest.body outputParameters: - type: object mapping: $. - path: /v1/eor/contracts/{contract-id}/amendments/validation/settings name: eor-contracts-contract-id-amendments-validation-settings description: REST surface for eor-contracts-contract_id-amendments-validation-settings. operations: - method: GET name: getcontractamendmentsvalidationsettings description: Get amendment validation settings call: eor-endpoints-subpackage-eoramendments.getcontractamendmentsvalidationsettings with: contract_id: rest.contract_id employment_state: rest.employment_state Authorization: rest.Authorization outputParameters: - type: object mapping: $. - path: /v1/eor/contracts/{contract-id}/amendments/{amendment-id} name: eor-contracts-contract-id-amendments-amendment-id description: REST surface for eor-contracts-contract_id-amendments-amendment_id. operations: - method: DELETE name: deletecontractamendment description: Cancel amendment call: eor-endpoints-subpackage-eoramendments.deletecontractamendment with: contract_id: rest.contract_id amendment_id: rest.amendment_id Authorization: rest.Authorization outputParameters: - type: object mapping: $. - method: GET name: getcontractamendmentbyid description: Get amendment by ID call: eor-endpoints-subpackage-eoramendments.getcontractamendmentbyid with: contract_id: rest.contract_id amendment_id: rest.amendment_id Authorization: rest.Authorization outputParameters: - type: object mapping: $. - method: PATCH name: updatecontractamendment description: Update amendment call: eor-endpoints-subpackage-eoramendments.updatecontractamendment with: contract_id: rest.contract_id amendment_id: rest.amendment_id Authorization: rest.Authorization body: rest.body outputParameters: - type: object mapping: $. - path: /v1/eor/contracts/{contract-id}/amendments/{amendment-id}/accept name: eor-contracts-contract-id-amendments-amendment-id-accept description: REST surface for eor-contracts-contract_id-amendments-amendment_id-accept. operations: - method: POST name: acceptcontractamendment description: Accept amendment call: eor-endpoints-subpackage-eoramendments.acceptcontractamendment with: contract_id: rest.contract_id amendment_id: rest.amendment_id Authorization: rest.Authorization body: rest.body outputParameters: - type: object mapping: $. - path: /v1/eor/contracts/{contract-id}/amendments/{amendment-id}/confirm name: eor-contracts-contract-id-amendments-amendment-id-confirm description: REST surface for eor-contracts-contract_id-amendments-amendment_id-confirm. operations: - method: POST name: confirmcontractamendment description: Confirm amendment call: eor-endpoints-subpackage-eoramendments.confirmcontractamendment with: contract_id: rest.contract_id amendment_id: rest.amendment_id Authorization: rest.Authorization body: rest.body outputParameters: - type: object mapping: $. - path: /v1/eor/contracts/{contract-id}/amendments/{amendment-id}/effective-date-limitations name: eor-contracts-contract-id-amendments-amendment-id-effective-date-limitations description: REST surface for eor-contracts-contract_id-amendments-amendment_id-effective-date-limitations. operations: - method: GET name: getcontractamendmenteffectivedatelimitations description: Retrieve Effective Date Limitations call: eor-endpoints-subpackage-eoramendments.getcontractamendmenteffectivedatelimitations with: contract_id: rest.contract_id amendment_id: rest.amendment_id Authorization: rest.Authorization outputParameters: - type: object mapping: $. - path: /v1/eor/contracts/{contract-id}/amendments/{amendment-id}/pdf name: eor-contracts-contract-id-amendments-amendment-id-pdf description: REST surface for eor-contracts-contract_id-amendments-amendment_id-pdf. operations: - method: GET name: getcontractamendmentpdf description: Contract amendment PDF call: eor-endpoints-subpackage-eoramendments.getcontractamendmentpdf with: contract_id: rest.contract_id amendment_id: rest.amendment_id Authorization: rest.Authorization outputParameters: - type: object mapping: $. - path: /v1/eor/contracts/{contract-id}/amendments/{amendment-id}/sign name: eor-contracts-contract-id-amendments-amendment-id-sign description: REST surface for eor-contracts-contract_id-amendments-amendment_id-sign. operations: - method: POST name: signeoramendment description: Sign a contract amendment (employee) call: eor-endpoints-subpackage-eoramendments.signeoramendment with: contract_id: rest.contract_id amendment_id: rest.amendment_id Authorization: rest.Authorization body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: eor-endpoints-subpackage-eoramendments-mcp port: 9090 transport: http description: MCP adapter for EOR Endpoints — subpackage_eorAmendments. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: create-amendment description: Create amendment hints: readOnly: false destructive: false idempotent: false call: eor-endpoints-subpackage-eoramendments.createcontractamendment with: contract_id: tools.contract_id Authorization: tools.Authorization body: tools.body outputParameters: - type: object mapping: $. - name: get-amendments-contract description: Get amendments by contract hints: readOnly: true destructive: false idempotent: true call: eor-endpoints-subpackage-eoramendments.getcontractamendments with: contract_id: tools.contract_id Authorization: tools.Authorization outputParameters: - type: object mapping: $. - name: validate-amendment-data-points description: Validate amendment data points hints: readOnly: true destructive: false idempotent: false call: eor-endpoints-subpackage-eoramendments.validateeoramendments with: contract_id: tools.contract_id Authorization: tools.Authorization body: tools.body outputParameters: - type: object mapping: $. - name: get-amendment-validation-settings description: Get amendment validation settings hints: readOnly: true destructive: false idempotent: true call: eor-endpoints-subpackage-eoramendments.getcontractamendmentsvalidationsettings with: contract_id: tools.contract_id employment_state: tools.employment_state Authorization: tools.Authorization outputParameters: - type: object mapping: $. - name: cancel-amendment description: Cancel amendment hints: readOnly: false destructive: true idempotent: true call: eor-endpoints-subpackage-eoramendments.deletecontractamendment with: contract_id: tools.contract_id amendment_id: tools.amendment_id Authorization: tools.Authorization outputParameters: - type: object mapping: $. - name: get-amendment-id description: Get amendment by ID hints: readOnly: true destructive: false idempotent: true call: eor-endpoints-subpackage-eoramendments.getcontractamendmentbyid with: contract_id: tools.contract_id amendment_id: tools.amendment_id Authorization: tools.Authorization outputParameters: - type: object mapping: $. - name: update-amendment description: Update amendment hints: readOnly: false destructive: false idempotent: true call: eor-endpoints-subpackage-eoramendments.updatecontractamendment with: contract_id: tools.contract_id amendment_id: tools.amendment_id Authorization: tools.Authorization body: tools.body outputParameters: - type: object mapping: $. - name: accept-amendment description: Accept amendment hints: readOnly: false destructive: false idempotent: false call: eor-endpoints-subpackage-eoramendments.acceptcontractamendment with: contract_id: tools.contract_id amendment_id: tools.amendment_id Authorization: tools.Authorization body: tools.body outputParameters: - type: object mapping: $. - name: confirm-amendment description: Confirm amendment hints: readOnly: false destructive: false idempotent: false call: eor-endpoints-subpackage-eoramendments.confirmcontractamendment with: contract_id: tools.contract_id amendment_id: tools.amendment_id Authorization: tools.Authorization body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-effective-date-limitations description: Retrieve Effective Date Limitations hints: readOnly: true destructive: false idempotent: true call: eor-endpoints-subpackage-eoramendments.getcontractamendmenteffectivedatelimitations with: contract_id: tools.contract_id amendment_id: tools.amendment_id Authorization: tools.Authorization outputParameters: - type: object mapping: $. - name: contract-amendment-pdf description: Contract amendment PDF hints: readOnly: true destructive: false idempotent: true call: eor-endpoints-subpackage-eoramendments.getcontractamendmentpdf with: contract_id: tools.contract_id amendment_id: tools.amendment_id Authorization: tools.Authorization outputParameters: - type: object mapping: $. - name: sign-contract-amendment-employee description: Sign a contract amendment (employee) hints: readOnly: false destructive: false idempotent: false call: eor-endpoints-subpackage-eoramendments.signeoramendment with: contract_id: tools.contract_id amendment_id: tools.amendment_id Authorization: tools.Authorization body: tools.body outputParameters: - type: object mapping: $.