Start with one real call
How Seal sits in your call path
Seal sits between your app and its model provider. It evaluates the configured policy before the call leaves, then returns a signed record of the decision.
Core Features
Signed decision record
An Ed25519-signed ATTESTATION-v1 record is created for the routed decision.
Policy before provider
Configured policy runs before the provider call. A blocked call does not reach the model.
Independent verification
Check a receipt with the published key and verifier package. Aqta is not in the verification path.
Clear scope
Receipts support evidence work. They are not a certification or a substitute for your control programme.
Receipt field reference →Every field, the canonical signing bytes, and how to verify without calling us.
Integration
import openai
client = openai.OpenAI(
api_key="aqta_your_key",
base_url="https://api.aqta.ai/v1"
)
# with_raw_response keeps the receipt: SDKs drop unknown fields.
raw = client.chat.completions.with_raw_response.create(
model="gpt-4o",
messages=[{"role": "user", "content": "Hello"}]
)
completion = raw.parse()
receipt = raw.http_response.json()["aqta"]["attestation"]
print(completion.choices[0].message.content)
print(receipt["outcome"]) # ALLOWED or BLOCKED
print(receipt["signature"]) # verify offline against the published keyUse the same OpenAI-compatible client and change its base URL. Available models depend on the provider credentials configured for your organisation.
API Reference
/v1/chat/completions/v1/attestation/public-key/v1/attestation/keysPrivate pilot. Request access and we'll be in touch.
Last updated: July 2026