Parse a brand from URL
Submit a URL to extract brand guidelines. Returns a brand ID that can be used to retrieve results.
Page limit: Use max_pages to control how many pages are crawled. Fewer pages means faster results but potentially lower quality analysis.
Stage selection: Use stages to run only specific analysis stages. Any required dependencies are auto-included (e.g. requesting colors will also run things).
Authorization
apiKey API key with bp_prod_ or bp_stag_ prefix
In: header
Request Body
application/json
The URL to parse for brand information
uriMaximum number of pages to crawl. Fewer pages = faster but potentially lower quality analysis. Default: 10.
1 <= value <= 50Analysis stages to run. Dependencies auto-included. Omit for all stages. Valid: things, mission, audiences, tone, logos, colors, typography, images, art-direction, northstart-statement
1 <= itemsAsset cache TTL in seconds. Binary assets (logos, images) are deleted after this period from parse completion. Text analysis persists indefinitely. Allowed: 300 (5m), 900 (15m), 1800 (30m), 3600 (60m). Default: 1800.
300 | 900 | 1800 | 3600Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://api.brandparser.com/v1/api/parse" \ -H "Content-Type: application/json" \ -d '{ "url": "https://example.com" }'{
"data": {
"brand_id": "550e8400-e29b-41d4-a716-446655440000",
"status": "queued",
"source_url": "https://example.com",
"message": "Analysis started. Poll GET /v1/api/brands/:brandId for results."
}
}{
"error": "Not Found",
"message": "Brand not found",
"code": "string"
}{
"error": "Not Found",
"message": "Brand not found",
"code": "string"
}{
"error": "Payment Required",
"message": "API access requires an active API add-on. Visit your billing settings to enable it.",
"code": "API_ADDON_REQUIRED"
}{
"error": "Too Many Requests",
"message": "Workspace has 3 active analyses (limit: 3). Wait for current analyses to complete before submitting more.",
"code": "CONCURRENT_LIMIT_EXCEEDED"
}