vision

Pass images to Claude using base64 or URLs in the message content array for analysis, OCR, or multimodal tasks.

Syntax

claude-api
{ role: "user", content: [{ type: "image", source: { type, media_type, data } }, { type: "text", text }] }

Example

claude-api
const response = await client.messages.create({
  model: "claude-opus-4-5",
  max_tokens: 1024,
  messages: [{
    role: "user",
    content: [
      { type: "image", source: { type: "base64", media_type: "image/jpeg", data: imageBase64 } },
      { type: "text", text: "Describe this image" }
    ]
  }]
});