Sweep 22 Sep 2026 · 17:19Z Build v2.1.280 501 read Stable v2.1.267 Latest v2.1.280 Next v2.1.280 Feeds RSS JSON llms.txt Unofficial
One change · api

Retrieve Message Batch results changed

api/beta/messages/batches/results

Nearest release: v2.1.274, published 7 hours after this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Recorded here
Lines+99added
Lines−51removed
From line 27 where the diff opens
First seen 14 Aug 2026 this site's first read of the page
Recorded edits12to this page, all time

The whole hunk

from line 27, old and new numbered
/
lines
from line 27
2727 
2828 - `string`
2929 
30 - `"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 42 more`
30 - `"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more`
3131 
3232 - `"message-batches-2024-09-24"`
3333 
from line 119
119119 
120120 - `"mid-conversation-system-clear-at-2026-08-21"`
121121 
122 - `"compact-2026-09-04"`
123 
122124- `"anthropic-workspace-id": optional string`
123125 
124126## Returns
from line 1046
10441046 
10451047 Opaque metadata from prior compaction, to be round-tripped verbatim
10461048 
1049 - `signature: optional string or null`
1050 
1051 Signature over the summary, to be sent back with the block verbatim
1052 
10471053 - `BetaFallbackBlock object`
10481054 
10491055 Marks the point in `content` where one model's output gives way to the next.
from line 1813
18071813 
18081814 - `"fast"`
18091815 
1810 - `input_transformations: optional array of BetaThinkingDroppedInputTransformation or null`
1816 - `input_transformations: optional array of BetaInputTransformation or null`
18111817 
1812 Changes the API made to the request's input before showing it to the model:
1813 one entry per change, in request order. Today the only entry type is
1814 `thinking_dropped` a `thinking`, `redacted_thinking` or `connector_text`
1815 block from the request's `messages` that was removed from the prompt instead
1816 of being shown to the model because it failed a binding check. More entry
1817 types may be added over time; ignore types you do not recognize.
1818 Changes the API made to the request's input before showing it to the model,
1819 and blocks that failed a binding check but were left unchanged: one entry per
1820 block, in request order. Two entry types today. `thinking_dropped` — a
1821 `thinking`, `redacted_thinking` or `connector_text` block from the request's
1822 `messages` that was removed from the prompt instead of being shown to the
1823 model because it failed a binding check. `thinking_mismatch_allowed` a
1824 `thinking` or `redacted_thinking` block that failed the conversation check
1825 (the conversation before it differs from the one it was created in, or it
1826 carries no record of one on a model that requires it) and was shown to the
1827 model all the same, because that check is not enforced for this request.
1828 More entry types may be added over time; ignore types you do not recognize.
18181829 
18191830 Requires `anthropic-beta: thinking-binding-controls-2026-08-01`. Present on
18201831 every such response from a model that supports extended thinking, as `[]`
1821 when nothing was changed; without the beta, blocks are removed all the same
1822 but nothing is reported. Removed blocks contribute nothing to
1823 `usage.input_tokens`. When streaming, the array is final in `message_start`;
1824 the final `message_delta` event carries it only when a server-side model
1825 fallback happened mid-stream, in which case it holds the serving model's
1826 entries and replaces the one in `message_start`.
1832 when there is no entry to report; without the beta, blocks are removed or
1833 left in place all the same but nothing is reported. Removed blocks contribute
1834 nothing to `usage.input_tokens`; blocks left in place count as sent. When
1835 streaming, the array is final in `message_start`; the final `message_delta`
1836 event carries it only when a server-side model fallback happened mid-stream,
1837 in which case it holds the serving model's entries and replaces the one in
1838 `message_start`.
18271839 
1828 - `type: "thinking_dropped"`
1840 - `BetaThinkingDroppedInputTransformation object`
18291841 
1830 Always `thinking_dropped` for this entry type.
1842 - `type: "thinking_dropped"`
18311843 
1832 default: thinking_dropped
1844 Always `thinking_dropped` for this entry type.
18331845 
1834 - `path: string`
1846 default: thinking_dropped
18351847 
1836 Where the removed block was in your request, as `messages.{i}.content.{j}`:
1837 `i` indexes the `messages` array you sent and `j` that message's `content`
1838 array — the same form error messages use.
1848 - `path: string`
18391849 
1840 - `reason: "model_binding_mismatch" or "prefix_binding_mismatch" or "organization_binding_mismatch" or "end_user_binding_mismatch"`
1850 Where the removed block was in your request, as `messages.{i}.content.{j}`:
1851 `i` indexes the `messages` array you sent and `j` that message's `content`
1852 array — the same form error messages use.
18411853 
1842 Which binding check removed the block: `model_binding_mismatch` it was
1843 created by a model whose reasoning the requested model may not read;
1844 `prefix_binding_mismatch` — the conversation before it differs from the
1845 conversation it was created in (the rest of that turn's consecutive thinking
1846 blocks are removed with it, each with this reason);
1847 `organization_binding_mismatch` — it was created under a different
1848 organization (an Anthropic organization, AWS account or Google Cloud project)
1849 and this organization is not one of its additional organizations;
1850 `end_user_binding_mismatch` — it was created for a different end user, or
1851 was removed by the consumer-organization binding. A block that would fail
1852 several checks reports one reason, in this order of precedence:
1853 `organization_binding_mismatch`, `end_user_binding_mismatch`,
1854 `model_binding_mismatch`, `prefix_binding_mismatch`.
1854 - `reason: "model_binding_mismatch" or "prefix_binding_mismatch" or "organization_binding_mismatch" or "end_user_binding_mismatch"`
18551855 
1856 - `"model_binding_mismatch"`
1856 Which binding check removed the block: `model_binding_mismatch` — it was
1857 created by a model whose reasoning the requested model may not read;
1858 `prefix_binding_mismatch` — the conversation before it differs from the
1859 conversation it was created in (the rest of that turn's consecutive thinking
1860 blocks are removed with it, each with this reason);
1861 `organization_binding_mismatch` — it was created under a different
1862 organization (an Anthropic organization, AWS account or Google Cloud project)
1863 and this organization is not one of its additional organizations;
1864 `end_user_binding_mismatch` — it was created for a different end user, or
1865 was removed by the consumer-organization binding. A block that would fail
1866 several checks reports one reason, in this order of precedence:
1867 `organization_binding_mismatch`, `end_user_binding_mismatch`,
1868 `model_binding_mismatch`, `prefix_binding_mismatch`.
18571869 
1858 - `"prefix_binding_mismatch"`
1870 - `"model_binding_mismatch"`
18591871 
1860 - `"organization_binding_mismatch"`
1872 - `"prefix_binding_mismatch"`
18611873 
1862 - `"end_user_binding_mismatch"`
1874 - `"organization_binding_mismatch"`
1875 
1876 - `"end_user_binding_mismatch"`
1877 
1878 - `BetaThinkingMismatchAllowedInputTransformation object`
1879 
1880 - `type: "thinking_mismatch_allowed"`
1881 
1882 Always `thinking_mismatch_allowed` for this entry type.
1883 
1884 default: thinking_mismatch_allowed
1885 
1886 - `path: string`
1887 
1888 Where the block is in your request, as `messages.{i}.content.{j}`:
1889 `i` indexes the `messages` array you sent and `j` that message's `content`
1890 array — the same form error messages use.
1891 
1892 - `reason: "model_binding_mismatch" or "prefix_binding_mismatch" or "organization_binding_mismatch" or "end_user_binding_mismatch"`
1893 
1894 Which binding check the block failed; the block was shown to the model all
1895 the same. Always `prefix_binding_mismatch` today — the conversation before
1896 the block differs from the conversation it was created in, or the block
1897 carries no record of one on a model that requires it. Were the check
1898 enforced for this request, the block would have been removed or the request
1899 rejected (`thinking.block_binding.prefix_mismatch_behavior`). A removal also
1900 takes the rest of that turn's consecutive thinking blocks, whereas here each
1901 block is checked on its own, so `thinking_mismatch_allowed` entries are a
1902 lower bound on what enforcement would remove.
1903 
1904 - `"model_binding_mismatch"`
1905 
1906 - `"prefix_binding_mismatch"`
1907 
1908 - `"organization_binding_mismatch"`
1909 
1910 - `"end_user_binding_mismatch"`
18631911 
18641912 - `BetaMessageBatchErroredResult object`
18651913