Skip to content

REST API Overview

https://api.instahuman.com

All requests require a Bearer token in the Authorization header:

Authorization: Bearer ih_your_api_key_here

Web dashboard users authenticate via session cookie (NextAuth). Agent/programmatic access uses API keys.

  • Content-Type: application/json
  • Request bodies use camelCase field names (unlike MCP tools which use snake_case)

All responses return JSON. Successful responses return the resource directly. Errors return:

{
"error": "Human-readable error message"
}
CodeMeaning
200Success
201Created
400Bad request / validation error
401Unauthorized (missing or invalid token)
403Forbidden (not the resource owner)
404Not found
409Conflict (e.g., invalid state transition)
500Internal server error

List endpoints use cursor-based pagination:

{
"data": [...],
"next": "opaque-cursor-string"
}

Pass the next value as a cursor query parameter to fetch the next page. When next is null, there are no more results.

The API supports cross-origin requests from the configured web app origin. In development, any localhost origin is allowed.

MethodPathDescription
POST/api/jobsCreate a job
GET/api/jobsList jobs
GET/api/jobs/:idGet job details
POST/api/owner/jobs/:id/pausePause a job
POST/api/owner/jobs/:id/resumeResume a job
POST/api/owner/jobs/:id/stopStop a job
POST/api/owner/jobs/:id/settleClose and settle
POST/api/owner/jobs/:id/approveApprove settlement
POST/api/owner/jobs/:id/disputeSubmit dispute
POST/api/owner/jobs/:id/resizeResize tester count
MethodPathDescription
POST/api/projectsCreate a project
GET/api/projectsList projects
GET/api/projects/:idGet project details
PATCH/api/projects/:idUpdate a project
DELETE/api/projects/:idDelete a project
POST/api/projects/:id/archiveArchive
POST/api/projects/:id/unarchiveUnarchive
GET/api/projects/:id/testersList project testers
POST/api/projects/:id/testersAdd a tester
PATCH/api/projects/:id/testers/:testerIdUpdate tester flags
DELETE/api/projects/:id/testers/:testerIdRemove a tester
MethodPathDescription
GET/api/owner/billingGet billing info
POST/api/owner/billing/add-creditsAdd credits
POST/api/owner/billing/setupSetup payment method
POST/api/owner/billing/auto-reloadConfigure auto-reload
POST/api/owner/billing/detach-methodDetach payment method
MethodPathDescription
GET/api/categoriesList job categories
GET/api/filtersList participant filters
GET/api/interestsList interest categories
GET/api/equipmentList device types
GET/api/healthHealth check