Skip to main content
GET
/
groups
/
{groupId}
/
account
Get the employer account
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

Authorization
string
header
required

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

groupId
string
required

Group ID, e.g. grp_8c2f41d09a3e.

Pattern: ^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).

groupId
string
required
Example:

"grp_8c2f41d09a3e"

asOf
string<date-time>
required
company
object
required
plan
object
required
population
object
required
funding
object
required
premiums
object
required
spend
object
required
savings
object
required