Skip to main content

Python SDK for the to11.ai platform

Project description

to11ai-sdk

Python SDK for to11.ai — the AI engineering platform for prompt management, tracing, and evals.

Installation

pip install to11ai-sdk
# or with uv
uv add to11ai-sdk

Getting started

from to11ai_sdk import create_client

client = create_client(
    base_url="https://api.to11.ai",
    api_key="...",
)

result = client.prompts.resolve(
    project_id="proj_abc123",
    slug="chat-system-prompt",
    labels=["production"],
    variables={"user_name": "Alice"},
)

print(result.rendered.text)  # "Hello, Alice!"

Features

  • Prompt resolution with label-based version selection and Liquid template rendering
  • Project label registry CRUD, reverse-lookup, and immutable event history
  • Typed errors for auth, rate limiting, validation, and network failures
  • Compatible with Python 3.10+

Project label registry

The project label registry is the source of truth for which labels exist on a project. Strict-mode projects reject move_label calls for labels that are not in the registry; the SDK surfaces those as a typed PromptLabelNotRegisteredError.

from to11ai_sdk import create_client, PromptLabelNotRegisteredError

client = create_client(base_url="https://api.to11.ai", api_key="...")

# Register a new label
client.prompts.create_project_label(
    project_id="proj_abc123",
    label="staging",
    is_default=False,
    description="rolling staging pointer",
    display_color="amber",
)

# List active labels
labels = client.prompts.list_project_labels(project_id="proj_abc123")

# List prompts currently pointed at by a label
usages = client.prompts.list_project_label_usages(
    project_id="proj_abc123", label="production",
)

# Inspect the immutable move history at any scope
events = client.prompts.list_label_events(
    scope="project", project_id="proj_abc123", limit=50,
)

# Strict-mode-friendly move
try:
    client.prompts.move_label(
        project_id="proj_abc123",
        prompt_id="prompt_xyz",
        label="production",
        version_id="ver_42",
        reason="promote to production",
    )
except PromptLabelNotRegisteredError as exc:
    # exc.project_id, exc.label carry the structured payload
    print(f"Register {exc.label!r} first")

update_project_label(description=None) means "leave unchanged"; pass description="" to clear it.

Documentation

Full API reference and guides: https://docs.to11.ai

License

MPL-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

to11ai_sdk-1.0.0.tar.gz (95.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

to11ai_sdk-1.0.0-py3-none-any.whl (37.9 kB view details)

Uploaded Python 3

File details

Details for the file to11ai_sdk-1.0.0.tar.gz.

File metadata

  • Download URL: to11ai_sdk-1.0.0.tar.gz
  • Upload date:
  • Size: 95.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for to11ai_sdk-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d9d774aaea2f753c38af1dd81f2e8d21b5587bfc20195c8149e475fdf48e6244
MD5 15a42f95cfaf3cdf99c4f436aa40c2df
BLAKE2b-256 103d3ebd206c6078def3f3ac6d9d4f8d526085c083bdb9f70c1eb6128b7019c4

See more details on using hashes here.

File details

Details for the file to11ai_sdk-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: to11ai_sdk-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 37.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for to11ai_sdk-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3480c885756a9942d095bf66e16f65d5d8c7c54d6ba8be2d5b379b934002439e
MD5 d7928e62fe982dfb82385987b8c9f533
BLAKE2b-256 0d36252b3aff974d4240639507f722b4f04587250855073c332aa00f3f0b0742

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page