Companies
Edit a company
Update editable fields on an owned company.
POST
Updates profile, contact, share, shareholder, and social details for a claimed company. The request is
multipart/form-data so shareholder ID documents can be attached in the same call. Most fields are sent as flat form fields; shareHolderDetails, registrarInfo, and socials are JSON-encoded.
Path
The company must be owned by the caller.
Form fields
All fields are optional. Send each as a separatemultipart/form-data part.
When
true, the response echoes the updated shareHolderDetails array instead of the trimmed company object.JSON-encoded. Keys:
website, facebook, instagram, linkedin, twitter, tiktok (each a URL). A reachable website flips website_verified to true.JSON-encoded. Keys:
surname, firstname, email, nationality, date_of_birth.JSON-encoded array. Each shareholder may include
name, email, address, dateOfBirth, nationality, idType, roleInCompany, percentageOfOwner, noOfShares, identificationNumber, phoneNumber, identificationDocumentUrl. Supplying this array sets shareHolderVerified to true.Up to 10 PDFs, ≤ 50 MB each. Files are matched to shareholders by position — the first file applies to the first entry in
shareHolderDetails, the second to the second, and so on. Each uploaded document is verified against the shareholder’s name, identificationNumber, and idType before it is stored; a shareholder with no matching file keeps its existing document. Extra files beyond the shareholder count are ignored.If no owned company matches
companyId, the endpoint returns 404 with { "message": "Company not found" }. Invalid shareholder JSON returns 400 with { "message": "Invalid JSON data provided" }.