Skip to main content

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.

Auto-generated

This documentation is auto-generated from the Anthropic Messages API specification comparison.

Summary

MetricValue
Overall Conformance Score96.1%
Endpoints Implemented6/6
Total Properties Checked1502
Schema/Type Issues30
Missing Properties28
Total Issues to Fix58

Category Scores

Categories are sorted by conformance score (lowest first, needing most attention).

CategoryScorePropertiesIssuesMissing
Message Batches95.6%5721114
Messages96.5%9301914

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-version
  • parameters.header.x-api-key
  • responses.4XX

POST

Missing Properties (2)
  • parameters.header.anthropic-version
  • responses.4XX
Schema Issues (9)
PropertyIssues
requestBody.content.application/json.properties.requests.items.properties.params.properties.messages.items.properties.contentUnion variants added: 2; Union variants removed: 2
requestBody.content.application/json.properties.requests.items.properties.params.properties.modelType added: ['string']; Union variants removed: 17
requestBody.content.application/json.properties.requests.items.properties.params.properties.service_tierEnum removed: ['auto', 'standard_only']
requestBody.content.application/json.properties.requests.items.properties.params.properties.streamDefault changed: None -> False
requestBody.content.application/json.properties.requests.items.properties.params.properties.systemNullable added (Anthropic non-nullable); Union variants added: 3; Union variants removed: 2
requestBody.content.application/json.properties.requests.items.properties.params.properties.thinkingType added: ['object']; Union variants removed: 3
requestBody.content.application/json.properties.requests.items.properties.params.properties.tool_choiceUnion variants removed: 4
requestBody.content.application/json.properties.requests.items.properties.params.properties.tools.itemsUnion variants added: 4; Union variants removed: 16
responses.200.content.application/json.properties.typeDefault changed: message_batch -> None

/v1/messages/batches/{message_batch_id}

GET

Missing Properties (3)
  • parameters.header.anthropic-version
  • parameters.header.x-api-key
  • responses.4XX
Schema Issues (1)
PropertyIssues
responses.200.content.application/json.properties.typeDefault changed: message_batch -> None

/v1/messages/batches/{message_batch_id}/cancel

POST

Missing Properties (2)
  • parameters.header.anthropic-version
  • responses.4XX
Schema Issues (1)
PropertyIssues
responses.200.content.application/json.properties.typeDefault changed: message_batch -> None

/v1/messages/batches/{message_batch_id}/results

GET

Missing Properties (4)
  • parameters.header.anthropic-version
  • parameters.header.x-api-key
  • responses.200
  • responses.4XX

Messages

Score: 96.5% · Issues: 19 · Missing: 14

/v1/messages

POST

Missing Properties (8)
  • parameters.header.anthropic-version
  • requestBody.content.application/json.properties.cache_control
  • requestBody.content.application/json.properties.container
  • requestBody.content.application/json.properties.inference_geo
  • requestBody.content.application/json.properties.output_config
  • responses.200.content.application/json.properties.container
  • responses.200.content.application/json.properties.stop_details
  • responses.4XX
Schema Issues (15)
PropertyIssues
requestBody.content.application/json.properties.messages.items.properties.contentUnion variants added: 2; Union variants removed: 2
requestBody.content.application/json.properties.modelType added: ['string']; Union variants removed: 17
requestBody.content.application/json.properties.service_tierEnum removed: ['auto', 'standard_only']
requestBody.content.application/json.properties.streamDefault changed: None -> False
requestBody.content.application/json.properties.systemNullable added (Anthropic non-nullable); Union variants added: 3; Union variants removed: 2
requestBody.content.application/json.properties.thinkingType added: ['object']; Union variants removed: 3
requestBody.content.application/json.properties.tool_choiceUnion variants removed: 4
requestBody.content.application/json.properties.tools.itemsUnion variants added: 4; Union variants removed: 16
responses.200.content.application/json.properties.content.itemsUnion variants added: 6; Union variants removed: 12
responses.200.content.application/json.properties.modelType added: ['string']; Union variants removed: 17
responses.200.content.application/json.properties.roleDefault changed: assistant -> None
responses.200.content.application/json.properties.stop_reasonUnion variants added: 1; Union variants removed: 1
responses.200.content.application/json.properties.typeDefault changed: message -> None
responses.200.content.application/json.properties.usage.properties.input_tokensDefault changed: None -> 0
responses.200.content.application/json.properties.usage.properties.output_tokensDefault changed: None -> 0

/v1/messages/count_tokens

POST

Missing Properties (6)
  • parameters.header.anthropic-version
  • requestBody.content.application/json.properties.cache_control
  • requestBody.content.application/json.properties.output_config
  • requestBody.content.application/json.properties.thinking
  • requestBody.content.application/json.properties.tool_choice
  • responses.4XX
Schema Issues (4)
PropertyIssues
requestBody.content.application/json.properties.messages.items.properties.contentUnion variants added: 2; Union variants removed: 2
requestBody.content.application/json.properties.modelType added: ['string']; Union variants removed: 17
requestBody.content.application/json.properties.systemNullable added (Anthropic non-nullable); Union variants added: 2; Union variants removed: 1
requestBody.content.application/json.properties.toolsType removed: ['array']; Nullable added (Anthropic non-nullable); Union variants added: 2

How to Improve Conformance

To improve conformance scores:

  1. Fix Schema Issues: Update Pydantic models in src/ogx_api/messages/ to match Anthropic's schema
  2. Add Missing Properties: Implement missing fields in request/response models
  3. 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