---
# @generated by sylphx-gen 0.1.0 from contracts@e145cc7cf1bc9605f2b27439e5e17ed76a1a2fd7e7021906a013f7565e4a0cd5. Do not edit.
title: "Decrypt a key"
description: "`keys.keys.decrypt` (POST /v1/{name}:decrypt): Decrypts a ciphertext made by Encrypt with this key."
type: reference
product: platform
summary: "Decrypts a ciphertext made by Encrypt with this key."
updated: 2026-09-28
nav: false
---

> **This method is not served on the public API.** `api.sylphx.com` does not route this call: its backend is not deployed behind the public API, or does not implement the call. This page documents the contract. It is kept out of the sidebar and of search engines.

Decrypts a ciphertext made by Encrypt with this key.

**Not available yet.** Sylphx Keys is declared in the registry but no backend serves it: every call answers `501` with the problem code `UNIMPLEMENTED`.

- **Path** `POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/keys/key:decrypt`
- **Scope** `keys:decrypt`
- **Effect** `read` — nothing is written.
- **Collection** [keys](/docs/api/keys)

## Request

| Field | Type | What it is |
| --- | --- | --- |
| `name` | `string` | The key to use. Required. |
| `ciphertext` | `bytes` | The ciphertext from Encrypt. Required. |
| `additional_authenticated_data` | `bytes` | The additional authenticated data given to Encrypt. |

## Response

| Field | Type | What it is |
| --- | --- | --- |
| `plaintext` | `bytes` | The plaintext. Never returned again. |
| `key_version` | `string` | The version that decrypted. |

## Errors

- [`UNAUTHENTICATED`](/docs/api/errors/UNAUTHENTICATED) — No valid key or token was presented.
- [`PERMISSION_DENIED`](/docs/api/errors/PERMISSION_DENIED) — The key lacks the method's permission.
- [`RESOURCE_NOT_FOUND`](/docs/api/errors/RESOURCE_NOT_FOUND) — The named Resource does not exist or is not visible.
- [`INVALID_FIELD`](/docs/api/errors/INVALID_FIELD) — A field failed validation.
- [`INVALID_STATE`](/docs/api/errors/INVALID_STATE) — The Resource is in a state that forbids the call.
- [`RATE_LIMITED`](/docs/api/errors/RATE_LIMITED) — The rate limit is reached; see Retry-After.

Every error arrives in the body [Errors](/docs/platform/errors) describes.

## Examples

**cURL**

```curl
curl -X POST "https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/keys/key:decrypt" \
  -H "Authorization: Bearer $SYLPHX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ciphertext":"…"}'
```

**TypeScript**

```ts
const response = await sylphx.keys.keys.decrypt({ ciphertext: '…', name: 'orgs/acme/projects/shop/envs/production/keys/key' })
```

**Rust**

```rust
let mut req = sylphx::keys::DecryptRequest::default();
req.ciphertext = "…".to_string();
req.name = "orgs/acme/projects/shop/envs/production/keys/key".to_string();
let response = sx.keys().keys().decrypt(req).await?;
```

**CLI**

```bash
sylphx keys keys decrypt orgs/acme/projects/shop/envs/production/keys/key
```

**MCP**

```json
{ "method_id": "keys.keys.decrypt", "args": {"ciphertext":"…","name":"orgs/acme/projects/shop/envs/production/keys/key"} }
```
