Skip to main content
The Python SDK includes 959 Pydantic models auto-generated from the Kodexa API OpenAPI specification using datamodel-codegen. These models provide full type safety when working with the platform API.

How They’re Generated

The models in kodexa_document.model._generated are produced by running datamodel-codegen against the api-docs.yaml OpenAPI specification from kodexa-api. This happens as part of the CI pipeline and ensures the Python models always match the API.

Importing Models

Key Model Categories

Organizations & Projects

Assistants & Execution

Documents & Storage

Knowledge System

Tasks & Workflow

Users & Access

KodexaBaseModel

All generated models inherit from KodexaBaseModel, which extends Pydantic’s BaseModel with:

camelCase / snake_case Support

Models accept both camelCase (matching the JSON API) and snake_case (Pythonic) field names:

Dict-like Access

Models support dict-style bracket access and get():

Extra Fields

The extra='allow' configuration means models accept fields not in the schema without raising errors. This handles forward-compatibility when the API adds new fields.

Taxonomy and Taxon Extensions

The SDK extends the generated TaxonomyBase and TaxonBase models with navigation methods. These are imported from the top-level package, not from _generated:

Taxon Methods

Taxonomy Methods

Deserializing API Responses

The models integrate naturally with API response data:
For the full platform client experience with pagination, authentication, and endpoint helpers, see the Platform Client page.

DateTime Handling

KodexaBaseModel uses a custom StandardDateTime type that serializes datetimes to millisecond-precision ISO 8601 strings with Z suffix (e.g., 2026-01-15T10:30:00.000Z). This matches the Java/Go API format.