This is the reference document for the TestFairy REST API. This API allows the developer to access and interact with TestFairy data remotely.

Getting Started

Getting started with the REST API is easy, and can be done via command line with any programming language. Let's begin with a simple example. We will start by listing all our projects.

A project is either an iOS app or an Android app (two apps with the same package name but on different platforms are considered two projects.)

curl -u "john@example.com:00001234cafecafe" "https://api.testfairy.com/api/1/projects/"

In the example above, you can see that our user is john@example.com and the API key is 0001234cafecafe. This user authentication token is required for all requests to the REST server.

Your API key is private, please do not share it or post it on public code repositories or forums. To find your API key, please refer to your preferences page.


Get all projects GET /api/1/projects/


Get all builds in a project GET /api/1/projects/{project-id}/builds/


Get metadata for a specific build GET /api/1/projects/{project-id}/builds/{build-id}
Delete a specific build. DELETE /api/1/projects/{project-id}/builds/{build-id}


Download the uploaded artifact GET /api/1/projects/{project-id}/builds/{build-id}/download/


List all recorded sessions in build GET /api/1/projects/{project-id}/builds/{build-id}/sessions/


Get session data, events and logs GET /api/1/projects/{project-id}/builds/{build-id}/sessions/{session-id}/


List all testers GET /api/1/testers/
Add a new tester POST /api/1/testers/
Block a tester POST /api/1/testers/{tester-id}/block/
Unblock a tester DELETE /api/1/testers/{tester-id}/block/
Delete a tester DELETE /api/1/testers/{tester-id}


Get latest recorded feedbacks GET /api/1/feedbacks/


Get recent audit trail items GET /api/1/audits/


Get the list of admins and their permissions GET /api/1/cpanel/permissions/


List all webhooks GET /api/1/webhooks/
Add a new webhook POST /api/1/webhook/
GET a single webhook GET /api/1/webhhook/{webhook-id}/
MODIFY a webhook POST /api/1/webhhook/{webhook-id}/
Delete a webhook DELETE /api/1/webhhook/{webhook-id}/

Last updated on 2023-05-23