IP Library › Granted Patent US 12,530,282
Granted Patent B2
US 12,530,282 · App. 18/448,753 · Granted Jan 20, 2026

Validation of application programming interfaces

Inventors: Alec Harmon (Brooklyn, NY); Kashish Arora (New York, NY); Justin Cohen (Philadelphia, PA); Ariel Bong (New York, NY); Erik Umenhofer (Benicia, CA); Xiaojiang Wei (Markham, CA); William Rowan (Ann Arbor, MI); Chandni Chopra Sorrentino (Brooklyn, NY)
Assignee: Plaid Inc.
G06F11/3688G06F8/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,530,282
App. No.
18/448,753
Granted
Jan 20, 2026
Kind
B2
Abstract

In some implementations, a validation device may receive a set of rules associated with requests to and responses from a set of application programming interfaces (APIs). The validation device may transmit, to the set of APIs, a plurality of requests based on the set of rules. The validation device may receive, from the set of APIs, a plurality of responses corresponding to the plurality of requests. The validation device may verify the plurality of responses against the set of rules. The validation device may transmit, to a user device, instructions for a user interface indicating one or more results from verifying the plurality of responses against the set of rules.

Claims (88)

1 . A system for validating a set of application programming interfaces (APIs), the system comprising:

one or more memories; and

one or more processors, communicatively coupled to the one or more memories, configured to:

receive a subset of rules, associated with requests to and responses from the set of APIs, from a set of rules included in a specification or standards document;

transmit, to at least one authorization API associated with the set of APIs, a request for an access token;

receive, from the at least one authorization API, the access token in response to the request,

wherein the access token is used to transmit a plurality of test requests;

transmit, to the set of APIs, the plurality of test requests using the access token,

wherein the plurality of test requests are generated based on the subset of rules;

receive, from the set of APIs, a plurality of test responses corresponding to the plurality of test requests;

verify the plurality of test responses against the subset of rules;

output instructions for a user interface (UI) indicating one or more results from verifying the plurality of test responses against the subset of rules;

receive an indication that one or more production requests were transmitted to the set of APIs;

receive one or more production responses that were received from the set of APIs;

verify the one or more production responses against the subset of rules; and

output instructions to update the UI based on one or more results from verifying the one or more production responses against the subset of rules.

2 . The system of claim 1 , wherein the one or more processors are configured to:

receive, from an administrator device associated with the set of APIs, the access token.

3 . The system of claim 1 , wherein the one or more processors are configured to:

verify that the access token is accepted by the set of APIs,

wherein the UI further indicates a result from verifying that the access token is accepted.

4 . The system of claim 1 , wherein the one or more processors, to verify the plurality of test responses, are configured to:

verify that at least one field, indicated in the subset of rules, is present in at least one of the plurality of test responses; and

verify that at least one value, included in at least one of the plurality of test responses, is in a format indicated in the subset of rules.

5 . The system of claim 1 , wherein the plurality of test requests are associated with a first account, and wherein the one or more processors are configured to:

receive an indication of a second account;

transmit an additional plurality of test requests associated with the second account and generated based on the subset of rules;

receive, from the set of APIs, an additional plurality of test responses;

verify the additional plurality of test responses against the subset of rules; and

output instructions to update the UI based on one or more results from verifying the additional plurality of test responses against the subset of rules.

6 . The system of claim 1 , wherein the one or more processors are configured to:

generate one or more data examples by applying one or more transformations to the plurality of test responses or to the one or more production responses,

wherein the UI includes the one or more data examples.

7 . A method of validating a set of application programming interfaces (APIs), comprising:

receiving a set of rules associated with requests to and responses from the set of APIs;

transmitting, to at least one authorization API associated with the set of APIs, a request for an access token;

receiving, from the at least one authorization API, the access token in response to the request,

wherein the access token is used to transmit a plurality of requests;

transmitting, to the set of APIs, the plurality of requests using the access token,

wherein the plurality of requests are based on the set of rules;

receiving, from the set of APIs, a plurality of responses corresponding to the plurality of requests;

verifying, at a validation device, the plurality of responses against the set of rules; and

transmitting, to a user device, instructions for a user interface (UI) indicating one or more results from verifying the plurality of responses against the set of rules.

8 . The method of claim 7 , wherein the UI includes a visual indicator, associated with an API in the set of APIs, of whether the API passed or failed.

9 . The method of claim 8 , further comprising:

receiving, from the user device, an indication of an interaction with the visual indicator; and

outputting instructions for an additional UI including information about the API associated with the visual indicator.

10 . The method of claim 7 , wherein an API in the set of APIs is associated with a plurality of failures, and the UI includes a plurality of indicators corresponding to the plurality of failures.

11 . The method of claim 7 , further comprising:

generating, at the validation device, one or more data examples by applying one or more transformations to the plurality of responses,

wherein the UI includes the one or more data examples.

12 . The method of claim 7 , wherein verifying the plurality of responses against the set of rules comprises:

verifying, at the validation device, that at least one field, indicated in the set of rules, is present in at least one of the plurality of responses; and

verifying, at the validation device, that at least one value, included in at least one of the plurality of responses, is in a format indicated in the set of rules.

13 . The method of claim 7 , further comprising:

