CostCalculatorCosts
{
"type": "object",
"title": "CostCalculatorCosts",
"example": {
"currency": {
"code": "EUR",
"name": "European Euro",
"slug": "eur-3b840951-099f-4bd5-90b9-032f7bfe51d9",
"symbol": "€"
},
"monthly_tce": 1120000,
"annual_total": 13441200,
"monthly_total": 1120100,
"annual_gross_salary": 12000000,
"monthly_gross_salary": 1000000,
"annual_benefits_total": 1441200,
"monthly_benefits_total": 120100,
"annual_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"annual_contributions_total": 1441200,
"monthly_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"monthly_contributions_total": 120100,
"annual_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_total": 0,
"monthly_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
]
},
"required": [
"annual_gross_salary",
"annual_contributions_total",
"annual_total",
"currency",
"extra_statutory_payments_total",
"monthly_contributions_total",
"monthly_gross_salary",
"monthly_tce",
"monthly_total"
],
"x-struct": null,
"properties": {
"currency": {
"$ref": "#/components/schemas/Currency"
},
"monthly_tce": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "Monthly gross salary + monthly contributions (doesn't include fee)"
},
"annual_total": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "The annual gross salary + annual contributions + annual fee (monthly fee * 12) + extra statutory payments if applicable"
},
"monthly_total": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "Monthly gross salary + monthly contributions + monthly fee"
},
"annual_gross_salary": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "The annual gross salary that the employee is going to earn"
},
"monthly_gross_salary": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "The gross monthly salary for the Employee"
},
"annual_benefits_total": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "The annual benefits total that a company must pay for this employment"
},
"monthly_benefits_total": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "The benefits total that the company pays monthly"
},
"annual_benefits_breakdown": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CostCalculatorCost"
},
"x-struct": null,
"x-validate": null,
"description": "The list of all annual benefit costs"
},
"annual_contributions_total": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "The annual contributions that a company must pay for this employment"
},
"monthly_benefits_breakdown": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CostCalculatorCost"
},
"x-struct": null,
"x-validate": null,
"description": "The list of all monthly benefit costs"
},
"monthly_contributions_total": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "The contributions that the company pays monthly"
},
"annual_contributions_breakdown": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CostCalculatorCost"
},
"x-struct": null,
"x-validate": null,
"description": "The list of all annual employer contribution costs"
},
"extra_statutory_payments_total": {
"type": "integer",
"x-struct": null,
"x-validate": null,
"description": "13th month salary, this happens for countries such as Philippines"
},
"monthly_contributions_breakdown": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CostCalculatorCost"
},
"x-struct": null,
"x-validate": null,
"description": "The list of all monthly employer contribution costs"
},
"extra_statutory_payments_breakdown": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CostCalculatorCost"
},
"x-struct": null,
"x-validate": null,
"description": "The list of all annual extra statutory payment costs"
}
},
"x-validate": null
}
CostCalculatorEmployment
{
"type": "object",
"title": "CostCalculatorEmployment",
"example": {
"region": {
"code": "USA",
"name": "United States",
"slug": "663e0b79-c893-45ff-a1b2-f6dcabc098b5"
},
"country": {
"code": "PRT",
"name": "Portugal",
"slug": "portugal-ab18d96a-a9fd-42c0-9688-24f963d8bdc1",
"alpha_2_code": "PT"
},
"employer_currency_costs": {
"currency": {
"code": "EUR",
"name": "European Euro",
"slug": "eur-3b840951-099f-4bd5-90b9-032f7bfe51d9",
"symbol": "€"
},
"monthly_tce": 1120000,
"annual_total": 13441200,
"monthly_total": 1120100,
"annual_gross_salary": 12000000,
"monthly_gross_salary": 1000000,
"annual_benefits_total": 1441200,
"monthly_benefits_total": 120100,
"annual_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"annual_contributions_total": 1441200,
"monthly_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"monthly_contributions_total": 120100,
"annual_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_total": 0,
"monthly_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
]
},
"regional_currency_costs": {
"currency": {
"code": "EUR",
"name": "European Euro",
"slug": "eur-3b840951-099f-4bd5-90b9-032f7bfe51d9",
"symbol": "€"
},
"monthly_tce": 1120000,
"annual_total": 13441200,
"monthly_total": 1120100,
"annual_gross_salary": 12000000,
"monthly_gross_salary": 1000000,
"annual_benefits_total": 1441200,
"monthly_benefits_total": 120100,
"annual_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"annual_contributions_total": 1441200,
"monthly_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"monthly_contributions_total": 120100,
"annual_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_total": 0,
"monthly_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
]
},
"has_extra_statutory_payment": false
},
"required": [
"country",
"employer_currency_costs",
"has_extra_statutory_payment",
"region",
"regional_currency_costs"
],
"x-struct": null,
"properties": {
"region": {
"$ref": "#/components/schemas/MinimalRegion"
},
"country": {
"$ref": "#/components/schemas/MinimalCountry"
},
"employer_currency_costs": {
"$ref": "#/components/schemas/CostCalculatorCosts"
},
"regional_currency_costs": {
"$ref": "#/components/schemas/CostCalculatorCosts"
},
"has_extra_statutory_payment": {
"type": "boolean",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
CostCalculatorEmploymentParam
{
"type": "object",
"title": "CostCalculatorEmploymentParam",
"required": [
"region_slug"
],
"x-struct": null,
"properties": {
"age": {
"type": "integer",
"x-struct": null,
"x-validate": null
},
"title": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"region_slug": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"employment_term": {
"$ref": "#/components/schemas/EmploymentTermType"
},
"annual_gross_salary": {
"type": "integer",
"x-struct": null,
"x-validate": null
},
"regional_to_employer_exchange_rate": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"annual_gross_salary_in_employer_currency": {
"type": "integer",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
CostCalculatorEstimatePDFResponse
{
"type": "object",
"title": "CostCalculatorEstimatePDFResponse",
"required": [
"data"
],
"x-struct": null,
"properties": {
"data": {
"type": "object",
"required": [
"content"
],
"x-struct": null,
"properties": {
"content": {
"$ref": "#/components/schemas/GenericFile"
}
},
"x-validate": null
}
},
"x-validate": null
}
CostCalculatorEstimateParams
{
"type": "object",
"title": "CostCalculatorEstimateParams",
"required": [
"employments",
"employer_currency_slug"
],
"x-struct": null,
"properties": {
"employments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CostCalculatorEmploymentParam"
},
"x-struct": null,
"x-validate": null
},
"include_benefits": {
"type": "boolean",
"x-struct": null,
"x-validate": null
},
"employer_currency_slug": {
"type": "string",
"title": "Slug",
"example": "663e0b79-c893-45ff-a1b2-f6dcabc098b5",
"x-struct": null,
"x-validate": null,
"description": "Currency Slug"
},
"include_cost_breakdowns": {
"type": "boolean",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
CostCalculatorEstimateResponse
{
"type": "object",
"title": "CostCalculatorEstimateResponse",
"example": {
"data": {
"employments": [
{
"region": {
"code": "USA",
"name": "United States",
"slug": "663e0b79-c893-45ff-a1b2-f6dcabc098b5"
},
"country": {
"code": "PRT",
"name": "Portugal",
"slug": "portugal-ab18d96a-a9fd-42c0-9688-24f963d8bdc1",
"alpha_2_code": "PT"
},
"employer_currency_costs": {
"currency": {
"code": "EUR",
"name": "European Euro",
"slug": "eur-3b840951-099f-4bd5-90b9-032f7bfe51d9",
"symbol": "€"
},
"monthly_tce": 1120000,
"annual_total": 13441200,
"monthly_total": 1120100,
"annual_gross_salary": 12000000,
"monthly_gross_salary": 1000000,
"annual_benefits_total": 1441200,
"monthly_benefits_total": 120100,
"annual_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"annual_contributions_total": 1441200,
"monthly_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"monthly_contributions_total": 120100,
"annual_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_total": 0,
"monthly_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
]
},
"regional_currency_costs": {
"currency": {
"code": "EUR",
"name": "European Euro",
"slug": "eur-3b840951-099f-4bd5-90b9-032f7bfe51d9",
"symbol": "€"
},
"monthly_tce": 1120000,
"annual_total": 13441200,
"monthly_total": 1120100,
"annual_gross_salary": 12000000,
"monthly_gross_salary": 1000000,
"annual_benefits_total": 1441200,
"monthly_benefits_total": 120100,
"annual_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"annual_contributions_total": 1441200,
"monthly_benefits_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"monthly_contributions_total": 120100,
"annual_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_total": 0,
"monthly_contributions_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
],
"extra_statutory_payments_breakdown": [
{
"name": "Insurance",
"amount": 1120000,
"description": "Description of how the amount is calculated.",
"zendesk_article_url": "https://examplezendesk.com/article/1234"
}
]
},
"has_extra_statutory_payment": false
}
]
}
},
"required": [
"data"
],
"x-struct": null,
"properties": {
"data": {
"type": "object",
"x-struct": null,
"properties": {
"employments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CostCalculatorEmployment"
},
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
},
"x-validate": null
}
Costs
{
"type": "object",
"title": "Costs",
"example": {
"employee_cost": 234,
"employer_cost": 44
},
"nullable": true,
"required": [
"employee_cost",
"employer_cost"
],
"x-struct": null,
"properties": {
"employee_cost": {
"type": "integer",
"x-struct": null,
"x-validate": null
},
"employer_cost": {
"type": "integer",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
CountriesResponse
{
"type": "object",
"title": "CountriesResponse",
"example": {
"data": [
{
"code": "PRT",
"name": "Portugal",
"alpha_2_code": "PT",
"supported_json_schemas": [
"additional_documents",
"address_details",
"administrative_details",
"employment-basic-information",
"bank_account_details",
"contract_details",
"emergency_contact"
]
}
]
},
"x-struct": null,
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Country"
},
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "List of countries supported by Remote API"
}
Country
{
"type": "object",
"title": "Country",
"example": {
"code": "PRT",
"name": "Portugal",
"alpha_2_code": "PT",
"country_subdivisions": [
{
"code": "PT-06",
"name": "Coimbra",
"subdivision_type": "District"
},
{
"code": "PT-11",
"name": "Lisboa",
"subdivision_type": "District"
}
],
"supported_json_schemas": [
"additional_documents",
"address_details",
"administrative_details",
"employment-basic-information",
"bank_account_details",
"contract_details",
"emergency_contact"
]
},
"required": [
"alpha_2_code",
"code",
"name"
],
"x-struct": null,
"properties": {
"code": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"name": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"alpha_2_code": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"country_subdivisions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CountrySubdivision"
},
"nullable": true,
"x-struct": null,
"x-validate": null
},
"supported_json_schemas": {
"type": "array",
"items": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "A supported country on Remote"
}
CountryFormResponse
{
"type": "object",
"title": "CountryFormResponse",
"example": {
"data": {
"type": "object",
"required": [
"address",
"city",
"postal_code"
],
"properties": {
"city": {
"type": "string",
"title": "City",
"maxLength": 255,
"description": "Enter your city"
},
"address": {
"type": "string",
"title": "Address",
"maxLength": 255,
"description": "Your street name and house number. PO Box addresses are not supported."
},
"postal_code": {
"type": "string",
"title": "Postal code",
"maxLength": 255,
"description": "Enter zip or postal code"
},
"address_line_2": {
"type": "string",
"title": "Address line 2",
"maxLength": 255,
"description": "(Optional) For example, apartment, block, or building number."
}
}
}
},
"x-struct": null,
"properties": {
"data": {
"type": "object",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "Object with required and optional fields, its descriptions and suggested presentation"
}
CountrySubdivision
{
"type": "object",
"title": "CountrySubdivision",
"example": {
"code": "PT-11",
"name": "Lisboa",
"subdivision_type": "District"
},
"required": [
"name"
],
"x-struct": null,
"properties": {
"code": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"name": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"subdivision_type": {
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "A subdivision of a supported country on Remote"
}
CountrySummariesResponse
{
"type": "object",
"title": "CountrySummariesResponse",
"example": {
"data": {
"company_id": "79297cfd-cf60-4cf4-a70f-ac2061d72a74",
"country_summaries": [
[
{
"country": {
"code": "PRT",
"name": "Portugal",
"alpha_2_code": "PT",
"country_subdivisions": [
{
"code": "PT-06",
"name": "Coimbra",
"subdivision_type": "District"
},
{
"code": "PT-11",
"name": "Lisboa",
"subdivision_type": "District"
}
],
"supported_json_schemas": [
"additional_documents",
"address_details",
"administrative_details",
"employment-basic-information",
"bank_account_details",
"contract_details",
"emergency_contact"
]
},
"employee_stats": {
"number_of_employees_offered": 12,
"number_of_employees_enrolled": 10
},
"offered_benefit_groups": [
{
"benefit_group": {
"id": "54297cfd-cf60-4cf4-a70f-ac2061d72b44X",
"name": "Health",
"policy_end_date": "2024-12-31",
"policy_start_date": "2024-01-01"
},
"employee_stats": {
"number_of_employees_offered": 12,
"number_of_employees_enrolled": 10
},
"offered_benefit_tiers": [
{
"benefit_tier": {
"id": "66297cfd-cf60-4cf4-a70f-ac2561d92b04X",
"name": "Premium 2023 (Medical, Dental and Vision)",
"providers": [
{
"id": "88297cfd-cf60-4cf4-a70f-ac2861d92b87X",
"name": "Health Provider"
}
]
},
"employee_stats": {
"number_of_employees_offered": 12,
"number_of_employees_enrolled": 10
}
}
]
}
]
}
]
]
}
},
"required": [
"data"
],
"x-struct": null,
"properties": {
"data": {
"type": "object",
"required": [
"company_id",
"country_summaries"
],
"x-struct": null,
"properties": {
"company_id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"country_summaries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CountrySummary"
},
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
},
"x-validate": null
}
CountrySummary
{
"type": "object",
"title": "CountrySummary",
"example": {
"country": {
"code": "PRT",
"name": "Portugal",
"alpha_2_code": "PT",
"country_subdivisions": [
{
"code": "PT-06",
"name": "Coimbra",
"subdivision_type": "District"
},
{
"code": "PT-11",
"name": "Lisboa",
"subdivision_type": "District"
}
],
"supported_json_schemas": [
"additional_documents",
"address_details",
"administrative_details",
"employment-basic-information",
"bank_account_details",
"contract_details",
"emergency_contact"
]
},
"employee_stats": {
"number_of_employees_offered": 12,
"number_of_employees_enrolled": 10
},
"offered_benefit_groups": [
{
"benefit_group": {
"id": "54297cfd-cf60-4cf4-a70f-ac2061d72b44X",
"name": "Health",
"policy_end_date": "2024-12-31",
"policy_start_date": "2024-01-01"
},
"employee_stats": {
"number_of_employees_offered": 12,
"number_of_employees_enrolled": 10
},
"offered_benefit_tiers": [
{
"benefit_tier": {
"id": "66297cfd-cf60-4cf4-a70f-ac2561d92b04X",
"name": "Premium 2023 (Medical, Dental and Vision)",
"providers": [
{
"id": "88297cfd-cf60-4cf4-a70f-ac2861d92b87X",
"name": "Health Provider"
}
]
},
"employee_stats": {
"number_of_employees_offered": 12,
"number_of_employees_enrolled": 10
}
}
]
}
]
},
"required": [
"country",
"employee_stats",
"offered_benefit_groups"
],
"x-struct": null,
"properties": {
"country": {
"$ref": "#/components/schemas/Country"
},
"employee_stats": {
"$ref": "#/components/schemas/EmployeeStats"
},
"offered_benefit_groups": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OfferedBenefitGroup"
},
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
CreateApprovedTimeoffParams
{
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/CreateTimeoffParams"
},
{
"type": "object",
"x-struct": null,
"properties": {
"status": {
"enum": [
"approved"
],
"type": "string",
"x-struct": null,
"x-validate": null
},
"approved_at": {
"$ref": "#/components/schemas/DateTimeIso8601"
},
"approver_id": {
"$ref": "#/components/schemas/NullableApproverId"
}
},
"x-validate": null
}
],
"title": "CreateApprovedTimeoffParams",
"required": [
"status",
"approver_id",
"approved_at"
],
"x-struct": null,
"x-validate": null,
"description": "Approved timeoff creation params"
}
CreateCompanyDepartmentParams
{
"type": "object",
"title": "CreateCompanyDepartmentParams",
"example": {
"name": "Marketing",
"company_id": "669f9e18-889f-4c2c-95b8-67795a3113cc"
},
"required": [
"company_id",
"name"
],
"x-struct": null,
"properties": {
"name": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The name of the company department. May be non-unique and limited to 255 characters, maximum."
},
"company_id": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The Company ID. Required in all cases, whether the API credentials have access to multiple companies or just one."
}
},
"x-validate": null
}
CreateCompanyParams
{
"type": "object",
"title": "CreateCompanyParams",
"example": {
"name": "Tech Vision",
"tax_number": "123456789",
"external_id": "00001111",
"country_code": "USA",
"phone_number": "+11123123456",
"address_details": {
"city": "San Francisco",
"state": "CA",
"address": "1709 Broderick St",
"postal_code": "94115",
"address_line_2": "Flat number 123"
},
"desired_currency": "USD",
"company_owner_name": "Joe Smith",
"company_owner_email": "ceo@techvision.com",
"bank_account_details": {
"name": "Bank name",
"account_type": "savings",
"account_holder": "Joe Smith",
"account_number": "31234123123",
"ownership_type": "BUSINESS",
"routing_number": "123124123"
},
"terms_of_service_accepted_at": "2022-05-05 15:03:45Z"
},
"required": [
"company_owner_email",
"company_owner_name",
"country_code",
"desired_currency",
"name",
"terms_of_service_accepted_at"
],
"x-struct": null,
"properties": {
"name": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The company name"
},
"tax_number": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The tax identifier of the company. This field or `registration_number` (but not both) should be submitted."
},
"external_id": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "Id of the company as represented in the external partner system."
},
"country_code": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "3-letter country code of the country the company address is located in.\n\nFor a list of countries supported through the Remote API, make a call to the [list countries endpoint](https://gateway.remote.com/v1/docs/openapi.html). This endpoint will also include the 3-letter country codes you can use for this field.\n"
},
"email_domain": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The domain of the company. Use this field to specify the company domain name when it's different from the domain in the company owner's email."
},
"phone_number": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "A phone number the company can be contacted with."
},
"address_details": {
"type": "object",
"x-struct": null,
"x-validate": null,
"description": "Fields can vary depending on the country. Please, check the required fields structure using the [Show form schema endpoint](https://gateway.remote.com/v1/docs/openapi.html).\nUse the desired country and `address_details` as the form name for the placeholders.\nThe response complies with the [JSON Schema](https://remote.com/resources/api/how-json-schemas-work) specification.\n"
},
"desired_currency": {
"enum": [
"AUD",
"CAD",
"CHF",
"DKK",
"EUR",
"GBP",
"JPY",
"NOK",
"NZD",
"SEK",
"SGD",
"USD"
],
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "Desired currency for invoicing and displaying converted salaries in Remote UI regardless of the employee's country."
},
"company_owner_name": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The company owner name.\n\nThis value cannot be changed from the Remote API once set.\n"
},
"company_owner_email": {
"type": "string",
"format": "email",
"x-struct": null,
"x-validate": null,
"description": "The company owner email.\n\nThis value cannot be changed once set.\n"
},
"registration_number": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The company registration number. This field or `tax_number` (but not both) should be submitted."
},
"bank_account_details": {
"type": "object",
"x-struct": null,
"x-validate": null,
"description": "Fields can vary depending on the country. Please, check the required fields structure using the [Show form schema endpoint](https://gateway.remote.com/v1/docs/openapi.html).\nUse the desired country and `bank_account_details` as the form name for the placeholders.\nThe response complies with the [JSON Schema](https://remote.com/resources/api/how-json-schemas-work) specification.\n"
},
"terms_of_service_accepted_at": {
"type": "string",
"format": "date-time",
"x-struct": null,
"x-validate": null,
"description": "Date and time the Terms of Service were accepted. To ensure users read the most recent version of Remote's Terms of Service, their action cannot have been done more than fifteen minutes ago. The UTC offset must be included in the ISO 8601 format: `YYYY-MM-DD HOURS:MINUTES:SECONDSZ`"
}
},
"x-validate": null
}
CreateContractAmendmentParams
{
"type": "object",
"title": "CreateContractAmendmentParams",
"example": {
"employment_id": "e31adae1-company-id-af5fba7dd803",
"contract_amendment": {},
"amendment_contract_id": "c15993d8-aa8a-4fbb-b395-8b7a54f57db1"
},
"required": [
"employment_id",
"amendment_contract_id",
"contract_amendment"
],
"x-struct": null,
"properties": {
"employment_id": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The employment ID that is related to the contract amendment request."
},
"contract_amendment": {
"type": "object",
"x-struct": null,
"x-validate": null,
"description": "Contract amendment informations. As its properties may vary depending on the country,\n you must query the [Show form schema](https://gateway.remote.com/v1/docs/openapi.html) endpoint\n passing the country code, `contract_amendment` and the employment ID as request body."
},
"amendment_contract_id": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The contract ID of the contract that needs to be amended."
}
},
"x-validate": null
}
CreateOffboardingParams
{
"type": "object",
"title": "CreateOffboardingParams",
"example": {
"type": "termination",
"employment_id": "5e55386e-4f4f-4def-92f4-bdc19a5ce77d",
"termination_details": {
"confidential": false,
"employee_awareness": {
"date": "2023-12-12",
"note": "optional text to add details"
},
"reason_description": "termination reason",
"termination_reason": "workforce_reduction",
"additional_comments": "additional comments regarding the termination reason",
"risk_assessment_reasons": [
"pregnant_or_breastfeeding",
"family_leave"
],
"termination_reason_files": [
{
"name": "termination_letter.pdf",
"content": "UGVyaW9kIEVuZCBEYXRlLFBheSBEYXRlLEVtcG...5jZSBPZiBSZXNpZGVuYdXJyZW50LEFsbG93"
}
],
"proposed_termination_date": "2023-12-20",
"will_challenge_termination": true,
"will_challenge_termination_description": "additional details for the offboarding risk assessment"
}
},
"required": [
"type",
"employment_id",
"termination_details"
],
"x-struct": null,
"properties": {
"type": {
"enum": [
"termination"
],
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The type of the offboarding request. For now, only `termination` is allowed."
},
"employment_id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"termination_details": {
"$ref": "#/components/schemas/TerminationDetailsParams"
}
},
"x-validate": null
}
CreateOneTimeIncentiveParams
{
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/CommonIncentiveParams"
},
{
"type": "object",
"x-struct": null,
"properties": {
"type": {
"enum": [
"acting_up_allowance",
"allowance",
"car_allowance",
"health_and_wellness_allowance",
"internet_allowance",
"meal_allowance",
"on_call_allowance",
"parenthood_allowance",
"phone_allowance",
"relocation_allowance",
"travel_allowance",
"work_from_home_allowance",
"bonus",
"holiday_bonus",
"referral_bonus",
"retention_bonus",
"commission",
"other",
"overtime",
"stipend",
"signing_bonus"
],
"type": "string",
"x-struct": null,
"x-validate": null
},
"employment_id": {
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
],
"title": "CreateOneTimeIncentiveParams",
"example": {
"note": "Bonus for moving start date to an earlier date",
"type": "signing_bonus",
"amount": 50000,
"employment_id": "5e55386e-4f4f-4def-92f4-bdc19a5ce77d",
"effective_date": "2021-12-20",
"amount_tax_type": "net"
},
"required": [
"type",
"amount",
"amount_tax_type",
"employment_id",
"effective_date"
],
"x-struct": null,
"properties": {
"note": {
"type": "string",
"example": "Bonus for moving start date to an earlier date"
},
"type": {
"type": "string",
"example": "signing_bonus"
},
"amount": {
"type": "number",
"example": 50000
},
"employment_id": {
"type": "string",
"example": "5e55386e-4f4f-4def-92f4-bdc19a5ce77d"
},
"effective_date": {
"type": "string",
"example": "2021-12-20"
},
"amount_tax_type": {
"type": "string",
"example": "net"
}
},
"x-validate": null
}
CreateParams
{
"type": "object",
"title": "CreateParams",
"x-struct": null,
"properties": {
"type": {
"enum": [
"employee",
"contractor"
],
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "If not provided, it will default to `employee`."
},
"company_id": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "This optional field is deprecated."
},
"country_code": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"basic_information": {
"type": "object",
"x-struct": null,
"x-validate": null,
"description": "Employment basic information. When using this field, the same other root level fields (name, personal_email, job_title,\nprovisional_start_date, and seniority_date) will be ignored.\nIts properties may vary depending on the country, you must query the [Show form schema](https://gateway.remote.com/v1/docs/openapi.html) endpoint\npassing the country code and `employment_basic_information` as path parameters.\n"
}
},
"x-validate": null
}
CreateParams-Deprecated
{
"type": "object",
"title": "CreateParams-Deprecated",
"x-struct": null,
"properties": {
"type": {
"enum": [
"employee",
"contractor"
],
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "If not provided, it will default to `employee`."
},
"full_name": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"job_title": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"company_id": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "This optional field is deprecated."
},
"country_code": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"personal_email": {
"type": "string",
"format": "email",
"x-struct": null,
"x-validate": null
},
"seniority_date": {
"$ref": "#/components/schemas/EmploymentSeniorityDate"
},
"provisional_start_date": {
"$ref": "#/components/schemas/ProvisionalStartDate"
}
},
"x-validate": null,
"description": "Providing the params in the root level of the request is now deprecated and will be removed in the future.\nPlease, use the \"CreateParams\" instead.\n"
}
CreateRecurringIncentiveParams
{
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/CommonIncentiveParams"
},
{
"type": "object",
"x-struct": null,
"properties": {
"type": {
"enum": [
"acting_up_allowance",
"allowance",
"car_allowance",
"health_and_wellness_allowance",
"internet_allowance",
"meal_allowance",
"on_call_allowance",
"parenthood_allowance",
"phone_allowance",
"relocation_allowance",
"travel_allowance",
"work_from_home_allowance",
"bonus",
"holiday_bonus",
"referral_bonus",
"retention_bonus",
"commission",
"other",
"overtime",
"stipend"
],
"type": "string",
"x-struct": null,
"x-validate": null
},
"employment_id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"duration_in_months": {
"type": "string",
"format": "integer",
"x-struct": null,
"x-validate": null,
"description": "How many times the payment will repeat. At the moment we only fully support monthly frequency.\n\nThis field is only necessary if the recurring incentive has an end date.\n"
}
},
"x-validate": null
}
],
"title": "CreateRecurringIncentiveParams",
"example": {
"note": "Bonus for moving start date to an earlier date",
"type": "meal_allowance",
"amount": 50000,
"employment_id": "5e55386e-4f4f-4def-92f4-bdc19a5ce77d",
"effective_date": "2021-12-20",
"amount_tax_type": "net",
"duration_in_months": 3
},
"required": [
"type",
"amount",
"amount_tax_type",
"employment_id",
"effective_date"
],
"x-struct": null,
"properties": {
"note": {
"type": "string",
"example": "Bonus for moving start date to an earlier date"
},
"type": {
"type": "string",
"example": "meal_allowance"
},
"amount": {
"type": "number",
"example": 50000
},
"employment_id": {
"type": "string",
"example": "5e55386e-4f4f-4def-92f4-bdc19a5ce77d"
},
"effective_date": {
"type": "string",
"example": "2021-12-20"
},
"amount_tax_type": {
"type": "string",
"example": "net"
},
"duration_in_months": {
"type": "number",
"example": 3
}
},
"x-validate": null
}
CreateTimeoffParams
{
"type": "object",
"title": "CreateTimeoffParams",
"required": [
"employment_id",
"start_date",
"end_date",
"timeoff_type",
"timezone",
"timeoff_days"
],
"x-struct": null,
"properties": {
"notes": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"document": {
"$ref": "#/components/schemas/TimeoffDocumentParams"
},
"end_date": {
"type": "string",
"format": "datetime",
"nullable": false,
"x-struct": null,
"x-validate": null
},
"timezone": {
"$ref": "#/components/schemas/Timezone"
},
"start_date": {
"type": "string",
"format": "datetime",
"nullable": false,
"x-struct": null,
"x-validate": null
},
"timeoff_days": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TimeoffDaysParams"
},
"x-struct": null,
"x-validate": null
},
"timeoff_type": {
"$ref": "#/components/schemas/TimeoffType"
},
"employment_id": {
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "Timeoff creation params"
}
CreateWebhookCallbackParams
{
"type": "object",
"title": "CreateWebhookCallbackParams",
"example": {
"url": "https://example.com/callback",
"subscribed_events": [
"employment.onboarding_task.completed"
]
},
"required": [
"url"
],
"x-struct": null,
"properties": {
"url": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"subscribed_events": {
"type": "array",
"items": {
"enum": [
"billing_document.issued",
"contract_amendment.canceled",
"contract_amendment.deleted",
"contract_amendment.done",
"contract_amendment.review_started",
"contract_amendment.submitted",
"custom_field.value_updated",
"employment_contract.active_contract_updated",
"employment.account.updated",
"employment.details.updated",
"employment.onboarding_task.completed",
"employment.onboarding.completed",
"employment.personal_information.updated",
"employment.user_status.activated",
"employment.user_status.deactivated",
"expense.approved",
"expense.declined",
"expense.deleted",
"expense.reimbursed",
"expense.submitted",
"expense.updated",
"identity_verification.verification_required",
"incentive.created",
"incentive.deleted",
"incentive.paid",
"incentive.processing_started",
"incentive.updated",
"offboarding.deleted",
"offboarding.done",
"offboarding.review_started",
"offboarding.submitted",
"offboarding.submitted_to_payroll",
"offboarding.completed",
"payslip.released",
"timeoff.approved",
"timeoff.canceled",
"timeoff.date_changed",
"timeoff.declined",
"timeoff.requested",
"timeoff.taken",
"timeoff.updated"
],
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "The setting to be enabled."
},
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "Webhook callback creation params"
}
Currency
{
"type": "object",
"title": "Currency",
"example": {
"code": "EUR",
"name": "European Euro",
"slug": "eur-3b840951-099f-4bd5-90b9-032f7bfe51d9",
"symbol": "€"
},
"required": [
"code",
"slug",
"symbol"
],
"x-struct": null,
"properties": {
"code": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"name": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"slug": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"symbol": {
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "The type of money in general use in a particular country"
}
CurrencyDefinition
{
"type": "object",
"title": "CurrencyDefinition",
"example": {
"code": "CZK",
"name": "Czech Koruna",
"symbol": "Kč"
},
"required": [
"code",
"name",
"symbol"
],
"x-struct": null,
"properties": {
"code": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"name": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"symbol": {
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "Currency object without a UUID identifier"
}
Date
{
"type": "string",
"title": "Date",
"format": "date",
"example": "2021-07-01",
"x-struct": null,
"x-validate": null,
"description": "UTC date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format"
}
DateTimeIso8601
{
"type": "string",
"title": "DateTimeIso8601",
"format": "date-time",
"example": "2021-07-15T18:18:17Z",
"x-struct": null,
"x-validate": null,
"description": "UTC date time in [ISO 8601][] format.\n\n[ISO 8601]: https://en.wikipedia.org/wiki/ISO_8601\n"
}
DeclineExpenseParams
{
"type": "object",
"title": "DeclineExpenseParams",
"example": {
"reason": "Expense not refundable",
"status": "declined"
},
"required": [
"status",
"reason"
],
"x-struct": null,
"properties": {
"reason": {
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "Reason for declination."
},
"status": {
"enum": [
"declined"
],
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "Decline an expense"
}
DeleteRecurringIncentiveResponse
{
"type": "object",
"title": "DeleteRecurringIncentiveResponse",
"required": [
"data"
],
"x-struct": null,
"properties": {
"data": {
"type": "object",
"required": [
"already_scheduled_incentives"
],
"x-struct": null,
"properties": {
"status": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"already_scheduled_incentives": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Incentive"
},
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
},
"x-validate": null,
"description": "`\"status\": \"ok\"` indicates that any recurring incentives with `pending` status were\nsuccessfully deleted.\n\n`already_scheduled_incentives` returns a list of incentives that were already scheduled\nfor payout and as such, cannot be deleted. You will notice that these incentives do not\nhave a `pending` status.\n"
}
EmployeeStats
{
"type": "object",
"title": "EmployeeStats",
"example": {
"number_of_employees_offered": 12,
"number_of_employees_enrolled": 10
},
"required": [
"number_of_employees_offered",
"number_of_employees_enrolled"
],
"x-struct": null,
"properties": {
"number_of_employees_offered": {
"type": "integer",
"x-struct": null,
"x-validate": null
},
"number_of_employees_enrolled": {
"type": "integer",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
Employment
{
"type": "object",
"title": "Employment",
"example": {
"id": "67897cfd-cf60-4cf4-a70f-ac2061d72984",
"name": "Name",
"country": {
"code": "PRT",
"name": "Portugal",
"alpha_2_code": "PT",
"country_subdivisions": [
{
"code": "PT-06",
"name": "Coimbra",
"subdivision_type": "District"
},
{
"code": "PT-11",
"name": "Lisboa",
"subdivision_type": "District"
}
],
"supported_json_schemas": [
"additional_documents",
"address_details",
"administrative_details",
"employment-basic-information",
"bank_account_details",
"contract_details",
"emergency_contact"
]
},
"surname": "Surname",
"given_name": "Given Name"
},
"required": [
"id",
"given_name",
"name",
"surname",
"country"
],
"x-struct": null,
"properties": {
"id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"name": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"country": {
"$ref": "#/components/schemas/Country"
},
"surname": {
"type": "string",
"nullable": true,
"x-struct": null,
"x-validate": null
},
"given_name": {
"type": "string",
"nullable": true,
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
EmploymentBasicParams
{
"type": "object",
"oneOf": [
{
"$ref": "#/components/schemas/CreateParams"
},
{
"$ref": "#/components/schemas/CreateParams-Deprecated"
}
],
"title": "EmploymentBasicParams",
"example": {
"type": "employee",
"full_name": "Jane Smith",
"job_title": "Engineer",
"country_code": "AUS",
"personal_email": "jane@smith.com",
"basic_information": {
"name": "Jane Smith",
"email": "jane@smith.com",
"job_title": "Engineer",
"has_seniority_date": "no",
"provisional_start_date": "2022-07-10"
},
"provisional_start_date": "2022-07-10"
},
"required": [
"full_name",
"personal_email",
"job_title",
"country_code"
],
"x-struct": null,
"properties": {
"type": {
"type": "string",
"example": "employee"
},
"full_name": {
"type": "string",
"example": "Jane Smith"
},
"job_title": {
"type": "string",
"example": "Engineer"
},
"country_code": {
"type": "string",
"example": "AUS"
},
"personal_email": {
"type": "string",
"example": "jane@smith.com"
},
"basic_information": {
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Jane Smith"
},
"email": {
"type": "string",
"example": "jane@smith.com"
},
"job_title": {
"type": "string",
"example": "Engineer"
},
"has_seniority_date": {
"type": "string",
"example": "no"
},
"provisional_start_date": {
"type": "string",
"example": "2022-07-10"
}
}
},
"provisional_start_date": {
"type": "string",
"example": "2022-07-10"
}
},
"x-validate": null,
"description": "Description of the required params to create an employment."
}
EmploymentBasicResponse
{
"type": "object",
"title": "EmploymentBasicResponse",
"example": {
"id": "663e0b79-c893-45ff-a1b2-f6dcabc098b5",
"type": "employee",
"full_name": "Jane Smith",
"job_title": "Engineer",
"company_id": "20a72f86-company-id-20a72f86",
"created_at": "2023-02-01T15:42:03",
"updated_at": "2023-02-01T15:42:03",
"country_code": "AUS",
"personal_email": "jane@smith.com",
"basic_information": {
"name": "Jane Smith",
"email": "jane@smith.com",
"job_title": "Engineer",
"has_seniority_date": "no",
"provisional_start_date": "2022-07-10"
},
"provisional_start_date": "2022-07-10",
"employment_lifecycle_stage": "employment_creation"
},
"x-struct": null,
"properties": {
"id": {
"$ref": "#/components/schemas/Slug"
},
"type": {
"enum": [
"employee",
"contractor"
],
"type": "string",
"x-struct": null,
"x-validate": null
},
"full_name": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"job_title": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"company_id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"created_at": {
"type": "string",
"format": "date-time",
"x-struct": null,
"x-validate": null
},
"updated_at": {
"type": "string",
"format": "date-time",
"x-struct": null,
"x-validate": null
},
"country_code": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"personal_email": {
"type": "string",
"format": "email",
"x-struct": null,
"x-validate": null
},
"basic_information": {
"type": "object",
"x-struct": null,
"x-validate": null,
"description": "Employment basic information. As its properties may vary depending on the country,\n you must query the [Show form schema](https://gateway.remote.com/v1/docs/openapi.html) endpoint\n passing the country code and `basic_information` as path parameters."
},
"provisional_start_date": {
"type": "string",
"format": "date",
"x-struct": null,
"x-validate": null,
"description": "Required for employees, optional for contractors"
},
"employment_lifecycle_stage": {
"$ref": "#/components/schemas/EmploymentLifecycleStage"
}
},
"x-validate": null,
"description": "Complete information of an employment"
}
EmploymentContract
{
"type": "object",
"title": "EmploymentContract",
"example": {
"status": "active",
"country": {
"code": "CAN",
"name": "Canada"
},
"job_title": "Engineer",
"contract_id": "20a72f86-contract-id-9e4942a902ff",
"activated_at": "2021-07-15T18:18:17Z",
"compensation": {
"amount": 33000,
"currency_code": "CAD"
},
"effective_at": "2021-07-15T18:18:17Z",
"contract_details": {},
"amendment_contract_id": "e31adae1-contract-id-af5fba7dd803"
},
"required": [
"contract_id",
"amendment_contract_id",
"country",
"contract_details",
"compensation",
"job_title",
"status",
"activated_at",
"effective_at"
],
"x-struct": null,
"properties": {
"status": {
"$ref": "#/components/schemas/EmploymentContractStatus"
},
"country": {
"$ref": "#/components/schemas/Country"
},
"job_title": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"contract_id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"activated_at": {
"$ref": "#/components/schemas/DateTimeIso8601"
},
"compensation": {
"$ref": "#/components/schemas/Compensation"
},
"effective_at": {
"$ref": "#/components/schemas/DateTimeIso8601"
},
"contract_details": {
"type": "object",
"x-struct": null,
"x-validate": null,
"description": "Contract information. Its properties may vary depending on the country."
},
"amendment_contract_id": {
"type": "string",
"nullable": true,
"x-struct": null,
"x-validate": null,
"description": "The id of the employment contract that was amended by this employment contract, if any."
}
},
"x-validate": null
}
EmploymentContractPendingChangesResponse
{
"type": "object",
"title": "EmploymentContractPendingChangesResponse",
"example": {
"data": {
"pending_changes": [
{
"changes": {
"contract.job_title": {
"current": "Senior Engineer",
"previous": "Engineer"
}
},
"contract_id": "0073fcb5-b669-4e4a-b963-2a47744e75a1",
"effective_at": "2021-07-15T18:18:17Z"
}
]
}
},
"required": [
"data"
],
"x-struct": null,
"properties": {
"data": {
"type": "object",
"required": [
"pending_changes"
],
"x-struct": null,
"properties": {
"pending_changes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ContractPendingChanges"
},
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
}
},
"x-validate": null
}
EmploymentContractStatus
{
"enum": [
"active",
"inactive",
"pending"
],
"type": "string",
"title": "EmploymentContractStatus",
"example": "active",
"x-struct": null,
"x-validate": null,
"description": "The status of the employment contract."
}
EmploymentCreationResponse
{
"type": "object",
"title": "EmploymentCreationResponse",
"x-struct": null,
"properties": {
"data": {
"type": "object",
"x-struct": null,
"properties": {
"employment": {
"$ref": "#/components/schemas/EmploymentBasicResponse"
}
},
"x-validate": null
}
},
"x-validate": null
}
EmploymentCustomField
{
"type": "object",
"title": "EmploymentCustomField",
"example": {
"id": "01c0e4d2-f41b-11ed-9d3f-cb3ecccebb58X",
"name": "Internal ID",
"type": "string"
},
"required": [
"custom_field_id",
"name",
"type",
"required",
"visibility_scope",
"data_entry_access",
"metadata"
],
"x-struct": null,
"properties": {
"id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"name": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"type": {
"enum": [
"string",
"text",
"integer",
"date",
"boolean",
"percentage",
"decimal",
"link",
"currency",
"single_select"
],
"type": "string",
"x-struct": null,
"x-validate": null
},
"metadata": {
"type": "object",
"nullable": true,
"x-struct": null,
"x-validate": null
},
"required": {
"type": "boolean",
"x-struct": null,
"x-validate": null
},
"visibility_scope": {
"enum": [
"company_admin_only",
"everyone"
],
"type": "string",
"x-struct": null,
"x-validate": null
},
"data_entry_access": {
"enum": [
"company_admin_only",
"employee_only",
"everyone"
],
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "EmploymentCustomField"
}
EmploymentCustomFieldValue
{
"type": "object",
"title": "EmploymentCustomFieldValue",
"example": {
"value": "UXH34HG",
"custom_field_id": "01c0e4d2-f41b-11ed-9d3f-cb3ecccebb58"
},
"required": [
"custom_field_id",
"value"
],
"x-struct": null,
"properties": {
"value": {
"anyOf": [
{
"type": "string",
"x-struct": null,
"x-validate": null
},
{
"type": "integer",
"x-struct": null,
"x-validate": null
},
{
"type": "boolean",
"x-struct": null,
"x-validate": null
},
{
"type": "number",
"format": "decimal",
"x-struct": null,
"x-validate": null,
"description": "Decimal value represented as a String"
},
{
"$ref": "#/components/schemas/EmploymentCustomFieldValueJsonValue"
}
],
"nullable": true,
"x-struct": null,
"x-validate": null
},
"custom_field_id": {
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "EmploymentCustomFieldValue"
}
EmploymentCustomFieldValueJsonValue
{
"type": "object",
"title": "EmploymentCustomFieldValueJsonValue",
"example": {
"selected_value": "01c0e4d2-f41b-11ed-9d3f-cb3ecccebb55"
},
"required": [
"selected_value"
],
"x-struct": null,
"properties": {
"selected_value": {
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "EmploymentCustomFieldValueJsonValue"
}
EmploymentCustomFieldValueResponse
{
"type": "object",
"title": "EmploymentCustomFieldValueResponse",
"example": {
"data": {
"custom_field_value": {
"value": "UXH34HG",
"custom_field_id": "01c0e4d2-f41b-11ed-9d3f-cb3ecccebb58"
}
}
},
"required": [
"data"
],
"x-struct": null,
"properties": {
"data": {
"type": "object",
"required": [
"custom_field_value"
],
"x-struct": null,
"properties": {
"custom_field_value": {
"$ref": "#/components/schemas/EmploymentCustomFieldValue"
}
},
"x-validate": null
}
},
"x-validate": null,
"description": "EmploymentCustomFieldValueResponse"
}
EmploymentFullParams
{
"type": "object",
"oneOf": [
{
"$ref": "#/components/schemas/FullParams-Deprecated"
},
{
"$ref": "#/components/schemas/FullParams"
}
],
"title": "EmploymentFullParams",
"example": {
"manager": "Taylor Johnson",
"full_name": "Jane Smith",
"job_title": "Backend Engineer",
"company_id": "e31adae1-company-id-af5fba7dd803",
"country_code": "AUS",
"department_id": "3bb56f01-3243-412b-bfaa-a5cfaaf2e431",
"personal_email": "jane@smith.com",
"address_details": {},
"contract_details": {},
"personal_details": {},
"basic_information": {
"name": "Jane Smith",
"email": "jane@smith.com",
"job_title": "Backend Engineer",
"has_seniority_date": "no",
"provisional_start_date": "2021-07-03"
},
"bank_account_details": {},
"pricing_plan_details": {
"frequency": "annually"
},
"administrative_details": {},
"provisional_start_date": "2021-07-03",
"billing_address_details": {},
"emergency_contact_details": {}
},
"required": [
"full_name",
"personal_email",
"job_title",
"country_code"
],
"x-struct": null,
"properties": {
"manager": {
"type": "string",
"example": "Taylor Johnson"
},
"full_name": {
"type": "string",
"example": "Jane Smith"
},
"job_title": {
"type": "string",
"example": "Backend Engineer"
},
"company_id": {
"type": "string",
"example": "e31adae1-company-id-af5fba7dd803"
},
"country_code": {
"type": "string",
"example": "AUS"
},
"department_id": {
"type": "string",
"example": "3bb56f01-3243-412b-bfaa-a5cfaaf2e431"
},
"personal_email": {
"type": "string",
"example": "jane@smith.com"
},
"address_details": {
"type": "object",
"properties": {}
},
"contract_details": {
"type": "object",
"properties": {}
},
"personal_details": {
"type": "object",
"properties": {}
},
"basic_information": {
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Jane Smith"
},
"email": {
"type": "string",
"example": "jane@smith.com"
},
"job_title": {
"type": "string",
"example": "Backend Engineer"
},
"has_seniority_date": {
"type": "string",
"example": "no"
},
"provisional_start_date": {
"type": "string",
"example": "2021-07-03"
}
}
},
"bank_account_details": {
"type": "object",
"properties": {}
},
"pricing_plan_details": {
"type": "object",
"properties": {
"frequency": {
"type": "string",
"example": "annually"
}
}
},
"administrative_details": {
"type": "object",
"properties": {}
},
"provisional_start_date": {
"type": "string",
"example": "2021-07-03"
},
"billing_address_details": {
"type": "object",
"properties": {}
},
"emergency_contact_details": {
"type": "object",
"properties": {}
}
},
"x-validate": null,
"description": "Description of the basic required and onboarding tasks params to create an employment.\nYou do not need to include all onboarding tasks when creating or updating an employment.\n"
}
EmploymentLifecycleStage
{
"enum": [
"employment_creation",
"employee_self_enrollment",
"right_to_work_check",
"contract_signing",
"remote_enrollment",
"onboarded",
"offboarded"
],
"type": "string",
"title": "EmploymentLifecycleStage",
"example": "employee_self_enrollment",
"x-struct": null,
"x-validate": null,
"description": "The stage of employment lifecycle. When it's `onboarded` means the employee is ready to commence or has already commenced."
}
EmploymentResponse
{
"type": "object",
"title": "EmploymentResponse",
"example": {
"data": {
"employment": {
"id": "20a72f86-employment-id-9e4942a902ff",
"type": "employee",
"files": [],
"status": "created",
"country": {
"code": "AUT",
"name": "Austria"
},
"full_name": "Jane Smith",
"job_title": "Engineer",
"company_id": "e31adae1-company-id-af5fba7dd803",
"created_at": "2021-11-11T18:44:39",
"updated_at": "2021-11-11T18:44:39",
"work_email": "jane.smith@company.com",
"user_status": "active",
"personal_email": "jane@smith.com",
"address_details": {},
"contract_details": {},
"onboarding_tasks": {
"address_details": {
"status": "completed",
"description": "Primary residence."
},
"contract_details": {
"status": "completed",
"description": "Employee-specific details for their employment agreement."
},
"personal_details": {
"status": "completed",
"description": "Personal details, such as name and date of birth."
},
"bank_account_details": {
"status": "completed",
"description": "Bank account used for receiving salary payments."
},
"pricing_plan_details": {
"status": "completed",
"description": "How often Remote will bill employers for management fees."
},
"administrative_details": {
"status": "completed",
"description": "Information we need for tax purposes."
},
"billing_address_details": {
"status": "completed",
"description": "Address associated with the employee's bank account."
},
"emergency_contact_details": {
"status": "completed",
"description": "Who should be called in an emergency."
},
"employment_document_details": {
"status": "pending",
"description": "We need some additional documents."
}
},
"personal_details": {},
"basic_information": {},
"bank_account_details": [],
"pricing_plan_details": {
"frequency": "annually"
},
"administrative_details": {},
"provisional_start_date": "2021-07-03",
"billing_address_details": {},
"emergency_contact_details": {}
}
}
},
"required": [
"data"
],
"x-struct": null,
"properties": {
"data": {
"x-struct": null,
"properties": {
"employment": {
"$ref": "#/components/schemas/Employment"
}
},
"x-validate": null
}
},
"x-validate": null,
"description": "Complete information of an employment"
}
EmploymentSeniorityDate
{
"type": "string",
"title": "EmploymentSeniorityDate",
"format": "date-time",
"example": "2022-03-21",
"x-struct": null,
"x-validate": null,
"description": "The date the employee first started working for your company. If you don’t include a seniority date,\nthe employee’s start date with Remote will be deemed as the start of the employee’s seniority.\n\n**Example**: Your employee started working for your company on Feb 1, 2022.\nOn Aug 1, 2022, you transferred the employee to Remote and started managing them on the platform.\nFeb 1, 2022 would be their seniority date. Aug 1, 2022 would be their starting date.\n"
}
EmploymentStatus
{
"enum": [
"active",
"created",
"created_awaiting_reserve",
"created_reserve_paid",
"initiated",
"invited",
"pending",
"review",
"archived",
"deleted"
],
"type": "string",
"title": "EmploymentStatus",
"example": "active",
"x-struct": null,
"x-validate": null,
"description": "The status of employment"
}
EmploymentTermType
{
"enum": [
"fixed",
"indefinite"
],
"type": "string",
"title": "EmploymentTermType",
"example": "fixed",
"x-struct": null,
"x-validate": null
}
EmploymentUpdateParams
{
"type": "object",
"title": "EmploymentUpdateParams",
"example": {
"status": "active"
},
"x-struct": null,
"properties": {
"status": {
"$ref": "#/components/schemas/EmploymentStatus"
}
},
"x-validate": null,
"description": "Required params to update an employment in the Sandbox environment.\n\nCurrently only supports setting the Employment Status to `active`.\n"
}
Expense
{
"type": "object",
"title": "Expense",
"example": {
"title": "New desk",
"amount": 1000,
"currency": {
"code": "CZK",
"name": "Czech Koruna",
"symbol": "Kč"
},
"receipts": [
{
"id": "9880b711-file-id-ecf8f551bd78X",
"name": "id.pdf",
"type": "id",
"sub_type": "personal_id",
"inserted_at": "2021-11-12T17:19:21"
}
],
"tax_amount": 500,
"expense_date": "2021-09-03",
"employment_id": "ba9ead59-e471-4043-a7ea-07dbb105e72c",
"converted_amount": 1000,
"converted_currency": {
"code": "CZK",
"name": "Czech Koruna",
"symbol": "Kč"
},
"converted_tax_amount": 500
},
"required": [
"id",
"title",
"employment_id",
"amount",
"converted_amount",
"currency",
"converted_currency",
"expense_date",
"tax_amount",
"converted_tax_amount"
],
"x-struct": null,
"properties": {
"id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"notes": {
"type": "string",
"nullable": true,
"x-struct": null,
"x-validate": null
},
"title": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"amount": {
"type": "integer",
"x-struct": null,
"x-validate": null
},
"reason": {
"type": "string",
"nullable": true,
"x-struct": null,
"x-validate": null
},
"status": {
"enum": [
"canceled",
"pending",
"declined",
"approved",
"processing",
"reimbursed"
],
"type": "string",
"x-struct": null,
"x-validate": null,
"description": "Expense status"
},
"category": {
"enum": [
"education_training",
"home_office",
"meals",
"other",
"phone_utilities",
"tech_equipment",
"travel",
"coworking"
],
"type": "string",
"nullable": false,
"x-struct": null,
"x-validate": null,
"description": "Categories allowed for an expense"
},
"currency": {
"$ref": "#/components/schemas/CurrencyDefinition"
},
"receipts": {
"type": "array",
"items": {
"$ref": "#/components/schemas/File"
},
"maxItems": 5,
"nullable": false,
"x-struct": null,
"x-validate": null
},
"reviewer": {
"type": "object",
"nullable": true,
"x-struct": null,
"properties": {
"user_id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"user_name": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"user_email": {
"type": "string",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null
},
"tax_amount": {
"type": "integer",
"x-struct": null,
"x-validate": null
},
"reviewed_at": {
"type": "string",
"format": "date",
"nullable": true,
"x-struct": null,
"x-validate": null
},
"expense_date": {
"type": "string",
"format": "date",
"x-struct": null,
"x-validate": null
},
"employment_id": {
"type": "string",
"x-struct": null,
"x-validate": null
},
"invoice_period": {
"type": "string",
"nullable": true,
"x-struct": null,
"x-validate": null
},
"converted_amount": {
"type": "integer",
"x-struct": null,
"x-validate": null
},
"converted_currency": {
"$ref": "#/components/schemas/CurrencyDefinition"
},
"converted_tax_amount": {
"type": "integer",
"x-struct": null,
"x-validate": null
}
},
"x-validate": null,
"description": "Expense"
}