Download PDF
Download page Create Synthetic API Monitoring Job API.
Create Synthetic API Monitoring Job API
This page describes the API used to create and configure a Synthetic API monitoring job.
Create an API Monitoring Job
Creates a new API monitoring job with the specified JSON payload.
Resource URL
POST /v1/synthetic/api/schedule
Request/Response Format
JSON
Example
{
"scheduleRunConfigs": [
{
"rate": {
"value": 15,
"unit": "MINUTES"
},
"daysOfWeek": [
"SUN",
"WED",
"THUR",
"FRI",
"MON",
"TUES",
"SAT"
],
"timezone": "UTC"
}
],
"description": "jobUI",
"apiMetadata": {
"script": {
"contentType": "JAVASCRIPT",
"script": "// Javascript based API Monitoring Test\n\nconst assert = require(\"assert\");\n(async () => {\n var response = await client.get(\"<URL>\");\n assert.equal(response.statusCode, 200);\n assert.equal(response.statusMessage, \"OK\");\n for(var key in response.headers) {\n console.log(`${key} : ${response.headers[key]}`);\n }\n assert.equal(response.body, \"response body\");\n})()"
}
},
"browserCodes": [
"API"
],
"chromeVersions": [],
"locationCodes": [
"M50"
],
"timeoutSeconds": 15,
"appKey": "appKey",
"composableConfig": {
"numBeforeConfirmedError": 0,
"resourceErrorDetection": {
"ignoreWhen": {
"resourceUrlContains": [],
"resourceMimeType": []
},
"onlyWhen": {
"resourceUrlContains": [],
"resourceMimeType": []
}
}
},
"performanceCriteria": {
"retestOnWarning": false,
"retestOnCritical": false,
"warningCriterion": [],
"criticalCriterion": []
}
}
{
"_id": "job_id",
"version": 1,
"scheduleRunConfigs": [
{
"rate": {
"value": 1,
"unit": "MINUTES"
},
"daysOfWeek": [
"WED",
"FRI",
"SUN",
"SAT",
"TUES",
"MON",
"THUR"
],
"timezone": "UTC"
}
],
"userEnabled": true,
"systemEnabled": true,
"type": "ALL_BROWSERS",
"rate": {
"value": 15,
"unit": "MINUTES"
},
"daysOfWeek": [
"WED",
"FRI",
"SUN",
"SAT",
"TUES",
"MON",
"THUR"
],
"timezone": "UTC",
"description": "https://appdynamics.com",
"appKey": "appKey",
"scheduleMode": "NONE",
"url": "https://appdynamics.com",
"browserCodes": [
"Chrome"
],
"chromeVersions": [
"86"
],
"locationCodes": [
"BOM",
"M50"
],
"failOnPageError": true,
"captureVisualMetrics": true,
"simulateMobileBrowser": false,
"networkProfile": {
"name": "Native",
"downloadKbps": 5000,
"uploadKbps": 1000,
"roundtripTimeMillis": 28,
"packetLossPercent": 0,
"isDefault": false
},
"timeoutSeconds": 15,
"state": {
"lastFireTime": "2022-04-06T05:57:16.000Z",
"nextFireTime": "2022-04-06T06:00:16.000Z"
},
"projectedUsage": {
"projectedDailyRuns": 2880,
"projectedMonthlyRuns": 86400
},
"performanceCriteria": {
"retestOnWarning": false,
"retestOnCritical": false,
"criterion": []
},
"composableConfig": {
"numBeforeConfirmedError": 0,
"resourceErrorDetection": {
"ignoreWhen": {
"resourceUrlContains": [],
"resourceMimeType": []
},
"onlyWhen": {
"resourceUrlContains": [],
"resourceMimeType": []
}
}
},
"created": "2022-04-05T05:30:36.426Z",
"updated": "2022-04-05T05:30:36.426Z"
}
Request Parameters
Parameter Name | Parameter Type | Value | Description | Mandatory Request |
---|---|---|---|---|
scheduleRunConfigs | - | No | ||
rate | - | No | ||
value | number | Minutes: 1 - 60 Hours: 1 - 24 Days: "null" | No | |
unit | String | Minutes, Hours, or Days | No | |
daysOfWeek | String | "SUN", "MON", "TUES", "WED", "THUR", "FRI", "SAT" | No | |
timeRange | String | Between hh:mm AM/PM to hh:mm AM/PM | No | |
timezone | String | "UTC" | GMT +/-hh:mm | No |
startTimeMillis | String | No | ||
endTimeMillis | String | No | ||
description | String | Job name | Name of the job | Yes |
url | String | "null" or URL to monitor | The URL that you want to monitor. When you use this parameter, the value of the | No |
script | String |
| If you have a scripted job, specify the python-based selenium script used for simulating the user flow or behavior. When you use this parameter, the value of the | No |
apiMetadata | String | Script object of the API monitoring job | Yes | |
contentType | String | Yes | ||
script | String | Yes | ||
browserCodes | String | Use the following Synthetic internal browser codes:
| No | |
chromeVersions | String | Chrome browser version 86 | No | |
locationCodes | String | Synthetic internal location codes of each agent location. See Location Codes. | Yes | |
timeoutSeconds | Number | No | ||
appKey | String | Application Key | You can get the application key from the Controller.
| Yes |
| String | "name": "Native", "downloadKbps": 5000, "uploadKbps": 1000, "roundtripTimeMillis": 28, "packetLossPercent": 0, "isDefault": false | No | |
composableConfig | - | You can use this parameter to configure:
| No | |
numBeforeConfirmedError | Number | 0, 1, 2, 3, 5, or 10 | Number of retries | No |
resourceErrorDetection | - | No | ||
ignoreWhen | - | No | ||
resourceUrlContains | String | Comma separated list | List of resource URLs | No |
resourceMimeType | String | No | ||
onlyWhen | - | No | ||
resourceUrlContains | String | Comma separated list | List of resource URLs | No |
resourceMimeType | String | No | ||
deviceEmulationProfile | String | No | ||
requestHeader | String | No | ||
performanceCriteria | - | No | ||
retestOnWarning | Boolean | true or false | Re-test on warning event | No |
retestOnCritical | Boolean | true or false | Re-test on critical event | No |
warningCriterion | String | No | ||
criticalCriterion | String | No |
Location Codes
Cloud Location | Codes |
---|---|
Azure | |
Amsterdam | NET |
San Antonio | SAN |
Melbourne | ASV |
Toronto | CAC |
Chennai | SIC |
AWS | |
Mumbai | BOM |
Dublin | DUB |
Frankfurt | FRA |
Sao Paulo | GRU |
Hong Kong | HON |
Ashburn | IAD |
Seoul | ICN |
London | LON |
Boardman | M50 |
Milan | MIL |
Montreal | MON |
Tokyo | NRT |
Paris | PAR |
San Francisco | SFO |
Singapore | SIN |
Sydney | SYD |
Response Status Codes
Code | Description |
---|---|
200 | Success |
401 | Unauthorized |
402 | Exceeded job limit |
422 | Validation failure |
429 | Throttled |
500 | Internal server error |