Skip to content

Get Credentialing Row

Returns a single credentialing row.

Endpoint

GET /v2/credentialing/{credentialing_id}

Path Parameters

Parameter Type Required Description
credentialing_id string Yes The credentialing row's id.

Request

curl --location '{base_url}/v2/credentialing/3a6d2f8b-1c4e-4b7a-8e2d-5f9c0a1b3d7e' \
  --header 'Authorization: Bearer JWT_TOKEN'

Response

Success Response

Code: 200 OK

{
  "id": "3a6d2f8b-1c4e-4b7a-8e2d-5f9c0a1b3d7e",
  "billing_profile_id": "b7e4c1a2-6f3d-4e9b-9a51-2c8d0f7e3a14",
  "payer_id": "9f1c8a2e-4b31-4d0a-9c77-2f5ab8e10c44",
  "payer_name": null,
  "entity": "d27a6b10-9f34-4e82-b5c1-7a03e8946fd2",
  "entity_name": "Morgan Delgado",
  "npi_type": "INDIVIDUAL",
  "in_network": true,
  "network_status": "IN_NETWORK",
  "effective_from": "2026-01-01",
  "effective_to": null,
  "submitted_at": "2026-06-01",
  "approved_at": "2026-07-15",
  "committee": false,
  "claim_hold": {
    "from": "2026-09-01",
    "to": null
  },
  "cosigner": {
    "provider_id": "d27a6b10-9f34-4e82-b5c1-7a03e8946fd2",
    "effective_from": "2026-01-01",
    "effective_to": null
  },
  "derived_status": "ACTIVE",
  "retroactive": {
    "applies": true,
    "days": 30
  },
  "profile_payer_credentialing_id": null,
  "plan": "DEFAULT",
  "credentialing_status": "CREDENTIALED",
  "group_network_status": "IN_NETWORK"
}

Response Fields

Field Type Description
id string The credentialing row's id.
billing_profile_id string or null The billing profile this record belongs to.
payer_id string or null The billing-profile payer row's id — from List Billing Profile Payers. Not the payer registry id.
payer_name string or null
entity string Who this row is for: the literal string GROUP for the org-level row, or a provider id for an individual row.
entity_name string or null Display name for entity — "Group" for the GROUP row, otherwise the provider's name.
npi_type string or null Whether this is a group NPI or an individual NPI. One of GROUP, INDIVIDUAL.
in_network boolean or null Whether the provider is in-network with this payer. On a billing-profiles organisation it's derived, like network_status.
network_status string or null Whether the relationship is in-network or out-of-network. On a billing-profiles organisation it's derived: IN_NETWORK when the row is in network on its dates, OUT_OF_NETWORK otherwise. Writing OUT_OF_NETWORK there ends a row that covered past dates today; otherwise it marks a provider row not_credentialed and clears a GROUP row's dates. One of IN_NETWORK, OUT_OF_NETWORK.
effective_from string or null
effective_to string or null
submitted_at string or null Date the application was submitted, YYYY-MM-DD.
approved_at string or null When the payer approved the application. Drives derived_status.
committee boolean Whether this row went through committee review. On a billing-profiles organisation it reads true exactly when committee_date is set, and true sent without a date sets committee_date to today.
claim_hold object or null Puts claims on hold for this row. null releases the hold. Set through Hold Claims / Release Claims, or inline on create and update. See Claim Hold.
cosigner object or null The co-signer covering this row while credentialing is in progress. null removes it. The co-signer must hold an ACTIVE credentialing row on the same billing profile and payer. See Cosigner.
derived_status string Computed from submitted_at, approved_at, effective_from and effective_to — never set directly. One of NONE, SUBMITTED, DUE, ACTIVE, EXPIRED.
retroactive object or null Derived from the payer's retroactive credentialing rules. Never set directly. See Retroactive.
profile_payer_credentialing_id integer or null A stable id in the downstream billing system, once published. null before publish.
plan string DEFAULT (every plan) or the card plan type this row overrides. Billing-profiles organisations only; absent elsewhere.
credentialing_status string Computed from the row's dates and refusal flag — never set directly. A GROUP row: IN_NETWORK, PENDING, NOT_ACCEPTED or NO_CONTRACT. A provider row: CREDENTIALED, PENDING, NOT_CREDENTIALED, ENDED or NONE. Billing-profiles organisations only. One of IN_NETWORK, PENDING, NOT_ACCEPTED, NO_CONTRACT, CREDENTIALED, NOT_CREDENTIALED, ENDED, NONE.
group_network_status string The credentialing_status of the clinic (GROUP) row for this row's billing profile, payer and plan, falling back to its DEFAULT row; NO_CONTRACT when there is none. Billing-profiles organisations only. One of IN_NETWORK, PENDING, NOT_ACCEPTED, NO_CONTRACT.
not_credentialed boolean Provider rows: the payer refused to credential this provider. Billing-profiles organisations only; left out of responses unless true.
not_accepted boolean GROUP rows: the payer does not accept the clinic. Billing-profiles organisations only; left out of responses unless true.
committee_date string or null The date the committee approved the provider, YYYY-MM-DD. Billing-profiles organisations only; left out of responses when unset.

Claim Hold

Field Type Description
from string or null When the hold starts.
to string or null When the hold ends. null for an open-ended hold.

Cosigner

Field Type Description
provider_id string or null The co-signing provider.
effective_from string or null
effective_to string or null

Retroactive

Field Type Description
applies boolean Whether a retroactive grace period applies to this row.
days integer Length of the retroactive window in days; 0 when applies is false.

Error Response

Code: 400 Bad Request

{
  "code": "bad_request",
  "message": "Validation failed",
  "errors": [
    {
      "field": "patient_id",
      "message": "must be a string"
    }
  ]
}

Every error has the same shape — a machine-readable code, a message, and an errors[] array that's empty when there's nothing field-specific to report. The HTTP status is authoritative.

Status code Meaning
400 Bad Request bad_request The request body or parameters failed validation. errors[] names the offending fields.
401 Unauthorized unauthorized The access token is missing, malformed or expired.
403 Forbidden forbidden The request references a resource outside the token's organisation or clinic scope.
404 Not Found not_found No such resource, or it's outside your scope.
429 Too Many Requests rate_limited Rate limit exceeded. Back off and retry.
500 Internal Server Error internal_error Unexpected server error.
502 Bad Gateway upstream_error Upstream service failed or timed out.

Notes

  • Keep the ETag from this response — writes require it as If-Match.
  • derived_status is computed from submitted_at, approved_at, effective_from and effective_to — it can't be set directly.
  • On a billing-profiles organisation credentialing_status and group_network_status are computed too; network_status / in_network are derived from the row's dates and committee reads committee_date.
  • Plans, payer policy and the dated credentialing facts exist on billing-profiles organisations only; elsewhere those fields are absent from responses.
  • plan, include_plan_overrides, credentialing_status, group_network_status, committee_date, not_credentialed and not_accepted arrive with the payer-credentialing release. Until it reaches your environment they are absent from responses and refused on writes (400).