curl --request GET \
--url https://www.getprescience.com/api/partner/v1/groups/{groupId}/account \
--header 'Authorization: Bearer <token>'import requests
url = "https://www.getprescience.com/api/partner/v1/groups/{groupId}/account"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://www.getprescience.com/api/partner/v1/groups/{groupId}/account', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://www.getprescience.com/api/partner/v1/groups/{groupId}/account",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://www.getprescience.com/api/partner/v1/groups/{groupId}/account"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://www.getprescience.com/api/partner/v1/groups/{groupId}/account")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.getprescience.com/api/partner/v1/groups/{groupId}/account")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"groupId": "grp_8c2f41d09a3e",
"asOf": "2026-11-03T16:20:00Z",
"company": {
"displayName": "Acme Inc",
"state": "prod",
"startDate": "2026-09-01",
"renewalDate": "2027-09-01"
},
"plan": {
"name": "Prescience Diamond",
"deductibleIndividualCents": 150000,
"deductibleFamilyCents": 300000,
"oopMaxIndividualCents": 705000,
"oopMaxFamilyCents": 1410000,
"employeePremiumCents": 0
},
"population": {
"coveredLives": 19,
"enrolledEmployees": 12,
"dependents": 7
},
"funding": {
"fundBalanceCents": 990144,
"monthlyFundingCents": 660096,
"upcomingPulls": [
{
"date": "2026-12-01",
"amountCents": 660096,
"status": "scheduled"
}
],
"recentPulls": [
{
"date": "2026-11-01",
"amountCents": 660096,
"status": "completed"
},
{
"date": "2026-10-01",
"amountCents": 660096,
"status": "completed"
}
]
},
"premiums": {
"monthlyPremiumEquivalentCents": 660096,
"pepmCents": 55008,
"employeeContributionCents": 0,
"breakdown": [
{
"label": "Claims paid",
"cents": 408540
},
{
"label": "HSA funding",
"cents": 132019
},
{
"label": "Risk protection & reserves",
"cents": 119537
},
{
"label": "Admin fees",
"cents": 0
}
]
},
"spend": {
"mtdCents": 23418,
"ytdCents": 802340,
"categories": [
{
"category": "Prescriptions",
"cents": 240702,
"pct": 30
},
{
"category": "Specialty care",
"cents": 192562,
"pct": 24
},
{
"category": "Primary care",
"cents": 168491,
"pct": 21
},
{
"category": "Imaging & labs",
"cents": 120351,
"pct": 15
},
{
"category": "Behavioral health",
"cents": 80234,
"pct": 10
}
],
"suppressed": false
},
"savings": {
"baselineAnnualCents": 11520000,
"savingsYtdCents": 599808
}
}{
"error": "unauthorized",
"message": "Provide a valid partner API key as `Authorization: Bearer psk_...`."
}{
"error": "not_found",
"message": "Group grp_8c2f41d09a3e is not enrolled. The account becomes available after enrollment."
}{
"error": "rate_limited",
"message": "Rate limit exceeded. Retry after 12 seconds."
}{
"error": "server_error",
"message": "Internal error. The request was not applied."
}Get the employer account
Aggregate employer account data: funding, premium-equivalent totals, spend by category, and savings. Account data is aggregate and de-identified by design. Returns 404 not_found until the group is enrolled.
curl --request GET \
--url https://www.getprescience.com/api/partner/v1/groups/{groupId}/account \
--header 'Authorization: Bearer <token>'import requests
url = "https://www.getprescience.com/api/partner/v1/groups/{groupId}/account"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://www.getprescience.com/api/partner/v1/groups/{groupId}/account', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://www.getprescience.com/api/partner/v1/groups/{groupId}/account",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://www.getprescience.com/api/partner/v1/groups/{groupId}/account"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://www.getprescience.com/api/partner/v1/groups/{groupId}/account")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.getprescience.com/api/partner/v1/groups/{groupId}/account")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"groupId": "grp_8c2f41d09a3e",
"asOf": "2026-11-03T16:20:00Z",
"company": {
"displayName": "Acme Inc",
"state": "prod",
"startDate": "2026-09-01",
"renewalDate": "2027-09-01"
},
"plan": {
"name": "Prescience Diamond",
"deductibleIndividualCents": 150000,
"deductibleFamilyCents": 300000,
"oopMaxIndividualCents": 705000,
"oopMaxFamilyCents": 1410000,
"employeePremiumCents": 0
},
"population": {
"coveredLives": 19,
"enrolledEmployees": 12,
"dependents": 7
},
"funding": {
"fundBalanceCents": 990144,
"monthlyFundingCents": 660096,
"upcomingPulls": [
{
"date": "2026-12-01",
"amountCents": 660096,
"status": "scheduled"
}
],
"recentPulls": [
{
"date": "2026-11-01",
"amountCents": 660096,
"status": "completed"
},
{
"date": "2026-10-01",
"amountCents": 660096,
"status": "completed"
}
]
},
"premiums": {
"monthlyPremiumEquivalentCents": 660096,
"pepmCents": 55008,
"employeeContributionCents": 0,
"breakdown": [
{
"label": "Claims paid",
"cents": 408540
},
{
"label": "HSA funding",
"cents": 132019
},
{
"label": "Risk protection & reserves",
"cents": 119537
},
{
"label": "Admin fees",
"cents": 0
}
]
},
"spend": {
"mtdCents": 23418,
"ytdCents": 802340,
"categories": [
{
"category": "Prescriptions",
"cents": 240702,
"pct": 30
},
{
"category": "Specialty care",
"cents": 192562,
"pct": 24
},
{
"category": "Primary care",
"cents": 168491,
"pct": 21
},
{
"category": "Imaging & labs",
"cents": 120351,
"pct": 15
},
{
"category": "Behavioral health",
"cents": 80234,
"pct": 10
}
],
"suppressed": false
},
"savings": {
"baselineAnnualCents": 11520000,
"savingsYtdCents": 599808
}
}{
"error": "unauthorized",
"message": "Provide a valid partner API key as `Authorization: Bearer psk_...`."
}{
"error": "not_found",
"message": "Group grp_8c2f41d09a3e is not enrolled. The account becomes available after enrollment."
}{
"error": "rate_limited",
"message": "Rate limit exceeded. Retry after 12 seconds."
}{
"error": "server_error",
"message": "Internal error. The request was not applied."
}Authorizations
Partner API key. psk_test_<32 hex> for test mode, psk_live_<32 hex> for live mode. Keys are stored hashed and cannot be recovered; store them in your secrets manager on issue.
Path Parameters
Group ID, e.g. grp_8c2f41d09a3e.
^grp_[0-9a-f]{12}$Response
Aggregate employer benefits data.
Aggregate and de-identified by design: never named claims, diagnoses, or any individual health data. Categories that could be traced to small member counts are suppressed (k-anonymity).
"grp_8c2f41d09a3e"
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes