FieldCamp
Resources

Team | FieldCamp API

List technicians and field staff whose user IDs you'll assign to jobs and visits.

The team endpoint returns the technicians and field staff at your tenant. You need their IDs to:

  • Populate assignedToTeams on a job (despite the name, these are user IDs).
  • Populate technicianId on a visit.

Usage

Call GET /api/teams once at integration startup and cache the result. Re-fetch when you add or remove staff.

const { data } = await fc.get('/api/teams');
const technicians = data.data.team.filter(t => t.isActive);
const defaultTechnicianId = technicians[0].id;

Endpoints

Send your key on the Authorization header here

This is a legacy route rather than a /api/v1/... one, and it authenticates slightly differently. Your fc_live_ key does work — it authenticates as the user who created it — but only when sent on the Authorization header:

curl https://api.fieldcamp.ai/api/teams \
  -H "Authorization: Bearer fc_live_..."

X-Api-Key is not read on these routes, and per-key scopes are not enforced here — the key acts with its creator's own access. On the /api/v1/... routes both header forms work and scopes are checked, so prefer a v1 endpoint whenever one exists for what you need.

GET/api/teams

Authorization

BearerAuth
AuthorizationBearer <token>

Your FieldCamp API key (starts with fc_live_). Send it as Authorization: Bearer fc_live_… — or as the X-Api-Key: fc_live_… header. Create a key in Settings → API. This is an API key, not a login JWT.

In: header

Query Parameters

page?integer

Page number (1-10000)

limit?integer

Items per page (-1 for all, max 500)

view?string

View mode

documentCreators?boolean

Filter for Admin/Dispatcher roles only

assignableOnly?boolean

Filter for job-assignable team members only

groupBy?string

Group results by field

searchView?string

Custom aggregation pipeline (JSON encoded)

Response Body

application/json

curl -X GET "https://example.com/api/teams"
{  "success": true,  "message": "string",  "data": null}

On this page