# Get verifications

Retrieve all verifications—optionally filtering. Note that unlike most Peach "get all" endpoints,
the verifications get all endpoint returns items in a reverse chronological list, since almost
all interesting verifications are those which happened in the recent past.

Endpoint: GET /people/{personId}/verifications
Version: 2025-03-26
Security: oauth2, bearerAuth, apiKeyHeader

## Path parameters:

  - `personId` (string, required)
    A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

## Query parameters:

  - `limit` (integer)
    The maximum count of results to retrieve.

  - `startingAfter` (string)
    Return results starting after the provided object identifier.

  - `endingBefore` (string)
    Return results ending before the provided object identifier.

  - `status` (array)
    The comma separated list of `status` values of verifications to include in the response.
If not included, include all verifications.

## Response 200 fields (application/json):

  - `count` (integer)
    Total number of items in this result.

  - `status` (integer)
    HTTP status code.

  - `data` (array)

  - `data.createdAt` (string)

  - `data.deletedAt` (string)

  - `data.id` (string)

  - `data.updatedAt` (string)

  - `data.agentUserId` (string)
    An identifier of the agent performing the verification

  - `data.attempts` (array)
    Represents the attempts to answer the questions associated with this borrower verification.
The responses are intentionally not included for privacy and security. There can only be a maximum
of `maxAttempts`. There can only be one successful attempt. A successful attempt is one with
`isSuccess` set to `true`.

  - `data.attempts.createdAt` (string)

  - `data.attempts.isSuccess` (boolean)
    `true` if this attempt to answer the questions was successful.

  - `data.expiresAt` (string)

  - `data.maxAttempts` (integer)
    The maximum number of times an attempt can be made to answer all the questions. If `maxAttempts`
are made without success, then this verification's status is set to `failed`.

  - `data.object` (string)
    Enum: "verification"

  - `data.personId` (string)
    An identifier of the borrower

  - `data.questions` (array)
    The questions that were generated and must be answered.

  - `data.questions.category` (string)
    The category of questions to include.
- `inBorrowerPortal` indicates the answer to this question can
be found in the borrower portal.
- `knownToBorrower` indicates the answer to this question
is not found in borrower portal (and therefore must be known by the borrower).
- `presetSecret` indicates the answer to this question was preconfigured by the borrower previously.
    Enum: "inBorrowerPortal", "knownToBorrower", "presetSecret"

  - `data.questions.id` (string)

  - `data.questions.memo` (string)
    The text of the memo for the agent

  - `data.questions.text` (string)
    The text of the question

  - `data.status` (string)
    The status of the verification.
- `pending` - Verification is pending and answers can still be provided.
- `succeeded` - Verification was successfully completed.
- `failed` - Verification failed—the maximum number of answer attempts was reached.
- `insufficientKnowledge` - Verification could not be created because there is not enough information about the person to generate questions.
- `expired` - Verification timed out and was expired.
    Enum: "failed", "pending", "succeeded", "expired", "insufficientKnowledge"

