Get team
/v1/practices/{practiceId}/teamRequires team:read. Returns counts of members, invitations, and prescribers. Use the paginated members, prescribers, and invitations collections for individual records. Team access and clinician credentials are shared between Test and Live.
Request example
curl -X GET 'https://api.affinityrx.com/v1/practices/{practiceId}/team' \
-H "Authorization: Bearer $AFFINITY_API_KEY" \
-H 'Affinity-Version: 2026-09-28'Response example
These examples show the body structure. Values can differ. Select a status code to see its response.
{
"object": "team",
"practiceId": "prac_01j2y8m6jcc9tt24af5pw9x1bc",
"members": {
"total": 0,
"active": 0,
"disabled": 0
},
"invitations": {
"pending": 0,
"expired": 0
},
"prescribers": {
"total": 0,
"active": 0
}
}{
"code": "<string>",
"data": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 400,
"title": "<string>",
"traceId": "<string>",
"type": "<string>"
}{
"code": "<string>",
"data": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 401,
"title": "<string>",
"traceId": "<string>",
"type": "<string>"
}{
"code": "<string>",
"data": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 403,
"title": "<string>",
"traceId": "<string>",
"type": "<string>"
}{
"code": "<string>",
"data": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 404,
"title": "<string>",
"traceId": "<string>",
"type": "<string>"
}{
"code": "<string>",
"data": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 409,
"title": "<string>",
"traceId": "<string>",
"type": "<string>"
}{
"code": "<string>",
"data": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 429,
"title": "<string>",
"traceId": "<string>",
"type": "<string>"
}Implementation specification
Use these field types and limits to build your integration. Download the OpenAPI document for the complete contract.
Path parameters
practiceIdstringrequiredPattern: ^prac_[0-7][0-9a-hjkmnp-tv-z]{25}$
Headers
Affinity-VersionstringSelects the HTTP API contract for this request only. When omitted, API-key requests use their service account’s stored version. Does not change the stored default.
Pin requests to 2026-09-28.
Response specifications
200Successful response
application/json
objectstringrequiredAllowed: "team"
practiceIdstringrequiredPattern: ^prac_[0-7][0-9a-hjkmnp-tv-z]{25}$
membersobjectrequiredNo additional properties
Show members fields
totalnumber | stringrequiredShow total fields
Any of · 1: number
number
Any of · 2: string
string
Allowed: "Infinity", "-Infinity", "NaN"
activenumber | stringrequiredShow active fields
Any of · 1: number
number
Any of · 2: string
string
Allowed: "Infinity", "-Infinity", "NaN"
disablednumber | stringrequiredShow disabled fields
Any of · 1: number
number
Any of · 2: string
string
Allowed: "Infinity", "-Infinity", "NaN"
invitationsobjectrequiredNo additional properties
Show invitations fields
pendingnumber | stringrequiredShow pending fields
Any of · 1: number
number
Any of · 2: string
string
Allowed: "Infinity", "-Infinity", "NaN"
expirednumber | stringrequiredShow expired fields
Any of · 1: number
number
Any of · 2: string
string
Allowed: "Infinity", "-Infinity", "NaN"
prescribersobjectrequiredNo additional properties
Show prescribers fields
totalnumber | stringrequiredShow total fields
Any of · 1: number
number
Any of · 2: string
string
Allowed: "Infinity", "-Infinity", "NaN"
activenumber | stringrequiredShow active fields
Any of · 1: number
number
Any of · 2: string
string
Allowed: "Infinity", "-Infinity", "NaN"
400HTTP 400
application/json
codestringrequireddataobjectdetailstringrequiredinstancestringrequiredrequestIdstringrequiredstatusintegerrequiredMinimum: 400
Maximum: 599
titlestringrequiredtraceIdstringtypestringrequiredFormat: uri
401Unauthorized
application/json
codestringrequireddataobjectdetailstringrequiredinstancestringrequiredrequestIdstringrequiredstatusintegerrequiredMinimum: 400
Maximum: 599
titlestringrequiredtraceIdstringtypestringrequiredFormat: uri
403Forbidden
application/json
codestringrequireddataobjectdetailstringrequiredinstancestringrequiredrequestIdstringrequiredstatusintegerrequiredMinimum: 400
Maximum: 599
titlestringrequiredtraceIdstringtypestringrequiredFormat: uri
404Not found
application/json
codestringrequireddataobjectdetailstringrequiredinstancestringrequiredrequestIdstringrequiredstatusintegerrequiredMinimum: 400
Maximum: 599
titlestringrequiredtraceIdstringtypestringrequiredFormat: uri
409Conflict
application/json
codestringrequireddataobjectdetailstringrequiredinstancestringrequiredrequestIdstringrequiredstatusintegerrequiredMinimum: 400
Maximum: 599
titlestringrequiredtraceIdstringtypestringrequiredFormat: uri
429Too many requests
application/json
codestringrequireddataobjectdetailstringrequiredinstancestringrequiredrequestIdstringrequiredstatusintegerrequiredMinimum: 400
Maximum: 599
titlestringrequiredtraceIdstringtypestringrequiredFormat: uri