Update Webhook URL

POST /item/webhook/update

The POST /item/webhook/update allows you to update the webhook URL associated with an Item. This request triggers a WEBHOOK_UPDATE_ACKNOWLEDGED webhook to the newly specified webhook URL.

Request Body

Required

ItemWebhookUpdateRequest defines the request schema for /item/webhook/update

Parameters

client_id
string
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.
secret
string
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.
access_token
required, string
The access token associated with the Item data is being requested for.
webhook
string
The new webhook URL to associate with the Item. To remove a webhook from an Item, set to null.

Response

ItemWebhookUpdateResponse defines the response schema for /item/webhook/update

Response Properties

item
required, object
Metadata about the Item.
item_id
required, string
The Plaid Item ID. The item_id is always unique; linking the same account at the same institution twice will result in two Items with different item_id values. Like all Plaid identifiers, the item_id is case-sensitive.
institution_id
string
The Plaid Institution ID associated with the Item. Field is null for Items created without an institution connection, such as Items created via Same Day Micro-deposits.
institution_name
string
The name of the institution associated with the Item. Field is null for Items created without an institution connection, such as Items created via Same Day Micro-deposits.
webhook
required, string
The URL registered to receive webhooks for the Item.
auth_method
string
The method used to populate Auth data for the Item. This field is only populated for Items that have had Auth numbers data set on at least one of its accounts, and will be null otherwise. For info about the various flows, see our Auth coverage documentation. INSTANT_AUTH: The Item’s Auth data was provided directly by the user’s institution connection. INSTANT_MATCH: The Item’s Auth data was provided via the Instant Match fallback flow. AUTOMATED_MICRODEPOSITS: The Item’s Auth data was provided via the Automated Micro-deposits flow. SAME_DAY_MICRODEPOSITS: The Item’s Auth data was provided via the Same Day Micro-deposits flow. INSTANT_MICRODEPOSITS: The Item’s Auth data was provided via the Instant Micro-deposits flow. DATABASE_MATCH: The Item’s Auth data was provided via the Database Match flow. DATABASE_INSIGHTS: The Item’s Auth data was provided via the Database Insights flow. TRANSFER_MIGRATED: The Item’s Auth data was provided via /transfer/migrate_account. INVESTMENTS_FALLBACK: The Item’s Auth data for Investments Move was provided via a fallback flow.
error
required, object
Errors are identified by error_code and categorized by error_type. Use these in preference to HTTP status codes to identify and handle specific errors. HTTP status codes are set and provide the broadest categorization of errors: 4xx codes are for developer- or user-related errors, and 5xx codes are for Plaid-related errors, and the status will be 2xx in non-error cases. An Item with a non-null error object will only be part of an API response when calling /item/get to view Item status. Otherwise, error fields will be null if no error has occurred; if an error has occurred, an error code will be returned instead.
error_type
required, string
A broad categorization of the error. Safe for programmatic use.
error_code
required, string
The particular error code. Safe for programmatic use.
error_code_reason
string
The specific reason for the error code. Currently, reasons are only supported OAuth-based item errors; null will be returned otherwise. Safe for programmatic use. Possible values: OAUTH_INVALID_TOKEN: The user’s OAuth connection to this institution has been invalidated. OAUTH_CONSENT_EXPIRED: The user’s access consent for this OAuth connection to this institution has expired. OAUTH_USER_REVOKED: The user’s OAuth connection to this institution is invalid because the user revoked their connection.
error_message
required, string
A developer-friendly representation of the error code. This may change over time and is not safe for programmatic use.
display_message
required, string
A user-friendly representation of the error code. null if the error is not related to user action. This may change over time and is not safe for programmatic use.
request_id
string
A unique ID identifying the request, to be used for troubleshooting purposes. This field will be omitted in errors provided by webhooks.
causes
array
In this product, a request can pertain to more than one Item. If an error is returned for such a request, causes will return an array of errors containing a breakdown of these errors on the individual Item level, if any can be identified. causes will be provided for the error_type ASSET_REPORT_ERROR or CHECK_REPORT_ERROR. causes will also not be populated inside an error nested within a warning object.
status
integer
The HTTP status code associated with the error. This will only be returned in the response body when the error information is provided via a webhook.
documentation_url
string
The URL of a Plaid documentation page with more information about the error
suggested_action
string
Suggested steps for resolving the error
available_products
required, array[string]
A list of products available for the Item that have not yet been accessed. The contents of this array will be mutually exclusive with billed_products.
billed_products
required, array[string]
A list of products that have been billed for the Item. The contents of this array will be mutually exclusive with available_products. Note - billed_products is populated in all environments but only requests in Production are billed. Also note that products that are billed on a pay-per-call basis rather than a pay-per-Item basis, such as balance, will not appear here.
products
array[string]
A list of products added to the Item. In almost all cases, this will be the same as the billed_products field. For some products, it is possible for the product to be added to an Item but not yet billed (e.g. Assets, before /asset_report/create has been called, or Auth or Identity when added as Optional Products but before their endpoints have been called), in which case the product may appear in products but not in billed_products.
consented_products
array[string]
A list of products that the user has consented to for the Item via Data Transparency Messaging. This will consist of all products where both of the following are true: the user has consented to the required data scopes for that product and you have Production access for that product.
consent_expiration_time
required, string
The date and time at which the Item’s access consent will expire, in ISO 8601 format. If the Item does not have consent expiration scheduled, this field will be null. Currently, only institutions in Europe and a small number of institutions in the US have expiring consent. For a list of US institutions that currently expire consent, see the OAuth Guide.
update_type
required, string
Indicates whether an Item requires user interaction to be updated, which can be the case for Items with some forms of two-factor authentication. background - Item can be updated in the background user_present_required - Item requires user interaction to be updated
request_id
required, string
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.