---
title: "Approve Contract Amendment"
method: PUT
path: "/v1/sandbox/contract-amendments/{contract_amendment_request_id}/approve"
tags: ["Sandbox"]
---

# Approve Contract Amendment

`PUT /v1/sandbox/contract-amendments/{contract_amendment_request_id}/approve`

## Request

- Base URL: `https://gateway.remote.com`
- URL: `https://gateway.remote.com/v1/sandbox/contract-amendments/{contract_amendment_request_id}/approve`
- Auth: one of:
  - OAuth 2
    - Authorization code: `/auth/oauth2/authorize`
    - Token URL: `/auth/oauth2/token`
  - OAuth 2
    - Client credentials
    - Token URL: `/auth/oauth2/token`
  - HTTP bearer

Approves a contract amendment request without the intervention of a Remote admin.
Approvals done via this endpoint are effective immediately,
regardless of the effective date entered on the contract amendment creation.

This endpoint is only available in Sandbox, otherwise it will respond with a 404.

## Authentication

This endpoint accepts any one of the following token types:

- **Company-scoped access token** (`OAuth2AuthorizationCode`) — obtained by a company manager through the Authorization Code flow or the Refresh Token flow. See [Authentication for partners](https://developer.remote.com/docs/authentication-for-partners).
- **Company-scoped access token (assertion)** (`OAuth2CompanyManagerAssertion`) — obtained through the `urn:ietf:params:oauth:grant-type:jwt-bearer` grant for a company manager. See [OAuth Assertion](https://developer.remote.com/docs/authorization-method-oauth-assertion).
- **Customer API token** (`CustomerAPIToken`) — generated by the customer on their Integration Settings page, with the scopes they choose there. See [Authorization for customers](https://developer.remote.com/docs/authorization-for-customers).

## Path parameters

- `contract_amendment_request_id` string, required

## Response `200`

Success

- ContractAmendmentResponse: Contract Amendment response
  - `data` object
    - `contract_amendment` ContractAmendment, required: A full contract amendment record, including the requested changes with their previous and current values.
      - `amendment_contract_id` string, nullable, required: The unique identifier of the contract being amended. Null if no specific contract was targeted.
      - `changes` object, required: Describes all the changes requested for the contract and contract details with all their previous and current values.
      - `employment_id` string, required: The unique identifier (UUID) of the employment.
      - `id` string, required: The unique identifier (UUID) of the contract amendment.
      - `request_details` RequestDetails, required: The details of the requested changes for the contract amendment.
        - `additional_comments` string, nullable
        - `effective_date` string, date
        - `reason_for_change` 'annual_pay_adjustment' | 'country_rule_change' | 'error_correction' | 'job_change_reevaluation' | 'promotion' | 'other', nullable
        - `reason_for_change_description` string, nullable: This is filled when the reason_for_change is 'other'.
        - `salary_decrease_details` SalaryDecreaseDetails, nullable: The details of the salary decrease request if there is one
          - `salary_decrease_reason` 'change_in_working_hours' | 'trade_salary_for_equity' | 'error_in_initial_salary' | 'role_change_or_demotion' | 'compensation_restructure' | 'other'
          - `salary_decrease_reason_description` string, nullable
          - `was_employee_informed` string
      - `requested_by` string, required: The unique identifier (UUID) of the user who submitted the amendment.
      - `status` 'submitted' | 'in_review' | 'done' | 'canceled' | 'deleted', required: The current status of a contract amendment request. - `submitted`: The amendment has been submitted and is awaiting Remote's review. - `in_review`: Remote is reviewing the amendment for compliance and feasibility. - `done`: The amendment has been approved and applied to the contract. - `canceled`: The amendment request was canceled before completion. - `deleted`: The amendment request was deleted.
      - `submitted_at` string, datetime, required: The timestamp when the amendment was submitted.
      - `zendesk_ticket_url` string, nullable, required: A link to the support ticket associated with this amendment, if one was created. Null otherwise.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
- `422`: Unprocessable Entity
- `429`: Too many requests

---

[API](https://skmtc.dev/remote-com/apis/testing-sandbox.md) - [All operations](https://skmtc.dev/remote-com/apis/testing-sandbox/llms.txt) - [OpenAPI document](https://skmtc.dev/remote-com/apis/testing-sandbox/revisions/94f6859e2604?raw)
