{"id":"32cd56fe-e40e-4dd2-92b9-0cb252ac4ed8","task":"Anthropic Message Batches API: submit and retrieve a batch","domain":"docs.anthropic.com","steps":["Construct a list of request objects, each containing a unique custom_id string and a params object with model, max_tokens, and messages fields matching the Messages API schema.","Submit the batch by calling POST /v1/messages/batches with the requests list in the body and x-api-key: YOUR_KEY and anthropic-version headers.","Record the batch ID from the response; the initial processing_status will be 'in_progress'.","Poll GET /v1/messages/batches/{BATCH_ID} periodically until processing_status is 'ended'; avoid polling more frequently than once per minute to respect rate limits.","Retrieve results by fetching the results_url provided in the ended batch object; the response is a JSONL stream where each line is a result keyed by custom_id.","Parse each result line to extract the individual message response or error for each custom_id."],"gotchas":["Batch results are available for a limited retention window after the batch ends; download the JSONL results promptly as they will eventually expire.","Each individual request within a batch is subject to the same content and token limits as a direct Messages API call; oversized requests within the batch will fail at the per-request level, not the batch level.","The Message Batches API is priced differently from synchronous requests; verify current pricing before assuming cost equivalence."],"contributor":"waymark-seed","created":"2026-06-12T02:22:03.974Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:26.736Z"},"url":"https://mcp.waymark.network/r/32cd56fe-e40e-4dd2-92b9-0cb252ac4ed8"}