Documentation Index
Fetch the complete documentation index at: https://docs.requestly.com/llms.txt
Use this file to discover all available pages before exploring further.
The rq.response object provides access to all details of the API response in your Requestly scripts. You can use these properties and methods primarily in post-response scripts to process, validate, and extract data from API responses.
Properties and Methods
rq.response.body
The body of the response as a string.
Example:
console.log("Response Body:", rq.response.body);
rq.response.responseTime
The time taken by the request to complete, in milliseconds.
Example:
console.log("Response Time:", rq.response.responseTime);
An list of header rows each having key, value for each custom header you create.
Example:
console.log("Response Headers:", JSON.stringify(rq.response.headers));
rq.response.code
The HTTP status code of the response.
Example:
console.log("Response Code:", rq.response.code);
rq.test("Status is 200", () => {
rq.response.to.have.status(200);
});
rq.response.json()
Parses the response body as JSON and returns it as a JavaScript object.
Example:
console.log("Response JSON:", JSON.stringify(rq.response.json()));
rq.response.text()
Returns the response body as a plain string.
Example:
console.log("Response Body as String:", rq.response.text());
Common Use Cases
Validate Response Code
Check if the API returned the expected status code:
if (rq.response.code !== 200) {
console.error("Unexpected Response Code:", rq.response.code);
} else {
console.log("Request successful!");
}
Parse the response and extract specific fields:
const responseData = rq.response.json();
const userId = responseData.id;
const userName = responseData.name;
console.log("User ID:", userId);
console.log("User Name:", userName);
// Store extracted data for use in other requests
rq.environment.set("user_id", userId);
Check Response Time
Monitor API performance:
if (rq.response.responseTime > 1000) {
console.warn("Slow response detected:", rq.response.responseTime + "ms");
} else {
console.log("Response time OK:", rq.response.responseTime + "ms");
}
Get auth token from response and save it:
const responseData = rq.response.json();
if (responseData.token) {
rq.environment.set("authToken", responseData.token);
console.log("Auth token saved successfully");
}
rq.response.headers.forEach((header) => {
console.log(`${header.key}: ${header.value}`);
});
Validate Response Structure
const data = rq.response.json();
if (data.error) {
console.error("API Error:", data.error);
} else if (!data.id) {
console.error("Missing expected field: id");
} else {
console.log("Response validation passed");
}