Skip to main content

Official Python SDK for the Codini AI API

Project description

codini

Official Python SDK for the Codini AI API.

Build, manage, and execute AI flows programmatically. Zero dependencies.

Install

pip install codini

Quick Start

from codini import CodiniClient

codini = CodiniClient("your-api-key")

# Execute a flow
result = codini.sync_execute(1, input="Hello")
print(result["data"]["output"])

# Build a flow programmatically
project = codini.projects.create("My App")
flow = codini.flows.create("Chat Agent", project["data"]["id"])

nodes = codini.flows.add_nodes(flow["data"]["id"], [
    {"type": "onMessageTrigger", "position": {"x": 0, "y": 200}},
    {"type": "create-agent", "position": {"x": 300, "y": 200}, "params": {
        "name": "Assistant", "model": "gpt-4o", "type": "auto",
        "role description": "Helpful assistant"
    }},
    {"type": "replyToChat", "position": {"x": 600, "y": 200}},
])

trigger, agent, reply = nodes["data"]["nodes"]
codini.flows.add_edges(flow["data"]["id"], [
    {"source": trigger["id"], "target": agent["id"]},
    {"source": agent["id"], "target": reply["id"]},
])

API

Execution

codini.create_ticket(flow_id=1, use_websocket=True)
codini.sync_execute(flow_id, input="Hello", variables={"lang": "en"})
codini.async_execute(flow_id, input="Hello")
codini.get_run_status(run_id)
codini.poll_run_status(run_id, interval=2.0, max_attempts=150)

Projects

codini.projects.list()
codini.projects.create("My App", description="Optional")
codini.projects.get(project_id)
codini.projects.update(project_id, name="New Name")
codini.projects.delete(project_id)

Flows

codini.flows.list()                    # All flows
codini.flows.list(project_id=38)       # Flows in a project
codini.flows.get(flow_id)
codini.flows.create("My Flow", project_id=38)
codini.flows.update_details(flow_id, name="New Name")
codini.flows.delete(flow_id)

# Programmatic building
codini.flows.add_nodes(flow_id, [{...}])
codini.flows.add_edges(flow_id, [{...}])
codini.flows.build(flow_id, nodes, edges)

# Node catalog
codini.flows.list_node_types()
codini.flows.get_node_definitions(["create-agent", "chat-memory"])

# Full canvas save
codini.flows.save(flow_id, nodes=[...], edges=[...])

Secrets

codini.secrets.list()
codini.secrets.create("my_key", "my_value")
codini.secrets.get("my_key")
codini.secrets.delete("my_key")

Zero Dependencies

Uses only Python standard library (urllib, json). No requests needed.

Requirements

Python 3.8+

License

ISC

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

codini-0.2.5.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

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

codini-0.2.5-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

Details for the file codini-0.2.5.tar.gz.

File metadata

  • Download URL: codini-0.2.5.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for codini-0.2.5.tar.gz
Algorithm Hash digest
SHA256 e3f5fb79897d91263404562a998d5337632a1d70bd5e63575a3bc3d6271ef617
MD5 ad3270b99f978d95456a13154e50b4ad
BLAKE2b-256 455d9b22a31a332690e28d4f1802d8d3c8f9c9f61b87668286ba3951174048e9

See more details on using hashes here.

File details

Details for the file codini-0.2.5-py3-none-any.whl.

File metadata

  • Download URL: codini-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for codini-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e0725d4acb914085505eb110f4851539ff2cb94eced6a0276c702da681d7099d
MD5 4fe2715a54e8d70f3e8af3b278b14c6c
BLAKE2b-256 267128662ad36df82da1e97cd9098c38878e114d942ca91b49f39ffbbe11f7e6

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