Capability Library · Pack detail

plaid v1.0.0

Plaid account data: read accounts, transactions, balances and identity data for connected Items, and create Link tokens.

Review state: draft· Not in the distributable release manifest

Release identity

SHA-256 of the pack file bytes: 4ae7105cdef79ba2c8d247376aa31986017850769327165cb8550ba6bc77e39f

Not in the distributable release manifest. The binary carries a digest-bound manifest of the distributable library; a pack whose bytes differ from its manifest entry — endpoint, tier, allowlist, or credential edited, with provider, version, and review block preserved — fails the digest check, loses distributability, and renders MODIFIED rather than as the shipped reviewed artifact. Review state and artifact status are different facts: the first is a documentation-review declaration, the second is the identity of the exact bytes.

Capabilities (5)

plaid.accounts.read v1.0.0R0

Action
read
Endpoint
POST https://production.plaid.com/accounts/get
Connector
http
Custody
customer_vault
Credential ref
secret-ref-plaid-client-secret
Data class
financial

Read the collection of accounts for one end user's Item (a connected institution login): account ids, names, masks, types and current/available balances. Collection read; the access_token in the request body selects the Item. That access_token is a SECOND secret (per-Item end-user credential material): it must be resolved from the deployment's trusted per-Item vault and injected into the request body by the trusted executor, never exposed to the agent, prompts or ordinary request logs — this pack's single registered injection (the PLAID-SECRET header) does NOT implement that wiring; it is a deployment wiring item.

plaid.transactions.read v1.0.0R0

Action
read
Endpoint
POST https://production.plaid.com/transactions/get
Connector
http
Custody
customer_vault
Credential ref
secret-ref-plaid-client-secret
Data class
financial

Read the paginated collection of transactions for one Item; the request body selects the date range and page. Collection read. The access_token in the request body is a SECOND secret (per-Item end-user credential material): it must be resolved from the deployment's trusted per-Item vault and injected into the request body by the trusted executor, never exposed to the agent, prompts or ordinary request logs — this pack's single registered injection (the PLAID-SECRET header) does NOT implement that wiring; it is a deployment wiring item.

plaid.balances.read v1.0.0R0

Action
read
Endpoint
POST https://production.plaid.com/accounts/balance/get
Connector
http
Custody
customer_vault
Credential ref
secret-ref-plaid-client-secret
Data class
financial

Read the real-time balance collection for one Item's accounts; Plaid requests updated balances from the institution where supported. Collection read. The access_token in the request body is a SECOND secret (per-Item end-user credential material): it must be resolved from the deployment's trusted per-Item vault and injected into the request body by the trusted executor, never exposed to the agent, prompts or ordinary request logs — this pack's single registered injection (the PLAID-SECRET header) does NOT implement that wiring; it is a deployment wiring item.

plaid.identity.read v1.0.0R0

Action
read
Endpoint
POST https://production.plaid.com/identity/get
Connector
http
Custody
customer_vault
Credential ref
secret-ref-plaid-client-secret
Data class
pii

Read the collection of identity data the institution holds for one Item's accounts: owner names, addresses, emails and phone numbers — personal data. Collection read. The access_token in the request body is a SECOND secret (per-Item end-user credential material): it must be resolved from the deployment's trusted per-Item vault and injected into the request body by the trusted executor, never exposed to the agent, prompts or ordinary request logs — this pack's single registered injection (the PLAID-SECRET header) does NOT implement that wiring; it is a deployment wiring item.

plaid.link_token.create v1.0.0R2

Action
create
Endpoint
POST https://production.plaid.com/link/token/create
Connector
http
Custody
customer_vault
Credential ref
secret-ref-plaid-client-secret
Data class
internal

