
Choose your sources
Choose sources that explain the brand, such as a website, brand guide, written requirements, logos, images, and more. You can start with one source or combine several; files can be the entire starting point. File URLs must use HTTPS and remain publicly reachable while the request runs. For local files, follow Upload local files, then use the returned upload ID. Use the same workspace for upload and creation. Rainbrand determines the brand name from the sources. Creation defaults to your personal workspace; passworkspaceId in the API or workspace_id in MCP to select a team workspace.
Explain what matters
Use optionalinstructions to identify a file’s role, prioritize sources, or request guidance the Brand Skill should cover. For example, identify the approved brand guide and ask for guidance on product imagery. Inspect the result to confirm it meets your needs.
Start creation
- API
- MCP
Send the ordered source set to
POST /brands:id in the API or brand_session_id in MCP. Use it for status checks and later work. The REST reference and live MCP schema define the exact source formats, limits, and responses.
Retry creation
Use an optionalIdempotency-Key header in the API or idempotency_key in MCP to retry safely.
Repeat an uncertain request with the same idempotency key. If you change the sources or begin a new attempt, use a new key.
If you already have the Brand ID, check its progress instead of submitting creation again. See the REST reference or live MCP schema for exact retry behavior.
Handle an existing brand
If Rainbrand finds a matching brand in the selected workspace, choose whether to use it or create another. No new brand is created until you resolve that choice. Only after the user explicitly chooses another, retry withallowDuplicate: true in the API or allow_duplicate: true in MCP. Keep the original sources, instructions, and workspace.
Wait until the brand is ready
- API
- MCP
Retrieve the brand with
wait=true:analyzing, repeat the read with the same Brand ID and waiting enabled. A timeout ends the wait; creation continues. Continue with the brand when it is ready, or handle the failure if it is failed.
Supply a specific logo
Include the approved logo as a file source and name its role explicitly:profile.primaryLogo in GET /brands/{id}. To change it, follow the logo upload flow and prepare a profile edit.