Mark a batch of appointments as picked up by the courier
curl --request POST \
--url https://anivahealth.com/api/v1/appointments/pickup \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"appointment_ids": [
"c9f3e2a1-7d6b-4c5e-b3a2-1f0e9d8c7b6a",
"d4a5b6c7-8e9f-4a1b-c2d3-e4f5a6b7c8d9"
]
}'
{
"success": true
}
blood_drawn status to in_transit. Appointments already in transit or completed are silently skipped.
TEST_SESSIONS_OPERATE or TEST_SESSIONS_MANAGE scope. Requests made with a key that lacks both scopes return 403 Forbidden.200 OK confirming the pickup has been recorded.
true when the shipment pickup has been recorded for all eligible appointments.| Status | Description |
|---|---|
400 | Validation error — e.g., appointment_ids is empty or contains an invalid UUID. |
403 | Forbidden — missing TEST_SESSIONS_OPERATE or TEST_SESSIONS_MANAGE scope. |
404 | One or more appointments not found. |
409 | One or more appointments not eligible for pickup (blood draw not yet confirmed). |
500 | Internal server error. |
curl --request POST \
--url https://anivahealth.com/api/v1/appointments/pickup \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"appointment_ids": [
"c9f3e2a1-7d6b-4c5e-b3a2-1f0e9d8c7b6a",
"d4a5b6c7-8e9f-4a1b-c2d3-e4f5a6b7c8d9"
]
}'
{
"success": true
}
curl --request POST \
--url https://anivahealth.com/api/v1/appointments/pickup \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"appointment_ids": [
"c9f3e2a1-7d6b-4c5e-b3a2-1f0e9d8c7b6a",
"d4a5b6c7-8e9f-4a1b-c2d3-e4f5a6b7c8d9"
]
}'
{
"success": true
}