Companies
Restore a company
Restore an archived company to the default list. Restoring an active company changes nothing. Contacts its archive archived come back too, unless one was restored and archived again since, or another
POST /v2/companies/{companyId}/restore
Parameters
Path parameters
companyId
string (uuid) required
Header parameters
Idempotency-Key
string
Optional. Accepted to dedupe retries on this endpoint. See
apps/rest-api/src/shared/idempotency.ts.Responses
200 — Successful response
Content-Type: application/json
data
object required
data.company
object required
data.company.id
string (uuid) required
data.company.user_id
string required
data.company.workspace_id
string (uuid) | null required
data.company.assignee_id
string | null required
data.company.name
string required
data.company.description
string | null required
data.company.linkedin_description
string | null required
data.company.logo_url
string | null required
data.company.website_url
string | null required
data.company.linkedin_slug
string | null required
data.company.facebook_slug
string | null required
data.company.x_slug
string | null required
data.company.instagram_slug
string | null required
data.company.headquarters_location
string | null required
data.company.country_code
string | null required
data.company.email
string | null required
data.company.phone_number
string | null required
data.company.arr_estimate
integer | null required
data.company.number_of_employees
integer | null required
data.company.linkedin_data
object | null required
data.company.linkedin_data.industry
string
data.company.linkedin_data.company_type
string
data.company.linkedin_data.size_range
string
data.company.linkedin_data.specialities
array<string>
data.company.ignore_merge
boolean required
data.company.archived_at
string (date-time) required
data.company.created_at
string (date-time) required
data.company.updated_at
string (date-time) required
data.company.companies_custom_fields
array<object> required
data.company.companies_custom_fields[].custom_field_id
string (uuid) required
data.company.companies_custom_fields[].text_value
string | null required
data.company.companies_custom_fields[].array_value
array<string> required
data.company.companies_custom_fields[].date_value
string (date-time) required
data.company.companies_custom_fields[].member_user_id
string | null required
data.company.companies_custom_fields[].number_value
number | null required
data.company.companies_custom_fields[].boolean_value
boolean | null required
data.company.companies_custom_fields_contacts
array<object> required
data.company.companies_custom_fields_contacts[].custom_field_id
string (uuid) required
data.company.companies_custom_fields_contacts[].linked_contact_id
string (uuid) required
data.company.companies_custom_fields_companies
array<object> required
data.company.companies_custom_fields_companies[].custom_field_id
string (uuid) required
data.company.companies_custom_fields_companies[].linked_company_id
string (uuid) required
data.company.tag_ids
array<string (uuid)> required
Example
{
"data": {
"company": {
"id": "00000000-0000-0000-0000-000000000000",
"user_id": "string",
"workspace_id": "00000000-0000-0000-0000-000000000000",
"assignee_id": "string",
"name": "string",
"description": "string",
"linkedin_description": "string",
"logo_url": "string",
"website_url": "string",
"linkedin_slug": "string",
"facebook_slug": "string",
"x_slug": "string",
"instagram_slug": "string",
"headquarters_location": "string",
"country_code": "string",
"email": "string",
"phone_number": "string",
"arr_estimate": 0,
"number_of_employees": 0,
"linkedin_data": {
"industry": "string",
"company_type": "string"
},
"ignore_merge": false,
"archived_at": "2026-10-23T10:31:51.482Z",
"created_at": "2026-10-23T10:31:51.482Z",
"updated_at": "2026-10-23T10:31:51.482Z",
"companies_custom_fields": [
{
"custom_field_id": "00000000-0000-0000-0000-000000000000",
"text_value": "string",
"array_value": [
"string"
],
"date_value": "2026-10-23T10:31:51.482Z",
"member_user_id": "string",
"number_value": 0,
"boolean_value": false
}
],
"companies_custom_fields_contacts": [
{
"custom_field_id": "00000000-0000-0000-0000-000000000000",
"linked_contact_id": "00000000-0000-0000-0000-000000000000"
}
],
"companies_custom_fields_companies": [
{
"custom_field_id": "00000000-0000-0000-0000-000000000000",
"linked_company_id": "00000000-0000-0000-0000-000000000000"
}
],
"tag_ids": [
"00000000-0000-0000-0000-000000000000"
]
}
}
}
400 — Request body failed validation.
Content-Type: application/json
(body)
any
401 — Missing or invalid API key.
Content-Type: application/json
(body)
any
403 — Valid key, insufficient permission.
Content-Type: application/json
(body)
any
404 — Resource does not exist.
Content-Type: application/json
(body)
any
409 — Request conflicts with the current state of the resource.
Content-Type: application/json
(body)
any
429 — Rate limit exceeded.
Content-Type: application/json
(body)
any
500 — Unexpected server error.
Content-Type: application/json
(body)
any
Code samples
curl https://api.prod.getdex.com/v2/companies/00000000-0000-0000-0000-000000000000/restore \
--request POST \
--header 'Authorization: Bearer YOUR_API_KEY'
fetch('https://api.prod.getdex.com/v2/companies/00000000-0000-0000-0000-000000000000/restore', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY'
}
})
requests.post(
"https://api.prod.getdex.com/v2/companies/00000000-0000-0000-0000-000000000000/restore",
headers={
"Authorization": "Bearer YOUR_API_KEY"
}
)
Archive a company
Archive a company: it leaves the default list and stays readable by ID. Archiving an archived company changes nothing. The optional body `{ archive_contacts: true }` also archives every active contact
Archive companies in bulk
Archive up to 100 companies (`company_ids`). IDs outside the workspace and companies already archived are skipped. `archive_contacts: true` also archives every active contact with any role at those co

