Choose the change
An exact profile request preserves the requested structured values, but the Agent may also update related Markdown. For example, a palette change can update the visual guidance that describes how those colors are used.
Either type can include supporting evidence: a website, Instagram account, files, or images already in the Brand Library. Stage local files before submitting them. For a primary logo, first save the image to the Brand Library and reference its image ID. For a custom font, create a Brand font asset and reference its font asset ID and family. Typography roles can be removed with
null.
Prepare a candidate
- API
- MCP
Read the active Brand Skill and use its Set Creation returns
skillId as baseSkillId. Then call Create a Brand Edit:EDIT_REQUEST_KEY to a unique value for this operation. Reuse it with the same body when retrying the request; use a new key for a different operation.For an exact profile edit, replace change with a profile request, such as:202 Accepted with the edit resource in data. Keep its id and poll Get a Brand edit while its status is preparing.Handle a request for input
Preparation may pause atinput_required. The returned interaction describes a clarification or a choice, including the input it accepts. Answering continues preparation; it does not apply the edit.
API clients submit a typed response to Continue a Brand Edit, using the current interaction ID and an Idempotency-Key. Then resume polling the edit. Use the returned option IDs for a selection, or provide an answer in the accepted format. A client can also decline the interaction.
MCP clients that support native input can handle the exchange within the request. Other clients use bloom_continue_brand_edit with the returned edit and interaction IDs.
Inspect and apply
When status reachesawaiting_approval, the candidate is ready. The response includes:
- a summary and the proposed profile;
- structured profile changes;
- Markdown diff hunks, with a
truncatedflag for each file; and - asset changes.
bloom_get_brand_edit_file returns the base and candidate snapshots in pages. Follow the returned cursor to read the remaining content.
Call Apply a Brand Edit or bloom_apply_brand_edit to activate the candidate. Call Discard a Brand Edit or bloom_discard_brand_edit to end the edit without changing the active Brand.
If the active Brand changes after the edit was based on it, the candidate cannot overwrite that newer version. Read the current Skill and prepare a new edit from it.
Refine a candidate
To revise a candidate awaiting approval, create another edit withreplacesEditId in the API or replaces_edit_id in MCP. Describe the refinement in the new request.
The existing candidate stays available while its replacement is being prepared or waiting for input. Only when the replacement reaches awaiting_approval does Bloom discard the old candidate and make the new one available for Apply. A failed refinement does not lose the previous candidate.
Follow the result
See the API reference for exact schemas and errors, or live MCP
tools/list for tool contracts. After Apply, retrieve the active Brand Skill to use the updated context outside Bloom.