ModelContentBlock
Parameters and properties
Section titled “Parameters and properties”The fields below cover all variants; the signature specifies their allowed combinations.
typeRequired"text" | "tool-call" | "tool-result" | "reasoning"Block discriminator: text.textVariant-dependentstring | string | undefinedPlain text of the block; empty text blocks are not sent to Anthropic.idVariant-dependentstringService-issued call identifier that the matching tool result must reference.nameVariant-dependentstringName of the requested tool, as declared in the request tools.inputVariant-dependentunknownParsed tool arguments. When the service returns invalid JSON, the raw string is kept so the caller can report the error to the model.callIdVariant-dependentstringIdentifier of the tool call this result answers.contentVariant-dependentstringText returned to the model for this call.isErrorVariant-dependentboolean | undefinedMarks the result as a failed tool execution. Only Anthropic transmits it, as is_error; OpenAI protocols send the content alone.providerVariant-dependentstringIdentity of the provider that produced the block; other providers never receive it.modelVariant-dependentstringModel that produced the block; it is replayed only to the same model.dataVariant-dependentunknownOpaque service payload: an Anthropic thinking or redacted_thinking block with its signature, or an OpenAI Responses reasoning item. Replay it unchanged.