# Data Usage Policy

_Last updated: April 27, 2026_

This page describes what Ajentify does with the data you send through it, what the LLM providers we wrap do with it, and what controls you have. It is a plain-English companion to our terms — if anything here conflicts with the terms, the terms win, but we will fix this page first.

## The promise, in three lines

1. **Ajentify does not train AI models on your data.** We are not building a model. We have nothing to gain by reading your prompts.
2. **The LLM providers we wrap (OpenAI, Anthropic) do not train on API traffic by default** — that is published policy on their side, with citations below.
3. **You can delete your data.** Contexts can carry a TTL and be cleaned up automatically; everything else has a `DELETE` endpoint.

## What Ajentify stores

When you use Ajentify, the following resources are written to our database, scoped to your organization:

- **Agents** — prompt, model, tool list, voice config.
- **Tools** — name, description, schema, and any tool body you author.
- **Contexts** — the message history of a conversation: human messages, AI messages, tool calls, and tool responses.
- **Documents and Data Windows** — the structured memory you write to from outside the agent.
- **Structured Outputs** — schemas and the JSON outputs your endpoints return.
- **Usage records** — token counts and timestamps, for billing and rate limiting.

This data is stored only to make your agent work — to replay conversation history on the next turn, to authorize tool calls, to bill you for usage. **It is never used to train a model, ours or anyone else's. We do not sell it. We do not share it with third parties for advertising or analytics.**

You can delete contexts, agents, tools, documents, and data windows at any time via their respective `DELETE` endpoints. Deleting your account removes all of the above.

### Context TTL — automatic cleanup

The `POST /context` endpoint accepts an optional `ttl_days` parameter. When set, the context (and all its messages) is automatically deleted after that many days. See [Create Context](/docs/api/create-context) for the full rules.

For public-agent / unauthenticated flows, contexts carry a default 30-day TTL so anonymous conversations are not retained forever.

## What Ajentify sends to LLM providers

Ajentify is a thin layer over the major LLM APIs. When your agent runs:

- The active **system prompt**, the **conversation messages**, and the **tool schemas** are sent over HTTPS to whichever provider hosts the model you selected (OpenAI or Anthropic, today).
- The provider returns a completion (text or tool call), which we save to the context and stream back to your client.
- We do not add an intermediate "Ajentify training pipeline" or any analytics provider in this path. The bytes go from our servers to the provider's servers and back.

### OpenAI

OpenAI's published policy for the API platform:

> "As of March 1, 2023, data sent to the OpenAI API is not used to train or improve OpenAI models (unless you explicitly opt in to share data with us)."
>
> — [platform.openai.com → Data controls](https://platform.openai.com/docs/models/how-we-use-your-data)

OpenAI also publishes their [Enterprise privacy commitments](https://openai.com/enterprise-privacy/), which restate that "we do not train our models on your data by default" for the API platform, and document their abuse-monitoring retention (30 days for most endpoints, with Zero Data Retention available for qualifying customers).

Ajentify has not opted in to any data sharing with OpenAI, and never will on your behalf.

### Anthropic

Anthropic's [Commercial Terms of Service](https://www.anthropic.com/legal/commercial-terms) state, verbatim:

> "Anthropic may not train models on Customer Content from Services."

Anthropic's API additionally retains inputs and outputs for **7 days by default** (as of September 14, 2025) for safety/abuse review, then deletes them. Zero Data Retention is available to qualifying enterprise customers. See Anthropic's [Service Specific Terms](https://www.anthropic.com/legal/service-specific-terms) for the full picture.

Ajentify uses Anthropic only under these commercial terms. We have not enabled the Development Partner Program or any other opt-in that would allow training on Customer Content.

### LangChain

Ajentify uses the open-source `langchain_openai` and `langchain_anthropic` Python packages as model client libraries. **These are SDKs that run inside our servers and call the provider APIs directly.** They do not phone home to LangChain Inc.

We do **not** use LangSmith (LangChain's hosted tracing service), so no prompts, completions, or trace data are sent to LangChain Inc.

Reference: [LangChain — Data storage and privacy](https://docs.langchain.com/langsmith/data-storage-and-privacy).

## What Ajentify does NOT do

- We do not train AI models. Full stop. We are infrastructure, not a model lab.
- We do not sell or rent your data.
- We do not embed third-party advertising trackers in the API surface.
- We do not read your conversations except in the rare case of an explicit, authorized debugging session at your request.
- We do not silently turn on training opt-ins on your behalf with any upstream provider.

## Encryption and transport

- All API traffic is TLS 1.2+.
- Data at rest is encrypted by AWS-managed keys.
- Authentication keys are JWTs signed with rotating server-side secrets.

## Subprocessors

The infrastructure providers we use to operate the service:

- **AWS** — compute, database, object storage, and authentication.
- **OpenAI** — LLM inference, when an OpenAI model is selected for an agent.
- **Anthropic** — LLM inference, when an Anthropic model is selected for an agent.

Each of these is bound by their own published terms, linked above. We do not introduce any other subprocessors that touch agent traffic.

## Your controls

| You want to                                          | How                                                                                              |
|------------------------------------------------------|--------------------------------------------------------------------------------------------------|
| Delete a single conversation                         | `DELETE /context/{context_id}`                                                                   |
| Auto-expire ephemeral conversations                  | Pass `ttl_days` on `POST /context` — the context is automatically deleted at that time           |
| Delete an agent and all its contexts                 | `DELETE /agent/{agent_id}` (cascades to contexts owned by that agent)                            |
| Choose which LLM provider sees your data             | Set the agent's `model_id` — pick an OpenAI model or an Anthropic model                          |
| Stop using us entirely                               | Email us; we will delete your organization and all associated data                               |

## Changes to this policy

We will update this page as the product and the provider landscape change. The "Last updated" date at the top will always reflect the latest version. Material changes will be announced to active customers via email.

## Questions

Email **keanu@ajentify.com**. We answer.
