Conversations ride on previous_response_id
Each response is one turn. Pass the previous response’s id to continue the same conversation. The API keeps the history, so you never resend it.
Get started
Updated
The helping.io API is an Open Responses API. Any Responses API client can call it.
The helping.io API is the HTTP surface for calling helping.io from your own code. It implements the Open Responses specification; the official OpenAI SDKs and any Open Responses client are clients that work with it, without a custom integration.
Your request carries the current user turn, the model to run it on, and, optionally, your own function tools.
https://api.helping.io/v1Point your SDK’s base URL at the /v1 prefix, not at the host on its own.
These are the routes the API exposes. Every other path under /v1 answers
a 404 in the standard error envelope, including /v1/chat/completions: this
API speaks the Responses API, and OpenAI’s guide on moving to
Responses
covers the change if your app still uses Chat Completions.
| Route | What it does |
|---|---|
GET /v1/models |
List the model catalog, as canonical provider/model ids |
POST /v1/responses |
Create a response: a new turn, or a further turn through previous_response_id |
GET /v1/responses/{response_id} |
Retrieve a stored response, including its usage |
DELETE /v1/responses/{response_id} |
Delete one stored response |
POST /v1/responses/{response_id}/cancel |
Cancel a response your key created |
POST /v1/conversations |
Create a conversation to hold a history by id |
GET, POST, DELETE /v1/conversations/{conversation_id} |
Read, label, or delete a conversation |
GET, POST /v1/conversations/{conversation_id}/items |
List a conversation’s items, or add to them |
GET, DELETE /v1/conversations/{conversation_id}/items/{item_id} |
Read or remove one item |
Conversations ride on previous_response_id
Each response is one turn. Pass the previous response’s id to continue the same conversation. The API keeps the history, so you never resend it.
Your tools are yours to execute
Function tools you define in a request come back as function_call items.
You run them and post the result. Standard SDK tool loops work unchanged.
Extensions carry the helpingio: prefix
Everything beyond the Open Responses specification is a namespaced extension field. Clients that do not know the prefix strip it and still parse.