# Remote API Documentation > The Remote API empowers our customers and partners to easily consolidate and share global employee data across platforms ## Guides - [Getting Started with Remote](https://developer.remote.com/docs/getting-started-with-remote.md) - [Sandbox Quickstart](https://developer.remote.com/docs/sandbox-quickstart.md) - [Your First API Call](https://developer.remote.com/docs/your-first-api-call.md): Make your first authenticated request to the Remote API and get real data back. - [Introduction to the Remote CLI](https://developer.remote.com/docs/introduction-to-the-remote-cli.md) - [Remote CLI Quick Start](https://developer.remote.com/docs/remote-cli-quick-start.md) - [Changelogs](https://developer.remote.com/docs/changelogs.md): Remote API has a broad ecosystem to support partner integration. You can find where to locate changelogs and improvements for each component in the table below. - [Authentication](https://developer.remote.com/docs/authentication.md): Every Remote API request uses a bearer token. This page shows which token to get and how to send it. - [Introduction to Webhooks](https://developer.remote.com/docs/introduction-to-webhooks.md) - [Subscribing to Webhooks](https://developer.remote.com/docs/subscribing-to-webhooks.md) - [Receiving Webhooks](https://developer.remote.com/docs/receiving-webhooks.md) - [Verifying Webhooks](https://developer.remote.com/docs/verifying-webhooks.md) - [Available Webhooks](https://developer.remote.com/docs/available-webhooks.md) - [Introduction to Build with AI](https://developer.remote.com/docs/introduction-to-build-with-ai.md) - [Remote Agent Skills](https://developer.remote.com/docs/remote-agent-skills.md) - [Introduction to Remote MCP](https://developer.remote.com/docs/introduction-to-remote-mcp.md): Learn what Remote.com MCP is, how it authenticates, which OAuth scopes it requires, and which clients it supports. - [Remote MCP Quick Start](https://developer.remote.com/docs/quick-start-guide-2.md) - [Build Integrations with AI](https://developer.remote.com/docs/build-integrations-with-ai.md) - [Build Integrations Quick Start](https://developer.remote.com/docs/build-with-ai-quick-start.md) - [Sync your workforce data efficiently](https://developer.remote.com/docs/sync-workforce-data.md): Keep your systems in sync with Remote's workforce state the efficient way: load the full list once, then let webhooks push you the changes. Do not poll one employee at a time. - [Creating Employees with Remote API](https://developer.remote.com/docs/creating-employees-with-remote-api.md) - [Prerequisites](https://developer.remote.com/docs/prerequisites.md) - [Create Employment](https://developer.remote.com/docs/create-new-employment.md) - [Employment Status](https://developer.remote.com/docs/employment-statuses.md) - [User Status](https://developer.remote.com/docs/user-status.md) - [Contract Status](https://developer.remote.com/docs/contract-status.md) - [Employment Lifecycle Stages](https://developer.remote.com/docs/employment-lifecycle-stages.md) - [Update and Invite Employment](https://developer.remote.com/docs/update-and-invite-employment.md) - [Cancel Onboarding](https://developer.remote.com/docs/cancel-onboarding.md) - [Identity Verification](https://developer.remote.com/docs/identity-verification.md) - [Offboarding an Employee](https://developer.remote.com/docs/offboarding-an-employee.md) - [Introduction to Remote SDKs](https://developer.remote.com/docs/introduction-to-remote-sdks.md): 🚀 Accelerate Your Integration: How the Remote Flows SDK simplifies your development - [Remote Flows SDK](https://developer.remote.com/docs/remote-flows-sdk.md) - [Environment Setup](https://developer.remote.com/docs/environment-setup.md) - [How JSON Schemas Work](https://developer.remote.com/docs/how-json-schemas-work.md) - [Date and Time Format](https://developer.remote.com/docs/date-and-time-format.md) - [Money Format](https://developer.remote.com/docs/money-format.md) - [Custom Fields](https://developer.remote.com/docs/custom-fields.md) - [Working with Files](https://developer.remote.com/docs/working-with-files.md) - [Magic Links for Passwordless Login](https://developer.remote.com/docs/magic-links-for-passwordless-login.md) - [SSO Configuration](https://developer.remote.com/docs/sso-configuration.md) - [Partner with Remote](https://developer.remote.com/docs/getting-started-for-partners.md) - [Robust JSON Schemas for Partners](https://developer.remote.com/docs/empowering-our-partners-with-robust-json-schemas.md) - [Rate Limit Policy](https://developer.remote.com/docs/rate-limit-for-partner.md) - [Authorization for Partners](https://developer.remote.com/docs/authentication-for-partners.md) - [Getting Company Consent](https://developer.remote.com/docs/getting-company-consent.md) - [Data sync for existing companies](https://developer.remote.com/docs/authorization-code-flow.md) - [Refresh Token Flow](https://developer.remote.com/docs/refresh-token-flow.md) - [Client Credentials Flow for Partners](https://developer.remote.com/docs/client-credentials-flow-for-partners.md) - [Authorization Method — OAuth Assertion](https://developer.remote.com/docs/authorization-method-oauth-assertion.md) - [Build with Merge](https://developer.remote.com/docs/build-with-merge.md): Build a data sync integration with Remote via Merge - [Employment Cost Estimation](https://developer.remote.com/docs/employment-cost-estimation.md) - [Quick Start Guide for Customers](https://developer.remote.com/docs/quick-start-guide.md) - [Obtaining access token](https://developer.remote.com/docs/authorization-for-customers.md) - [Use Case and Examples](https://developer.remote.com/docs/use-case-and-examples.md) - [Rate Limit Policy](https://developer.remote.com/docs/rate-limit.md) - [Working with Countries API](https://developer.remote.com/docs/working-with-countries.md) - [Company creation, activation & Hiring Eligibility](https://developer.remote.com/docs/temporary-company-creation.md): This section outlines key processes on the Remote platform: creating, activating a company and ensuring compliance with EOR (Employer of Record) hiring eligibility. - [Company creation](https://developer.remote.com/docs/creating-a-company.md): In this guide, you will learn how to - Request authorization from companies that you would like to manage on their behalf. - Create your first company and obtain a company-scoped access token at the same time. - [EOR Hiring Eligibility](https://developer.remote.com/docs/eor-hiring-eligibility.md): This page describes the different signals we provide in the form of Webhooks to add visibility to the EOR hiring eligibility checks related to a company creation and employee onboarding. - [Company statuses](https://developer.remote.com/docs/company-statuses.md): This page explains the process for activating a company, including required address details and possible events - [One-Time Bonus and Recurring Incentives](https://developer.remote.com/docs/working-with-incentives.md) - [Working with Expenses](https://developer.remote.com/docs/working-with-expenses.md) - [List Payroll Calendar](https://developer.remote.com/docs/list-payroll-calendar.md) - [List Company Payroll Calendar](https://developer.remote.com/docs/list-company-payroll-calendar.md) - [List EOR Payroll Calendar](https://developer.remote.com/docs/list-eor-payroll-calendar.md) - [Pull your EOR cost breakdown for reconciliation](https://developer.remote.com/docs/pull-eor-cost-breakdown.md): Reconcile Remote EOR costs in your own accounting system — match what you pre-funded against what you actually paid, per employee, and book it to your GL. - [Pull your PEO cost breakdown for reconciliation](https://developer.remote.com/docs/pull-peo-cost-breakdown.md): Bring Remote US PEO costs into your accounting system, per employee. PEO bills on actuals — a payroll invoice each pay run, plus a monthly service invoice. - [Pull contractor invoices for AP](https://developer.remote.com/docs/pull-contractor-invoices-for-ap.md): Bring Remote contractor invoices into your accounts-payable workflow — contractors are paid via invoices, not payroll, so they're a separate, simpler pull. - [Pull GL & payroll reports (Global Payroll)](https://developer.remote.com/docs/pull-gl-and-payroll-reports.md): Get Remote's balanced, account-mapped Global Payroll General Ledger — and your other payroll reports — out of Remote and into your accounting system or data warehouse. Available via the Remote MCP today; Remote API coming soon. - [Working with Time Off](https://developer.remote.com/docs/working-with-time-off.md) - [Leave Policies](https://developer.remote.com/docs/leave-policies-summary.md) - [Working with Timesheets](https://developer.remote.com/docs/working-with-timesheets.md) - [Benefits Renewal](https://developer.remote.com/docs/benefits-renewal.md) ## API Reference - [Welcome to Remote API](https://developer.remote.com/reference/welcome-to-remote-api.md) - [Token](https://developer.remote.com/reference/post_auth_oauth2_token.md): Endpoint to exchange tokens in the Authorization Code, Assertion Flow, Client Credentials and Refresh Token flows - [List countries](https://developer.remote.com/reference/get_v1_countries.md): Returns a list of all countries that are supported by Remote API alphabetically ordered. The supported list accounts for creating employment with basic information and it does not imply fully onboarding employment via JSON Schema. The countries present in the list are the ones where creating a company is allowed. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View countries (`country:read`) | - | - [Show contractor contract details](https://developer.remote.com/reference/get_v1_countries_country_code_contractor-contract-details.md): Returns the contract details JSON Schema for contractors given a country ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View forms (`form:read`) | - | - [Show engagement agreement details](https://developer.remote.com/reference/get_v1_countries_country_code_engagement-agreement-details.md): Returns the engagement agreement details JSON Schema for a country. Only DEU country is supported for now. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View forms (`form:read`) | - | - [List all holidays of a country](https://developer.remote.com/reference/get_v1_countries_country_code_holidays_year.md): List all holidays of a country for a specific year. Optionally, it can be filtered by country subdivision. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View countries (`country:read`) | - | - [Show legal entity administrative details form schema](https://developer.remote.com/reference/get_v1_countries_country_code_legal_entity_forms_form.md): Returns the json schema of a supported form. Possible form names are: ``` - administrative_details ``` Most forms require a company access token, as they are dependent on certain properties of companies and their current employments. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View forms (`form:read`) | - | - [Show form schema](https://developer.remote.com/reference/get_v1_countries_country_code_form.md): Returns the json schema of a supported form. Possible form names are: ``` - address_details - administrative_details - bank_account_details - employment_basic_information - contractor_basic_information - contractor_contract_details - billing_address_details - contract_details - emergency_contact - emergency_contact_details - employment_document_details - engagement_agreement_details - personal_details - pricing_plan_details - company_basic_information - global_payroll_administrative_details - global_payroll_bank_account_details - global_payroll_basic_information - global_payroll_contract_details - global_payroll_federal_taxes - global_payroll_state_taxes - global_payroll_personal_details - benefit_renewal_request - hris_personal_details ``` Most forms require a company access token, as they are dependent on certain properties of companies and their current employments. However, the `address_details` and `company_basic_information` forms can be accessed using client_credentials authentication (without a company). ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View forms (`form:read`) | - | - [Get token identity](https://developer.remote.com/reference/get_v1_identity_current.md): Shows information about the entities that can be controlled by the current auth token. - [Get employee token identity](https://developer.remote.com/reference/get_v1_employee_current.md): Returns user and company information for the authenticated employee. - [List expense categories for the authenticated employee](https://developer.remote.com/reference/get_v1_employee_expense-categories.md): Returns the flat list of expense categories applicable to the current employee. Only active categories are returned, filtered by the employee's country / legal-entity visibility rules. Leaf nodes have `is_selectable: true`; parent nodes are excluded unless `include_parents=true`. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | - [List expenses for the authenticated employee](https://developer.remote.com/reference/get_v1_employee_expenses.md): Returns a paginated list of expenses belonging to the current employee. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | - [Create an expense for the authenticated employee](https://developer.remote.com/reference/post_v1_employee_expenses.md): Creates a new expense record for the current employee. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | - [List incentives for the authenticated employee](https://developer.remote.com/reference/get_v1_employee_incentives.md): Returns all incentives for the authenticated employee. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | - [List payslip files for the authenticated employee](https://developer.remote.com/reference/get_v1_employee_payslip-files.md): Returns a paginated list of payslip files belonging to the current employee. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | - [List approved payslip files for the authenticated employee](https://developer.remote.com/reference/get_v1_employee_payslips.md): Returns a paginated list of payslip files belonging to the current employee. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | - [Show personal information for the authenticated employee](https://developer.remote.com/reference/get_v1_employee_personal-information.md): Returns personal information for the authenticated employee. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View personal details (`personal_detail:read`) | Manage personal details (`personal_detail:write`) | - [List timesheets for the authenticated employee](https://developer.remote.com/reference/get_v1_employee_timesheets.md): Returns a paginated list of timesheets for the authenticated employee. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timesheets (`timesheet:read`) | Manage timesheets (`timesheet:write`) | - [benefit_renewal_request.created](https://developer.remote.com/reference/benefit_renewal_requestcreated.md): This event is triggered when a Benefit Renewal Request is created. - [List Benefit Offers By Employment](https://developer.remote.com/reference/get_v1_benefit-offers.md): List benefit offers by employment. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | - [List Benefit Offers](https://developer.remote.com/reference/get_v1_benefit-offers_country-summaries.md): List benefit offers for each country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | - [Get employment benefit offers](https://developer.remote.com/reference/get_v1_employments_employment_id_benefit-offers.md): ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | - [Upserts employment benefit offers](https://developer.remote.com/reference/put_v1_employments_employment_id_benefit-offers.md) - [Get a employment benefit offers JSON schema](https://developer.remote.com/reference/get_v1_employments_employment_id_benefit-offers_schema.md): ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | - [List Benefit Renewal Requests](https://developer.remote.com/reference/get_v1_benefit-renewal-requests.md): List Benefit Renewal Requests for each country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View benefit renewals (`benefit_renewal:read`) | Manage benefit renewals (`benefit_renewal:write`) | - [Show Benefit Renewal Request](https://developer.remote.com/reference/get_v1_benefit-renewal-requests_benefit_renewal_request_id.md): Show Benefit Renewal Request details. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View benefit renewals (`benefit_renewal:read`) | Manage benefit renewals (`benefit_renewal:write`) | - [Updates a Benefit Renewal Request Response](https://developer.remote.com/reference/post_v1_benefit-renewal-requests_benefit_renewal_request_id.md): Updates a Benefit Renewal Request with the given response. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage benefit renewals (`benefit_renewal:write`) | - [Show benefit renewal request schema](https://developer.remote.com/reference/get_v1_benefit-renewal-requests_benefit_renewal_request_id_schema.md): Returns the json schema of the `benefit_renewal_request` form for a specific request. This endpoint requires a company access token, as forms are dependent on certain properties of companies and their current employments. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View benefit renewals (`benefit_renewal:read`) | Manage benefit renewals (`benefit_renewal:write`) | - [billing_document.issued](https://developer.remote.com/reference/billing_documentissued-1.md): This event is triggered when a new billing document is issued to the company. - [List Billing Documents](https://developer.remote.com/reference/get_v1_billing-documents.md): List billing documents for a company ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | - [Show Billing Document](https://developer.remote.com/reference/get_v1_billing-documents_billing_document_id.md): Shows a billing document details. Please contact api-support@remote.com to request access to this endpoint. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | - [Get Billing Document Breakdown](https://developer.remote.com/reference/get_v1_billing-documents_billing_document_id_breakdown.md): Get billing document breakdown ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | - [Download a billing document PDF](https://developer.remote.com/reference/get_v1_billing-documents_billing_document_id_pdf.md): Downloads a billing document PDF ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | - [List Webhook Callbacks](https://developer.remote.com/reference/get_v1_companies_company_id_webhook-callbacks.md): List callbacks for a given company ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View webhooks (`webhook:read`) | Manage webhooks (`webhook:write`) | - [Create a Webhook Callback](https://developer.remote.com/reference/post_v1_webhook-callbacks.md): Register a callback to be used for webhooks ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | - [Delete a Webhook Callback](https://developer.remote.com/reference/delete_v1_webhook-callbacks_id.md): Delete a callback previously registered for webhooks ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | - [Update a Webhook Callback](https://developer.remote.com/reference/patch_v1_webhook-callbacks_id.md): Update a callback previously registered for webhooks ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | - [custom_field.value_updated](https://developer.remote.com/reference/custom_fieldvalue_updated-1.md): This event is triggered when a custom field value is updated. - [Lists custom fields definitions](https://developer.remote.com/reference/get_v1_custom-fields.md): Returns custom fields definitions ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage custom fields (`custom_field:write`) | - [Create Custom Field Definition](https://developer.remote.com/reference/post_v1_custom-fields.md): Creates a new custom field definition. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View custom fields (`custom_field:read`) | Manage custom fields (`custom_field:write`) | - [Show a custom field value](https://developer.remote.com/reference/get_v1_custom-fields_custom_field_id_values_employment_id.md): Returns a custom field value for a given employment ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View custom field values (`custom_field_value:read`) | Manage custom field values (`custom_field_value:write`) | - [Update a Custom Field Value](https://developer.remote.com/reference/patch_v1_custom-fields_custom_field_id_values_employment_id-2.md): Updates a custom field value for a given employment. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage custom field values (`custom_field_value:write`) | - [Update a Custom Field Value](https://developer.remote.com/reference/patch_v1_custom-fields_custom_field_id_values_employment_id.md): Updates a custom field value for a given employment. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage custom field values (`custom_field_value:write`) | - [List custom field value for an employment](https://developer.remote.com/reference/get_v1_employments_employment_id_custom-fields.md): Returns a list of custom field values for a given employment ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View custom field values (`custom_field_value:read`) | Manage custom field values (`custom_field_value:write`) | - [Get Help Center Article](https://developer.remote.com/reference/get_v1_help-center-articles_id.md): Get a help center article by its ID ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View help articles (`help_center_article:read`) | - | - [List groups via SCIM v2.0](https://developer.remote.com/reference/get_v1_scim_v2_groups.md): Retrieves a list of groups (departments) for the authenticated company following SCIM 2.0 standard - [Get group by ID via SCIM v2.0](https://developer.remote.com/reference/get_v1_scim_v2_groups_id.md): Retrieves a single group (department) for the authenticated company by group ID - [List users via SCIM v2.0](https://developer.remote.com/reference/get_v1_scim_v2_users.md): Retrieves a list of users for the authenticated company following SCIM 2.0 standard - [Get user by ID via SCIM v2.0](https://developer.remote.com/reference/get_v1_scim_v2_users_id.md): Retrieves a single user for the authenticated company by user ID - [List Webhook Events](https://developer.remote.com/reference/get_v1_webhook-events.md): List all webhook events ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View webhooks (`webhook:read`) | Manage webhooks (`webhook:write`) | - [Replay Webhook Events](https://developer.remote.com/reference/post_v1_webhook-events_replay.md): Replay webhook events ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | - [company.activated](https://developer.remote.com/reference/companyactivated-1.md): This event is triggered when a company is activated. - [company.archived](https://developer.remote.com/reference/companyarchived-1.md): This event is triggered when a company is archived. - [company.eor_hiring.additional_information_required](https://developer.remote.com/reference/companyeor_hiringadditional_information_required-1.md): This event is triggered when additional information is required for the EOR hiring process. - [company.eor_hiring.no_reserve_payment_requested](https://developer.remote.com/reference/companyeor_hiringno_reserve_payment_requested-1.md): This event is triggered when the credit risk status is no reserve payment requested. - [company.eor_hiring.referred](https://developer.remote.com/reference/companyeor_hiringreferred-1.md): This event is triggered when the credit risk status is referred. - [company.eor_hiring.reserve_payment_requested](https://developer.remote.com/reference/companyeor_hiringreserve_payment_requested-1.md): This event is triggered when the credit risk status is reserve payment requested. - [company.eor_hiring.verification_completed](https://developer.remote.com/reference/companyeor_hiringverification_completed-1.md): This event is triggered when a company verification is completed. - [company.partner_offboarded](https://developer.remote.com/reference/companypartner_offboarded-1.md): This event is triggered when a company is offboarded from a partner. - [company.manager_created](https://developer.remote.com/reference/companymanager_created-1.md): This event is triggered when a company manager is created. - [company.manager_deleted](https://developer.remote.com/reference/companymanager_deleted-1.md): This event is triggered when a company manager is deleted. - [company.manager_updated](https://developer.remote.com/reference/companymanager_updated-1.md): This event is triggered when a company manager is updated. - [List all companies](https://developer.remote.com/reference/get_v1_companies.md): List all companies that authorized your integration to act on their behalf. In other words, these are all the companies that your integration can manage. Any company that has completed the authorization flow for your integration will be included in the response. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | - [Create a company](https://developer.remote.com/reference/post_v1_companies.md): Creates a new company. ### Creating a company with only the required request body parameters When you call this endpoint and omit all the optional parameters in the request body, the following resources get created upon a successful response: * A new company with status `pending`. * A company owner for the new company with status `initiated`. See the [update a company endpoint](#tag/Companies/operation/patch_update_company) for more details on how to get your company and its owner to `active` status. If you'd like to create a company and its owner with `active` status in a single request, please provide the optional `address_details` parameter as well. ### Accepting the Terms of Service A required step for creating a company in Remote is to accept our Terms of Service (ToS). Company managers need to be aware of our Terms of Service and Privacy Policy, hence **it's the responsibility of our partners to advise and ensure company managers read and accept the ToS**. The terms have to be accepted only once, before creating a company, and the Remote API will collect the acceptance timestamp as its confirmation. To ensure users read the most recent version of Remote's Terms of Service, their **acceptance must be done within the last fifteen minutes prior the company creation action**. To retrieve this information, partners can provide an element with any text and a description explaining that by performing that action they are accepting Remote's Term of Service. For instance, the partner can add a checkbox or a "Create Remote Account" button followed by a description saying "By creating an account, you agree to [Remote's Terms of Service](https://remote.com/terms-of-service). Also see Remote's [Privacy Policy](https://remote.com/privacy-policy)". ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage companies (`company_management`) | - | Manage companies (`company:write`) | - [Show form schema](https://developer.remote.com/reference/get_v1_companies_schema.md): Returns the json schema of the requested company form. Currently only supports the `address_details` form. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | - [Show a company](https://developer.remote.com/reference/get_v1_companies_company_id.md): Given an ID, shows a company. If the used access token was issued by the OAuth 2.0 Authorization Code flow, then only the associated company can be accessed through the endpoint. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | - [Update a company](https://developer.remote.com/reference/patch_v1_companies_company_id-2.md): Given an ID and a request object with new information, updates a company. ### Getting a company and its owner to `active` status If you created a company using the [create a company endpoint](#tag/Companies/operation/post_create_company) without all the required request body parameters, you can use this endpoint to provide the missing data. Once the company and its owner have all the necessary data, both their statuses will be set to `active` and the company onboarding will be marked as "completed". The following constitutes a company with "all the necessary data": * Complete `address`, with valid `address`, `postal_code`, `country` and `state` parameters (Varies by country. Use the [show form schema endpoint](#tag/Countries/operation/get_show_form_country) to see which address parameters are required). * Company `tax_number` or `registration_number` is not nil * Company `name` is not nil (already required when creating the company) * Company has a `desired_currency` in their bank account (already required when creating the company) * Company has accepted terms of service (already required when creating the company) ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage companies (`company_management`) | - | Manage companies (`company:write`) | - [Update a company](https://developer.remote.com/reference/patch_v1_companies_company_id.md): Given an ID and a request object with new information, updates a company. ### Getting a company and its owner to `active` status If you created a company using the [create a company endpoint](#tag/Companies/operation/post_create_company) without all the required request body parameters, you can use this endpoint to provide the missing data. Once the company and its owner have all the necessary data, both their statuses will be set to `active` and the company onboarding will be marked as "completed". The following constitutes a company with "all the necessary data": * Complete `address`, with valid `address`, `postal_code`, `country` and `state` parameters (Varies by country. Use the [show form schema endpoint](#tag/Countries/operation/get_show_form_country) to see which address parameters are required). * Company `tax_number` or `registration_number` is not nil * Company `name` is not nil (already required when creating the company) * Company has a `desired_currency` in their bank account (already required when creating the company) * Company has accepted terms of service (already required when creating the company) ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage companies (`company_management`) | - | Manage companies (`company:write`) | - [List a company's pending actions](https://developer.remote.com/reference/get_v1_companies_company_id_actions.md): Given a company ID, returns the company-level actions still pending for the company — for example company verification and Remote Payments setup. The list can be empty or contain one or more actions; `setup_remote_payments` is returned once per legal entity that needs it. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | - [company.owner_changed](https://developer.remote.com/reference/companyowner_changed.md): This event is triggered when a company's Account Owner role is transferred to a different user, including rotation and demotion scenarios. - [Get Company Compliance Profile](https://developer.remote.com/reference/get_v1_companies_company_id_compliance-profile.md): Returns the KYB and credit risk status for the company's default legal entity. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | - [Get Onboarding Reserves Status for Employment](https://developer.remote.com/reference/get_v1_companies_company_id_employments_employment_id_onboarding-reserves-status.md): Returns the onboarding reserves status for a specific employment. The status is the same as the credit risk status but takes the onboarding reserves policies into account. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [List Company Legal Entities](https://developer.remote.com/reference/get_v1_companies_company_id_legal-entities.md): Lists all active legal entities for the authorized company specified in the request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | - [Show Legal Entity Administrative details](https://developer.remote.com/reference/get_v1_companies_company_id_legal-entities_legal_entity_id_administrative-details.md): Show administrative details of legal entity for the authorized company specified in the request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | - [Update Legal Entity Administrative details](https://developer.remote.com/reference/put_v1_companies_company_id_legal-entities_legal_entity_id_administrative-details.md): Update administrative details of legal entity for the authorized company specified in the request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage companies (`company_management`) | - | Manage companies (`company:write`) | - [Show contractor eligibility and COR-supported countries for legal entity](https://developer.remote.com/reference/get_v1_companies_company_id_legal-entities_legal_entity_id_contractor-eligibility.md): Returns which contractor products (standard, plus, cor) the legal entity is eligible to use, and the list of country codes where COR is supported for this legal entity. COR-supported countries exclude sanctioned and signup-prevented countries and apply entity rules (same-country, local-to-local). When the legal entity is not COR-eligible, `cor_supported_country_codes` is an empty list. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | - [List company supported currencies](https://developer.remote.com/reference/get_v1_company-currencies.md): List company supported currencies ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View company currencies (`company_currencies:read`) | - | - [List Company Departments](https://developer.remote.com/reference/get_v1_company-departments.md): Lists all departments for the authorized company specified in the request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View departments (`company_department:read`) | Manage departments (`company_department:write`) | - [Create New Department](https://developer.remote.com/reference/post_v1_company-departments.md): Creates a new department in the specified company. Department names may be non-unique and must be non-empty with no more than 255 characters (Unicode code points). ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage departments (`company_department:write`) | - [List Company Managers](https://developer.remote.com/reference/get_v1_company-managers.md): List all company managers of an integration. If filtered by the company_id param, it lists only company managers belonging to the specified company. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View managers (`company_manager:read`) | Manage managers (`company_manager:write`) | - [Create and invite a Company Manager](https://developer.remote.com/reference/post_v1_company-managers.md): Create a Company Manager and sends the invitation email for signing in to the Remote Platform. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage managers (`company_manager:write`) | - [Deletes a Company Manager user](https://developer.remote.com/reference/delete_v1_company-managers_user_id.md): Deletes a Company Manager user ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage managers (`company_manager:write`) | - [Show company manager user](https://developer.remote.com/reference/get_v1_company-managers_user_id.md): Shows a single company manager user ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View managers (`company_manager:read`) | Manage managers (`company_manager:write`) | - [employment_company_structure_node.updated](https://developer.remote.com/reference/employment_company_structure_nodeupdated-1.md): This event is triggered when an employment company structure node is updated. - [List company structure nodes](https://developer.remote.com/reference/get_v1_employments_employment_id_company-structure-nodes.md): Shows all the company structure nodes of an employment. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View company structure (`company_structure:read`) | - | - [employment.contractor_management_plan.updated](https://developer.remote.com/reference/employmentcontractor_management_planupdated-1.md): This event is triggered when a contractor's plan changes between Contractor Management (CM) and Contractor Management Plus (CM+). The payload is stateless. Use the employment endpoint to retrieve the current plan details. - [employment.contractor_of_record_termination.cancelled](https://developer.remote.com/reference/employmentcontractor_of_record_terminationcancelled-1.md): This event is triggered when a contractor of record termination request is cancelled. The payload is stateless. Use the termination request ID and employment ID to retrieve the current details. - [List Contractor Invoice Schedules](https://developer.remote.com/reference/get_v1_contractor-invoice-schedules.md): Lists Contractor Invoice Schedule records. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | - [Create Contractor Invoice Schedules](https://developer.remote.com/reference/post_v1_contractor-invoice-schedules.md): Creates many invoice schedules records. It's supposed to return two lists: one containing created records, and another one containing the schedules that failed to be inserted. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | - [Show Contractor Invoice Schedule](https://developer.remote.com/reference/get_v1_contractor-invoice-schedules_id.md): Shows a single Contractor Invoice Schedule record ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | - [Updates Contractor Invoice Schedule](https://developer.remote.com/reference/patch_v1_contractor-invoice-schedules_id-2.md): Updates a contractor invoice schedule record ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | - [Updates Contractor Invoice Schedule](https://developer.remote.com/reference/patch_v1_contractor-invoice-schedules_id.md): Updates a contractor invoice schedule record ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | - [List Contractor Invoices](https://developer.remote.com/reference/get_v1_contractor-invoices.md): Lists Contractor Invoice records. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | - [Show Contractor Invoice](https://developer.remote.com/reference/get_v1_contractor-invoices_id.md): Shows a single Contractor Invoice record. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | - [contractor_invoice.employer_paid](https://developer.remote.com/reference/contractor_invoiceemployer_paid.md): This event is triggered when Remote has confirmed receipt of the employer's funds for a contractor invoice (the associated outstanding payment moves to `paid_in`). Payout to the contractor has not happened yet. The payload is stateless. Use the contractor invoice ID and employment ID to retrieve current details. - [contractor_invoice.issued](https://developer.remote.com/reference/contractor_invoiceissued.md): This event is triggered when a contractor invoice is issued for the first time — either submitted by the contractor on creation, or transitioned out of `draft`. The payload is stateless. Use the contractor invoice ID and employment ID to retrieve current details. - [contractor_invoice.paid_out](https://developer.remote.com/reference/contractor_invoicepaid_out.md): This event is triggered when a contractor invoice has been paid out — funds have been delivered to the contractor. This is the terminal lifecycle event. The payload is stateless. Use the contractor invoice ID and employment ID to retrieve current details. - [contractor_invoice.payment_initiated](https://developer.remote.com/reference/contractor_invoicepayment_initiated.md): This event is triggered when an employer initiates payment on a contractor invoice for the first time (transition to `pending_payment` from `issued` or `approved`). The payload is stateless. Use the contractor invoice ID and employment ID to retrieve current details. - [Delete contractor of record subscription intent](https://developer.remote.com/reference/delete_v1_contractors_employments_employment_id_contractor-cor-subscription.md): Deletes Contractor of Record subscription intent. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Create contractor of record subscription intent](https://developer.remote.com/reference/post_v1_contractors_employments_employment_id_contractor-cor-subscription.md): Assigns Contractor of Record subscription in pending state to employment. Once risk analysis is performed, subscription may start upon contract signing, or might be denied. Requires a non-blocking eligibility questionnaire to be submitted before creating the subscription intent. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Manage contractor plus subscription](https://developer.remote.com/reference/post_v1_contractors_employments_employment_id_contractor-plus-subscription.md): Endpoint that can be used to upgrade, assign or downgrade a contractor's subscription. This can be used when company admins desire to assign someone to the Contractor Plus plan, but also to change the contractor's subscription between Plus and Standard. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [List contractor subscriptions](https://developer.remote.com/reference/get_v1_contractors_employments_employment_id_contractor-subscriptions.md): Endpoint that can be used to list contractor subscriptions. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Create a contractor of record (COR) termination request](https://developer.remote.com/reference/post_v1_contractors_employments_employment_id_cor-termination-requests.md): Initiates a termination request for a Contractor of Record employment. When a termination request is sent, a stop work order is issued and the contractor remains active until a final invoice is paid or waived. Currently, only Contractor of Record employments can be terminated. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Show a contractor of record (COR) termination request](https://developer.remote.com/reference/get_v1_contractors_employments_employment_id_cor-termination-requests_termination_request_id.md): Retrieves a Contractor of Record termination request by ID. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Terminate contractor of record employment](https://developer.remote.com/reference/post_v1_contractors_employments_employment_id_terminate-cor-employment.md): **Deprecated.** Use `POST /contractors/employments/{employment_id}/cor-termination-requests` instead. Initiates a termination request for a Contractor of Record employment. When a termination request is sent, a stop work order is issued and the contractor remains active until a final invoice is paid or waived. Currently, only Contractor of Record employments can be terminated. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [List contractor of record (COR) termination requests](https://developer.remote.com/reference/get_v1_contractors_cor-termination-requests.md): Lists Contractor of Record termination requests for your company, optionally filtered by employment and status. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Submit eligibility questionnaire](https://developer.remote.com/reference/post_v1_contractors_eligibility-questionnaire.md): Submits an eligibility questionnaire for a contractor employment. The questionnaire determines if the contractor is eligible for certain products or features. The responses are validated against the JSON schema for the questionnaire type. **Requirements:** - Employment must be of type `contractor` - Employment must be in `created` status - Responses must conform to the questionnaire JSON schema ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Get eligibility questionnaire schema](https://developer.remote.com/reference/get_v1_contractors_schemas_eligibility-questionnaire.md): Returns the JSON schema for the eligibility questionnaire by type. The schema defines the structure and validation rules for the questionnaire responses. Supports versioning to allow for schema evolution while maintaining backwards compatibility. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Create a contract document for a contractor](https://developer.remote.com/reference/post_v1_contractors_employments_employment_id_contract-documents.md): Create a contract document for a contractor. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - [Sign a document for a contractor](https://developer.remote.com/reference/post_v1_contractors_employments_employment_id_contract-documents_contract_document_id_sign.md): ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - [Return a base64 encoded version of the contract document](https://developer.remote.com/reference/get_v1_contractors_employments_employment_id_contract-documents_id.md): ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [List all currencies for the contractor](https://developer.remote.com/reference/get_v1_contractors_employments_employment_id_contractor-currencies.md): The currencies are listed in the following order: 1. billing currency of the company 2. currencies of contractor’s existing withdrawal methods 3. currency of the contractor’s country 4. the rest, alphabetical. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [employment.cor_hiring.invoice_created](https://developer.remote.com/reference/employmentcor_hiringinvoice_created-1.md): This event is triggered when a invoice report is created for a employment. - [employment.cor_hiring.proof_of_payment_accepted](https://developer.remote.com/reference/employmentcor_hiringproof_of_payment_accepted-1.md): This event is triggered when a proof of payment is accepted for a contractor of record employment. - [employment.cor_hiring.proof_of_payment_submitted](https://developer.remote.com/reference/employmentcor_hiringproof_of_payment_submitted-1.md): This event is triggered when a proof of payment is submitted for a contractor of record employment. - [contract_amendment.canceled](https://developer.remote.com/reference/contract_amendmentcanceled.md): This event is triggered whenever a contract amendment request status is updated to canceled. - [contract_amendment.deleted](https://developer.remote.com/reference/contract_amendmentdeleted.md): This event is triggered whenever a contract amendment request status is updated to deleted. - [contract_amendment.done](https://developer.remote.com/reference/contract_amendmentdone.md): This event is triggered whenever a contract amendment status is updated to done. - [contract_amendment.review_started](https://developer.remote.com/reference/contract_amendmentreview_started.md): This event is triggered whenever a contract amendment request status is updated to 'in review'. - [contract_amendment.submitted](https://developer.remote.com/reference/contract_amendmentsubmitted.md): This event is triggered whenever a contract amendment request status is updated to submitted. - [List Contract Amendment](https://developer.remote.com/reference/get_v1_contract-amendments.md): List Contract Amendment requests. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View contract amendments (`contract_amendment:read`) | Manage contract amendments (`contract_amendment:write`) | - [Create Contract Amendment](https://developer.remote.com/reference/post_v1_contract-amendments.md): Creates a Contract Amendment request. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Contract Amendments](#tag/Contract-Amendments) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage contract amendments (`contract_amendment:write`) | - [Automatable Contract Amendment](https://developer.remote.com/reference/post_v1_contract-amendments_automatable.md): Check if a contract amendment request is automatable. If the contract amendment request is automatable, then after submission, it will instantly amend the employee's contract and send them an updated document. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Contract Amendments](#tag/Contract-Amendments) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage contract amendments (`contract_amendment:write`) | - [Show form schema](https://developer.remote.com/reference/get_v1_contract-amendments_schema.md): Returns the json schema of the `contract_amendment` form for a specific employment. This endpoint requires a company access token, as forms are dependent on certain properties of companies and their current employments. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View contract amendments (`contract_amendment:read`) | Manage contract amendments (`contract_amendment:write`) | - [Show Contract Amendment](https://developer.remote.com/reference/get_v1_contract-amendments_id.md): Show a single Contract Amendment request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View contract amendments (`contract_amendment:read`) | Manage contract amendments (`contract_amendment:write`) | - [employment_contract.active_contract_updated](https://developer.remote.com/reference/employment_contractactive_contract_updated.md): This event is triggered whenever a new contract becomes active for an employment. - [employment_contract.adjusted_during_onboarding](https://developer.remote.com/reference/employment_contractadjusted_during_onboarding-1.md): This event is triggered when the contract of an employment is adjusted during onboarding. - [List Employment Contract.](https://developer.remote.com/reference/get_v1_employment-contracts.md): Get the employment contract history for a given employment. If `only_active` is true, it will return only the active or last active contract. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View contracts (`contract:read`) | - | - [Get employment contract pending changes](https://developer.remote.com/reference/get_v1_employment-contracts_employment_id_pending-changes.md): Get all the pending changes (waiting for aproval or signature) for the employment contract. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View contracts (`contract:read`) | - | - [List contract documents for an employment](https://developer.remote.com/reference/get_v1_employments_employment_id_contract-documents.md): Only contractor employment types are supported. Lists contract documents for a specific employment with pagination, filtering by status, and sorted by updated_at descending (latest first). ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [Create contract eligibility](https://developer.remote.com/reference/post_v1_employments_employment_id_contract-eligibility.md): Create contract eligibility for an employment. This will create a new contract eligibility for the employment. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage contract eligibility (`contract_eligibility:write`) | - [Preview the Employment Agreement for an employment](https://developer.remote.com/reference/get_v1_employments_employment_id_employment-agreement_preview.md): Returns a base64-encoded PDF preview of the auto-generated Employment Agreement for an employment. The document is rendered as a draft (no signatures) and is not persisted. EA preview is only available for countries that have a published Employment Agreement automation template — see the `employment_agreement_preview_available` flag on the [Countries](#tag/Countries) endpoint. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [Download the Employment Agreement for an employment](https://developer.remote.com/reference/get_v1_employments_employment_id_employment-agreement_download.md): Downloads a PDF of the auto-generated Employment Agreement for an employment. The document is rendered as a draft (no signatures) and is not persisted. EA preview is only available for countries that have a published Employment Agreement automation template — see the `employment_agreement_preview_available` flag on the [Countries](#tag/Countries) endpoint. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [employment.probation_completion_letter.cancelled](https://developer.remote.com/reference/employmentprobation_completion_lettercancelled.md): This event is triggered when the probation completion letter request is cancelled. - [employment.probation_completion_letter.completed](https://developer.remote.com/reference/employmentprobation_completion_lettercompleted.md): This event is triggered when an employment probation completion letter request is completed - [employment.probation_completion_letter.submitted](https://developer.remote.com/reference/employmentprobation_completion_lettersubmitted.md): This event is triggered when an employment probation completion letter request is submitted - [Create probation completion letter](https://developer.remote.com/reference/post_v1_probation-completion-letter.md): Create a new probation completion letter request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage probation documents (`probation_document:write`) | - [Show probation completion letter](https://developer.remote.com/reference/get_v1_probation-completion-letter_id.md): Show a single probation completion letter. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View probation documents (`probation_document:read`) | Manage probation documents (`probation_document:write`) | - [employment.probation_period_extension.cancelled](https://developer.remote.com/reference/employmentprobation_period_extensioncancelled.md): This event is triggered when the probation period extension request is cancelled. - [employment.probation_period_extension.completed](https://developer.remote.com/reference/employmentprobation_period_extensioncompleted.md): This event is triggered when an employment probation period extension request is completed - [employment.probation_period_extension.submitted](https://developer.remote.com/reference/employmentprobation_period_extensionsubmitted.md): This event is triggered when an employment probation period extension request is submitted - [Create Probation Extension](https://developer.remote.com/reference/post_v1_probation-extensions.md): Create a probation extension request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage probation documents (`probation_document:write`) | - [Show Probation Extension](https://developer.remote.com/reference/get_v1_probation-extensions_id.md): Shows a Probation Extension Request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View probation documents (`probation_document:read`) | Manage probation documents (`probation_document:write`) | - [contract_document.status.changed](https://developer.remote.com/reference/contract_documentstatuschanged-1.md): This webhook is triggered whenever a contract document's status changes, including initial creation. - [employment.probation.period_ending_reminder_sent](https://developer.remote.com/reference/employmentprobationperiod_ending_reminder_sent.md): This event is triggered when an employee probation period is nearing it's end, it is triggered 30 days and 7 days before the probation period ends. - [employment.employment_agreement.available](https://developer.remote.com/reference/employmentemployment_agreementavailable.md): This event is triggered when an employment agreement is available for a user - [employment.eor_hiring.invoice_created](https://developer.remote.com/reference/employmenteor_hiringinvoice_created.md): This event is triggered when a invoice report is created for a employment. - [employment.eor_hiring.proof_of_payment_accepted](https://developer.remote.com/reference/employmenteor_hiringproof_of_payment_accepted.md): This event is triggered when a proof of payment is accepted. - [employment.eor_hiring.proof_of_payment_submitted](https://developer.remote.com/reference/employmenteor_hiringproof_of_payment_submitted.md): This event is triggered when a proof of payment is submitted (uploaded) for an EOR hiring onboarding. - [employment.no_longer_eligible_for_onboarding_cancellation](https://developer.remote.com/reference/employmentno_longer_eligible_for_onboarding_cancellation.md): This event is triggered when an employment is no longer eligible for onboarding cancellation. - [employment.onboarding.cancelled](https://developer.remote.com/reference/employmentonboardingcancelled.md): This event is triggered when an employment onboarding is cancelled. - [employment_basic_information.updated](https://developer.remote.com/reference/employment_basic_informationupdated.md): This event is triggered when the basic information for an employment is updated - [Update pricing plan details](https://developer.remote.com/reference/put_v2_employments_employment_id_pricing-plan-details.md): Updates the pricing plan for an employment. The frequency determines how often Remote bills the employer for management fees. Annual billing typically offers a discount. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Cancel onboarding](https://developer.remote.com/reference/post_v1_cancel-onboarding_employment_id.md): Cancel onboarding. Requirements for the cancellation to succeed: * Employment has to be in `invited`, `created`, `created_awaiting_reserve`, `created_reserve_paid`, `pre_hire` status * Employee must not have signed the employment contract ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage onboarding (`onboarding:write`) | - [Show onboarding steps for an employment](https://developer.remote.com/reference/get_v1_employments_employment_id_onboarding-steps.md): Returns onboarding steps and substeps in a hierarchical, ordered structure. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Update address details](https://developer.remote.com/reference/put_v2_employments_employment_id_address-details.md): Updates employment's address details. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [employment.account.updated](https://developer.remote.com/reference/employmentaccountupdated.md): This event is triggered whenever an employment account email is updated. - [employment.administrative_details.updated](https://developer.remote.com/reference/employmentadministrative_detailsupdated.md): This event is triggered when the administrative details of an employment are updated. - [employment.details.updated](https://developer.remote.com/reference/employmentdetailsupdated.md): This event is triggered whenever an employment `department` or `manager` is updated. - [employment.onboarding.completed](https://developer.remote.com/reference/employmentonboardingcompleted.md): This event is triggered when an employment onboarding is completed and the employment is set to `active`. An onboarding is considered complete when the employee finishes their self-enrollment and has completed all the onboarding tasks assigned to them (Personal profile, Administrative details, Emergency contact, Supporting documentation, etc). - [employment.onboarding.started](https://developer.remote.com/reference/employmentonboardingstarted-1.md): This event is triggered when an employment onboarding is started. - [employment.onboarding_task.completed](https://developer.remote.com/reference/employmentonboarding_taskcompleted.md): This event is triggered everytime an employment onboarding task (Personal profile, Administrative details, Emergency contact, Supporting documentation, etc) is completed by an employee during the self-enrollment. - [employment.personal_information.updated](https://developer.remote.com/reference/employmentpersonal_informationupdated.md): This event is triggered whenever an employment personal details is updated. Personal details includes personal informations, home address and emergency contact. - [employment.start_date.changed](https://developer.remote.com/reference/employmentstart_datechanged.md): This event is triggered when the start date of an employment is changed - [employment.status.updated](https://developer.remote.com/reference/employmentstatusupdated.md): This event is triggered when the employment status is updated - [employment.updated](https://developer.remote.com/reference/employmentupdated.md): This event is triggered when an employment is updated. - [employment.user_status.activated](https://developer.remote.com/reference/employmentuser_statusactivated.md): This event is triggered whenever an employment user is updated to the active status. - [employment.user_status.deactivated](https://developer.remote.com/reference/employmentuser_statusdeactivated.md): This event is triggered whenever an employment user is updated to the inactive status. - [employment.user_status.initiated](https://developer.remote.com/reference/employmentuser_statusinitiated.md): This event is triggered whenever an employment user is updated to the initiated status. - [employment.user_status.invited](https://developer.remote.com/reference/employmentuser_statusinvited.md): This event is triggered when an employment user status is updated to invited. - [employment.work_email.updated](https://developer.remote.com/reference/employmentwork_emailupdated.md): This event is triggered when an employment work email is updated. - [List employments](https://developer.remote.com/reference/get_v1_employments.md): Lists all employments, except for the deleted ones. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. - [Create employment](https://developer.remote.com/reference/post_v1_employments.md): Creates an employment. We support creating employees and contractors. ## Global Payroll Employees To create a Global Payroll employee, pass `global_payroll_employee` as the `type` parameter, and provide the id of the specific legal entity that the employee will be engaged by and billed to as the `engaged_by_legal_entity_id` parameter. ## HRIS Employees To create a HRIS employee, pass `hris` as the `type` parameter. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Show employment](https://developer.remote.com/reference/get_v1_employments_employment_id.md): Shows all the information of an employment. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Update employment](https://developer.remote.com/reference/patch_v1_employments_employment_id-2.md): Updates an employment. **For `created` employments:** You can change all basic params and onboarding tasks or perform a per onboarding task update. You can also update basic_information. **For `active` employments:** You can update the manager (`manager_id` field), emergency_contact_details, address_details and work_email. **For `invited` employments:** You can update the work_email. After onboarding, only a limited set of employment data will be available for updates, such as `emergency_contact_details`. If you want to provide additional information for an employment, please make sure to do so **before** the employee is invited. We block updates to some employment data because employees need to agree to amendments in certain cases, such as when there are changes to their contract_details. Currently, these amendments can only be done through the Remote UI. It is possible to update the `external_id` of the employment for all employment statuses. The same applies to `partner_external_id`, the reference code private to the calling integration. Omit the field to leave it unchanged; send `null` to clear it. ## Global Payroll Employees To update a Global Payment employment your input data must comply with the global payroll json schemas. **For `active` employments:** In addition to the above list, you can update personal_details. ## Direct Employees To update an HRIS employment your input data must comply with the HRIS json schemas. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. Please contact Remote if you need to update contractors via API since it's currently not supported. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Update employment](https://developer.remote.com/reference/patch_v1_employments_employment_id.md): Updates an employment. **For `created` employments:** You can change all basic params and onboarding tasks or perform a per onboarding task update. You can also update basic_information. **For `active` employments:** You can update the manager (`manager_id` field), emergency_contact_details, address_details and work_email. **For `invited` employments:** You can update the work_email. After onboarding, only a limited set of employment data will be available for updates, such as `emergency_contact_details`. If you want to provide additional information for an employment, please make sure to do so **before** the employee is invited. We block updates to some employment data because employees need to agree to amendments in certain cases, such as when there are changes to their contract_details. Currently, these amendments can only be done through the Remote UI. It is possible to update the `external_id` of the employment for all employment statuses. The same applies to `partner_external_id`, the reference code private to the calling integration. Omit the field to leave it unchanged; send `null` to clear it. ## Global Payroll Employees To update a Global Payment employment your input data must comply with the global payroll json schemas. **For `active` employments:** In addition to the above list, you can update personal_details. ## Direct Employees To update an HRIS employment your input data must comply with the HRIS json schemas. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. Please contact Remote if you need to update contractors via API since it's currently not supported. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [List bulk employment rows](https://developer.remote.com/reference/get_v1_bulk-employment-jobs_job_id_rows.md): Returns grouped bulk employment rows, including field-level validation errors in `errors`, row-level failures in `row_errors`, and submission-phase failures in `submission_errors`. If a row passes validation but later fails during Global Payroll activation, that failure is surfaced here after submission rather than in the initial create response. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Complete onboarding](https://developer.remote.com/reference/post_v1_ready.md): Completes the employee onboarding. When all tasks are completed, the employee is marked as in `review` status - [Invite employment](https://developer.remote.com/reference/post_v1_employments_employment_id_invite.md): Invite an employment to start the self-enrollment. Requirements for the invitation to succeed: * Employment needs to have the following JSON Schema forms filled: `contract_details` and `pricing_plan_details` * `provisional_start_date` must consider the minimum onboarding time of the employment's country If there are validations errors, they are returned with a Conflict HTTP Status (409) and a descriptive message. HTTP Status OK (200) is returned in case of success. In case of the following error message: `"Please reselect benefits - the previous selection is no longer available"` it means that the benefit options have been updated and the employment's benefits are no longer compliant with the new schema. In this case, reselect benefits by updating `contract_details` JSON Schema form. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Show bulk employment job](https://developer.remote.com/reference/get_v1_bulk-employment-jobs_job_id.md): ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Update employment](https://developer.remote.com/reference/patch_v2_employments_employment_id-2.md) - [Update employment](https://developer.remote.com/reference/patch_v2_employments_employment_id.md) - [Create bulk employment job](https://developer.remote.com/reference/post_v1_bulk-employment-jobs.md): Creates a job to bulk-create employments for multiple employees at once. Each employee payload must match the employment schema for the selected country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Set contract origin for a contractor employment](https://developer.remote.com/reference/post_v1_employments_employment_id_contract-origin.md): Sets the `contract_origin` for a contractor employment. * `remote_contract` — Remote provides and manages the contract (a contract document is created) * `custom_remote_contract` — A customised Remote contract is used (a contract document is created) * `provided_by_customer` — The employer provides their own contract (no contract document is created) When `provided_by_customer` is selected, the contractor can be invited without completing the `contract_details` onboarding step. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Bulk list employments](https://developer.remote.com/reference/get_v1_employments_bulk.md): Lists full-detail employments for the company scope, page-by-page via an opaque cursor. Each employment is the same shape returned by Show employment, except files are excluded to avoid a per-employment file lookup; use the Show employment endpoint to fetch files for a specific employment. The `files` field is always `null` on this endpoint. Pass the `next_cursor` value from a page's response as the `cursor` query parameter to fetch the next page. `next_cursor` is `null` once the last page has been reached. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Show employee bank account](https://developer.remote.com/reference/get_v1_employee_bank-account.md): Returns the authenticated employee's bank account details. This endpoint requires and returns country-specific data. The exact fields vary depending on which country the authenticated employee's employment is in. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `bank_account_details` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View bank accounts (`bank_account:read`) | Manage bank accounts (`bank_account:write`) | - [Update employee bank account](https://developer.remote.com/reference/put_v1_employee_bank-account.md): Upserts the authenticated employee's bank account details. This endpoint requires and returns country-specific data. The exact fields vary depending on which country the authenticated employee's employment is in. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `bank_account_details` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage bank accounts (`bank_account:write`) | - [Get engagement agreement details](https://developer.remote.com/reference/get_v2_employments_employment_id_engagement-agreement-details.md): Returns the engagement agreement details for an employment. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Upsert engagement agreement details](https://developer.remote.com/reference/post_v2_employments_employment_id_engagement-agreement-details.md): Creates or updates the engagement agreement details for an employment. This endpoint requires country-specific data. The exact required fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that compliance requirements for each country are subject to change according to local laws. Using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) is recommended to avoid compliance issues and to have the latest version of a country's requirements. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Get engagement agreement details](https://developer.remote.com/reference/get_v1_employments_employment_id_engagement-agreement-details.md): Returns the engagement agreement details for an employment. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Upsert engagement agreement details](https://developer.remote.com/reference/post_v1_employments_employment_id_engagement-agreement-details.md): Creates or updates the engagement agreement details for an employment. This endpoint requires country-specific data. The exact required fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that compliance requirements for each country are subject to change according to local laws. Using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) is recommended to avoid compliance issues and to have the latest version of a country's requirements. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Download a document for the employee](https://developer.remote.com/reference/get_v1_employee_documents_id.md): ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [Indexes all the documents for the employee](https://developer.remote.com/reference/get_v1_employee_documents.md): ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [identity_verification.verification_required](https://developer.remote.com/reference/identity_verificationverification_required-1.md): This event is triggered whenever an identity verification is required for an employment. - [Get Employment Profile](https://developer.remote.com/reference/get_v1_identity-verification_employment_id.md): Gets necessary information to perform the identity verification of an employee. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View identity verification (`identity_verification:read`) | Manage identity verification (`identity_verification:write`) | - [Decline Identity Verification](https://developer.remote.com/reference/post_v1_identity-verification_employment_id_decline.md): Declines the identity verification of an employee. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage identity verification (`identity_verification:write`) | - [Verify Employment Identity](https://developer.remote.com/reference/post_v1_identity-verification_employment_id_verify.md): Endpoint to confirms the employment profile is from the actual employee ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage identity verification (`identity_verification:write`) | - [Show employment job](https://developer.remote.com/reference/get_v1_employments_employment_id_job.md): Shows an employment job details. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Remove a pre-onboarding acknowledgement](https://developer.remote.com/reference/delete_v1_onboarding_employments_employment_id_pre-onboarding-requirements_requirement_slug_acknowledge.md): Removes a previously recorded acknowledgement. Rejected once a requirement that depends on this acknowledgement has been signed/completed. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - [Acknowledge a pre-onboarding acknowledgement requirement](https://developer.remote.com/reference/post_v1_onboarding_employments_employment_id_pre-onboarding-requirements_requirement_slug_acknowledge.md): Records an acknowledgement for an acknowledgement requirement. Rejected if the requirement is blocked by an unmet dependency or has already been acknowledged. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - [Find or create a document for a pre-onboarding requirement](https://developer.remote.com/reference/post_v1_onboarding_employments_employment_id_pre-onboarding-requirements_requirement_slug_documents.md): Finds an existing unsigned pre-onboarding document for the given document requirement, or creates a new one. Idempotent: repeated calls return the same document until it is signed. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - [List pre-onboarding requirements for an employment](https://developer.remote.com/reference/get_v1_onboarding_employments_employment_id_pre-onboarding-requirements.md): Returns the list of pre-onboarding requirements — both documents (e.g. master service agreements, individual labour agreements) and acknowledgements — that must be fulfilled before the given employment can be onboarded. Each requirement carries its `type`, current `status`, and the requirement it `depends_on` (if any). ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [background_check.status.updated](https://developer.remote.com/reference/background_checkstatusupdated.md): This event is triggered when a background check request status is updated. - [Show Background Check](https://developer.remote.com/reference/get_v1_employments_employment_id_background-checks_background_check_id.md): Show Background Check details for a given employment and background check request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View background checks (`background_check:read`) | - | - [Retrieve a pre-onboarding document with its rendered PDF content](https://developer.remote.com/reference/get_v1_onboarding_employments_employment_id_pre-onboarding-documents_id-1.md): Returns the rendered contract PDF (base64-encoded) and the list of signatories for the given pre-onboarding document. The `content` field is prefixed with `data:application/pdf;base64,` so it can be embedded directly in a document viewer. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [Sign a pre-onboarding document](https://developer.remote.com/reference/post_v1_onboarding_employments_employment_id_pre-onboarding-documents_id_sign-1.md): Signs the latest contract document associated with the given pre-onboarding document on behalf of the company signatory. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - [List pre-onboarding document requirements for an employment](https://developer.remote.com/reference/get_v1_onboarding_employments_employment_id_pre-onboarding-document-requirements.md): Returns the list of pre-onboarding document requirements (e.g. master service agreements, individual labour agreements) that must be fulfilled before the given employment can be onboarded. Deprecated: use `GET /onboarding/employments/:employment_id/pre-onboarding-requirements` instead, which returns both document and acknowledgement requirements. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [Find or create a pre-onboarding document for an employment](https://developer.remote.com/reference/post_v1_onboarding_employments_employment_id_pre-onboarding-documents.md): Finds an existing unsigned pre-onboarding document for the given requirement, or creates a new one. Idempotent: repeated calls with the same `pre_onboarding_document_requirement_slug` return the same document until it is signed. Deprecated: use `POST /onboarding/employments/:employment_id/pre-onboarding-requirements/:requirement_slug/documents` instead. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - [List cost center allocations for an employment](https://developer.remote.com/reference/get_v1_employments_employment_id_cost-center-allocations.md): Lists the cost center allocations for an employment. Each allocation includes the cost center, the allocated percentage, and its effective period. An employment with no cost center assigned returns an empty list. Use the `status` query parameter to return only `active`, `scheduled`, or `expired` allocations. When omitted, all allocations are returned. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [List cost center allocations for a company](https://developer.remote.com/reference/get_v1_company_company_id_cost-center-allocations.md): Lists all employments under a company with their cost center allocations, grouped by employment. Each entry includes the employment's legal entity IDs and the list of cost center allocations assigned to it, with each allocation's cost center, allocated percentage, and effective period. Employments with no cost center allocations are included with an empty list. Use the `status` query parameter to return only `active`, `scheduled`, or `expired` allocations. When omitted, all allocations are returned. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Update federal taxes](https://developer.remote.com/reference/put_v2_employments_employment_id_federal-taxes.md): Updates employment's federal taxes. Requirements to update federal taxes successfully: * Employment should be Global Payroll * Employment should be in the post-enrollment state * Employment should belong to USA This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Update federal taxes](https://developer.remote.com/reference/put_v1_employments_employment_id_federal-taxes.md): Updates employment's federal taxes. Requirements to update federal taxes successfully: * Employment should be Global Payroll * Employment should be in the post-enrollment state * Employment should belong to USA This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Create risk reserve](https://developer.remote.com/reference/post_v1_risk-reserve.md): Create a new risk reserve ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage risk reserves (`risk_reserve:write`) | - [Submit risk reserve proof of payment](https://developer.remote.com/reference/post_v1_employments_employment_id_risk-reserve-proof-of-payments-1.md): Submits a proof of payment document for a risk reserve associated with an employment. Triggers an `employment.cor_hiring.proof_of_payment_submitted` webhook event. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage risk reserves (`risk_reserve:write`) | - [Show employee address](https://developer.remote.com/reference/get_v1_employee_address.md): Returns the authenticated employee's residential address. The employment is derived from the access token's subject — there is no employment id in the path. This endpoint requires country-specific data. The exact required fields vary depending on which country the authenticated employee's employment is in. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `address_details` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View addresses (`address:read`) | Manage addresses (`address:write`) | - [Update employee address](https://developer.remote.com/reference/put_v1_employee_address.md): Updates the authenticated employee's residential address. The employment is derived from the access token's subject — there is no employment id in the path. The token must be an employee-role token (typically obtained via the OAuth2 assertion grant with subject `urn:remote-api:employee:employment:`). This endpoint requires country-specific data. The exact required fields vary depending on which country the authenticated employee's employment is in. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `address_details` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage addresses (`address:write`) | - [Get basic information](https://developer.remote.com/reference/get_v2_employments_employment_id_basic-information.md): Returns the employment's basic information. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - [Update basic information](https://developer.remote.com/reference/put_v2_employments_employment_id_basic-information.md): Updates employment's basic information. Supported employment statuses: `created`, `job_title_review`, `created_reserve_paid`, `created_awaiting_reserve`. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Update basic information](https://developer.remote.com/reference/put_v1_employments_employment_id_basic-information.md): Updates employment's basic information. Supported employment statuses: `created`, `job_title_review`, `created_reserve_paid`, `created_awaiting_reserve`. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Download file](https://developer.remote.com/reference/get_v1_files_id.md): Downloads a file. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [List employment files](https://developer.remote.com/reference/get_v1_employments_employment_id_files.md): Lists files associated with a specific employment. Supports filtering by file type and sub_type. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | - [Upload file](https://developer.remote.com/reference/post_v1_documents.md): Uploads a file associated with a specified employment. Please contact api-support@remote.com to request access to this endpoint. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - [Submit employee federal taxes](https://developer.remote.com/reference/put_v1_employee_federal-taxes.md): Submits the authenticated employee's US federal tax (W-4) details. Available for US Global Payroll employees once they reach the post-enrollment state. Calls made before then return a 404. This endpoint requires country-specific data. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `global_payroll_federal_taxes` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage personal details (`personal_detail:write`) | - [Update emergency contact](https://developer.remote.com/reference/put_v2_employments_employment_id_emergency-contact.md): Updates the employment's emergency contact details. This endpoint requires country-specific data. Query the **Show form schema** endpoint passing the country code and `emergency_contact_details` as path parameters to see the required fields for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Show employee emergency contact](https://developer.remote.com/reference/get_v1_employee_emergency-contact.md): Returns the authenticated employee's emergency contact. The employment is derived from the access token's subject — there is no employment id in the path. This endpoint requires country-specific data. The exact required fields vary depending on which country the authenticated employee's employment is in. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `emergency_contact_details` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View emergency contacts (`emergency_contact:read`) | Manage emergency contacts (`emergency_contact:write`) | - [Update employee emergency contact](https://developer.remote.com/reference/put_v1_employee_emergency-contact.md): Updates the authenticated employee's emergency contact. The employment is derived from the access token's subject — there is no employment id in the path. The token must be an employee-role token (typically obtained via the OAuth2 assertion grant with subject `urn:remote-api:employee:employment:`). This endpoint requires country-specific data. The exact required fields vary depending on which country the authenticated employee's employment is in. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `emergency_contact_details` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage emergency contacts (`emergency_contact:write`) | - [Update contract details](https://developer.remote.com/reference/put_v2_employments_employment_id_contract-details.md): Updates employment's contract details. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Show employee personal details](https://developer.remote.com/reference/get_v1_employee_personal-details.md): Returns the authenticated employee's personal details. This endpoint requires country-specific data. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `personal_details` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View personal details (`personal_detail:read`) | Manage personal details (`personal_detail:write`) | - [Update employee personal details](https://developer.remote.com/reference/put_v1_employee_personal-details.md): Updates the authenticated employee's personal details (date of birth, national ID, nationality, etc.). This endpoint requires country-specific data. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `personal_details` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage personal details (`personal_detail:write`) | - [Update bank account details](https://developer.remote.com/reference/put_v2_employments_employment_id_bank-account-details.md): Updates employment's bank account details. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Update personal details](https://developer.remote.com/reference/put_v2_employments_employment_id_personal-details.md): Updates employment's personal details. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Update personal details](https://developer.remote.com/reference/put_v1_employments_employment_id_personal-details.md): Updates employment's personal details. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Update billing address details](https://developer.remote.com/reference/put_v2_employments_employment_id_billing-address-details.md): Updates employment's billing address details. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Submit employee state taxes](https://developer.remote.com/reference/put_v1_employee_state-taxes_jurisdiction.md): Submits the authenticated employee's US state tax withholding answers for a single jurisdiction (e.g. `NY`). Available for US Global Payroll employees once they reach the post-enrollment state, at which point the per-jurisdiction state tax task exists. This endpoint requires country/jurisdiction-specific data. Query the [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `global_payroll_state_taxes` as the form name to discover the schema for a given country. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage personal details (`personal_detail:write`) | - [Update administrative details](https://developer.remote.com/reference/put_v2_employments_employment_id_administrative-details.md): Updates employment's administrative details. This endpoint requires and returns country-specific data. The exact required and returned fields will vary depending on which country the employment is in. To see the list of parameters for each country, see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. Please note that the compliance requirements for each country are subject to change according to local laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid compliance issues and to have the latest version of a country requirements. If you are using this endpoint to build an integration, make sure you are dynamically collecting or displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. For more information on JSON Schemas, see the **How JSON Schemas work** documentation. To learn how you can dynamically generate forms to display in your UI, see the documentation for the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - [Upload employee file](https://developer.remote.com/reference/post_v1_employee_documents.md): Uploads a file owned by the authenticated employee, for example identity documents or tax forms. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - [List Direct Offboardings](https://developer.remote.com/reference/get_v1_direct-offboardings.md): Lists offboardings for global payroll employments, optionally filtered by employment ID. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | - [offboarding.completed](https://developer.remote.com/reference/offboardingcompleted.md): This event is triggered when an offboarding request is completed. - [offboarding.deleted](https://developer.remote.com/reference/offboardingdeleted-1.md): This event is triggered whenever an offboarding request is deleted. - [offboarding.done](https://developer.remote.com/reference/offboardingdone.md): This event is triggered when an offboarding request is done. Deprecated since April 2024 in favour of **[offboarding.submitted_to_payroll](#tag/Offboarding/operation/offboarding.submitted_to_payroll)** webhook. - [offboarding.review_started](https://developer.remote.com/reference/offboardingreview_started-1.md): This event is triggered whenever an offboarding request starts being reviewed. - [offboarding.submitted](https://developer.remote.com/reference/offboardingsubmitted-1.md): This event is triggered when an offboarding request is submitted. - [offboarding.submitted_to_payroll](https://developer.remote.com/reference/offboardingsubmitted_to_payroll-1.md): This event is triggered when an offboarding request has been submitted to payroll. - [List Offboarding](https://developer.remote.com/reference/get_v1_offboardings.md): Lists Offboarding requests. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | - [Create Offboarding](https://developer.remote.com/reference/post_v1_offboardings.md): Creates an Offboarding request ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage offboarding (`offboarding:write`) | - [Show Offboarding](https://developer.remote.com/reference/get_v1_offboardings_id.md): Shows an Offboarding request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | - [List Offboardings (v2)](https://developer.remote.com/reference/get_v2_offboardings.md): Lists offboardings for a company. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | - [Show Offboarding (v2)](https://developer.remote.com/reference/get_v2_offboardings_id.md): Returns a single offboarding by its ID. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | - [List Offboardings for Employment](https://developer.remote.com/reference/get_v1_offboardings_employments_employment_id.md): Lists Offboarding requests for a specific employment. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | - [Show Resignation](https://developer.remote.com/reference/get_v1_resignations_offboarding_request_id.md): Shows the details of a resignation with status `submitted`. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View resignations (`resignation:read`) | Manage resignations (`resignation:write`) | - [Download a resignation letter](https://developer.remote.com/reference/get_v1_resignations_offboarding_request_id_resignation-letter.md): Downloads a resignation letter from an employment request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View resignation letters (`resignation_letter:read`) | - | - [Validate resignation request](https://developer.remote.com/reference/put_v1_resignations_offboarding_request_id_validate.md): Validates a resignation employment request ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage resignations (`resignation:write`) | - [travel_letter.approved_by_manager](https://developer.remote.com/reference/travel_letterapproved_by_manager.md): This event is triggered when a travel letter authorization is approved by a manager - [travel_letter.approved_by_remote](https://developer.remote.com/reference/travel_letterapproved_by_remote.md): This event is triggered when a travel letter authorization is approved by remote - [travel_letter.declined_by_manager](https://developer.remote.com/reference/travel_letterdeclined_by_manager.md): This event is triggered when a travel letter authorization is declined by a manager - [travel_letter.declined_by_remote](https://developer.remote.com/reference/travel_letterdeclined_by_remote.md): This event is triggered when a travel letter authorization is declined by remote - [travel_letter.requested](https://developer.remote.com/reference/travel_letterrequested.md): This event is triggered when a travel letter authorization is requested - [List travel letter requests](https://developer.remote.com/reference/get_v1_travel-letter-requests.md): List travel letter requests. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View travel letters (`travel_letter:read`) | Manage travel letters (`travel_letter:write`) | - [Show travel letter request](https://developer.remote.com/reference/get_v1_travel-letter-requests_id.md): Show a single travel letter request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View travel letters (`travel_letter:read`) | Manage travel letters (`travel_letter:write`) | - [Updates a travel letter request](https://developer.remote.com/reference/patch_v1_travel-letter-requests_id-2.md): Updates a travel letter request ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage travel letters (`travel_letter:write`) | - [Updates a travel letter request](https://developer.remote.com/reference/patch_v1_travel-letter-requests_id.md): Updates a travel letter request ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | - | Manage travel letters (`travel_letter:write`) | - [work_authorization.approved_by_manager](https://developer.remote.com/reference/work_authorizationapproved_by_manager.md): This event is triggered when a work authorization is approved by a manager - [work_authorization.approved_by_remote](https://developer.remote.com/reference/work_authorizationapproved_by_remote.md): This event is triggered when a work authorization is approved by remote - [work_authorization.cancelled](https://developer.remote.com/reference/work_authorizationcancelled.md): This event is triggered when a work authorization is cancelled - [work_authorization.declined_by_manager](https://developer.remote.com/reference/work_authorizationdeclined_by_manager.md): This event is triggered when a work authorization is declined by a manager - [work_authorization.declined_by_remote](https://developer.remote.com/reference/work_authorizationdeclined_by_remote.md): This event is triggered when a work authorization is declined by remote - [work_authorization.requested](https://developer.remote.com/reference/work_authorizationrequested.md): This event is triggered when a work authorization is requested - [List work authorization requests](https://developer.remote.com/reference/get_v1_work-authorization-requests.md): List work authorization requests. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View work authorizations (`work_authorization:read`) | Manage work authorizations (`work_authorization:write`) | - [Show work authorization request](https://developer.remote.com/reference/get_v1_work-authorization-requests_id.md): Show a single work authorization request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | View work authorizations (`work_authorization:read`) | Manage work authorizations (`work_authorization:write`) | - [Update work authorization request](https://developer.remote.com/reference/patch_v1_work-authorization-requests_id-2.md): Updates a work authorization request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage work authorizations (`work_authorization:write`) | - [Update work authorization request](https://developer.remote.com/reference/patch_v1_work-authorization-requests_id.md): Updates a work authorization request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employments (`employments`) | - | Manage work authorizations (`work_authorization:write`) | - [contract.termination_date_reached](https://developer.remote.com/reference/contracttermination_date_reached.md): This event is triggered when a contract reaches its termination date. - [Create a new token for a company](https://developer.remote.com/reference/post_v1_companies_company_id_create-token.md): Creates new tokens for a given company - [company.pricing_plan.updated](https://developer.remote.com/reference/companypricing_planupdated-1.md): This event is triggered when a company pricing plan is updated. - [List pricing plans](https://developer.remote.com/reference/get_v1_companies_company_id_pricing-plans.md): List all pricing plans for a company. Currently the endpoint only returns the pricing plans for the EOR monthly product and the contractor products (Standard, Plus and COR). ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage companies (`company_management`) | View pricing plans (`pricing_plan:read`) | Manage pricing plans (`pricing_plan:write`) | - [Create a pricing plan for a company](https://developer.remote.com/reference/post_v1_companies_company_id_pricing-plans.md): Create a pricing plan for a company, in order to do that we have 2 ways: 1. Create a pricing plan from a partner template 2. Create a pricing plan from a product price The pricing plan is always created in the company's desired currency. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage companies (`company_management`) | - | Manage pricing plans (`pricing_plan:write`) | - [Show product prices in the company's desired currency](https://developer.remote.com/reference/get_v1_companies_company_id_product-prices.md): list product prices in the company's desired currency. the endpoint currently only returns the product prices for the EOR monthly product and the contractor products (Standard, Plus and COR). the product prices are then used to create a pricing plan for the company. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage companies (`company_management`) | View pricing plans (`pricing_plan:read`) | Manage pricing plans (`pricing_plan:write`) | - [List pricing plan partner templates](https://developer.remote.com/reference/get_v1_pricing-plan-partner-templates.md): List all pricing plan partner templates. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage companies (`company_management`) | View pricing plans (`pricing_plan:read`) | Manage pricing plans (`pricing_plan:write`) | - [Magic links generator](https://developer.remote.com/reference/post_v1_magic-link.md): Generates a magic link for a passwordless authentication. To create a magic link for a company admin, you need to provide the `user_id` parameter. To create a magic link for an employee, you need to provide the `employment_id` parameter. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Create magic links (`magic_link:write`) | - [sso_configuration.disabled](https://developer.remote.com/reference/sso_configurationdisabled-1.md): This event is triggered when the SSO Configuration is disabled. - [sso_configuration.enabled](https://developer.remote.com/reference/sso_configurationenabled-1.md): This event is triggered when the SSO Configuration is enabled. - [sso_configuration.updated](https://developer.remote.com/reference/sso_configurationupdated-1.md): This event is triggered when the SSO Configuration is updated. - [Show the current SSO Configuration](https://developer.remote.com/reference/get_v1_sso-configuration.md): Shows the current SSO Configuration for the company. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | View SSO configuration (`sso_configuration:read`) | Manage SSO (`sso_configuration:write`) | - [Create the SSO Configuration](https://developer.remote.com/reference/post_v1_sso-configuration.md): Creates the SSO Configuration for the company. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage SSO (`sso_configuration:write`) | - [Show the SSO Configuration Details](https://developer.remote.com/reference/get_v1_sso-configuration_details.md): Shows the SSO Configuration details for the company. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | - | Manage SSO (`sso_configuration:write`) | - [List Pay Items](https://developer.remote.com/reference/get_v1_pay-items.md): Lists pay items for a company with optional filtering by employment, date range, and pagination. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View pay items (`pay_item:read`) | Manage pay items (`pay_item:write`) | - [List Pay Codes](https://developer.remote.com/reference/get_v1_companies_company_id_legal-entities_legal_entity_id_pay-codes.md): Lists pay codes available for a legal entity. Pay codes represent the allowed pay element types that can be submitted via `POST /v1/pay-items/bulk`. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View pay items (`pay_item:read`) | Manage pay items (`pay_item:write`) | - [Bulk Create Pay Items](https://developer.remote.com/reference/post_v1_pay-items_bulk.md): Bulk creates pay items for employments. Supports up to 500 items per request. Each item must supply exactly one of `code` or `external_import_code` to identify the pay element. Integration-specific fields (shift code, currency, pay amount, etc.) go in the `provider_data` object. Only Global Payroll employments are supported. Non-GP employments are returned as `employment_not_global_payroll`. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | - | Manage pay items (`pay_item:write`) | - [List countries for Cost Calculator](https://developer.remote.com/reference/get_v1_cost-calculator_countries.md): Lists countries available for cost calculation - [Creates a cost estimation of employments](https://developer.remote.com/reference/post_v1_cost-calculator_estimation.md) - [Creates a CSV cost estimation of employments](https://developer.remote.com/reference/post_v1_cost-calculator_estimation-csv.md): Creates CSV cost estimation of employments - [Creates PDF cost estimation of employments](https://developer.remote.com/reference/post_v1_cost-calculator_estimation-pdf.md): Creates a PDF cost estimation of employments based on the provided parameters. - [Show region fields](https://developer.remote.com/reference/get_v1_cost-calculator_regions_slug_fields.md): Returns required fields JSON Schema for a given region. These are required in order to calculate the cost of employment for the region. These fields are based on employer contributions that are associated with the region or any of it's parent regions. - [Convert currency using dynamic rates](https://developer.remote.com/reference/post_v1_currency-converter_effective-2.md): Convert currency using the rates Remote applies during employment creation and invoicing. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | Convert currencies (`convert_currency:read`) | - | - [Convert currency using dynamic rates](https://developer.remote.com/reference/post_v1_currency-converter_effective.md): Convert currency using the rates Remote applies during employment creation and invoicing. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | Convert currencies (`convert_currency:read`) | - | - [Convert currency using flat rates](https://developer.remote.com/reference/post_v1_currency-converter_raw.md): Convert currency using FX rates used in Remote’s estimation tools. These rates are not guaranteed to match final onboarding or contract rates. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage company resources (`company_admin`) | Convert currencies (`convert_currency:read`) | - | - [expense.approved](https://developer.remote.com/reference/expenseapproved.md): This event is triggered when an expense is approved. - [expense.created](https://developer.remote.com/reference/expensecreated-1.md): This event is triggered when a draft expense is created. - [expense.declined](https://developer.remote.com/reference/expensedeclined.md): This event is triggered when an expense is declined. - [expense.deleted](https://developer.remote.com/reference/expensedeleted.md): This event is triggered when an expense is deleted by a team member or an admin. - [expense.reimbursed](https://developer.remote.com/reference/expensereimbursed.md): This event is triggered when an expense is reimbursed. - [expense.submitted](https://developer.remote.com/reference/expensesubmitted.md): This event is triggered when an expense is submitted by an employee. - [expense.updated](https://developer.remote.com/reference/expenseupdated.md): This event is triggered whenever an expense is updated. - [List expenses](https://developer.remote.com/reference/get_v1_expenses.md): Lists all expenses records ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | - [Create expense](https://developer.remote.com/reference/post_v1_expenses.md): Creates an **approved** expense ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | - [List expense categories](https://developer.remote.com/reference/get_v1_expenses_categories.md): Lists the effective hierarchy of expense categories. At least one of employment_id, expense_id, or country_code must be provided. - [Download a receipt](https://developer.remote.com/reference/get_v1_expenses_expense_id_receipt.md): Downloads an expense receipt. Deprecated since late February 2024 in favour of **[Download a receipt by id](#tag/Expenses/operation/get_download_by_id_expense_receipt)** endpoint. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | - [Download a receipt by id](https://developer.remote.com/reference/get_v1_expenses_expense_id_receipts_receipt_id.md): Download a receipt by id. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | - [Show expense](https://developer.remote.com/reference/get_v1_expenses_id.md): Shows a single expense record ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | - [Update an expense](https://developer.remote.com/reference/patch_v1_expenses_id-2.md): Updates an expense ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | - [Update an expense](https://developer.remote.com/reference/patch_v1_expenses_id.md): Updates an expense ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | - [incentive.created](https://developer.remote.com/reference/incentivecreated.md): This event is triggered when an incentive is created - [incentive.deleted](https://developer.remote.com/reference/incentivedeleted.md): This event is triggered whenever an incentive is deleted. - [incentive.paid](https://developer.remote.com/reference/incentivepaid.md): This event is triggered whenever an incentive is paid - [incentive.processing_started](https://developer.remote.com/reference/incentiveprocessing_started.md): This event is triggered when an incentive has its processing started - [incentive.updated](https://developer.remote.com/reference/incentiveupdated.md): This event is triggered whenever an incentive is updated. - [List Incentives](https://developer.remote.com/reference/get_v1_incentives.md): Lists all Incentives of a company ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | - [Create Incentive](https://developer.remote.com/reference/post_v1_incentives.md): Creates an Incentive. Incentives use the currency of the employment specified provided in the `employment_id` field. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | - [Delete an Incentive](https://developer.remote.com/reference/delete_v1_incentives_id.md): Delete an incentive. `one_time` incentives that have the following status **CANNOT** be deleted: * `processing` * `paid` ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | - [Show Incentive](https://developer.remote.com/reference/get_v1_incentives_id.md): Show an Incentive's details ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | - [Update Incentive](https://developer.remote.com/reference/patch_v1_incentives_id-2.md): Updates an Incentive. Incentives use the currency of the employment specified provided in the `employment_id` field. The API doesn't support updating paid incentives. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | - [Update Incentive](https://developer.remote.com/reference/patch_v1_incentives_id.md): Updates an Incentive. Incentives use the currency of the employment specified provided in the `employment_id` field. The API doesn't support updating paid incentives. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | - [List Recurring Incentive](https://developer.remote.com/reference/get_v1_incentives_recurring.md): List all Recurring Incentives of a company. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | - [Create Recurring Incentive](https://developer.remote.com/reference/post_v1_incentives_recurring.md): Create a Recurring Incentive, that is, a monthly paid incentive. Incentives use the currency of the employment specified provided in the `employment_id` field. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | - [Delete a Recurring Incentive](https://developer.remote.com/reference/delete_v1_incentives_recurring_id.md): Delete a Recurring Incentive, that is, a monthly paid incentive. Internally, Remote schedules upcoming incentives. As such, when you attempt to delete a recurring incentive, Remote will **ONLY** delete scheduled incentives with the `pending` status. Incentives payments that are already scheduled and cannot be deleted will be included in the response, in case you need to reference them. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | - [List EOR Payroll Calendar](https://developer.remote.com/reference/get_v1_payroll-calendars.md): List all active payroll calendars for EOR. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View payroll calendars (`payroll_calendar:read`) | - | - [List Company Payroll Calendar](https://developer.remote.com/reference/get_v1_payroll-calendars_cycle.md): List all payroll calendars for the company within the requested cycle. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View payroll calendars (`payroll_calendar:read`) | - | - [List Company Payroll Runs](https://developer.remote.com/reference/get_v1_payroll-runs.md): Lists all payroll runs for a company ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | - [Show Company Payroll Runs](https://developer.remote.com/reference/get_v1_payroll-runs_payroll_run_id.md): Given an ID, shows a payroll run. `employee_details` field is deprecated in favour of the `employee_details` endpoint and will be removed in the future. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | - [Get Employee Details for a Payroll Run](https://developer.remote.com/reference/get_v1_payroll-runs_payroll_run_id_employee-details.md): Gets the employee details for a payroll run ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | - [Create a GL report](https://developer.remote.com/reference/post_v1_payroll-runs_payroll_run_id_gl-reports.md): Triggers generation of a General Ledger report for the given payroll run and type. Returns immediately with a `pending` report — poll `show` until `status` is `completed`, then call `download`. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | - [Show a GL report](https://developer.remote.com/reference/get_v1_payroll-runs_payroll_run_id_gl-reports_gl_report_id.md): Returns the current status of a GL report. Poll until `status` is `completed`, then call `download`. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | - [Download a GL report](https://developer.remote.com/reference/get_v1_payroll-runs_payroll_run_id_gl-reports_gl_report_id_download.md): Downloads the generated GL report as a CSV file. The report must have `status: completed` before calling this endpoint. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | - [payslip.released](https://developer.remote.com/reference/payslipreleased.md): This event is triggered when a payslip is ready and available for an employee. - [List payslips](https://developer.remote.com/reference/get_v1_payslips.md): Lists all payslips belonging to a company. Can also filter for a single employment belonging to that company. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | - [Download payslip in the PDF format](https://developer.remote.com/reference/get_v1_payslips_payslip_id_pdf.md): Given a Payslip ID, downloads a payslip. It is important to note that each country has a different payslip format and they are not authored by Remote. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | - [Creates a Benefit Renewal Request](https://developer.remote.com/reference/post_v1_sandbox_benefit-renewal-requests.md): Creates a Benefit Renewal Request for a specific Benefit Group. This endpoint is only available in Sandbox, otherwise it will respond with a 404. - [Pass KYB](https://developer.remote.com/reference/post_v1_sandbox_companies_company_id_bypass-eligibility-checks.md): Pass KYB and credit risk for a company without the intervention of a Remote admin. This endpoint is only available in Sandbox, otherwise it will respond with a 404. - [Reassign default legal entity](https://developer.remote.com/reference/put_v1_sandbox_companies_company_id_default-legal-entity_legal_entity_id.md): Set a different legal entity as the company's default entity. The default entity is used when creating new employments without an explicit entity. This endpoint is only available in Sandbox, otherwise it will respond with a 404. - [Create a legal entity](https://developer.remote.com/reference/post_v1_sandbox_companies_company_id_legal-entities.md): Create a new legal entity for a company in a given country, with KYB automatically passed. The entity is created with active status and can be set as the company's default using the reassign default entity endpoint. This endpoint is only available in Sandbox, otherwise it will respond with a 404. - [Approve Contract Amendment](https://developer.remote.com/reference/put_v1_sandbox_contract-amendments_contract_amendment_request_id_approve.md): 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. - [Cancel Contract Amendment](https://developer.remote.com/reference/put_v1_sandbox_contract-amendments_contract_amendment_request_id_cancel.md): Use this endpoint to cancel an existing contract amendment request. This endpoint is only available in Sandbox, otherwise it will respond with a 404. - [Create employment](https://developer.remote.com/reference/post_v1_sandbox_employments.md): Creates an employment without provisional_start_date validation. This endpoint is only available in Sandbox and allows creating employments which `provisional_start_date` is in the past. This is especially helpful for: * Testing the Timeoff Balance endpoints * Testing the Offboarding endpoints * Testing features around probation periods This endpoint will respond with a 404 outside of the Sandbox environment. For creating an employment's parameters outside of testing purposes, use [this Employment create endpoint](#operation/post_create_employment) - [Update employment](https://developer.remote.com/reference/patch_v1_sandbox_employments_employment_id-2.md): Updates an employment. Use this endpoint to: - modify employment states for testing - Backdate employment start dates This endpoint will respond with a 404 outside of the Sandbox environment. `partner_external_id` cannot be updated here and is ignored if sent, like any other unsupported field. Set it with `PATCH /api/eor/v1/employments/{employment_id}` instead. For updating an employment's parameters outside of testing purposes, use [this Employment update endpoint](#operation/patch_update_employment). - [Update employment](https://developer.remote.com/reference/patch_v1_sandbox_employments_employment_id.md): Updates an employment. Use this endpoint to: - modify employment states for testing - Backdate employment start dates This endpoint will respond with a 404 outside of the Sandbox environment. `partner_external_id` cannot be updated here and is ignored if sent, like any other unsupported field. Set it with `PATCH /api/eor/v1/employments/{employment_id}` instead. For updating an employment's parameters outside of testing purposes, use [this Employment update endpoint](#operation/patch_update_employment). - [Trigger a Webhook](https://developer.remote.com/reference/post_v1_sandbox_webhook-callbacks_trigger.md): Triggers a callback previously registered for webhooks. Use this endpoint to emit a webhook for testing in the Sandbox environment. This endpoint will respond with a 404 outside of the Sandbox environment. - [Activate Global Payroll for a legal entity](https://developer.remote.com/reference/post_v1_sandbox_companies_company_id_legal-entities_legal_entity_id_activate-global-payroll.md): Enables the Global Payroll product on a legal entity so that GP employees can be created against it. Performs three idempotent steps: * Adds the Global Payroll product to the company. * Flips `global_payroll_enabled` on the legal entity's settings. * Ensures a Global Payroll pricing plan exists for the legal entity's country. This endpoint is only available in Sandbox, otherwise it will respond with a 404. - [Approve risk reserve proof of payment](https://developer.remote.com/reference/post_v1_sandbox_employments_employment_id_risk-reserve-proof-of-payments_approve-1.md): Approves a risk reserve proof of payment without the intervention of a Remote admin. Triggers an `employment.cor_hiring.proof_of_payment_accepted` webhook event. This endpoint is only available in Sandbox, otherwise it will respond with a 404. - [Set company credit risk status](https://developer.remote.com/reference/post_v1_sandbox_companies_company_id_legal-entities_legal_entity_id_set-credit-risk-status.md): Sets the credit risk status of a specific legal entity to any valid credit risk status. Use this endpoint to test hiring flows affected by credit risk, without needing Remote admin intervention. This endpoint is only available in Sandbox, otherwise it will respond with a 404. - [Archive employment](https://developer.remote.com/reference/delete_v1_sandbox_employments_employment_id.md): Archives an employment, setting its status to `archived`. This endpoint is only available in Sandbox and allows partners to clean up test employees during automated E2E testing without requiring Remote manual intervention. This endpoint will respond with a 404 outside of the Sandbox environment. - [Report SDK errors](https://developer.remote.com/reference/post_v1_sdk_telemetry-errors.md): Receives error telemetry from the frontend SDK. Errors are logged to observability backend for monitoring and debugging. - [Get a mock JSON Schema](https://developer.remote.com/reference/get_v1_test-schema.md): Get a mock JSON Schema for testing purposes - [timesheet.submitted](https://developer.remote.com/reference/timesheetsubmitted.md): This event is triggered when a timesheet is submitted by an employee - [List timesheets](https://developer.remote.com/reference/get_v1_timesheets.md): Lists all timesheets. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timesheets (`timesheet:read`) | Manage timesheets (`timesheet:write`) | - [Show timesheet](https://developer.remote.com/reference/get_v1_timesheets_id.md): Shows a timesheet by its ID. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timesheets (`timesheet:read`) | Manage timesheets (`timesheet:write`) | - [Approve timesheet](https://developer.remote.com/reference/post_v1_timesheets_timesheet_id_approve.md): Approves the given timesheet. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | - [Send back a timesheet for review or modification](https://developer.remote.com/reference/post_v1_timesheets_timesheet_id_send-back.md): Sends the given timesheet back to the employee for review or modification. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | - [Create a contractor timesheet](https://developer.remote.com/reference/post_v1_contractors_employments_employment_id_timesheets.md): Creates a timesheet on behalf of a contractor employment. The submitted hours are immediately available to the contractor in the Remote UI for self-serve invoice creation (Invoices → Create invoice → "Use Time Tracking"). This endpoint is restricted to contractor employments. Calls against EOR or Global Payroll employments are rejected with `422`. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | - [List Employee Leave Policies](https://developer.remote.com/reference/get_v1_employee_leave-policies.md): List the leave policies for the current employee ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - [List Employee Leave Policies Summary](https://developer.remote.com/reference/get_v1_employee_leave-policies_summary.md): List the leave policies summary (balances and entitlements) for the current employee ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - [List Leave Policies Details](https://developer.remote.com/reference/get_v1_leave-policies_details_employment_id.md): Describe the leave policies (custom or not) for a given employment ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - [List Leave Policies Summary](https://developer.remote.com/reference/get_v1_leave-policies_summary_employment_id.md): List all the data related to time off for a given employment ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - [List employee time offs](https://developer.remote.com/reference/get_v1_employee_timeoff.md): Lists the current employee's time off records ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - [Create a Pending Time Off](https://developer.remote.com/reference/post_v1_employee_timeoff.md): Creates a pending Time Off record ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Update Time Off as Employee](https://developer.remote.com/reference/patch_v1_employee_timeoff_id-2.md): Updates a Time Off record as Employee ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Update Time Off as Employee](https://developer.remote.com/reference/patch_v1_employee_timeoff_id.md): Updates a Time Off record as Employee ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Cancel Time Off as Employee](https://developer.remote.com/reference/post_v1_employee_timeoff_id_cancel.md): Cancels a Time Off record as Employee ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [timeoff.approved](https://developer.remote.com/reference/timeoffapproved-1.md): This event is triggered when a timeoff is set as approved. - [timeoff.canceled](https://developer.remote.com/reference/timeoffcanceled-1.md): This event is triggered when a timeoff has status changed to cancelled. - [timeoff.cancellation_requested](https://developer.remote.com/reference/timeoffcancellation_requested-1.md): This event is triggered when an approved timeoff cancellation is requested. - [timeoff.date_changed](https://developer.remote.com/reference/timeoffdate_changed.md): This event is triggered when a timeoff has its date changed. - [timeoff.declined](https://developer.remote.com/reference/timeoffdeclined.md): This event is triggered when a timeoff is declined - [timeoff.requested](https://developer.remote.com/reference/timeoffrequested-1.md): This event is triggered when a timeoff is requested - [timeoff.started](https://developer.remote.com/reference/timeoffstarted-1.md): This event is triggered when a timeoff has started. - [timeoff.taken](https://developer.remote.com/reference/timeofftaken.md): This event is triggered when a timeoff is set as taken. - [timeoff.updated](https://developer.remote.com/reference/timeoffupdated.md): This event is triggered when a timeoff is updated. - [List Time Off](https://developer.remote.com/reference/get_v1_timeoff.md): Lists all Time Off records. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - [Create Time Off](https://developer.remote.com/reference/post_v1_timeoff.md): Creates a Time Off record ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [List Time Off Types](https://developer.remote.com/reference/get_v1_timeoff_types.md): Lists all time off types that can be used for the `timeoff_type` parameter. **Backward compatibility:** Calling this endpoint without the `type` query parameter returns the same response as before (time off types for full-time employments). Existing integrations do not need to change. Optionally, pass `type=contractor` to get time off types for contractor employments, or `type=full_time` for full-time employments (same as omitting the parameter). ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - [Show Time Off](https://developer.remote.com/reference/get_v1_timeoff_id.md): Shows a single Time Off record ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - [Update Time Off](https://developer.remote.com/reference/patch_v1_timeoff_id-2.md): Updates a Time Off record. Warning: Updating the status of a time off through this endpoint is deprecated and will be removed on January 13, 2025. To approve or cancel an approved time off, use the `/approve` and `/cancel` endpoints instead. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Update Time Off](https://developer.remote.com/reference/patch_v1_timeoff_id.md): Updates a Time Off record. Warning: Updating the status of a time off through this endpoint is deprecated and will be removed on January 13, 2025. To approve or cancel an approved time off, use the `/approve` and `/cancel` endpoints instead. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Approve Time Off](https://developer.remote.com/reference/post_v1_timeoff_timeoff_id_approve.md): Approve a time off request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Cancel Time Off](https://developer.remote.com/reference/post_v1_timeoff_timeoff_id_cancel.md): Cancel a time off request that was already approved. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Approve a time off cancellation request](https://developer.remote.com/reference/post_v1_timeoff_timeoff_id_cancel-request_approve.md): Approve a time off cancellation request. In order to approve a time off cancellation request, the timeoff status must be `cancel_requested`. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Decline a time off cancellation request](https://developer.remote.com/reference/post_v1_timeoff_timeoff_id_cancel-request_decline.md): Decline a time off cancellation request. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Decline Time Off](https://developer.remote.com/reference/post_v1_timeoff_timeoff_id_decline.md): Decline a time off request. Please note that only time off requests on the `requested` status can be declined. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | - [Show Time Off Balance](https://developer.remote.com/reference/get_v1_timeoff-balances_employment_id.md): Shows the time off balance for the given employment_id. Deprecated since February 2025 in favour of **[List Leave Policies Summary](#tag/Leave-Policies/operation/get_index_leave_policies_summary)** endpoint. ## Scopes | Category | Read only Scope | Write only Scope (read access implicit) | |---|---|---| | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | ## Pages - [Public page](https://developer.remote.com/page/public-page.md)