curl --request PUT \
--url https://www.getprescience.com/api/partner/v1/groups/{groupId}/census/members \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"members": [
{
"external_id": "emp_0012",
"first_name": "Sam",
"last_name": "Ortiz",
"email": "sam@acme.com",
"dob": "1988-11-20",
"zip": "94110"
}
],
"remove": [
{
"external_id": "emp_0003"
}
]
}
'{
"group_id": "grp_8c2f41d09a3e",
"received": 1,
"accepted": 1,
"member_count": 12,
"errors": [],
"warnings": [],
"removed": 1,
"not_found": []
}Edit census members
Adds, updates and removes census members without sending the whole census. Members in members are matched like a census replace (external_id, else email): a match is updated, anything else is added. Members in remove are named by member_id, external_id or email. Valid rows are applied even when other rows fail (errors, by index). No quote is run or deleted: quotes made for the old census are kept but no longer match the census, and the next quote request prices the new one. Returns 409 conflict for an enrolled group (edit members with PATCH /groups/{groupId}/members/{memberId}). Rate limit: 20 census writes per minute. Field names are snake_case for broker keys. HR platform partners use camelCase (company_name is companyName).
curl --request PUT \
--url https://www.getprescience.com/api/partner/v1/groups/{groupId}/census/members \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"members": [
{
"external_id": "emp_0012",
"first_name": "Sam",
"last_name": "Ortiz",
"email": "sam@acme.com",
"dob": "1988-11-20",
"zip": "94110"
}
],
"remove": [
{
"external_id": "emp_0003"
}
]
}
'{
"group_id": "grp_8c2f41d09a3e",
"received": 1,
"accepted": 1,
"member_count": 12,
"errors": [],
"warnings": [],
"removed": 1,
"not_found": []
}Authorizations
Partner API key. psk_test_<32 hex> for test mode, psk_live_<32 hex> for live mode. Store them in your secrets manager on issue. Live keys are shown once; the scoped partner portal can show an active sandbox key again.
Headers
Any non-empty string; deterministic keys from your own IDs work best. Repeating the same key with the same body on the same endpoint and mode within 24 hours returns the stored successful response (with Idempotent-Replay: true) instead of re-executing. Error responses are not stored.
Path Parameters
Group ID, e.g. grp_8c2f41d09a3e.
^grp_[0-9a-f]{12}$Body
- Option 1
- Option 2
Send members, remove or both.
Members to add, or to update when one with the same external_id (else email) is on file. Same shape as in the full census.
One employee record. Include dependent elections when your platform has them; submitted dependents drive covered lives and household tiers. When they are unavailable, Prescience uses a disclosed normalized small-group household mix for the preliminary model.
- Option 1
- Option 2
Show child attributes
Show child attributes
Members to remove, each by member_id, external_id or email.
Show child attributes
Show child attributes
Response
Edit applied.
- Option 1
- Option 2
"grp_8c2f41d09a3e"
Rows in the request.
12
Rows stored.
12
Members on file after the replace.
12
Per-row rejections. The row at index was not stored; everything else was.
Show child attributes
Show child attributes
Non-blocking issues, e.g. members missing email (required before enrollment, not for quoting).
Members removed.
Positions in remove that matched no member.