Plaid · Schema

BetaPartnerCustomerV1CreateRequest

Request schema for `/beta/partner/customer/v1/create`.

FinanceFintechOpen BankingBank AccountsData AggregationPaymentsUnited States

Properties

Name Type Description
client_id object
secret object
company_name string The company name of the end customer being created. This will be used to display the end customer in the Plaid Dashboard. It will not be shown to end users.
is_diligence_attested boolean Denotes whether or not the partner has completed attestation of diligence for the end customer to be created.
products array The products to be enabled for the end customer. If empty or `null`, this field will default to the products enabled for the reseller at the time this endpoint is called.
create_link_customization boolean If `true`, the end customer's default Link customization will be set to match the partner's. You can always change the end customer's Link customization in the Plaid Dashboard. See the [Link Customiza
logo string Base64-encoded representation of the end customer's logo. Must be a PNG of size 1024x1024 under 4MB. The logo will be shared with financial institutions and shown to the end user during Link flows. A
legal_entity_name string The end customer's legal name. This will be shared with financial institutions as part of the OAuth registration process. It will not be shown to end users.
website string The end customer's website.
application_name string The name of the end customer's application. This will be shown to end users when they go through the Plaid Link flow. The application name must be unique and cannot match the name of another applicati
technical_contact object
billing_contact object
customer_support_info object
address object
redirect_uris array A list of URIs indicating the destination(s) where a user can be forwarded after completing the Link flow; used to support OAuth authentication flows when launching Link in the browser or another app.
bank_addendum_acceptance object
questionnaires object
View JSON Schema on GitHub

JSON Schema

