Changelog¶
Releases of the public incheck Python SDK and any
matching changes to the HTTP API. Versions follow
SemVer; breaking changes only land on a major
bump.
The SDK is on PyPI at pypi.org/project/incheck.
0.0.4 — 2026-05-12¶
/states-and-scopes metadata, surfaced through client.metadata.
Added¶
- New
GET /states-and-scopesendpoint on the HTTP API. Returns the canonicalstate/scopeenumerations the gateway accepts on/chat, plus adefault_state,default_scope, and ascopes_by_statemap for state-specific filtering. See the API reference. - New
client.metadata.states_and_scopes()on the SDK (sync + async) returning a typedStatesAndScopesResponse. See Discovering validscope/state. - New
StateOrScopeandStatesAndScopesResponsePydantic models exported from the package top level.
Changed¶
- Examples across the docs now use
state="California-LAC"— the actualdefault_statereturned by the metadata endpoint — instead of a placeholder value. If you copy-pasted earlier examples, swapstateto a value fromclient.metadata.states_and_scopes().states.
0.0.3 — 2026-05-12¶
Multi-Pod fan-out, multi-turn messages, ChatMessage export.
Added¶
org_idonchat.send/chat.streamnow accepts a list of ids to fan retrieval across several Pods in one call. Passing a single string is unchanged. See Multi-Pod fan-out.- New
messages=parameter onchat.send/chat.streamfor multi-turn conversations. Same shape as the OpenAI / Anthropic Messages API: a list of{role: "user" | "assistant", content: str}entries alternatinguser/assistantand ending onassistant. The current user turn stays in the positionalcontentargument. See Multi-turn conversations. -
New
ChatMessagemodel exported from the package top level:The
messages=parameter also accepts plain dicts, so call sites can use whichever shape is more convenient.
Changed¶
- HTTP API:
POST /chatacceptsorg_id: string | string[]and a newmessagesfield with the same semantics described above. - Streaming non-200 responses now surface the typed exception with the
actual server detail in the message, instead of bubbling
ResponseNotReadfrom the underlying HTTP layer.
Deprecated¶
conversation_hxis now deprecated in favour ofmessages=. The field still works for back-compat, but you cannot send both at once (the gateway returns a typedValidationErrorwith HTTP 422).
0.0.2 — 2026-05-11¶
Two-mode chat with optional org_id.
Added¶
- EMS mode on
chat.send/chat.stream: omitorg_idto get answers from general EMS knowledge under the providedscopeandstate, with no Pod onboarding required.
Changed¶
org_idon chat methods is now optional. Pass it to run in unified mode (retrieval-aware against your Pod); omit it for EMS mode.
0.0.1 — 2026-05-11¶
First public release.
Added¶
- Sync
Clientand asyncAsyncClientover the InCheck gateway. chat.sendandchat.stream(SSE).documents.uploadconvenience helper plus the lower-levelinitiate_upload/complete_upload/wait_for_jobflow.documents.list_orgs,documents.list,documents.version,documents.delete,documents.delete_version.- Typed exception hierarchy:
AuthenticationError,PermissionError,NotFoundError,ValidationError,RateLimitError(withretry_after),APIError,APIConnectionError,JobFailedError,JobTimeoutError.