fastify-xplaid
xplaid.items.getInstitution
Get metadata for a financial institution by its Plaid institution ID, including name, logo, primary color, and supported products.
xplaid.items.getInstitution
Returns metadata for a financial institution by its Plaid institution ID — name, logo, primary color, supported products, OAuth support, and more.
Signature
fastify.xplaid.items.getInstitution(
institutionId: string,
countryCodes?: string[] // default: ["US"]
): Promise<{ institution: Institution; requestId: string }>
Params
| Name | Type | Required | Description |
|---|---|---|---|
institutionId | string | Yes | Plaid institution ID, e.g. "ins_3" for Chase. |
countryCodes | string[] | No | ISO 3166-1 alpha-2 country codes. Defaults to ["US"]. |
Returns
{ institution: Institution; requestId: string }
| Field | Type | Description |
|---|---|---|
institution.institution_id | string | Plaid institution ID. |
institution.name | string | Institution display name. |
institution.products | string[] | Supported Plaid products. |
institution.country_codes | string[] | Countries this institution operates in. |
institution.logo | string | null | Base64-encoded PNG logo. |
institution.primary_color | string | null | Brand hex color. |
institution.oauth | boolean | Whether this institution uses OAuth. |
institution.url | string | null | Institution's website URL. |
Throws
[xPlaid] institutionId is required and must be a non-empty string- Plaid API errors — shape:
{ message, statusCode, plaidError }.
Examples
Basic
const { institution } = await fastify.xplaid.items.getInstitution("ins_3");
console.log(institution.name); // "Chase"
console.log(institution.primary_color); // "#107EBF"
// logo is a base64 PNG string
Realistic
fastify.post("/plaid/connect", async (request, reply) => {
const { publicToken, institutionId } = request.body;
const { accessToken, itemId } = await fastify.xplaid.link.exchangePublicToken(publicToken);
const { institution } = await fastify.xplaid.items.getInstitution(institutionId);
await db.plaidItems.create({
data: {
userId: request.user.id,
itemId,
accessToken: encrypt(accessToken),
institutionId,
institutionName: institution.name,
institutionLogo: institution.logo,
institutionColor: institution.primary_color,
},
});
return reply.code(201).send({ itemId, institutionName: institution.name });
});
See also
- items.searchInstitutions — Search for institutions by name.
- items.get — Get Item status including
institution_id. - fastify-xplaid overview — Plugin setup and options.
AI Context
package: "@xenterprises/fastify-xplaid"
method: fastify.xplaid.items.getInstitution(institutionId, countryCodes?)
use-when: Retrieve display metadata for a bank — name, logo, color, OAuth support — after Link or for UI enrichment
returns: { institution: { institution_id, name, products, country_codes, logo, primary_color, oauth, url }, requestId }
