Partially update a company addressed by your own externalReferenceId.
Only provided fields are modified.
- If a field is set to
null→ its value is reset (namecannot be reset). - If a field is not provided → partial update, the field is ignored.
address is replaced as a whole: send every line you want to keep; null or {} clears it. Unknown fields are ignored. The response is the mutation envelope, not the company: meta.updatedFields lists the fields the body carried. Read the company back with GET /companies/{id} when you need it.
businessIdentifier and externalReferenceId stay unique within your school: taking one held by another company answers 409 COMPANY_BUSINESS_IDENTIFIER_ALREADY_EXISTS or 409 COMPANY_ALREADY_EXISTS, and nothing is modified.
An unknown external reference ID answers 404 COMPANY_NOT_FOUND.
Several learners and external contacts can be attached to one company, and a change to the company applies to all of them.
Attach a learner with companyId on PATCH /students/{id} (or its by-reference-id twin): it is the "Company" field of the learner record in the School app. That call also copies the company display name into the learner's historical company text; updating the company later does not rewrite that text.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||