receiving, at the validation device, an indication of an interaction with the UI; and

outputting instructions for an overlay window including a most recent response of the plurality of responses.

14 . The method of claim 7 , further comprising:

receiving an indication that one or more production requests were transmitted to the set of APIs;

receiving one or more production responses that were received from the set of APIs;

verifying the one or more production responses against the set of rules; and

transmitting instructions to update the UI based on one or more results from verifying the one or more production responses against the set of rules.

15 . A non-transitory computer-readable medium storing a set of instructions for validating a set of application programming interfaces (APIs), the set of instructions comprising:

one or more instructions that, when executed by one or more processors of a device, cause the device to:

receive a subset of rules, associated with requests to and responses from the set of APIs, from a set of rules included in a specification or standards document;

transmit, to at least one authorization API associated with the set of APIs, a request for an access token;

receive, from the at least one authorization API, the access token in response to the request,

wherein the access token is used to transmit a plurality of test requests;

transmit, to the set of APIs, the plurality of test requests using the access token,

wherein the plurality of test requests are generated based on the subset of rules;

receive, from the set of APIs, a plurality of test responses corresponding to the plurality of test requests;

verify the plurality of test responses against the subset of rules;

receive an indication that one or more production requests were transmitted to the set of APIs;

receive one or more production responses that were received from the set of APIs;

verify the one or more production responses against the subset of rules; and

output an indication of results from verifying the one or more production responses against the subset of rules and verifying the plurality of test responses against the subset of rules.

16 . The non-transitory computer-readable medium of claim 15 , wherein the one or more instructions, when executed by the one or more processors, further cause the device to:

generate one or more data examples by applying one or more transformations to the plurality of test responses or to the one or more production responses; and

output an indication of the one or more data examples.

17 . The non-transitory computer-readable medium of claim 15 , wherein the one or more instructions, that cause the device to verify the one or more production responses against the subset of rules, cause the device to:

verify that at least one field, indicated in the subset of rules, is present in a portion of the one or more production responses; and

verify that at least one value, included in a portion of the one or more production responses, is in a format indicated in the subset of rules.

18 . The non-transitory computer-readable medium of claim 15 , wherein the one or more instructions, that cause the device to receive the indication that the one or more production requests were transmitted, cause the device to:

receive, from an aggregator, a copy of the one or more production requests.

19 . The non-transitory computer-readable medium of claim 18 , wherein the one or more instructions, that cause the device to receive the one or more production responses, cause the device to:

transmit, to the aggregator, a request for responses based on receiving the copy of the one or more production requests; and

receive, from the aggregator, a copy of the one or more production responses in response to the request for responses.

20 . The non-transitory computer-readable medium of claim 15 , wherein the specification or standards document is associated with a financial data exchange.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2025
From: HARMON, ALEC; ARORA, KASHISH; COHEN, JUSTIN; BONG, ARIEL; UMENHOFER, ERIK; WEI, XIAOJIANG; ROWAN, WILLIAM; CHOPRA SORRENTINO, CHANDNI
To: PLAID INC.
Reel/Frame 072445/0292 →
Continuity (1)
Related Publication 20250053504A1 · Feb 13, 2025
References Cited (22)
US 6243862B1 · Lebow · 2001 [cited by examiner]
US 7900201B1 · Qureshi · 2011 [cited by examiner]
US 7945902B1 · Sahoo · 2011 [cited by examiner]
US 8170975B1 · Qureshi · 2012 [cited by examiner]
US 9552237B2 · Biesack · 2017 [cited by applicant]
US 10133650B1 · Park et al. · 2018 [cited by applicant]
US 10740215B2 · Lowe et al. · 2020 [cited by applicant]
US 11042427B2 · Bahrami et al. · 2021 [cited by applicant]
US 11379348B2 · Sathianarayanan et al. · 2022 [cited by applicant]
US 11640352B2 · Moondhra · 2023 [cited by examiner]
US 11714913B2 · Shaik · 2023 [cited by examiner]
US 11722598B2 · Willshire · 2023 [cited by examiner]
US 11740215B2 · Hur · 2023 [cited by examiner]
US 11748247B2 · Chikkala · 2023 [cited by examiner]
US 11755462B2 · Rubin · 2023 [cited by examiner]
US 12299162B1 · Butler · 2025 [cited by examiner]
Harrison et al, Verification of User Interface Software: The Example of Use-Related Safety Requirements and Programmable Medical Devices , IEEE, pp. 1-13 (Year: 2017). [cited by examiner]
Ferdowsi et al, “Validating AI-Generated Code with Live Programming”, ACM, pp. 1-8 (Year: 2024). [cited by examiner]
Adrion et al, “Validation, Verification, and Testing of Computer Software”, ACM, pp. 1-34 (Year: 1982). [cited by examiner]
Danielsen et al, “Validation and Interactivity of Web API Documentation”, IEEE, pp. 1-8 (Year: 2013). [cited by examiner]
Kim et al, “Enhancing REST API Testing with NLP Techniques”, ACM, pp. 1-12 (Year: 2023). [cited by examiner]
Elizabeth Kopple, “What is FDX and why does it matter,” Plaid Inc. (2023), 12 pages. [cited by applicant]