---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/llm/openai_responses/helpers/functions/renderOpenAIResponsesTimelineMessage.md
---

# Function: renderOpenAIResponsesTimelineMessage()

```ts
function renderOpenAIResponsesTimelineMessage(input: {
  message: Message;
  renderOpenAIResponsesMediaBlocks: (input: {
    media: Media;
    renderTrustedContent: (
      content: string,
      attrs: TrustedContentAttrs,
    ) => string;
    renderUntrustedContent: (
      content: string,
      attrs: UntrustedContentAttrs,
    ) => string;
    unsupportedMediaPolicy: UnsupportedMediaPolicy;
    warn?: (msg: string) => void;
  }) => Promise<OpenAIResponsesInputContentBlock[]>;
  renderTrustedContent: (content: string, attrs: TrustedContentAttrs) => string;
  renderUntrustedContent: (
    content: string,
    attrs: UntrustedContentAttrs,
  ) => string;
  selfIdentity: string;
  unsupportedMediaPolicy: UnsupportedMediaPolicy;
  warn?: (msg: string) => void;
}): Promise<OpenAIResponsesInputItem | null>;
```

Defined in: [src/batteries/llm/openai\_responses/helpers.ts:319](https://github.com/NHTIO/ADK/blob/v1.20260901.0/src/src/batteries/llm/openai_responses/helpers.ts#L319)

Implements [OpenAIResponsesHelpers.renderOpenAIResponsesTimelineMessage](../../types/interfaces/OpenAIResponsesHelpers.md#property-renderopenairesponsestimelinemessage).

## Parameters

| Parameter                                | Type                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `input`                                  | { `message`: [`Message`](../../../../../common/classes/Message.md); `renderOpenAIResponsesMediaBlocks`: (`input`: { `media`: [`Media`](../../../../../common/classes/Media.md); `renderTrustedContent`: (`content`: `string`, `attrs`: [`TrustedContentAttrs`](../../../../interfaces/TrustedContentAttrs.md)) => `string`; `renderUntrustedContent`: (`content`: `string`, `attrs`: [`UntrustedContentAttrs`](../../../../interfaces/UntrustedContentAttrs.md)) => `string`; `unsupportedMediaPolicy`: [`UnsupportedMediaPolicy`](../../../transformers_js/types/type-aliases/UnsupportedMediaPolicy.md); `warn?`: (`msg`: `string`) => `void`; }) => `Promise`<[`OpenAIResponsesInputContentBlock`](../../types/type-aliases/OpenAIResponsesInputContentBlock.md)\[]>; `renderTrustedContent`: (`content`: `string`, `attrs`: [`TrustedContentAttrs`](../../../../interfaces/TrustedContentAttrs.md)) => `string`; `renderUntrustedContent`: (`content`: `string`, `attrs`: [`UntrustedContentAttrs`](../../../../interfaces/UntrustedContentAttrs.md)) => `string`; `selfIdentity`: `string`; `unsupportedMediaPolicy`: [`UnsupportedMediaPolicy`](../../../transformers_js/types/type-aliases/UnsupportedMediaPolicy.md); `warn?`: (`msg`: `string`) => `void`; } |
| `input.message`                          | [`Message`](../../../../../common/classes/Message.md)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `input.renderOpenAIResponsesMediaBlocks` | (`input`: { `media`: [`Media`](../../../../../common/classes/Media.md); `renderTrustedContent`: (`content`: `string`, `attrs`: [`TrustedContentAttrs`](../../../../interfaces/TrustedContentAttrs.md)) => `string`; `renderUntrustedContent`: (`content`: `string`, `attrs`: [`UntrustedContentAttrs`](../../../../interfaces/UntrustedContentAttrs.md)) => `string`; `unsupportedMediaPolicy`: [`UnsupportedMediaPolicy`](../../../transformers_js/types/type-aliases/UnsupportedMediaPolicy.md); `warn?`: (`msg`: `string`) => `void`; }) => `Promise`<[`OpenAIResponsesInputContentBlock`](../../types/type-aliases/OpenAIResponsesInputContentBlock.md)\[]>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `input.renderTrustedContent`             | (`content`: `string`, `attrs`: [`TrustedContentAttrs`](../../../../interfaces/TrustedContentAttrs.md)) => `string`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `input.renderUntrustedContent`           | (`content`: `string`, `attrs`: [`UntrustedContentAttrs`](../../../../interfaces/UntrustedContentAttrs.md)) => `string`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `input.selfIdentity`                     | `string`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `input.unsupportedMediaPolicy`           | [`UnsupportedMediaPolicy`](../../../transformers_js/types/type-aliases/UnsupportedMediaPolicy.md)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `input.warn?`                            | (`msg`: `string`) => `void`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |

## Returns

`Promise`<
| [`OpenAIResponsesInputItem`](../../types/type-aliases/OpenAIResponsesInputItem.md)
| `null`>

## Remarks

A USER message, or a peer-identity ASSISTANT message (a message from an assistant identity that
is not this adapter's own `selfIdentity`), renders as a plain `role`-carrying input message item
— the ADK's own prior assistant turns are NOT routed through this renderer; the caller renders
those via renderOpenAIResponsesOwnAssistantMessage instead, into the OUTPUT-message shape
the reasoning-pairing validator expects (see the module's Known Gotchas).
