Skip to content
Connect an agent
Organisations

Save an organisation's brand theme

Saves one to three colors.

PUT/orgs/{org}/brand

TL;DR

QuestionAnswer
What does it do?Save an organisation's brand theme.
What does it take?A JSON body of type BrandBody.
What does it return?Status 200 with a body of type SavedBrand.
What can go wrong?400 the body is not valid; 401 not signed in; 403 the caller's role may not (orgs.forbidden), the owner's plan does not include brand themes (plan.brand_not_included), or the request came from an origin that may not make changes; 404 no such organisation, or the caller is not a member of it; 422 a color is not valid, or there is no primary (brand.invalid, with every issue in details); 429 too many requests; 503 organisations are not set up on this server. Every failure uses the one error envelope.

What it does

Saves one to three colors. The hosted service paints every diagram it draws for the organisation in a palette made from them; status colors and official cloud icons never change. The owner and admins may, on a plan with brand themes. 422 brand.invalid carries every issue of the check.

Path parameters

FieldTypeRequiredDescription
orgstringyesThe organisation's id or its slug.

Request body

The body has the type BrandBody.

FieldTypeRequiredDescription
primarystring | nullnoThe main brand color, as #rrggbb or #rgb in any case. Takes the place of the blue tone. A brand needs one. at most 32 characters.
secondarystring | nullnoTakes the place of the violet tone. Left out or null, it is made from the primary by turning its hue, and follows the primary. at most 32 characters.
accentstring | nullnoTakes the place of the aqua tone. Left out or null, it is made from the primary by turning its hue, and follows the primary. at most 32 characters.

Responses

StatusMeaningBody
200The saved brand and its check.SavedBrand
400The body is not valid.ErrorResponse
401Not signed in.ErrorResponse
403The caller's role may not (orgs.forbidden), the owner's plan does not include brand themes (plan.brand_not_included), or the request came from an origin that may not make changes.ErrorResponse
404No such organisation, or the caller is not a member of it.ErrorResponse
422A color is not valid, or there is no primary (brand.invalid, with every issue in details).ErrorResponse
429Too many requests.ErrorResponse
503Organisations are not set up on this server.ErrorResponse

Response body

A 200 answer has the type SavedBrand.

FieldTypeRequiredDescription
brandanyyes
brand.primarystringyesLowercase #rrggbb.
brand.secondarystringyesLowercase #rrggbb.
brand.accentstringyesLowercase #rrggbb.
chosen("primary" | "secondary" | "accent")[]yes
checkBrandCheckyes
check.issuesBrandIssue[]yes
check.issues[].role"primary" | "secondary" | "accent"yes
check.issues[].severity"error" | "warning" | "note"yesAn error stops a save. A warning and a note are advice.
check.issues[].code"not-a-color" | "missing-primary" | "reads-as-status" | "too-similar" | "adjusted"yes
check.issues[].messagestringyes
check.swatchesobject | nullyesThe color each scheme draws for each role, made darker or lighter where it would not keep 3:1 against the surface.
check.swatches.lightobjectyes
check.swatches.darkobjectyes

See also

DocWhy
API referenceEvery endpoint, and the error envelope
SchemasEvery request and response type
Tool referenceThe operations as callable tools