Skip to content

Public API v2

Public API v2 gives every endpoint the same request and response shape, so integrations behave predictably. This page covers the requests you need most when you build a dashboard or an external report: branch-aware reads, aggregated counts, run breakdowns, analytics, and pagination.

Every request uses a token in the Authorization header. See API Access for how to create one.

Work with tests, suites, and runs from a specific project branch. Test and suite changes stay isolated from Main.

Terminal window
curl "https://app.testomat.io/api/v2/my-project/tests?branch=feature-checkout" \
-H "Authorization: Bearer $TESTOMATIO_TOKEN"

The response contains only the records that exist on that branch.

Request totals grouped by a field, such as test state or run status, without downloading every record.

Terminal window
curl "https://app.testomat.io/api/v2/my-project/tests?count=true&group_by=state" \
-H "Authorization: Bearer $TESTOMATIO_TOKEN"

The response shows how many tests are Manual and how many are Automated, which is what a dashboard or a summary report usually needs.

Analyze a run by suite, tag, label, assignee, or priority. Each group includes passed, failed, skipped, and pending result counts.

Terminal window
curl "https://app.testomat.io/api/v2/my-project/runs/RUN_ID/stats/suites" \
-H "Authorization: Bearer $TESTOMATIO_TOKEN"

Replace suites with tags, labels, assignees, or priorities to change the breakdown.

Retrieve saved charts or aggregated trend data for external dashboards, reports, and AI tools.

Terminal window
curl "https://app.testomat.io/api/v2/my-project/analytics/stats/success-rate-by-date?days=30" \
-H "Authorization: Bearer $TESTOMATIO_TOKEN"

Available reports include success rate, automation rate, test-run activity, and priority trends.

Paginated responses include total_pages and has_more, so your integration knows whether another page needs to be requested.

Terminal window
curl "https://app.testomat.io/api/v2/my-project/tests?page=2&per_page=50" \
-H "Authorization: Bearer $TESTOMATIO_TOKEN"
{
"meta": {
"total_pages": 26,
"has_more": true
}
}

Keep requesting the next page while has_more is true.

If this doesn’t work:

  • 401 Unauthorized — the token is missing, expired, or belongs to another account. Create a new token on the Access Tokens page.
  • A branch request returns Main data — check the branch name spelling; it must match the branch in the project exactly.
  • A count request returns full records — count=true and group_by must both be present.