# Agent identity and grants

> Palladin documentation · 1.0 · EN · 2026-10-25


## Agent identity

Each agent has its own identifier and keys: one for receiving encrypted data, another for signing requests. A profile is the local name you use to select that agent. An API key connects it to an organization, but does not replace its own identity.

Browser pairing allows approval without copying a secret into the model. An internal Agent-bound credential remains under the logical organization key and creates no independent permissions.

## Approving access

<figure class="doc-diagram"><ol><li>Agent: request + reason</li><li>User: decision</li><li>Client: encrypted grant</li><li>Runtime: verify + use</li></ol><figcaption>Approval covers a specific scope and method. The approving client prepares cryptographic material.</figcaption></figure>

An approval to access data is called a **grant**. It defines the data scope, permitted use, duration, and usage limit. The server checks these conditions, while the local Palladin program checks that received data belongs to the correct agent and task.

## GRANULAR and FULL

| Model | Material | Meaning |
| --- | --- | --- |
| GRANULAR | A separate key and copy of data for a specific entry | The agent receives only the approved data, without the key to the entire vault. |
| FULL | Encrypted Vault Key (VK) | The agent receives the key to the vault. This requires greater trust than sharing a single entry. |

Retrieval limits control server responses. They do not prevent a vault-key holder from decrypting data they already have.

## Methods and limits

A grant specifies permitted use methods. `Exec` permission does not authorize `Get`. Retrieving encrypted data may consume a use even if the program later fails. Retrying may count as another use.

Denial and deliberate revocation are user decisions. An Agent should not bypass them using a new profile, another method, or repeated requests.
