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
assignedToTeamson a job (despite the name, these are user IDs). - Populate
technicianIdon 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.
/api/teamsAuthorization
BearerAuth 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 number (1-10000)
Items per page (-1 for all, max 500)
View mode
Filter for Admin/Dispatcher roles only
Filter for job-assignable team members only
Group results by field
Custom aggregation pipeline (JSON encoded)
Response Body
application/json
curl -X GET "https://example.com/api/teams"{ "success": true, "message": "string", "data": null}