Skip to content

Project groups

GET
/project/{id}/areas
curl --request GET \
--url https://testomato.com/api/project/5e9602e7a39e5a46428b457f/areas \
--header 'Authorization: Bearer <token>'

Return a list of project groups (areas)

id
required
string

A unique project ID

Example
5e9602e7a39e5a46428b457f

List of project groups/areas

Media typeapplication/json
Array<object>

A group of checks

object
id

A unique group/area ID

string
projectId

A unique parent Project ID

string
name

Name of the group

string
public

Are the check target URLs in the group accessible without password protection or HTTP authentication?

  • true means they are publicly accessible
  • false means they are protected
boolean
default: true
rules

Group rules that are applied to all checks in the Group

Array<Array<object>>
form

An HTML form Testomato found on a page and can submit as part of a check. Field types follow document\test\FormDocument in the application.

object
identifier

Stable identifier of the form within the page

string
enabled

Whether Testomato submits this form during a check

boolean
method

HTTP method the form submits with

string
default: GET
Allowed values: GET POST
action

Resolved URL the form submits to — the action itself for POST, or the action with the parameters appended to the query string for GET.

string
originalAction

The action attribute exactly as written in the HTML

string
relativeAction

The action resolved against baseUrl, still relative

string
baseUrl

URL of the page the form was found on

string
params

URL-encoded form fields Testomato submits

string
html

Raw HTML of the form element

string
checksum

Hash of the form markup. Testomato compares it between runs to notice that the form changed.

string
httpAuth

Password-protected areas may have saved HTTP authentication

object
user
string
password

HTTP

string
url

HTTP Auth URL address

string
period

Check period interval as a string (usually set to true - same as parent Project)

string
default: true
Allowed values: 5 minutes 30 minutes 1 hour 8 hours 1 day 7 days
result

Response object (optional) show only when some some Rules are evaluated as an error

object
prop
string
options
object
w

Extra HTTP headers

string
""
nextRun

Next run in seconds. Can be negative if we don’t have new results yet.

integer
periodInt

Period of automatic startup in seconds

integer
Example
[
{
"id": "54c0fe237c3391ac488b4567",
"projectId": "50a9f72f14db3be812000233",
"name": "Public",
"public": true,
"rules": [
{
"type": "title",
"op": "sub",
"val": "Wikipedia"
}
],
"form": {
"identifier": "login-form",
"enabled": false,
"method": "GET",
"action": "https://www.example.com/login",
"originalAction": "/login",
"relativeAction": "/login",
"baseUrl": "https://www.example.com/",
"params": "username=demo&password=secret",
"html": "<form method=\"post\" action=\"/login\">…</form>",
"checksum": "9f2c1ab4e7d3"
},
"httpAuth": {
"user": "nice",
"password": "test",
"url": "https://testomato.com/httpauth"
},
"period": "5 minutes",
"result": null,
"options": {
"w": ""
},
"nextRun": 150,
"periodInt": 300
}
]

The API token is missing, malformed or expired. Request a new one from POST /api/authenticate.

Media typeapplication/json
object
message

Error message text

string
default: Access denied! Please log in to access this resource.
code

Error code number

integer
default: 401
ok
boolean
error
boolean
default: true
Example
{
"message": "Access denied! Please log in to access this resource.",
"code": 401,
"ok": false,
"error": true
}

The token is valid but the operation is not allowed. Two distinct causes:

  • the subscription plan does not include API access — every endpoint returns this, regardless of the resource
  • the account lacks the required role on the project — reading needs read, changing checks needs editTests, and so on. See Project permissions.
Media typeapplication/json
object
message

Error message text

string
default: Sorry! Your current plan does not support access to Testomato API.
code

Error code number

integer
default: 403
ok
boolean
error
boolean
default: true
Example
{
"message": "Sorry! Your current plan does not support access to Testomato API.",
"code": 403,
"ok": false,
"error": true
}