---
title: "Plaid Exchange Token"
method: POST
path: "/api/integrations/plaid/exchange-token"
tags: ["integrations"]
---

# Plaid Exchange Token

`POST /api/integrations/plaid/exchange-token`

## Request

- Base URL: `https://api.tintin-x.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.tintin-x.com/api/integrations/plaid/exchange-token`
- Auth: HTTP bearer

Exchange a Plaid public_token for an access_token and store the connection.

## Request body

- PlaidExchangeTokenRequest
  - `public_token` string, required
  - `institution_id` string
  - `institution_name` string
  - `account_ids` string[]
  - `scope_level` string
  - `label` string, nullable
  - `agent_ids` string[]

## Response `200`

Successful Response

- ConnectedServiceResponse
  - `id` string, uuid, required
  - `service_id` string, required
  - `instance_label` string, required
  - `scope_level` string, required
  - `scopes` string[], nullable
  - `external_account_id` string, nullable
  - `external_account_name` string, nullable
  - `status` string, required
  - `last_used_at` string, date-time, nullable
  - `created_at` string, date-time, required
  - `grants` ServiceGrantResponse[]
    - `id` string, uuid, required
    - `agent_id` string, uuid, required
    - `created_at` string, date-time, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/tintin-x/apis/tintin-api.md) · [All operations](https://skmtc.dev/tintin-x/apis/tintin-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tintin-x/apis/tintin-api/revisions/8839a8d0a66c?raw)
