{"api_name":"Plaid","docs_url":"https://plaid.com/docs/","domain":"plaid.com","generated_at":"2026-10-05T20:17:13.893649+00:00","agent_readiness_score":90,"certification_level":"Yoofooz Certified","agent_commerce_score":55,"agent_commerce_level":"Agent Commerce Emerging","agent_commerce":{"generated_at":"2026-10-05T20:17:13.794409+00:00","agent_commerce_score":55,"agent_commerce_level":"Agent Commerce Emerging","machine_payment_capable":false,"detected_protocols":["MCP"],"category_scores":{"mcp_support":10,"agent_identity_auth":5,"machine_payments":0,"machine_pricing":0,"budget_controls":5,"agent_rate_controls":10,"deterministic_errors":10,"auditability":5,"agent_security":5,"agent_observability":5},"strengths":["MCP support","Agent rate and quota controls","Deterministic machine-readable errors"],"gaps":["Machine-native payments","Machine-readable consumption pricing"],"matched_signals":{"mcp_support":{"score":10,"matched_terms":["mcp server","mcp"]},"agent_identity_auth":{"score":5,"matched_terms":["oauth","authorization","scopes","access token"]},"machine_payments":{"score":0,"matched_terms":[]},"machine_pricing":{"score":0,"matched_terms":[]},"budget_controls":{"score":5,"matched_terms":["budget","limit"]},"agent_rate_controls":{"score":10,"matched_terms":["rate limit","rate limits","retry-after","too many requests","429","limits"]},"deterministic_errors":{"score":10,"matched_terms":["error codes","idempotency","retry-after","errors","status codes","retry"]},"auditability":{"score":5,"matched_terms":["logs","history","receipt"]},"agent_security":{"score":5,"matched_terms":["permissions","policy","scopes"]},"agent_observability":{"score":5,"matched_terms":["metrics","usage","dashboard","monitoring"]}},"evidence_signals":{"mcp_support":[{"source_url":"https://plaid.com/docs/","matched_terms":["mcp server","mcp"],"snippet":"u can ask me all about the Plaid API. Try asking questions like: Pssst -- I also moonlight as your IDE's research librarian! Plug me in via the Plaid MCP Server . Note: Bill isn't perfect. He's just a robot platypus that reads our docs for fun. You should treat his answers with the same healthy skepticism you might..."},{"source_url":"https://plaid.com/docs/errors/","matched_terms":["mcp server","mcp"],"snippet":"u can ask me all about the Plaid API. Try asking questions like: Pssst -- I also moonlight as your IDE's research librarian! Plug me in via the Plaid MCP Server . Note: Bill isn't perfect. He's just a robot platypus that reads our docs for fun. You should treat his answers with the same healthy skepticism you might..."}],"agent_identity_auth":[{"source_url":"https://plaid.com/docs/errors/","matched_terms":["oauth"],"snippet":"rrors CRA Monitoring errors User errors Invalid Request errors Invalid Input errors Invalid Result errors Rate Limit Exceeded errors Recaptcha errors OAuth errors Microdeposits errors Partner errors Docs Search or Ask a Question Markdown Plaid.com Log in Get API Keys Open nav Close search modal Search the docs Ask..."},{"source_url":"https://plaid.com/docs/errors/rate-limit-exceeded/","matched_terms":["oauth","authorization"],"snippet":"# ITEM_GET_LIMIT # RATE_LIMIT # TRANSACTIONS_LIMIT # TRANSACTIONS_REFRESH _LIMIT # TRANSACTIONS_SYNC _LIMIT # TRIAL_CONNECTION_LIMIT Recaptcha errors OAuth errors Microdeposits errors Partner errors Docs Search or Ask a Question Markdown Plaid.com Log in Get API Keys Open nav Close search modal Search the docs Ask..."}],"budget_controls":[{"source_url":"https://plaid.com/docs/","matched_terms":["budget"],"snippet":"yments (Europe) Make one-time payments, recurring payments, or payouts within your app. Financial Insights Transactions Retrieve transaction data for budgeting tools, expense management, and more. Transactions Retrieve transaction data for budgeting tools, expense management, and more. Investments View holdings and..."},{"source_url":"https://plaid.com/docs/errors/","matched_terms":["limit"],"snippet":"ck Report errors Check Report webhook errors CRA Monitoring errors User errors Invalid Request errors Invalid Input errors Invalid Result errors Rate Limit Exceeded errors Recaptcha errors OAuth errors Microdeposits errors Partner errors Docs Search or Ask a Question Markdown Plaid.com Log in Get API Keys Open nav..."}],"agent_rate_controls":[{"source_url":"https://plaid.com/docs/errors/","matched_terms":["rate limit","too many requests"],"snippet":") Check Report errors Check Report webhook errors CRA Monitoring errors User errors Invalid Request errors Invalid Input errors Invalid Result errors Rate Limit Exceeded errors Recaptcha errors OAuth errors Microdeposits errors Partner errors Docs Search or Ask a Question Markdown Plaid.com Log in Get API Keys Open..."},{"source_url":"https://plaid.com/docs/errors/rate-limit-exceeded/","matched_terms":["rate limit","rate limits","limits"],"snippet":") Check Report errors Check Report webhook errors CRA Monitoring errors User errors Invalid Request errors Invalid Input errors Invalid Result errors Rate Limit Exceeded errors # Rate limit table # ACCOUNTS_LIMIT # ACCOUNTS_BALANCE_GET _LIMIT # AUTH_LIMIT # BALANCE_LIMIT # CREDITS_EXHAUSTED # IDENTITY_LIMIT #..."}],"deterministic_errors":[{"source_url":"https://plaid.com/docs/","matched_terms":["errors"],"snippet":"Docs Home Quickstart API Link Sandbox Institutions Resources Errors Launch checklist Account Support Changelog Payments and Funding Auth Balance Signal Identity Transfer Investments Move Payments (Europe) Financial Insights Transactions"},{"source_url":"https://plaid.com/docs/errors/","matched_terms":["error codes","idempotency","errors","status codes"],"snippet":"end Bill any PII -- he's scared of intimacy. All chats with Bill are subject to Plaid's Privacy Policy. Errors A comprehensive breakdown of all Plaid error codes Most common errors The following are the most common errors that may occur in response to an API call even if your implementation is correct. This list of..."}],"auditability":[{"source_url":"https://plaid.com/docs/errors/","matched_terms":["history"],"snippet":"h creating or retrieving a Check Report. CONSUMER_REPORT_EXPIRED CONSUMER_REPORT_NOT_FOUND DATA_UNAVAILABLE PRODUCT_NOT_READY INSTITUTION_TRANSACTION_HISTORY_NOT_SUPPORTED INSUFFICIENT_TRANSACTION_DATA NO_ACCOUNTS INCOME_INSIGHTS_DELETED NETWORK_CONSENT_REQUIRED DATA_QUALITY_CHECK_FAILED PRODUCT_NOT_REQUESTED Check..."},{"source_url":"https://plaid.com/docs/errors/rate-limit-exceeded/","matched_terms":["history"],"snippet":"per minute /beacon/user/account_insights/get N/A 60 per minute /beacon/user/create N/A 240 per minute /beacon/user/get N/A 60 per minute /beacon/user/history/list N/A 60 per minute /beacon/user/update N/A 120 per minute /consent/events/get N/A 5,000 per minute /cra/check_report/base_report/get N/A 100 per minute (100..."}],"agent_security":[{"source_url":"https://plaid.com/docs/","matched_terms":["policy"],"snippet":"gged for quality and training purposes. Please don't send Bill any PII -- he's scared of intimacy. All chats with Bill are subject to Plaid's Privacy Policy. Welcome to the Docs Here you'll find guides, resources, and references to build with Plaid. Quickstart Learn about Plaid's key concepts and run starter code Get..."},{"source_url":"https://plaid.com/docs/errors/","matched_terms":["policy"],"snippet":"gged for quality and training purposes. Please don't send Bill any PII -- he's scared of intimacy. All chats with Bill are subject to Plaid's Privacy Policy. Errors A comprehensive breakdown of all Plaid error codes Most common errors The following are the most common errors that may occur in response to an API call..."}],"agent_observability":[{"source_url":"https://plaid.com/docs/errors/","matched_terms":["usage","monitoring"],"snippet":"ty outage RATE_LIMIT_EXCEEDED Applications that batch-process Plaid API calls or have heavy traffic spikes Too many requests made too quickly, or API usage caps hit INTERNAL_SERVER_ERROR All products Internal error or financial institution error not otherwise specified Errors overview Item errors Occur when an Item..."},{"source_url":"https://plaid.com/docs/errors/rate-limit-exceeded/","matched_terms":["metrics","dashboard","monitoring"],"snippet":"100 per minute /transfer/ledger/get N/A 10,000 per minute /transfer/ledger/withdraw N/A 10,000 per minute /transfer/list N/A 100 per minute /transfer/metrics/get N/A 100 per minute /transfer/migrate_account N/A 1,000 per minute /transfer/originator/funding_account/create N/A 10,000 per minute /transfer/originator/get..."}]},"scoring_signals":{"docs_fetched":true,"pages_fetched":12,"candidate_pages":12,"fetched_urls":["https://plaid.com/docs/","https://plaid.com/docs/errors/","https://plaid.com/docs/errors/rate-limit-exceeded/","https://plaid.com/docs/errors/check-report-webhook/","https://plaid.com/docs/errors/sandbox/","https://plaid.com/docs/errors/oauth/","https://plaid.com/docs/errors/api/","https://plaid.com/docs/api/sandbox/","https://plaid.com/docs/api/webhooks/","https://plaid.com/docs/api/webhooks/webhook-verification/","https://plaid.com/docs/api/webhooks/webhook-events/","https://plaid.com/docs/api/oauth/"],"scoring_source":"YoofoozBot bounded crawl"},"methodology":{"separate_from_agent_readiness":true,"category_count":10,"category_scale":[0,5,10],"max_score":100,"evidence_required_for_public_claims":true}},"category_scores":{"documentation_clarity":10,"machine_readable_spec":5,"authentication_clarity":10,"error_handling":10,"rate_limit_clarity":10,"agent_safe_workflow_support":10,"sandbox_availability":10,"webhook_event_support":10,"commercial_trust":5,"developer_experience":10},"strengths":["Documentation clarity","Authentication model clarity","Error handling and status codes","Rate-limit / quota behavior","Agent-safe workflow primitives (idempotency, retries)","Sandbox / test-mode availability","Webhook / event support","Developer experience (SDKs, quickstart, CLI)"],"risks":["Machine-readable specification (OpenAPI/Swagger) signal is partial; clearer documentation recommended.","Commercial trust (status, SLA, compliance) signal is partial; clearer documentation recommended."],"recommended_next_steps":["Strengthen: Add or expose an OpenAPI/Swagger specification or Postman collection.","Strengthen: Publish status page, SLA, and security/compliance posture (SOC 2, GDPR, PCI as applicable)."],"scoring_signals":{"docs_fetched":true,"docs_chars_used":99618,"pages_fetched":12,"candidate_pages":12,"fetched_urls":["https://plaid.com/docs/","https://plaid.com/docs/errors/","https://plaid.com/docs/errors/rate-limit-exceeded/","https://plaid.com/docs/errors/check-report-webhook/","https://plaid.com/docs/errors/sandbox/","https://plaid.com/docs/errors/oauth/","https://plaid.com/docs/errors/api/","https://plaid.com/docs/api/sandbox/","https://plaid.com/docs/api/webhooks/","https://plaid.com/docs/api/webhooks/webhook-verification/","https://plaid.com/docs/api/webhooks/webhook-events/","https://plaid.com/docs/api/oauth/"],"scoring_source":"yoofoozbot_crawl_documents"},"matched_signals":{"documentation_clarity":{"score":10,"matched_terms":["quickstart","parameters","request","response","examples","docs","guide","reference","overview"]},"machine_readable_spec":{"score":5,"matched_terms":["postman collection","api reference","endpoints","schema"]},"authentication_clarity":{"score":10,"matched_terms":["oauth","access token","client secret","scopes","authentication","authorization","api key","keys"]},"error_handling":{"score":10,"matched_terms":["error codes","idempotency","400","404","429","500","retry","errors","troubleshooting","status codes"]},"rate_limit_clarity":{"score":10,"matched_terms":["rate limit","rate limits","retry-after","too many requests","429","limits"]},"agent_safe_workflow_support":{"score":10,"matched_terms":["idempotency","idempotency key","webhook retries","simulate","metadata"]},"sandbox_availability":{"score":10,"matched_terms":["sandbox environment","sandbox","test clocks"]},"webhook_event_support":{"score":10,"matched_terms":["webhooks","webhook","events"]},"commercial_trust":{"score":5,"matched_terms":["support","changelog","versioning","api version","compliance"]},"developer_experience":{"score":10,"matched_terms":["quickstart","cli","guides","dashboard"]}},"evidence_signals":{"documentation_clarity":[{"source_url":"https://plaid.com/docs/","matched_terms":["quickstart","docs","guide","reference"],"snippet":"docs home quickstart api link sandbox institutions resources errors launch checklist account support changelog payments and funding auth balance signal identity transfer..."},{"source_url":"https://plaid.com/docs/errors/","matched_terms":["parameters","request","response","docs","reference","overview"],"snippet":"...income_verification_upload_error product_not_enabled product_not_ready employment_not_found sandbox errors occur when invalid parameters are supplied in the sandbox environment. sandbox_product_not_enabled sandbox_webhook_invalid sandbox_transfer_event_transition_invalid invalid..."}],"machine_readable_spec":[{"source_url":"https://plaid.com/docs/api/sandbox/","matched_terms":["postman collection","api reference","endpoints"],"snippet":"docs all docs api overview libraries api versioning postman collection webhooks payments and funding auth signal and balance identity transfer investments move payment initiation (europe) virtual accounts financial..."},{"source_url":"https://plaid.com/docs/api/webhooks/","matched_terms":["postman collection","api reference","schema"],"snippet":"docs all docs api overview libraries api versioning postman collection webhooks payments and funding auth signal and balance identity transfer investments move payment initiation (europe) virtual accounts financial..."}],"authentication_clarity":[{"source_url":"https://plaid.com/docs/api/oauth/","matched_terms":["oauth","access token","client secret","scopes","api key","keys"],"snippet":"...report (by plaid check) assets statements income instant onboarding plaid layer fundamentals items accounts institutions sandbox link users consent oauth # endpoints # /oauth/token # /oauth/introspect # /oauth/revoke partnerships processor tokens processor partners reseller partners docs search or ask..."},{"source_url":"https://plaid.com/docs/api/sandbox/","matched_terms":["oauth","access token","api key","keys"],"snippet":".../servicing/simulate # /sandbox/cra /cashflow_updates /update # /sandbox/payment /simulate # /sandbox/transactions /create link users consent oauth partnerships processor tokens processor partners reseller partners docs search or ask a question markdown plaid.com log in get api keys open nav..."}],"error_handling":[{"source_url":"https://plaid.com/docs/errors/","matched_terms":["error codes","idempotency","errors","troubleshooting","status codes"],"snippet":"...bill any pii -- he's scared of intimacy. all chats with bill are subject to plaid's privacy policy. errors a comprehensive breakdown of all plaid error codes most common errors the following are the most common errors that may occur in response to an api call even if your implementation is correct. this..."},{"source_url":"https://plaid.com/docs/errors/api/","matched_terms":["idempotency","500","retry","errors","troubleshooting"],"snippet":"...already opted in to sharing information about a specific account. troubleshooting steps retry the request. if the endpoint supports the use of an idempotency key parameter, ensure you are using one before retrying. if the endpoint is /transfer/create , see handling errors in transfer creation . if the..."}],"rate_limit_clarity":[{"source_url":"https://plaid.com/docs/api/webhooks/","matched_terms":["retry-after","too many requests","429"],"snippet":"...is 4 times longer than the previous delay, starting with 30 seconds. if your endpoint returns a 429 too many requests response, plaid will honor the retry-after header if present, waiting the specified duration for up to a maximum of 4 hours later before the next attempt instead of applying the standard..."},{"source_url":"https://plaid.com/docs/errors/rate-limit-exceeded/","matched_terms":["rate limit","rate limits","limits"],"snippet":"...check report errors check report webhook errors cra monitoring errors user errors invalid request errors invalid input errors invalid result errors rate limit exceeded errors # rate limit table # accounts_limit # accounts_balance_get _limit # auth_limit # balance_limit # credits_exhausted # identity_limit..."}],"agent_safe_workflow_support":[{"source_url":"https://plaid.com/docs/errors/api/","matched_terms":["idempotency","idempotency key"],"snippet":"...already opted in to sharing information about a specific account. troubleshooting steps retry the request. if the endpoint supports the use of an idempotency key parameter, ensure you are using one before retrying. if the endpoint is /transfer/create , see handling errors in transfer creation . if the..."},{"source_url":"https://plaid.com/docs/api/webhooks/","matched_terms":["idempotency","webhook retries"],"snippet":"...). best practices for applications using webhooks you should design your application to handle duplicate and out-of-order webhooks. ensure idempotency on actions you take when receiving a webhook. if you drive application state with webhooks, ensure your code doesn't rely on a specific order of..."}],"sandbox_availability":[{"source_url":"https://plaid.com/docs/api/sandbox/","matched_terms":["sandbox environment","sandbox","test clocks"],"snippet":"...of intimacy. all chats with bill are subject to plaid's privacy policy. sandbox endpoints api reference for sandbox endpoints introduction plaid's sandbox environment provides a number of endpoints that can be used to configure testing scenarios. these endpoints are unique to the sandbox environment and cannot be..."},{"source_url":"https://plaid.com/docs/errors/","matched_terms":["sandbox environment","sandbox"],"snippet":"...product_not_enabled product_not_ready employment_not_found sandbox errors occur when invalid parameters are supplied in the sandbox environment. sandbox_product_not_enabled sandbox_webhook_invalid sandbox_transfer_event_transition_invalid invalid request errors occur when a request is..."}],"webhook_event_support":[{"source_url":"https://plaid.com/docs/api/webhooks/","matched_terms":["webhooks","webhook","events"],"snippet":"docs all docs api overview libraries api versioning postman collection webhooks payments and funding auth signal and balance identity transfer investments move payment initiation (europe) virtual accounts financial insights..."},{"source_url":"https://plaid.com/docs/api/webhooks/webhook-events/","matched_terms":["webhooks","webhook","events"],"snippet":"docs all docs api overview libraries api versioning postman collection webhooks payments and funding auth signal and balance identity transfer investments move payment initiation (europe) virtual accounts financial insights..."}],"commercial_trust":[{"source_url":"https://plaid.com/docs/","matched_terms":["support","changelog","compliance"],"snippet":"docs home quickstart api link sandbox institutions resources errors launch checklist account support changelog payments and funding auth balance signal identity transfer investments move payments (europe) financial insights transactions investments..."},{"source_url":"https://plaid.com/docs/api/sandbox/","matched_terms":["support","versioning","api version"],"snippet":"...required [string] required, [string] the products to initially pull for the item. may be any products that the specified institution_id supports. this array may not be empty. min items: 1 possible values: assets , auth , cra_base_report , cra_income_insights , cra_lend_score ,..."}],"developer_experience":[{"source_url":"https://plaid.com/docs/","matched_terms":["quickstart","cli","guides"],"snippet":"docs home quickstart api link sandbox institutions resources errors launch checklist account support changelog payments and funding auth balance signal identity transfer..."},{"source_url":"https://plaid.com/docs/errors/rate-limit-exceeded/","matched_terms":["cli","dashboard"],"snippet":"...toggle sort endpoint column, currently unsorted max requests per item toggle sort max requests per item column, currently unsorted max requests per client toggle sort max requests per client column, currently unsorted /accounts/balance/get 5 per minute, 30 per hour 1,200 per minute /accounts/get 15..."}]},"yoofoozbot":{"run_id":"20261005T201651Z_plaid_abaa4e15","user_agent":"YoofoozBot/1.2 (+https://yoofooz.com/yoofoozbot; contact: submit@yoofooz.com)","pages_fetched":12,"total_bytes":1548920,"robots_respected":true,"crawl_record_path":"outputs/yoofoozbot/20261005T201651Z_plaid_abaa4e15.json","spec_candidates":[],"signal_summary":{"openapi":{"detected":false,"matched_terms":[]},"authentication":{"detected":true,"matched_terms":["authentication","oauth","api key"]},"errors":{"detected":true,"matched_terms":["error codes","status codes","429","retry"]},"rate_limits":{"detected":true,"matched_terms":["rate limit","retry-after"]},"webhooks":{"detected":true,"matched_terms":["webhook"]},"sandbox":{"detected":true,"matched_terms":["sandbox"]},"agent_workflows":{"detected":true,"matched_terms":["mcp","idempotency"]},"developer_experience":{"detected":true,"matched_terms":["quickstart","cli"]},"commercial_trust":{"detected":true,"matched_terms":["compliance"]},"mcp_support":{"detected":true,"matched_terms":["mcp server"]},"machine_payments":{"detected":false,"matched_terms":[]},"machine_pricing":{"detected":false,"matched_terms":[]},"budget_controls":{"detected":false,"matched_terms":[]},"agent_identity":{"detected":false,"matched_terms":[]},"auditability":{"detected":false,"matched_terms":[]},"agent_observability":{"detected":false,"matched_terms":[]}},"readiness_scoring_pages":12,"readiness_scoring_source":"yoofoozbot_crawl_documents","agent_commerce_probe":{"score":55,"level":"Agent Commerce Emerging","machine_payment_capable":false,"detected_protocols":["MCP"],"evidence_categories":["agent_identity_auth","agent_observability","agent_rate_controls","agent_security","auditability","budget_controls","deterministic_errors","mcp_support"]}}}