Provider Slug.
anthropicPortkey SDK Integration with Anthropic
Portkey provides a consistent API to interact with models from various providers. To integrate Anthropic with Portkey:1. Install the Portkey SDK
Add the Portkey SDK to your application to interact with Anthropic’s API through Portkey’s gateway.- NodeJS
- Python
2. Initialize Portkey with the Virtual Key
To use Anthropic with Portkey, get your Anthropic API key from here, then add it to Portkey to create your Anthropic virtual key.- NodeJS SDK
- Python SDK
- OpenAI Python SDK
- OpenAI Node SDK
3. Invoke Chat Completions with Anthropic
Use the Portkey instance to send requests to Anthropic. You can also override the virtual key directly in the API call if needed.- NodeJS SDK
- Python SDK
- OpenAI Python SDK
- OpenAI Node SDK
How to Use Anthropic System Prompt
With Portkey, we make Anthropic models interoperable with the OpenAI schema and SDK methods. So, instead of passing thesystem prompt separately, you can pass it as part of the messages body, similar to OpenAI:
- NodeJS
- Python
Vision Chat Completion Usage
Portkey’s multimodal Gateway fully supports Anthropic’s vision modelsclaude-3-sonnet, claude-3-haiku, claude-3-opus, and the latest claude-3.5-sonnet.
Portkey follows the OpenAI schema, which means you can send your image data to Anthropic in the same format as OpenAI.
- Anthropic ONLY accepts
base64-encoded images. Unlike OpenAI, it does not supportimage URLs. - With Portkey, you can use the same format to send base64-encoded images to both Anthropic and OpenAI models.
claude-3.5-sonnet model
- Python
- NodeJS
- OpenAI NodeJS
- OpenAI Python
- cURL
To prompt with pdfs, simply update the “url” field inside the “image_url” object to this pattern:
data:application/pdf;base64,BASE64_PDF_DATAAPI Reference
On completion, the request will get logged in Portkey where any image inputs or outputs can be viewed. Portkey will automatically render the base64 images to help you debug any issues quickly.Claude PDF Support
Anthropic Claude can now process PDFs to extract text, analyze charts, and understand visual content from documents. With Portkey, you can seamlessly integrate this capability into your applications using the familiar OpenAI-compatible API schema.PDF support is available on the following Claude models:
- Claude 3.7 Sonnet (
claude-3-7-sonnet-20250219) - Claude 3.5 Sonnet (
claude-3-5-sonnet-20241022,claude-3-5-sonnet-20240620) - Claude 3.5 Haiku (
claude-3-5-haiku-20241022)
- Maximum request size: 32MB
- Maximum pages per request: 100
- Format: Standard PDF (no passwords/encryption)
Processing PDFs with Claude
Currently, Portkey supports PDF processing using base64-encoded PDF documents, following the same pattern as image handling in Claude’s multimodal capabilities.- Python
- NodeJS
- cURL
Best Practices for PDF Processing
For optimal results when working with PDFs:- Place PDFs before any text content in your requests
- Ensure PDFs contain standard fonts and clear, legible text
- Verify that pages are properly oriented
- Split large PDFs into smaller chunks when they approach size limits
- Be specific in your questions to get more targeted analysis
Calculating Costs
When processing PDFs, token usage is calculated based on both text content and the visual representation of pages:- Text tokens: Typically 1,500-3,000 tokens per page, depending on content density
- Image tokens: Each page converted to an image adds to the token count similar to image processing
Anthropic's PDF Support Docs
Prompt Caching
Portkey also works with Anthropic’s new prompt caching feature and helps you save time & money for all your Anthropic requests. Refer to this guide to learn how to enable it:Prompt Caching
Extended Thinking (Reasoning Models) (Beta)
The assistants thinking response is returned in the
response_chunk.choices[0].delta.content_blocks array, not the response.choices[0].message.content string.claude-3-7-sonnet-latest support extended thinking.
This is similar to openai thinking, but you get the model’s reasoning as it processes the request as well.
Note that you will have to set strict_open_ai_compliance=False in the headers to use this feature.
Single turn conversation
Multi turn conversation
Beta features
Portkey supports anthropic’s beta features through this header, just pass the beta feature name as the value:Managing Anthropic Prompts
You can manage all prompts to Anthropic in the Prompt Library. All the current models of Anthropic are supported and you can easily start testing different prompts. Once you’re ready with your prompt, you can use theportkey.prompts.completions.create interface to use the prompt in your application.

