API Chaining & End-to-End Flows
API chaining is the process of extracting data from one API response and using it as input for another API request.
The core objective is to execute a complete business workflow using dynamically generated data.
End-to-End Workflow
Practice the following exercises.
- Login
- Extract Authentication Token
- Create Resource
- Extract Resource ID
- Fetch Resource
- Update Resource
- Validate Updated Resource
- Delete Resource
- Validate Deleted Resource
Chaining Workflow
Login
↓
Extract Token
↓
Create Resource
↓
Extract Resource ID
↓
Fetch Resource
↓
Update Resource
↓
Delete Resource
↓
Validate Deleted Resource
Additional Chaining Exercises
Practice:
- Handle Chaining Failures
- Handle Partial Failures
- Retry Failed Requests
- Execute Complete End-to-End Flow
- Validate Data Consistency
- Debug Chaining Issues
FakeStore Sprint-6 Workflow
Practice the complete business flow.
Login
↓
Generate Token
↓
Create User
↓
Extract User ID
↓
Create Product
↓
Extract Product ID
↓
Create Cart
↓
Fetch Cart
↓
Update Cart
↓
Delete Cart
↓
Validate Complete Flow
Negative & Security Testing
Practice defensive API testing before production deployment.
Invalid Request Validation
Validate:
- Invalid Request Body
- Missing Mandatory Fields
- Invalid Data Types
- Empty Payload
Header Validation
Validate:
- Invalid Headers
- Missing Headers
Authorization Validation
Verify:
- Unauthorized Access (401)
- Forbidden Access (403)
HTTP Method Validation
Validate unsupported HTTP methods.
Expected response:
405 – Method Not Allowed
Security Testing
Practice:
- SQL Injection
- XSS Injection
Performance & Payload Validation
Validate:
- Rate Limiting
- Large Payloads
- Excessive Requests
Error Validation
Verify:
- Error Status Codes
- Error Messages
- Error Response Schema
Goal of Negative Testing
Ensure the application:
- Rejects invalid requests
- Returns proper status codes
- Produces consistent error responses
- Prevents security bypass
Data-Driven Testing
Execute the same API using multiple datasets.
Multiple Dataset Execution
Practice using:
- TestNG DataProvider
- External JSON Files
- CSV Files
- Excel Files
Dataset Validation
Validate responses for every dataset execution.
Partial Failure Handling
Handle failures occurring during data-driven execution.
Edge Case Validation
Validate:
- Boundary Values
- Edge Cases
Bulk API Validation
Execute APIs with large datasets.
Independent Test Data
Maintain isolated datasets to prevent cross-test contamination.
Data Reset
Reset test data after execution.
Data Accuracy
Validate:
- Test Data Accuracy
- Execution Results
- Report Accuracy
Dependent Test Data
Manage dependencies between datasets.
Execution Optimization
Optimize regression execution using reusable datasets.
Demo API Mapping
Practice using public APIs.
API Chaining
Recommended APIs
- ReqRes
- FakeStore API
Practice:
- Login
- Token Generation
- Create User
- Update User
- Delete User
- Product & Cart Chaining
Negative & Security Testing
Recommended APIs
- FakeStore API
- DummyJSON
Practice:
- Invalid Payloads
- Authentication Failures
- SQL Injection
- XSS
- Unsupported Methods
Data-Driven Testing
Practice using:
- CSV
- Excel
- JSON
Execute against:
- ReqRes
- DummyJSON
using multiple datasets.
Frequently Asked Questions
What is API Chaining?
API Chaining is the process of extracting values such as authentication tokens or resource IDs from one API response and using those values in subsequent API requests to complete an end-to-end business workflow.
How should chaining failures be handled?
Practice:
- Failure Handling
- Partial Failure Handling
- Retry Logic
- Data Consistency Validation
- Debugging Failed API Responses
Which negative and security scenarios should be tested?
Practice validating:
- Invalid Payloads
- Missing Fields
- Empty Payloads
- Invalid Headers
- 401 Unauthorized
- 403 Forbidden
- 405 Method Not Allowed
- SQL Injection
- XSS Injection
- Rate Limiting
- Large Payloads
along with proper error responses.
What is Data-Driven API Testing?
Data-Driven Testing executes the same API using multiple datasets from:
- TestNG DataProvider
- JSON Files
- CSV Files
- Excel Files
while validating every execution independently.
Why should test data remain independent?
Independent datasets help ensure:
- Reliable Regression Testing
- Parallel Execution Support
- No Cross-Test Contamination
- Accurate Execution Results