OpenGrid

For developers

One base URL, and evidence on the way back.

The migration is a single line. What you get in return is a signed record of which machine answered, which model artifact it loaded, and which runtime build it ran — checkable after the fact, by you, without asking us.

The change

Illustrative — the endpoint is not open yet, and the values are sample values.

from openai import OpenAI

client = OpenAI(
    base_url="https://api.opengrid.computer/v1",
    api_key=OPENGRID_API_KEY,
)

response = client.chat.completions.create(
    model="llama-3.1-8b-instruct",
    messages=[{"role": "user", "content": "Hello"}],
)

# the part that is different
print(response.receipt.provider)        # blr-studio-01 · ap-south-1
print(response.receipt.model_artifact)  # sha256:7b064f58…557c

The life of one request

Step through it, or flip the toggle to see what a failed attempt leaves behind.

Sample route
Metadata-only persistence

What the edge keeps

The API key is stored only as a SHA-256 digest. Prompt, tool schemas, output text and token IDs are not persisted by the coordinator.

receipt_id
provider
provider_key
model_artifact
runtime_build
transport
tokens_in / out
signed_at
ledger_entry
Awaiting signature

Step 1 of 5. Metadata-only persistence.

A receipt is yours to keep, hand to someone else, or check against the ledger.

Questions you are about to ask

What do I have to change?
A base URL. The surface is OpenAI-compatible, so the client library you already use keeps working — same request shape, same streaming, same tool-calling.
What does the receipt actually prove?
That a specific set of bytes answered your call. Routes bind to an artifact digest and an approved engine-build digest, not to a model name, so "llama-3.1-8b-instruct" cannot quietly become a quantized stand-in.
What happens when a request fails?
The staged evidence is kept and never countersigned, and no ledger entry is written. A failure leaves a record instead of a silence — flip the toggle above to walk that branch.
What do you store?
Metadata. The API key is kept only as a SHA-256 digest, and prompts, tool schemas, output text and token IDs are not persisted by the coordinator.
Who is actually serving my request?
A named operator with a revocable Ed25519 identity, in a region you can constrain. The receipt names them. We do not operate capacity ourselves, so there is no house provider competing with the ones you route to.

Read it yourself

The coordinator, the node daemon and the protocol are Apache 2.0. Everything the panel above describes is specified in the repository rather than in marketing copy — including how a model artifact is pinned and verified.

The protocolopengridai/coreModel artifact provenance