Anthropic Messages API Conformance Report
This page provides a detailed breakdown of OGX's conformance to the Anthropic Messages API specification. The conformance score increases as schema issues are fixed and missing properties are implemented.
This documentation is auto-generated from the Anthropic Messages API specification comparison.
Summary
| Metric | Value |
|---|---|
| Overall Conformance Score | 96.1% |
| Endpoints Implemented | 6/6 |
| Total Properties Checked | 1502 |
| Schema/Type Issues | 30 |
| Missing Properties | 28 |
| Total Issues to Fix | 58 |
Category Scores
Categories are sorted by conformance score (lowest first, needing most attention).
| Category | Score | Properties | Issues | Missing |
|---|---|---|---|---|
| Message Batches | 95.6% | 572 | 11 | 14 |
| Messages | 96.5% | 930 | 19 | 14 |
Missing Endpoints
The following Anthropic API endpoints are not yet implemented in OGX:
All Anthropic API endpoints are implemented!
Detailed Category Breakdown
Below is a detailed breakdown of conformance issues and missing properties for each category.
Message Batches
Score: 95.6% · Issues: 11 · Missing: 14
/v1/messages/batches
GET
Missing Properties (3)
parameters.header.anthropic-versionparameters.header.x-api-keyresponses.4XX
POST
Missing Properties (2)
parameters.header.anthropic-versionresponses.4XX
Schema Issues (9)
| Property | Issues |
|---|---|
requestBody.content.application/json.properties.requests.items.properties.params.properties.messages.items.properties.content | Union variants added: 2; Union variants removed: 2 |
requestBody.content.application/json.properties.requests.items.properties.params.properties.model | Type added: ['string']; Union variants removed: 17 |
requestBody.content.application/json.properties.requests.items.properties.params.properties.service_tier | Enum removed: ['auto', 'standard_only'] |
requestBody.content.application/json.properties.requests.items.properties.params.properties.stream | Default changed: None -> False |
requestBody.content.application/json.properties.requests.items.properties.params.properties.system | Nullable added (Anthropic non-nullable); Union variants added: 3; Union variants removed: 2 |
requestBody.content.application/json.properties.requests.items.properties.params.properties.thinking | Type added: ['object']; Union variants removed: 3 |
requestBody.content.application/json.properties.requests.items.properties.params.properties.tool_choice | Union variants removed: 4 |
requestBody.content.application/json.properties.requests.items.properties.params.properties.tools.items | Union variants added: 4; Union variants removed: 16 |
responses.200.content.application/json.properties.type | Default changed: message_batch -> None |
/v1/messages/batches/{message_batch_id}
GET
Missing Properties (3)
parameters.header.anthropic-versionparameters.header.x-api-keyresponses.4XX
Schema Issues (1)
| Property | Issues |
|---|---|
responses.200.content.application/json.properties.type | Default changed: message_batch -> None |
/v1/messages/batches/{message_batch_id}/cancel
POST
Missing Properties (2)
parameters.header.anthropic-versionresponses.4XX
Schema Issues (1)
| Property | Issues |
|---|---|
responses.200.content.application/json.properties.type | Default changed: message_batch -> None |
/v1/messages/batches/{message_batch_id}/results
GET
Missing Properties (4)
parameters.header.anthropic-versionparameters.header.x-api-keyresponses.200responses.4XX
Messages
Score: 96.5% · Issues: 19 · Missing: 14
/v1/messages
POST
Missing Properties (8)
parameters.header.anthropic-versionrequestBody.content.application/json.properties.cache_controlrequestBody.content.application/json.properties.containerrequestBody.content.application/json.properties.inference_georequestBody.content.application/json.properties.output_configresponses.200.content.application/json.properties.containerresponses.200.content.application/json.properties.stop_detailsresponses.4XX
Schema Issues (15)
| Property | Issues |
|---|---|
requestBody.content.application/json.properties.messages.items.properties.content | Union variants added: 2; Union variants removed: 2 |
requestBody.content.application/json.properties.model | Type added: ['string']; Union variants removed: 17 |
requestBody.content.application/json.properties.service_tier | Enum removed: ['auto', 'standard_only'] |
requestBody.content.application/json.properties.stream | Default changed: None -> False |
requestBody.content.application/json.properties.system | Nullable added (Anthropic non-nullable); Union variants added: 3; Union variants removed: 2 |
requestBody.content.application/json.properties.thinking | Type added: ['object']; Union variants removed: 3 |
requestBody.content.application/json.properties.tool_choice | Union variants removed: 4 |
requestBody.content.application/json.properties.tools.items | Union variants added: 4; Union variants removed: 16 |
responses.200.content.application/json.properties.content.items | Union variants added: 6; Union variants removed: 12 |
responses.200.content.application/json.properties.model | Type added: ['string']; Union variants removed: 17 |
responses.200.content.application/json.properties.role | Default changed: assistant -> None |
responses.200.content.application/json.properties.stop_reason | Union variants added: 1; Union variants removed: 1 |
responses.200.content.application/json.properties.type | Default changed: message -> None |
responses.200.content.application/json.properties.usage.properties.input_tokens | Default changed: None -> 0 |
responses.200.content.application/json.properties.usage.properties.output_tokens | Default changed: None -> 0 |
/v1/messages/count_tokens
POST
Missing Properties (6)
parameters.header.anthropic-versionrequestBody.content.application/json.properties.cache_controlrequestBody.content.application/json.properties.output_configrequestBody.content.application/json.properties.thinkingrequestBody.content.application/json.properties.tool_choiceresponses.4XX
Schema Issues (4)
| Property | Issues |
|---|---|
requestBody.content.application/json.properties.messages.items.properties.content | Union variants added: 2; Union variants removed: 2 |
requestBody.content.application/json.properties.model | Type added: ['string']; Union variants removed: 17 |
requestBody.content.application/json.properties.system | Nullable added (Anthropic non-nullable); Union variants added: 2; Union variants removed: 1 |
requestBody.content.application/json.properties.tools | Type removed: ['array']; Nullable added (Anthropic non-nullable); Union variants added: 2 |
How to Improve Conformance
To improve conformance scores:
- Fix Schema Issues: Update Pydantic models in
src/ogx_api/messages/to match Anthropic's schema - Add Missing Properties: Implement missing fields in request/response models
- Add Missing Endpoints: Implement endpoints listed in the Missing Endpoints section
Run the coverage analyzer to check your progress:
python scripts/anthropic_coverage.py --update
Then regenerate this documentation:
python scripts/generate_anthropic_coverage_docs.py