plaid-beta-partner-customer-v1-create-request-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/plaid/main/json-schema/plaid-beta-partner-customer-v1-create-request-schema.json",
  "title": "BetaPartnerCustomerV1CreateRequest",
  "description": "Request schema for `/beta/partner/customer/v1/create`.",
  "x-generated": "2026-09-23",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/plaid-plaid-api-openapi.yml#/components/schemas/BetaPartnerCustomerV1CreateRequest",
  "properties": {
    "client_id": {
      "$ref": "#/$defs/APIClientID"
    },
    "secret": {
      "$ref": "#/$defs/APISecret"
    },
    "company_name": {
      "description": "The company name of the end customer being created. This will be used to display the end customer in the Plaid Dashboard. It will not be shown to end users.",
      "type": "string"
    },
    "is_diligence_attested": {
      "description": "Denotes whether or not the partner has completed attestation of diligence for the end customer to be created.",
      "type": "boolean"
    },
    "products": {
      "description": "The products to be enabled for the end customer. If empty or `null`, this field will default to the products enabled for the reseller at the time this endpoint is called.",
      "type": "array",
      "items": {
        "$ref": "#/$defs/Products"
      }
    },
    "create_link_customization": {
      "description": "If `true`, the end customer's default Link customization will be set to match the partner's. You can always change the end customer's Link customization in the Plaid Dashboard. See the [Link Customization docs](https://plaid.com/docs/link/customization/) for more information. If you require the ability to programmatically create end customers using multiple different Link customization profiles, contact your Plaid account manager for assistance.\n\nImportant: Data Transparency Messaging (DTM) use cases will not be copied to the end customer's Link customization unless the **Publish changes** button is clicked after the use cases are applied. Link will not work in Production unless the end customer's DTM use cases are configured. For more details, see [Data Transparency Messaging](https://plaid.com/docs/link/data-transparency-messaging-migration-guide/).",
      "type": "boolean"
    },
    "logo": {
      "description": "Base64-encoded representation of the end customer's logo. Must be a PNG of size 1024x1024 under 4MB. The logo will be shared with financial institutions and shown to the end user during Link flows. A logo is required if `create_link_customization` is `true`. If `create_link_customization` is `false` and the logo is omitted, the partner's logo will be used if one exists, otherwise a stock logo will be used.",
      "type": "string"
    },
    "legal_entity_name": {
      "description": "The end customer's legal name. This will be shared with financial institutions as part of the OAuth registration process. It will not be shown to end users.",
      "type": "string"
    },
    "website": {
      "description": "The end customer's website.",
      "type": "string"
    },
    "application_name": {
      "description": "The name of the end customer's application. This will be shown to end users when they go through the Plaid Link flow. The application name must be unique and cannot match the name of another application already registered with Plaid.",
      "type": "string"
    },
    "technical_contact": {
      "$ref": "#/$defs/PartnerEndCustomerTechnicalContact"
    },
    "billing_contact": {
      "$ref": "#/$defs/PartnerEndCustomerBillingContact"
    },
    "customer_support_info": {
      "$ref": "#/$defs/PartnerEndCustomerCustomerSupportInfo"
    },
    "address": {
      "$ref": "#/$defs/PartnerEndCustomerAddress"
    },
    "redirect_uris": {
      "description": "A list of URIs indicating the destination(s) where a user can be forwarded after completing the Link flow; used to support OAuth authentication flows when launching Link in the browser or another app. URIs should not contain any query parameters. When used in Production, URIs must use https. To modify redirect URIs for an end customer after creating them, go to the end customer's [API page](https://dashboard.plaid.com/team/api) in the Dashboard.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "bank_addendum_acceptance": {
      "$ref": "#/$defs/PartnerEndCustomerBankAddendumAcceptance"
    },
    "questionnaires": {
      "$ref": "#/$defs/PartnerEndCustomerQuestionnaires"
    }
  },
  "required": [
    "company_name",
    "website",
    "application_name",
    "address",
    "customer_support_info"
  ],
  "$defs": {
    "APIClientID": {
      "title": "ClientID",
      "type": "string",
      "description": "Your Plaid API `client_id`. The `client_id` is required and may be provided either in the `PLAID-CLIENT-ID` header or as part of a request body."
    },
    "APISecret": {
      "title": "APISecret",
      "type": "string",
      "description": "Your Plaid API `secret`. The `secret` is required and may be provided either in the `PLAID-SECRET` header or as part of a request body."
    },
    "PartnerEndCustomerAddress": {
      "description": "The end customer's address.",
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "city": {
          "type": "string"
        },
        "street": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "postal_code": {
          "type": "string"
        },
        "country_code": {
          "description": "ISO-3166-1 alpha-2 country code standard.",
          "type": "string"
        }
      }
    },
    "PartnerEndCustomerBankAddendumAcceptance": {
      "description": "The bank addendum acceptance for the end customer.",
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "customer_accepted": {
          "type": "boolean",
          "description": "Denotes whether the end customer has accepted the bank addendum terms."
        },
        "customer_ip_address": {
          "type": "string",
          "description": "The IP address of the end customer when they accepted the bank addendum."
        },
        "customer_agreement_timestamp": {
          "type": "string",
          "format": "date-time",
          "description": "The timestamp of when the end customer accepted the bank addendum in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:mm:ssZ`)."
        }
      }
    },
    "PartnerEndCustomerBillingContact": {
      "description": "The billing contact for the end customer. Defaults to partner's billing contact if omitted.",
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "given_name": {
          "type": "string"
        },
        "family_name": {
          "type": "string"
        },
        "email": {
          "type": "string"
        }
      }
    },
    "PartnerEndCustomerCRAPurposes": {
      "description": "A map of permissible purposes to their corresponding use cases.",
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "WRITTEN_INSTRUCTION": {
          "$ref": "#/$defs/PartnerEndCustomerCRAUseCases"
        },
        "EXTENSION_OF_CREDIT_OR_ACCOUNT_REVIEW": {
          "$ref": "#/$defs/PartnerEndCustomerCRAUseCases"
        },
        "EMPLOYMENT": {
          "$ref": "#/$defs/PartnerEndCustomerCRAUseCases"
        },
        "INSURANCE_UNDERWRITING": {
          "$ref": "#/$defs/PartnerEndCustomerCRAUseCases"
        },
        "LICENSE_ELIGIBILITY": {
          "$ref": "#/$defs/PartnerEndCustomerCRAUseCases"
        },
        "RISK_ASSESSMENT": {
          "$ref": "#/$defs/PartnerEndCustomerCRAUseCases"
        },
        "BUSINESS_NEED_TRANSACTION": {
          "$ref": "#/$defs/PartnerEndCustomerCRAUseCases"
        },
        "BUSINESS_NEED_ACCOUNT_REVIEW": {
          "$ref": "#/$defs/PartnerEndCustomerCRAUseCases"
        }
      }
    },
    "PartnerEndCustomerCRAQuestionnaire": {
      "description": "The CRA questionnaire for the end customer.",
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "purposes": {
          "$ref": "#/$defs/PartnerEndCustomerCRAPurposes"
        },
        "is_third_party_involved": {
          "type": "boolean",
          "description": "Denotes whether the third party is involved."
        },
        "is_technical_service_provider_involved": {
          "type": "boolean",
          "description": "Denotes whether the technical service provider is involved."
        }
      }
    },
    "PartnerEndCustomerCRAUseCase": {
      "description": "A CRA use case under a permissible purpose.",
      "type": "string",
      "enum": [
        "CREDIT_UNDERWRITING",
        "TENANT_SCREENING",
        "INVESTOR_OR_SERVICER_OF_CREDIT",
        "UTILITIES",
        "BANK_ACCOUNT_OPENING",
        "IDENTITY_VERIFICATION_FRAUD_PREVENTION",
        "COLLECTIONS_DEBT_RECOVERY"
      ]
    },
    "PartnerEndCustomerCRAUseCases": {
      "description": "The list of use cases associated with a given permissible purpose.",
      "type": "object",
      "properties": {
        "use_cases": {
          "type": "array",
          "description": "List of use cases for the given permissible purpose.",
          "items": {
            "$ref": "#/$defs/PartnerEndCustomerCRAUseCase"
          }
        }
      }
    },
    "PartnerEndCustomerCustomerSupportInfo": {
      "description": "This information is public. Users of your app will see this information when managing connections between your app and their bank accounts in Plaid Portal. Defaults to partner's customer support info if omitted. This field is mandatory for partners whose Plaid accounts were created after November 26, 2024 and will be mandatory for all partners by the 1033 compliance deadline.",
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "email": {
          "type": "string",
          "description": "This field is mandatory for partners whose Plaid accounts were created after November 26, 2024 and will be mandatory for all partners by the 1033 compliance deadline."
        },
        "phone_number": {
          "type": "string"
        },
        "contact_url": {
          "type": "string"
        },
        "link_update_url": {
          "type": "string"
        }
      }
    },
    "PartnerEndCustomerQuestionnaires": {
      "description": "The questionnaires for the end customer.",
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "cra": {
          "$ref": "#/$defs/PartnerEndCustomerCRAQuestionnaire"
        }
      }
    },
    "PartnerEndCustomerTechnicalContact": {
      "description": "The technical contact for the end customer. Defaults to partner's technical contact if omitted.",
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "given_name": {
          "type": "string"
        },
        "family_name": {
          "type": "string"
        },
        "email": {
          "type": "string"
        }
      }
    },
    "Products": {
      "title": "Products",
      "enum": [
        "assets",
        "auth",
        "balance",
        "balance_plus",
        "beacon",
        "identity",
        "identity_match",
        "investments",
        "investments_auth",
        "liabilities",
        "payment_initiation",
        "identity_verification",
        "transactions",
        "credit_details",
        "income",
        "income_verification",
        "standing_orders",
        "transfer",
        "employment",
        "recurring_transactions",
        "transactions_refresh",
        "signal",
        "statements",
        "processor_payments",
        "processor_identity",
        "profile",
        "cra_base_report",
        "cra_income_insights",
        "cra_partner_insights",
        "cra_network_insights",
        "cra_cashflow_insights",
        "cra_monitoring",
        "cra_lend_score",
        "cra_plaid_credit_score",
        "cra_qualify",
        "cra_home_lending",
        "layer",
        "pay_by_bank",
        "protect_linked_bank",
        "protect_transactions"
      ],
      "description": "A list of products that an institution can support. All Items must be initialized with at least one product. The Balance product is always available and does not need to be specified during initialization.",
      "type": "string"
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/plaid-beta-partner-customer-v1-create-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.