Skip to main content

Upsert companies

POST 

/api/v2/bulk/companies/upsert

Asynchronous

This request is queued, not processed while you wait. The response carries a correlation id — poll the bulk task until it reports a terminal state. See How asynchronous processing works.

Queued, not immediate. The response carries a correlation id; poll GET /api/v2/bulk/tasks/{correlationId} until the task reports a terminal state; the task carries the status and, on failure, the error. The matched companies, with the BeCause company id each input resolved to, are available in the BeCause app on the API usage tab under Company manager → Import & export → API, or through the companies search. Every company is matched against BeCause on the identifiers you send — BeCause profile id, your own custom identifier, VAT number, domain or coordinates — and created when nothing matches, so send as many identifiers as you hold. Requires the id of the group the companies belong to (from GET /api/v1/groups); every matched or created company is added to that group. claimInvitationEmail, when set, invites that address to claim the company. Submit the standard-holders upsert only after this task reports a terminal state, targeting each company by the same custom identifier you matched it by here, or by the BeCause company id the companies search returns for it.

Request

Responses

Queued. The correlation id means the import has started, not that any company has been created or updated yet.