Create a link_token. The call creates a token object — no account data is returned — but what it enables is one Link session through which an end user connects an institution: completing that flow yields an ephemeral public_token (30 minutes per Plaid's docs) that the deployment exchanges, outside this pack, for the long-lasting access_token the read capabilities above spend. The same call also opens update-mode Link sessions — re-authentication or permission repair for an existing Item, where the request carries that Item's access_token; that token is the second secret described in the pack notes and must be vault-resolved and body-injected by the trusted executor with the same protections. Excluding Plaid's money-movement products from this pack does not constrain the Link configuration this call can request: an unrestricted request can name any product the Plaid account has enabled, so the deployment must either enforce an allowlist of products and other Link configuration at the wiring layer, or treat this capability as supporting the broader effects of every enabled product.

Credential reference

The pack names a reference, never a secret. Installing a pack registers capabilities and makes them governable; registration is not connectivity. The credential is created at the provider and held in the client's own secret manager under the reference the pack names, and deployment testing is still required to show the credential path works and cannot be bypassed.

Reference
secret-ref-plaid-client-secret
Custody
customer_vault
Injection
header (PLAID-SECRET)

The Plaid API secret for the deployment's own Plaid account, held in the client's own secret manager. Plaid authenticates every request with a client_id and secret pair, sent either as the PLAID-CLIENT-ID and PLAID-SECRET headers or in the request body; this pack injects the PLAID-SECRET header, and the stored material must be the complete header value — the raw secret, with no scheme prefix — while the non-secret client_id travels as the PLAID-CLIENT-ID header from the deployment's own configuration. Provisioning and rotation are external: the secret is issued, and can be rotated or revoked, in the Plaid Dashboard by the account's administrators; it remains valid until rotated or revoked there (no short automatic expiry is documented for the secret itself), so rotation cadence and revocation-on-suspicion are the deployment's process, and a revoked value fails closed. Privilege restrictions: the secret authenticates at the Plaid account level — the available restriction is the Dashboard's per-environment and per-product configuration of the account and its keys (Sandbox and Production secrets are different credentials), so point this reference at the Production secret only when the deployment is meant to read live account data, and confirm the enabled-product set there because link_token.create can request any of them. Executor hygiene: the resolved material must exist only in the executor process's memory for the moment of injection, must never be written to logs, traces or diagnostics, and must never appear in crash reports. SECOND SECRET — separate from this reference: each per-Item access_token the read capabilities spend is additional end-user credential material, minted outside this pack by the deployment's token-handling path; it must be held in a trusted per-Item vault and injected into the request body by the trusted executor with the same log/trace/crash protections, never exposed to the agent, prompts or ordinary request logs. This single registered injection does NOT implement that per-Item resolution and body injection — it is a deployment wiring item.

Resources

  • plaid-items (api, financial): https://production.plaid.com

Pack notes and exclusions

Plaid's API is JSON-over-HTTP and POST-only, including for reads, so the read capabilities here ride on POST methods; nothing about a POST method changes the read verb's meaning. Hosts are per environment — Plaid's docs name https://sandbox.plaid.com (Sandbox) and https://production.plaid.com (Production), and Items cannot be moved between environments — so this pack registers the Production host, and a deployment testing in Sandbox replaces the host in the endpoint and the egress allowlist in step. This pack does not register /item/public_token/exchange: the exchange returns the access_token, and Plaid's own guidance is that every token except the public_token and link_token is long-lasting and sensitive — that response is newly minted credential material, which a governed executor must not receive as call output, so the exchange belongs in the deployment's token-handling path, not in a capability. SECOND SECRET: the read capabilities take an access_token in the request body, and that per-Item token is end-user credential material — a second secret distinct from the pack credential (the client secret below). The deployment must resolve it from a trusted per-Item vault and have the trusted executor inject it into the request body, without ever exposing it to the agent, to prompts, or to ordinary request logs; this pack's single registered injection (the PLAID-SECRET header) does NOT implement that per-Item wiring — it is a deployment wiring item, and enabling these capabilities without it would push a live access_token into agent-visible request material. Link tokens: plaid.link_token.create covers both initial-linking Link sessions and update-mode Link sessions (re-authentication or permission repair for an existing Item, where the request carries that Item's access_token, with the same second-secret custody). Excluding Plaid's money-movement products (Transfer, Payment Initiation) from this pack does not constrain the Link configuration this call can request: an unrestricted /link/token/create request can name any product the Plaid account has enabled, so the deployment must either enforce an allowlist of products and other Link configuration at the wiring layer, or treat this capability as supporting the broader effects of every product enabled on the account. This pack does not register the processor-token endpoints. AAES has not been certified by Plaid; the endpoints here are a reviewable default, not a vendor guarantee.

Review record

Draft review record dated 2026-09-21 · Reviewer: aaes-eng (an opaque id that resolves internally to the responsible reviewer)

A pack review is not a vendor or examiner attestation. A retrieval date says when a source page was read; it does not by itself establish what the page said then. No pack is vendor-endorsed, and none has been connectivity-tested against a live vendor tenant.