Skip to content

nimgent/providers/openai_responses

This page is generated from the module’s exported API and ## documentation comments.

Native OpenAI Responses API wire format.

Native OpenAI Responses body. Stateless: store=false, full input each turn.

proc buildResponsesBody(request: ProviderRequest; stream: bool): JsonNode {.
raises: [ProviderError, KeyError], tags: [ReadIOEffect, WriteIOEffect],
forbids: [].}

Returns: JsonNode.

Name Type Default
request ProviderRequest
stream bool

View source

Build Responses API options for native JSON schema output.

proc responsesObjectOptions(name, description: string; schema: JsonNode): JsonNode {.
raises: [], tags: [], forbids: [].}

Returns: JsonNode.

Name Type Default
name string
description string
schema JsonNode

View source

Parse an OpenAI Responses API response.

proc parseResponsesOutput(data: JsonNode; failPrefix: string): ProviderResponse {.
raises: [ProviderError, KeyError], tags: [ReadIOEffect, WriteIOEffect],
forbids: [].}

Returns: ProviderResponse.

Name Type Default
data JsonNode
failPrefix string

View source

Consume one Responses API SSE event.

proc handleResponsesEvent(acc: var StreamAcc; response: var ProviderResponse;
data: JsonNode; onEvent: StreamCallback;
failPrefix: string): SseAction {.
raises: [ProviderError, Exception, KeyError],
tags: [RootEffect, ReadIOEffect, WriteIOEffect], forbids: [].}

Returns: SseAction.

Name Type Default
acc var StreamAcc
response var ProviderResponse
data JsonNode
onEvent StreamCallback
failPrefix string

View source