canonical: https://jentic.com/apis/evervault.com/evervault-api

# Evervault API

Jentic publishes the only available OpenAPI specification for Evervault API, keeping it validated and agent-ready. Evervault wraps encryption, decryption, relay proxying, payment-card processing, network tokenization, and webhook management into one platform. The 43-endpoint surface lets agents encrypt PII, route outbound calls through Evervault Relays that auto-decrypt or tokenize on the wire, mint network tokens for stored cards, manage Functions, and configure webhooks for event-driven flows.

## For AI agents

Encrypt and decrypt data, proxy outbound traffic through Evervault Relays, tokenize cards, run Functions, and manage webhooks via the full Evervault platform.

## Scope

Does not handle payment processing, fraud scoring, or general-purpose CRM - use for encryption, tokenization, encrypted compute, and outbound Relay proxying only.

## Capabilities

- Encrypt and decrypt arbitrary payloads via POST /encrypt and POST /decrypt
- Inspect a ciphertext to confirm it is Evervault-encrypted via POST /inspect
- Proxy outbound HTTPS calls through Evervault Relays so PII is auto-tokenized in transit
- Manage Relay custom domains for branded proxy endpoints
- Invoke serverless Functions over encrypted inputs at `/functions/{function_name}/runs`
- Mint client-side tokens for selective browser decryption via /client-side-tokens

## Use cases

### Outbound Relay for PII Tokenization

Companies that send sensitive data to many third-party APIs (CRMs, analytics, ML providers) route those requests through an Evervault Relay. The Relay receives plaintext, tokenizes or encrypts on the way out, and ensures partners only ever see safe representations. Setup is one Relay configuration plus optional custom domain mapping, dramatically reducing PII surface area without code changes per vendor.

Example prompt: POST /relays to create a Relay that tokenizes outbound calls to api.partner.com, then POST `/relays/{relay_id}/custom-domains` to map a branded subdomain

### Encrypted Card Vault and Network Tokens

Merchants and platforms can store payment cards encrypted in Evervault and mint network tokens to authorise transactions without holding raw PANs themselves. The 43-endpoint surface includes operations for encryption, network tokenization, and Function-based card operations, supporting PCI scope reduction without rebuilding a card vault.

Example prompt: POST /encrypt with a card number, store the ciphertext in your DB, then later run an Evervault Function to mint a network token from the encrypted PAN

### Webhooks-Driven Encrypted Workflows

Background jobs that depend on encrypted compute completing (Function runs, key rotations, Relay events) listen via Evervault webhooks. Agents register a webhook endpoint, then react to events by calling further Evervault operations or downstream services without polling.

Example prompt: Register a webhook URL on Evervault, then on receipt of a function-run.completed event call your downstream risk-scoring service with the run output

### AI Agent Encryption Pipeline via Jentic

An AI assistant in a regulated workflow wraps every captured PII field with Evervault encryption before it lands in a database. Jentic exposes Evervault's full surface as MCP tools, so the agent searches by intent, picks the right operation, and runs it without ever seeing the raw API spec.

Example prompt: Use Jentic search 'encrypt cardholder data with Evervault' to find POST /encrypt, load schema, and execute on every card field captured in conversation

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/encrypt` | Encrypt a payload |
| POST | `/decrypt` | Decrypt a payload |
| POST | `/inspect` | Inspect ciphertext metadata |
| POST | `/functions/{function_name}/runs` | Invoke a named Function |
| POST | `/client-side-tokens` | Mint a client-side decryption token |
| POST | `/relays` | Create a Relay |
| GET | `/relays/{id}` | Retrieve a Relay configuration |
| POST | `/relays/{relay_id}/custom-domains` | Attach a custom domain to a Relay |

## Key resources

- **encrypt** — Server-side encryption of payloads
- **decrypt** — Reverse Evervault ciphertexts in trusted code paths
- **relays** — Outbound proxy that tokenizes or encrypts on the wire
- **functions** — Serverless compute over encrypted inputs
- **client-side-tokens** — Short-lived tokens for browser-side decryption
- **inspect** — Verify a payload is Evervault-encrypted

## Why Jentic

- **Setup:** Wiring the Evervault API by hand means handling its HTTP Basic auth with an app ID and key, pointing at the api.evervault.com host, and coding the encrypt, relay, and function-run calls yourself. Through Jentic you install once, import the Evervault API from the API Directory, store the credentials once, and your agent calls it.
- **Permission scoping:** Evervault puts the relay id in the URL path (`/relays/{id}`), so a rule can pin your agent to one relay for reads and custom-domain setup. You choose the operations it may call, so encrypt, decrypt, and relay creation are not included unless you add them to the allowed set.
- **Credential handling:** Your Evervault app ID and API key are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create an evervault relay' or 'encrypt cardholder data', and Jentic returns the matching Evervault operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Evervault Encryption API** — Slimmer 4-endpoint Evervault surface focused on encrypt, decrypt, Functions, and client tokens.
- **Stripe API** — Stripe handles charging cards while Evervault encrypts the broader PII around the transaction.
- **Cloudflare API** — Cloudflare delivers WAF, DDoS, and SSL but no field-level encryption-as-a-service.

## FAQ

### Why is there no official OpenAPI spec for Evervault API?

Evervault does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Evervault API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Evervault API use?

The full Evervault API uses HTTP Basic auth with the app ID as username and an API key as password against api.evervault.com. Through Jentic, both credentials sit in your Jentic One instance and are injected at call time.

### Can I tokenize cards without taking on PCI scope using the Evervault API?

Yes. POST /encrypt accepts the raw PAN and returns ciphertext, while a Function or Relay can mint a network token from that ciphertext, so plaintext PANs never sit in your stack. Combine with /relays to keep outbound payment partner traffic in-scope only at Evervault's edge.

### What are the rate limits for the Evervault API?

The OpenAPI spec does not declare specific limits; Evervault applies plan-based throttling. Inspect 429 responses and Retry-After headers and confirm your plan's ceiling with Evervault support before high-volume runs.

### How do I create a Relay through Jentic?

Run pip install jentic, then await client.search('create an evervault relay'), client.load, client.execute. Jentic returns POST /relays with the Relay configuration schema (target URL, encryption rules) wired in for the agent to fill.

### Can I confirm a value is Evervault-encrypted before calling /decrypt?

Yes. POST /inspect returns metadata about the ciphertext (whether it is Evervault-encrypted, the data role, and the encryption version) without revealing plaintext, so an agent can avoid wasted decrypt calls on malformed inputs.

### Can I limit what my agent is allowed to do with the Evervault API?

Yes. Jentic One is self-hosted, so your own rules decide which Evervault operations the agent may call and which credentials it may use. Because the relay id sits in the URL path (`/relays/{id}`), you can pin the agent to a single relay for reads and custom-domain setup while keeping encrypt, decrypt, and relay creation out of the allowed set unless you explicitly add them. Your Evervault app ID and API key stay in your instance and are injected only for the operations you permit.
