The Brand Object

Rainbrand Brand Skill

What a read of a whole Brand Skill from Rainbrand returns for Linear: a grouped palette, type roles, a logo catalog, guidance files and a version ID.

Request
GET https://www.rainbrand.com/api/v1/brands/{id}/skill
Context
Maintained: prepared from sources added for the brand
Auth
Send the API key in the x-api-key header. source, read 11 November 2026
Version
skillId is the canonical identity of this immutable Brand Skill, meant for caching and versioning. source, read 11 November 2026
Plans
As of 11 November 2026, new Rainbrand accounts get a one-time free grant that includes one brand, and the cheapest paid plan, Plus, is $20 a month billed monthly. API and MCP access are included in every plan. source, read 11 November 2026
Over MCP
The MCP tool get_brand reads a brand's status, profile, guidance and files. source, read 11 November 2026
Sample
linear.app, requested 11 November 2026

A Brand Skill is the complete, versioned representation of a brand's context for agents. It has the profile of the brand, its guidance, and references to its files. A Brief is the part chosen for one task. The Brand Skill is the whole brand as of one version. A Brand Skill, like a Brief, exists only for brands that someone added to Rainbrand.

The request

curl https://www.rainbrand.com/api/v1/brands/<brand ID>/skill \
  -H "x-api-key: $RAINBRAND_API_KEY"

Inspect a Brand Skill returns the active version as a snapshot. Get a brand (GET /brands/{id}) returns the current profile and version. An export endpoint prepares the same Skill as a ZIP file. We read the Linear brand over the Rainbrand Model Context Protocol (MCP) server instead. We used get_brand for the profile and the file list, view_files for the guidance files, and list_brand_versions for its versions.

The response

get_brand over MCPRainbrand Brand Skill
{
"status": "ready",
"version_id": "e16b6239-d74f-4922-97c1-d65c6ae3d882",1Over REST, this is skillId.
"profile": {
"name": "Linear",
"palette": [
{ "hex": "#F4F5F8", "name": "Mercury White", "group": "Official brand colors" },211 colors, grouped as official or captured.
{ "hex": "#7170FF", "group": "Website accent", "usage": "Captured …" },
…
],
"typography": { "roles": [{ "name": "Heading", "weight": 510, … }, …] },3Inter Variable: Heading 510, Body 400.
"logo_catalog": {
"items": [{ "form": "lockup", "contrasts_best_on": ["light"] }, …]4Each logo with the backgrounds that it suits.
}
},
"files": ["SKILL.md", "references/copywriting.md", …]523 files: guidance, fonts, images.
}

In our response, each type role listed the same font file nine times. /data.json keeps one, under responses.rainbrand-brand-skill, with shortened signed file links. Over REST, the profile keys are camelCase (colors, logoCatalog), and each guidance file comes with its full text.

The guidance came as eight Markdown files: colors, copywriting, positioning, logo, typography, interface design, editorial imagery and product imagery. The "Official brand colors" group and the logo rules match the Linear brand page at linear.app/brand. These are two lines from the files:

Write "Linear" as one word with a capital L. It is the name of both the company and application, so never write "Linear app" or lowercase "linear."

Linear's official brand guidance names Mercury White and Nordic Gray as its preferred light and dark accents for monochrome wordmark use.

What is not in it?

  • Competitors and prices are not in it. The positioning file says how to describe Linear. It names one feature, Loops, because we added the announcement of Loops as a source.
  • Content that nobody added is not in it. The two versions from 15 October 2026 did not mention Loops, although Linear announced it in July. On 11 November, we added the announcement, and that made the version shown here. Over MCP, get_brand takes an optional version_id. We found no published way to read an earlier version over REST.
  • Values for spacing and components are not in it. references/interface-design.md describes the interface in words.

Empty and failed responses

Status Code What it means
404 BRAND_NOT_FOUND The brand does not exist
409 BRAND_SKILL_UNAVAILABLE The brand has no Skill to inspect yet
429 TOO_MANY_REQUESTS Rate limit. Wait for Retry-After
500 INTERNAL_ERROR Rainbrand failed to inspect the brand

While Rainbrand prepares a brand, Get a brand reports analyzing, then ready, logo_required or failed.

Plans

The Brand Skill has the same plans as the Brief. As of 11 November 2026, new accounts get a one-time free grant that includes one brand. Paid plans start with Plus at $20 a month, on Rainbrand's pricing page. Each API key has a default limit of 120 requests. REST and MCP share the limit, and it resets 60 seconds after the last request. Over MCP, get_brand reads the brand at mcp.rainbrand.com/mcp.

Last updated 12 November 2026