> ## Documentation Index
> Fetch the complete documentation index at: https://developers.paylinedata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Inspect results

> Review test Applications in Sandbox, or retrieve data and signed files through the API.

## Open Applications in Sandbox

Sign in to the [supplied Sandbox](https://sandbox.paylinedata.com) with your
verified Production-account email and the Sandbox email code. This creates a
separate Sandbox session; your Production session and Test key are not browser
sign-in credentials.

Open **Applications**, then select your test Application to inspect its details,
progress and available signed files. The sidebar contains **Applications** only;
the account menu contains **Developer docs** (opens a new tab) and **Log out**.
This workspace inspects your integration's Applications; it does not create or
edit them. Manage keys in Production's Developer Settings.

![Applications-only Sandbox workspace showing synthetic test Applications, with a detail inset for a submitted Application.](https://mintcdn.com/payline/IOb8KbzLjFUwm2ZK/images/docs-assets/sandbox-applications@2x.png?fit=max\&auto=format\&n=IOb8KbzLjFUwm2ZK\&q=85\&s=c1611b09242909e3e750f0bf1688ca6c)

Inspect your test Applications and available signed files in Sandbox.

## Poll status through the API

Use [credential setup](https://developers.paylinedata.com/credentials.md) and an `APPLICATION_ID` from successful
[creation](https://developers.paylinedata.com/create-applications.md).

```bash theme={null}
curl --silent --show-error --fail-with-body \
  "$PAYLINE_API_BASE/applications/$APPLICATION_ID/status" \
  --header "Authorization: Bearer $PAYLINE_API_KEY" \
  --dump-header status-headers.txt --output status.json
```

Read `status`, `signing.accepted` and `artifacts.state` independently. Status
contains no raw protected answers or merchant URL. Poll with backoff, honor
`Retry-After` on `429`, and stop at your desired durable state. All GETs share
the 120-attempt per-caller/60-second limit; avoid tight loops.

| Artifact state | Meaning/action |
| - | - |
| `not_started` | Continue the merchant journey. |
| `finalizing` | Signing can be accepted while files are processing. |
| `finalization_failed` | Acceptance remains durable; escalate without a new signature. |
| `finalized` | Use the returned version and download paths. |
| `unavailable`, `voided`, `superseded` | Inspect the result and contact Payline; do not regenerate evidence or invent readiness. |

## Retrieve current answers

```bash theme={null}
curl --silent --show-error --fail-with-body \
  "$PAYLINE_API_BASE/applications/$APPLICATION_ID" \
  --header "Authorization: Bearer $PAYLINE_API_KEY" \
  --output application.json
```

Treat the entire response as sensitive. Authorized retrieval includes ordinary
and raw protected answers supplied by you or the merchant, saved pricing,
allocation, lifecycle and artifact metadata. `fieldStates` distinguishes
`available`, `absent` and `not_applicable`. Unreadable protected authority returns
`protected_data_unavailable`, not masked success. There is no fallback to signed
snapshots or today's defaults; an access audit must commit before release.

Current answers are separate from the immutable signed packet. Never print this
response to a shared terminal, browser console, analytics system or support ticket.

## Download signed files

After `artifacts.state` is `finalized`, use its returned `versionId`. This example
uses your trusted configured API base and the documented PDF route:

```bash theme={null}
ARTIFACT_VERSION_ID="$(jq -er '.artifacts | select(.state == "finalized") | .versionId | strings | select(length > 0)' status.json)" || exit 1
export ARTIFACT_VERSION_ID
curl --silent --show-error --fail-with-body \
  "$PAYLINE_API_BASE/applications/$APPLICATION_ID/artifacts/$ARTIFACT_VERSION_ID/signed_pdf" \
  --header "Authorization: Bearer $PAYLINE_API_KEY" \
  --output signed-application.pdf
```

For the certificate, use kind `esignature_certificate` and a separate output file.
Check the HTTP result before treating a file as a PDF: an error body can be saved
to the same filename.

Downloads recheck scope, immutable lineage, size and checksum, then commit access
audit before releasing bytes. They do not regenerate files or expose storage URLs.
The object limit is 20 MiB; range delivery is unsupported. Inaccessible versions
return `404`, unfinished files `409 artifact_not_ready`, and storage/integrity
failures `503 artifact_unavailable`. Never send your credential to an untrusted
URL or substitute another integration's identifiers.

> [!NOTE]
>
> The shown guide requests passed the [dated Sandbox verification](https://developers.paylinedata.com/index.md#example-verification).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.