/v1/patient_connection_requestsList PatientConnectionRequests
Returns PatientConnectionRequests created for the Organization by POST /v1/patients. Filter by status. Results are newest first. Pending payloads omit the matched Patient identifier.
Required API scopes: patients.read
Parameters
status
query
string · enum: pending | granted | denied | expired
Return only PatientConnectionRequests with this status.
limit
query
integer
The maximum number of items to return. Defaults to
25; the maximum is100.starting_after
query
string
Return items after this resource ID. You cannot use this with
cursor.cursor
query
string
The
next_cursorvalue from the previous page. You cannot use this withstarting_after.
Responses
Paginated list of PatientConnectionRequest objects.
dataarrayrequireditemsobjectavailable_actionsarrayrequiredThe actions the caller can take while this request is pending. The array is empty after resolution or expiry.
itemsstringAllowed values:
connect_existing_patient | create_new_patient | deny
candidateobject | nullrequiredThe strongest current match, or null when no match remains. Demographic, contact, and NHS number evidence determine the ranking; PatientConnection and Document counts break ties. Only matching demographic field names are disclosed. Existing values, contact and NHS number classifications, activity counts, alternative candidates, and Patient identifiers are not disclosed. POST
connect_existing_patientto connect this recommendation.conflicting_fieldsarrayrequiredReserved for compatibility. Carebit returns an empty array so the response cannot disclose whether a candidate has a particular contact or NHS number value.
itemsstring
matched_fieldsarrayrequiredThe submitted demographic fields that match the recommended candidate. Contact and NHS number matches are not disclosed.
itemsstring
not_recorded_fieldsarrayrequiredReserved for compatibility. Carebit returns an empty array so the response cannot disclose whether a candidate has a particular contact or NHS number value.
itemsstring
created_atstring · date-timerequiredAn ISO 8601 timestamp in UTC, with a
Zsuffix. For example,2026-07-01T09:00:00Z.expires_atstring · date-timerequiredThe time after which a pending PatientConnectionRequest expires if the Organization has not resolved it.
idstring · uuidrequiredThe resource's unique identifier, formatted as an RFC 4122 version 4 UUID.
linksobjectrequiredURLs to related resources.
dashboardstring · urirequiredThe Carebit Admin URL listing Patient connection requests for the Organization. This is a Carebit UI URL, not a Developer Platform API URL. Carebit does not email staff when a request is created. Send this URL if you want someone to review pending requests.
patientstring | null · urirequiredThe Patient retrieve URL after an approved action. Null while the request is pending, denied, or expired.
objectanyrequiredDiscriminator value emitted at
object.patient_idstring | null · uuidrequiredThe resulting Patient identifier after the Organization connects an existing Patient or creates a separate Patient. Null while pending, denied, or expired.
resolved_outcomestring | nullrequiredHow the Organization resolved this request. Null while it is pending.
Allowed values:
connected_existing | created_new | denied | expired | nullstatusstringrequiredThe lifecycle status of the PatientConnectionRequest.
grantedmeans a resulting PatientConnection exists.Allowed values:
pending | granted | denied | expiredsubmittedobjectrequiredThe Patient create payload that produced this request. Carebit echoes the fields you sent. It does not include existing-Patient fields you did not submit.
updated_atstring · date-timerequiredAn ISO 8601 timestamp in UTC, with a
Zsuffix. For example,2026-07-01T09:00:00Z.
has_morebooleanrequiredWhether another page is available after
next_cursor.next_cursorstring | nullrequiredThe value to pass as
cursorfor the next page. Null on the last page.objectanyrequiredAlways
list.urlstringrequiredThe API path that returned this list.
Example
{
"object": "list",
"data":
"id": "f50a3a17-e1a9-4eaf-813b-a062b56e6683",
"object": "patient_connection_request",
"available_actions":
"connect_existing_patient"
],
"candidate":
"conflicting_fields": [],
"matched_fields":
"first_name",
"last_name",
"date_of_birth",
"sex",
"postcode"
],
"not_recorded_fields": []
},
"created_at": "2026-01-01T09:00:00Z",
"expires_at": "2026-01-01T09:00:00Z",
"links":
"dashboard": "https://example.carebit.co/admin/patients/connection-requests",
"patient": "https://api.carebit.co/v1/patients/00000000-0000-4000-8000-000000000004"
},
"patient_id": "00000000-0000-4000-8000-000000000004",
"resolved_outcome": "connected_existing",
"status": "pending",
"submitted": {},
"updated_at": "2026-01-01T09:00:00Z"
}
],
"has_more": false,
"next_cursor": "eyJzdGFydF90aW1lIjoiMjAyNi0wMS0wMVQwOTowMDowMFoifQ",
"url": "/v1/patient_connection_requests"
}A filter or pagination parameter is invalid.
errorobjectrequiredThe structured details that describe why the request failed.
codestringrequiredThe machine-readable error code.
errorsarray | nullAdditional errors from a failed validation.
itemsobjectcodestringThe machine-readable code for this validation error.
messagestringA message that explains this validation error.
paramstring | nullThe name of the parameter that caused this validation error, when known.
messagestringrequiredA message that explains the error and how to resolve it.
paramstring | nullThe name of the parameter that caused the error, when known.
typestringrequiredThe high-level category of the error.
Allowed values:
authentication_error | permission_error | invalid_request_error | rate_limit_error | api_error
Example
{
"error":
"code": "resource_missing",
"errors":
"code": "resource_missing",
"message": "The requested resource was not found.",
"param": "patient_id"
}
],
"message": "The requested resource was not found.",
"param": "patient_id",
"type": "authentication_error"
}
}The access token is missing, invalid, expired, or revoked.
errorobjectrequiredThe structured details that describe why the request failed.
codestringrequiredThe machine-readable error code.
errorsarray | nullAdditional errors from a failed validation.
itemsobjectcodestringThe machine-readable code for this validation error.
messagestringA message that explains this validation error.
paramstring | nullThe name of the parameter that caused this validation error, when known.
messagestringrequiredA message that explains the error and how to resolve it.
paramstring | nullThe name of the parameter that caused the error, when known.
typestringrequiredThe high-level category of the error.
Allowed values:
authentication_error | permission_error | invalid_request_error | rate_limit_error | api_error
Example
{
"error":
"code": "resource_missing",
"errors":
"code": "resource_missing",
"message": "The requested resource was not found.",
"param": "patient_id"
}
],
"message": "The requested resource was not found.",
"param": "patient_id",
"type": "authentication_error"
}
}The access token lacks the required scope, or the project is disabled.
errorobjectrequiredThe structured details that describe why the request failed.
codestringrequiredThe machine-readable error code.
errorsarray | nullAdditional errors from a failed validation.
itemsobjectcodestringThe machine-readable code for this validation error.
messagestringA message that explains this validation error.
paramstring | nullThe name of the parameter that caused this validation error, when known.
messagestringrequiredA message that explains the error and how to resolve it.
paramstring | nullThe name of the parameter that caused the error, when known.
typestringrequiredThe high-level category of the error.
Allowed values:
authentication_error | permission_error | invalid_request_error | rate_limit_error | api_error
Example
{
"error":
"code": "resource_missing",
"errors":
"code": "resource_missing",
"message": "The requested resource was not found.",
"param": "patient_id"
}
],
"message": "The requested resource was not found.",
"param": "patient_id",
"type": "authentication_error"
}
}Too many requests. Retry after the delay indicated by Retry-After.
errorobjectrequiredThe structured details that describe why the request failed.
codestringrequiredThe machine-readable error code.
errorsarray | nullAdditional errors from a failed validation.
itemsobjectcodestringThe machine-readable code for this validation error.
messagestringA message that explains this validation error.
paramstring | nullThe name of the parameter that caused this validation error, when known.
messagestringrequiredA message that explains the error and how to resolve it.
paramstring | nullThe name of the parameter that caused the error, when known.
typestringrequiredThe high-level category of the error.
Allowed values:
authentication_error | permission_error | invalid_request_error | rate_limit_error | api_error
Example
{
"error":
"code": "resource_missing",
"errors":
"code": "resource_missing",
"message": "The requested resource was not found.",
"param": "patient_id"
}
],
"message": "The requested resource was not found.",
"param": "patient_id",
"type": "authentication_error"
}
}