---
title: "Score a run against a brand"
method: POST
path: "/runs/{runId}/brand-score"
tags: ["Runs"]
---

# Score a run against a brand

`POST /runs/{runId}/brand-score`

## Request

- Base URL: `https://app.uselamina.ai/v1`
- URL: `https://app.uselamina.ai/v1/runs/{runId}/brand-score`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

On-demand brand-fit score for a completed run's image output, with the specific deviations. Unlike GET /runs/{runId}/brand-compliance (which reads the score Brand Guard stored during the run, only when it was enabled), this scores any completed run on request — the check to run in a generate → score → refine loop. Defaults to the run's app brand; pass brandProfileId to score against a different one.

## Path parameters

- `runId` string, uuid, required

## Request body

- object
  - `brandProfileId` string: Brand to score against. Defaults to the run's workflow brand.

## Response `200`

Brand-fit score

- object
  - `data` object, required
    - `runId` string, required
    - `brandProfileId` string, required
    - `brandFit` number, nullable, required: Weighted 0–100 brand-fit score.
    - `dimensions` object: Per-dimension breakdown (e.g. color_match, tone_match).
    - `deviations` string[], required
    - `suggestions` string
    - `checkedAt` string

## Other responses

- `401`: Missing or invalid API key
- `500`: Internal server error

---

[API](https://skmtc.dev/uselamina/apis/lamina-v1-api.md) · [All operations](https://skmtc.dev/uselamina/apis/lamina-v1-api/llms.txt) · [OpenAPI document](https://skmtc.dev/uselamina/apis/lamina-v1-api/revisions/73b598526531?raw)
