CCAO-F Using the Claude API Practice Question
When constructing a request for the Messages API, which TWO roles are valid within the 'messages' array?
⚠ Common exam trap
Candidates often mistakenly include a 'system' role inside the 'messages' array, confusing the top-level system parameter with conversational turn roles.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
user
The Messages API is strictly structured to support conversational turns between two primary entities. The roles defined in the API schema ensure that the model understands who is speaking at any given time. Correct usage of these roles is essential for maintaining the conversation flow and allowing the model to generate appropriate, context-aware responses based on previous interactions.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
system
Why it's wrong here
The system role is not used within the messages array; instead, system instructions are passed as a separate top-level parameter. Attempting to include a message with the role 'system' inside the messages array will result in a validation error from the API, as it violates the expected structural schema.
- ✓
user
Why this is correct
The user role represents the human or the external system interacting with Claude. This role is required for the first message in the array and typically alternates with the assistant role. It provides the input that Claude processes to generate a response, forming the core of the conversational interaction.
- ✓
assistant
Why this is correct
The assistant role represents the responses generated by Claude. In a multi-turn conversation, developers include previous assistant responses in the messages array to provide context for the model's next turn. This ensures Claude remembers what it previously said, allowing for coherent and consistent dialogue over time.
- ✗
admin
Why it's wrong here
There is no 'admin' role supported in the Anthropic Messages API. Permissions and administrative controls are handled at the API key and account level rather than within the conversation structure. Including this role would cause the API to return a 400 Bad Request error due to schema validation failure.
- ✗
context
Why it's wrong here
While context is vital for LLMs, it is not a valid role name in the messages array. Context is provided through the content of the user and assistant messages or via the system parameter. The API does not recognize 'context' as a specific message participant in the conversational schema.
About these practice questions
One of 259 original CCAO-F practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official Anthropic exam blueprint
This CCAO-F practice question is part of Courseiva's free Anthropic certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the CCAO-F exam.