/v1/brands/{brand_id}/facts Update brand facts
Edit the brand's facts in place. Useful for hand-tuning facts after the asynchronous research has produced them.
PATCH semantics:
- Fields you send are merged into the persisted blob.
- Sending
nullclears a field. key_factsis replaced as a whole (not merged item-by-item).
Path parameters
Brand UUID.
Header parameters
Request body
application/json required- company_sizestring (nullable)nullable
- descriptionstring (nullable)nullable
Long-form brand description. Pass
nullto clear, omit to leave unchanged. - founded_yearinteger (nullable)nullable
Year founded (1800-2100).
- headquartersstring (nullable)nullable
- industrystring (nullable)nullable
- key_factsarray of string (nullable)nullable
Replacement list of bullet-style facts (max 20 items, 500 chars each). Pass
nullto clear, omit to leave unchanged. - key_peoplearray of BrandFactsPerson (nullable)nullable
Replacement list of key people (max 10). Pass
nullto clear, omit to leave unchanged. - mission_statementstring (nullable)nullable
- productsarray of BrandFactsProduct (nullable)nullable
Replacement list of products (max 10). Pass
nullto clear, omit to leave unchanged. - servicesarray of BrandFactsProduct (nullable)nullable
Replacement list of services (max 10). Pass
nullto clear, omit to leave unchanged. - taglinestring (nullable)nullable
- value_propositionstring (nullable)nullable
Responses
Owning brand id (UUID).
- company_sizestring (nullable)nullable
Free-form size bucket (e.g.
11-50). - descriptionstring (nullable)nullable
Long-form brand description. Null when no research has produced one.
- founded_yearinteger (nullable)nullable
Year the brand was founded.
- headquartersstring (nullable)nullable
City / region of the brand's headquarters.
- industrystring (nullable)nullable
Free-form industry label (e.g.
Specialty coffee). - key_factsarray of string
Short bullet-style facts surfaced by the latest research run.
- key_peoplearray of BrandFactsPerson
Notable people at the brand (founders, executives, etc.).
- mission_statementstring (nullable)nullable
Brand mission statement when published.
- objectstring
Always
brand_facts. - productsarray of BrandFactsProduct
Products offered by the brand.
- research_statusenum (nullable)nullable
Outcome of the last regeneration (
complete,partial,not_found). Null when never run. - servicesarray of BrandFactsProduct
Services offered by the brand.
- taglinestring (nullable)nullable
Short marketing tagline if known.
- updated_atstring (nullable)nullable
ISO-8601 timestamp of the last facts update.
- value_propositionstring (nullable)nullable
Concise statement of the brand's primary value proposition.
Example response
{
"brand_id": "3f9c7e8a-1b6a-4d8e-92cf-7d9c8b1e2a04",
"company_size": "11-50",
"description": "Specialty coffee roaster founded in 2014, sourcing single-origin beans and serving wholesale cafes across the US.",
"founded_year": 2014,
"headquarters": "Brooklyn, NY",
"industry": "Specialty coffee",
"key_facts": [
"Direct-trade sourcing from 12 farms across Latin America",
"Roasts in 25 lb micro-batches"
],
"key_people": [
{
"name": "Avery Chen",
"role": "Founder & Head Roaster"
}
],
"object": "brand_facts",
"products": [
{
"description": "Seasonal lots from a rotating roster.",
"name": "Single-origin espresso"
}
],
"research_status": "complete",
"services": [
{
"description": "Weekly roasts shipped to cafes.",
"name": "Wholesale roasting"
}
],
"tagline": "Roasted with intent.",
"updated_at": "2024-09-01T11:08:42.117Z",
"value_proposition": "Direct-trade beans roasted weekly to order for cafes that care about provenance."
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "validation_error",
"message": "Request validation failed"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "unauthorized",
"message": "Missing or invalid credentials"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "forbidden",
"message": "You do not have permission to access this resource"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "not_found",
"message": "Resource not found"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "conflict",
"message": "Resource conflict"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "body_validation_error",
"message": "Request body did not match the expected schema"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "rate_limit_exceeded",
"message": "Per-minute rate limit exceeded"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "internal_error",
"message": "An unexpected error occurred"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "service_unavailable",
"message": "Service temporarily unavailable, please retry"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}