Claude Certified Developer – Foundations: 2026 Developer Exam Guide
Learn how to build production applications with the Anthropic Messages API, Tool Use (Function Calling), Prompt Caching, and pass the Claude Certified Developer exam ($125).
Introduction
For software engineers actively coding applications powered by Claude, the Claude Certified Developer – Foundations is the essential credential validating hands-on implementation proficiency.
Unlike architectural exams that focus on high-level system design, this exam tests your concrete coding skills using the Anthropic Messages API, Tool Use, Assistant Prefilling, Prompt Caching, and error resilience.
Here is your complete guide to passing the exam and mastering the Anthropic developer platform.
---
Exam Overview
* Certification Code: `CLAUDE-CERTIFIED-DEVELOPER-FOUNDATIONS`
* Exam Duration: 90 minutes
* Number of Questions: 50 multiple-choice questions
* Passing Score: 720 / 1000 (72%)
* Registration Fee: $125 USD
* Target Audience: Fullstack developers, Python/TypeScript backend engineers, and AI application developers.
---
4 Core Exam Domains
Domain 1: Anthropic API Fundamentals & Authentication (25%)
* API Endpoints: The `/v1/messages` endpoint structure, required headers (`x-api-key`, `anthropic-version`), and official client libraries.
* Message Roles: System parameter (passed at top level, not in messages array), user messages, and assistant turns.
* Parameters: `max_tokens` (required), `temperature`, `top_p`, `top_k`, and `stop_sequences`.
* Streaming Responses: Consuming Server-Sent Events (SSE) using streaming helpers and handling delta text blocks.
Domain 2: Structured Prompting, XML Tags & Prefilling (25%)
* XML Tag Conventions: Structuring complex prompts using clear XML tags: `
* Assistant Turn Prefilling: Prefilling the assistant turn (e.g. `{"role": "assistant", "content": "{"}`) to eliminate preamble conversational filler and force strict JSON or XML outputs.
* Few-Shot Prompting: Providing clean input/output demonstration pairs within `
Domain 3: Tool Use, Function Calling & Structured Outputs (25%)
* Tool Definitions: Defining tool schemas using JSON Schema specification (`name`, `description`, `input_schema`).
* Tool Choice Parameter: Controlling tool execution: `{"type": "auto"}`, `{"type": "any"}`, or forcing a specific tool `{"type": "tool", "name": "get_weather"}`.
* Tool Execution Cycle: Handling `stop_reason == "tool_use"`, executing the local function, and returning the `tool_result` content block with the matching `tool_use_id`.
* Multi-Tool Calling: Processing and responding to multiple concurrent tool invocations in a single turn.
Domain 4: Application Architecture, Error Handling & Prompt Caching (25%)
* Prompt Caching: Implementing `"cache_control": {"type": "ephemeral"}` on tools, system prompts, or conversation turns to achieve a 90% discount on cache read tokens.
* Error Resilience: Gracefully catching and handling HTTP 400 (Bad Request), 401 (Auth), 429 (Rate Limit), and 529 (Overloaded) errors with exponential backoff and jitter.
* Token Management: Calculating token consumption, inspecting `usage` objects (`input_tokens`, `output_tokens`, `cache_creation_input_tokens`, `cache_read_input_tokens`).
---
Essential Code Example: Tool Use Flow
```python
import anthropic
client = anthropic.Anthropic()
# 1. Define tool schema
tools = [
{
"name": "lookup_customer",
"description": "Retrieve customer details by ID",
"input_schema": {
"type": "object",
"properties": {
"customer_id": {"type": "string"}
},
"required": ["customer_id"]
}
}
]
# 2. Initial request with tools
response = client.messages.create(
model="claude-3-5-sonnet-20241022",
max_tokens=1024,
tools=tools,
messages=[{"role": "user", "content": "Find account details for CUST-4091"}]
)
# 3. Check if Claude wants to use a tool
if response.stop_reason == "tool_use":
tool_block = next(b for b in response.content if b.type == "tool_use")
# 4. Return tool result in follow-up message
follow_up = client.messages.create(
model="claude-3-5-sonnet-20241022",
max_tokens=1024,
tools=tools,
messages=[
{"role": "user", "content": "Find account details for CUST-4091"},
{"role": "assistant", "content": response.content},
{
"role": "user",
"content": [
{
"type": "tool_result",
"tool_use_id": tool_block.id,
"content": '{"name": "Alice Smith", "tier": "Enterprise"}'
}
]
}
]
)
```
---
Preparation Tips
* Practice writing clean tool schemas and multi-turn loops.
* Know the difference between `cache_creation_input_tokens` and `cache_read_input_tokens`.
* Use BetaStudy's practice questions to master tricky edge cases on API error codes and prefilling rules.
BetaStudy Team
The BetaStudy team consists of certified cloud architects, DevOps engineers, and IT professionals with decades of combined experience. Our team holds over 100 certifications across AWS, Azure, GCP, Kubernetes, CompTIA, and other major platforms. We're dedicated to helping IT professionals pass their certification exams on the first try.
Certifications Mentioned in This Article
Click any certification below to start practicing with our comprehensive question banks.
Related Certifications
Continue your learning journey with these related certifications
Claude Certified Architect, Foundations
60+ practice questions
Claude Certified Architect, Professional
63+ practice questions
Claude Certified Associate, Foundations
60+ practice questions