Skip to content
Docs page

API reference

OpenAPI spec

Download the OpenAPI document at /v1/openapi.json and import it into Postman, Insomnia or a client generator.

The document

GEThttps://brandidentityapi.com/v1/openapi.json

An OpenAPI 3.1 description of every public endpoint: the brand, batch, search and account endpoints, the Brandfetch-compatible aliases under /v2, the logo CDN and the MCP endpoint, with every schema, header and error. It needs no key, and its server URL is this site's own, so imported requests point at the right place.

bash
curl https://brandidentityapi.com/v1/openapi.json -o brand-identity-api-openapi.json

Postman

  1. Choose Import, paste https://brandidentityapi.com/v1/openapi.json and confirm. Postman builds a collection with one request per endpoint.
  2. On the collection's Authorization tab, pick Bearer Token and set the token to a variable such as {{brandIdentityApiKey}}.
  3. Put your secret key in that variable in an environment, never in the shared collection.

Insomnia

  1. Choose Import, then From URL, and paste https://brandidentityapi.com/v1/openapi.json.
  2. Set a bearer token on the imported collection, using an environment variable for the key.

TypeScript types

openapi-typescript turns the document into types for every request and response:

bash
npx openapi-typescript https://brandidentityapi.com/v1/openapi.json -o src/brand-identity-api.d.ts
typescript
import createClient from "openapi-fetch";
import type { paths } from "./brand-identity-api";

const brandApi = createClient<paths>({
  baseUrl: "https://brandidentityapi.com",
  headers: { Authorization: `Bearer ${process.env.BRAND_IDENTITY_API_KEY}` },
});

const { data, error } = await brandApi.GET("/v1/brands/{identifier}", {
  params: { path: { identifier: "stripe.com" } },
});
if (error) throw new Error(error.error.message);
console.log(data.name, data.colors[0]?.hex);

Client generators

Any OpenAPI 3.1 generator works, for example openapi-generator-cli for Python, Go or Java. The API is small enough that many teams skip a generated client and call it with their HTTP library; the getting started page has examples.