Update a client
Updates a Client's name, portal access, branding, language, timezone, or slug.
Parameters
| Field | Type | Description |
|---|---|---|
clientID required | uuid | path parameter |
Body
All other fields11 fields
Lets the client's own staff sign in to the client portal. The update replaces all fields: an omitted value turns it off.
The language of mails and documents for this client; null or empty inherits the company default. The update replaces all fields: an omitted language resets it to inherit.
Logo images. Omitted keeps the stored logo.
Nested fields 4 fields
| Field | Type | Description |
|---|---|---|
background optional | string one oflightdarktransparent | The background the logo is made for. |
dark optional | string | Same as standard, for dark backgrounds. Needs a standard logo. |
icon optional | string | Same as standard, for compact places. Needs a standard logo. |
standard optional | string | Request: a PNG as data:image/png;base64,... of at most 192 KiB, or the value the client already has to keep that image; empty removes it. Response: the path of the stored image. |
A hosted logo, http:// or https://. Saving a standard logo clears it.
Lowercase letters, digits and hyphens; derived from the name when empty.
IANA timezone name; empty resets it to UTC.
Returns
A successful request returns 200 with application/json.
Response fields 1 top-level fields
| Field | Type | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
data | Client | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Client · 20 fields
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Errors
Only the errors this operation can return. Every error uses the same envelope.
| Status | Code | Meaning |
|---|---|---|
| 400 | bad_request | The request is malformed or fails validation. |
| 400 | file_empty | The uploaded logo file is empty. When: Uploading a logo or image with no content. Fix: Upload a file that has content. Stable codes next to the English message when a logo is refused: file_empty, file_type_unsupported (error.details.formats lists the accepted ones), image_invalid (damaged or unreadable), image_dimensions_too_large (error.details.max_pixels), svg_unsafe. |
| 413 | file_too_large | The logo file exceeds its size limit; error.details.max_bytes gives the limit. When: Uploading a logo or image larger than details.max_bytes. Fix: Reduce the file size and upload again. file_too_large: the file is over its limit (error.details.max_bytes). A proxy in front of the API may answer 413 with a plain HTML body and no code. |
| 400 | file_type_unsupported | The uploaded logo file type is unsupported; error.details.formats lists accepted formats. When: Uploading a file whose type is not one of the formats the operation accepts; details.formats lists them. Fix: Upload a file in one of details.formats. |
| 400 | image_dimensions_too_large | The logo image exceeds the allowed dimensions; error.details.max_pixels gives the limit. When: Uploading an image with more pixels than details.max_pixels. Fix: Scale the image down and upload it again. |
| 400 | image_invalid | The uploaded logo image is damaged or unreadable. When: Uploading a file with an image type that cannot be decoded. Fix: Export the image again and upload the new file. |
| 400 | logo_fetch_failed | The logo could not be fetched from the address given. When: Importing a client logo from a URL that cannot be reached or that does not return an acceptable image. Fix: Check the URL, or upload the logo file instead. |
| 404 | not_found | The requested resource does not exist or is outside the caller's scope. |
| 403 | permission_denied | The credentials do not permit this action. |
| 400 | svg_unsafe | The SVG logo contains unsafe content. When: Uploading an SVG that contains a script, a foreignObject, a javascript: URL, an event-handler attribute or an external href. Fix: Remove those parts from the SVG, or upload a PNG or JPEG. |
| 400 | upload_invalid | The upload could not be read as a multipart form. When: A body that is not a valid multipart form, or whose file cannot be parsed. Fix: Send a well-formed multipart/form-data request. |
| 400 | upload_no_file | The multipart request has no file part. When: An upload request without a file field. Fix: Send the file as multipart/form-data in the field the operation names. |
Every call can also return unauthorized (401), rate_limit_exceeded (429) or internal_error (500 / 502). See Responses and errors.