---
title: "Find Contract by filter criteria with pagination"
method: GET
path: "/contracts"
tags: ["Contracts"]
---

# Find Contract by filter criteria with pagination

`GET /contracts`

Returns a paginated filtered list of all Contracts based on the provided criteria. Supports both offset-based (page/size) and cursor-based (startAfter/endAt) pagination.

## Query parameters

- `endAtId` string
- `page` integer
- `size` integer
- `startAfterId` string

## Headers

- `tenant-id` string, required

## Response `200`

List of Contracts found

- PagedContractResponse
  - `data` Contract[]
    - `id` string
    - `planId` string
    - `networkId` string
    - `documentId` string
    - `createdBy` string
    - `updatedBy` string
    - `generalInfo` ContractGeneralInfo
      - `contractId` string
      - `contractName` string
      - `contractTemplate` string
      - `contractRate` string
      - `reimbursementCode` string
      - `contractType` string
      - `vbcAttribution` string
      - `contractStatus` string
      - `contractAgreementType` string
      - `groupId` string
      - `practitionerId` string
      - `networkId` string
      - `planId` string
    - `lifecycle` ContractLifeCycleInfo
      - `contractEffectiveDate` string
      - `initialTermDate` string
      - `terminationInformedDate` string
      - `terminationDate` string
      - `billingEffectiveDate` string
      - `billingTerminationDate` string
    - `financial` ContractFinancialInfo
      - `feeSchedule` string
      - `additionalFeeSchedule` string
      - `contractPaymentType` string
      - `nonTypicalContractTerms` string
      - `providerRateCalculation` string
      - `rateLesserOfClaimAllowed` boolean
      - `sequestrationAllowed` boolean
      - `sharedSavings` boolean
      - `bonus` boolean
      - `claimSubmissionCycle` string
      - `snfCorporateChampionRate` number
      - `snfCapitationPartARate` number
      - `snfCapitationPartBRate` number
      - `snfCapitationBillAboveRate` number
      - `hasGssRate` boolean
      - `gssRateDetails` string
      - `gssMinimumMM` integer
      - `gssTerm` string
      - `gssFrequency` string
      - `appPenalty` string
      - `telehealthNoShow` string
    - `administrativeAndLegal` ContractAdministrativeAndLegalInfo
      - `amendmentOnFile` boolean
      - `amendmentNumber` string
      - `practitionersTerminationNoticePeriod` string
      - `providersManualUpdatesNoticePeriod` string
      - `policyUpdateNotificationRequired` boolean
      - `claimFilingLimit` string
      - `reimbursementScheduleUpdateFrequency` string
      - `timelyPaymentCommitment` integer
    - `clinicalAndQuality` ContractClinicalAndQualityInfo
      - `hasQualityProgram` boolean
      - `qualityProgramInitiatives` string
      - `averageStarsAndPmpmBonus` string
      - `hasMlrTarget` boolean
      - `mlrTargetDescription` string
      - `performanceReportingRequirements` string
      - `credentialingDelegation` boolean
      - `recredentialingInterval` string
      - `referralRequirements` boolean
      - `priorAuthorizationRequired` boolean
      - `panelSizeLimits` string
      - `providerRosterUpdateFrequency` string
  - `links` PageLinks
    - `self` string
    - `next` string
    - `prev` string
  - `totalCount` integer

## Other responses

- `400` — Invalid filter criteria
- `401` — Unauthorized - Authentication required
- `403` — Forbidden - Insufficient permissions

---

[API](https://skmtc.net/certifyos/apis/certify-api-layer.md) · [All operations](https://skmtc.net/certifyos/apis/certify-api-layer/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/certifyos/certify-api-layer/revisions/3d27e9019c7b/schema)
