Skip to content

Browser Capture

POST
/api/multimodal/browser-capture
curl --request POST \
--url https://api.ultimateteam.ai/api/multimodal/browser-capture \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <X-API-Key>' \
--data '{ "agent_role": "ceo", "context_prompt": "Analyze this browser capture.", "image_base64": "example", "mime_type": "example" }'

Accept a base64-encoded browser capture for analysis.

Args: request: The incoming FastAPI request (carries tenant context). body: Validated :class:BrowserCaptureRequest payload. analyzer: Injected analyzer dependency.

Returns: :class:MultimodalResponse carrying the analysis summary and attachment record id.

Raises: HTTPException: 422 on invalid base64, MIME / size violations or security failures.

Media typeapplication/json
BrowserCaptureRequest

JSON body schema for POST /api/multimodal/browser-capture.

Attributes: image_base64: Base64-encoded capture bytes. mime_type: MIME type of the capture (must be in :data:ALLOWED_MIME_TYPES). agent_role: Which C-suite agent is analysing the capture. context_prompt: Prompt passed to the vision model.

object
agent_role
Agent Role
string
default: ceo
context_prompt
Context Prompt
string
default: Analyze this browser capture.
image_base64
required
Image Base64
string
mime_type
required
Mime Type
string

Successful Response

Media typeapplication/json
MultimodalResponse

Canonical response body for all /api/multimodal/* endpoints.

Attributes: analysis_id: Opaque UUID for the analysis turn. summary: PII-redacted analysis summary. source_channel: Which ingestion surface this came from. mime_type: MIME type of the analyzed content. model_used: LLM model id used. credits_consumed: Total credits billed (model + 8-credit surcharge). pii_flags: QualityGate PII hits (metadata only — never raw PII). attachment_record_id: Persisted AttachmentRecord id. vision_upgrade: Tier upgrade metadata from the router.

object
analysis_id
required
Analysis Id
string
attachment_record_id
Any of:
string
credits_consumed
required
Credits Consumed
integer
mime_type
required
Mime Type
string
model_used
required
Model Used
string
pii_flags
Pii Flags
Array<object>
object
key
additional properties
any
source_channel
required
Source Channel
string
summary
required
Summary
string
vision_upgrade
Any of:
object
key
additional properties
any
Examplegenerated
{
"analysis_id": "example",
"attachment_record_id": "example",
"credits_consumed": 1,
"mime_type": "example",
"model_used": "example",
"pii_flags": [
{}
],
"source_channel": "example",
"summary": "example",
"vision_upgrade": {}
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
ctx
Context
object
input
Input
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{
"detail": [
{
"ctx": {},
"input": "example",
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}