brime

POST /v1/extract

Extract clean markdown from URLs — interactive playground.

Cost: 1 credit per deduped input URL, regardless of tier (Chrome escalations are not surcharged). See Pricing.

POST
/v1/extract

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Header Parameters

Idempotency-Key*string

UUID. SDKs auto-generate per call.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://api.brime.dev/v1/extract" \  -H "Idempotency-Key: 497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "urls": [      "https://example.com"    ]  }'
{
  "results": [
    {
      "url": "string",
      "markdown": "string",
      "method": "worker_pdf",
      "content_type": "pdf",
      "status": 0,
      "latency_ms": 0,
      "render_latency_ms": 0,
      "detection": "string",
      "metadata": {
        "title": "string",
        "description": "string",
        "author": "string",
        "published_date": "string",
        "canonical": "string",
        "og_image": "string",
        "language": "string"
      }
    }
  ],
  "failed": [
    {
      "url": "string",
      "error": {
        "code": "fetch_failed",
        "message": "string",
        "needs_browser": true
      }
    }
  ],
  "request_id": "string",
  "credits_used": 0,
  "latency_ms": 0
}
{
  "error": {
    "code": "invalid_request",
    "message": "query is required"
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "Invalid Brime API key."
  }
}
{
  "error": {
    "code": "rate_limited",
    "message": "Rate limit exceeded. Wait 12 s and retry."
  }
}
{
  "error": {
    "code": "upstream_error",
    "message": "SERP provider returned 503; retry shortly."
  }
}

See also: Extract best practices · Errors