# Record check

Source: https://parasend.com/docs/api/verify

Checking a Delivery Certificate.

## Endpoints

- [Check a delivery record by its evidence code](https://parasend.com/docs/api/verify/check.md): `POST /v1/public/verify`

## The PublicVerification object

One of three answers: `found: false`; `found: true, ready: false` (ask again in a few seconds); or the record.

- `object` (string, required): Always `public_verification`. One of: `public_verification`.
- `found` (boolean, required): Whether a delivery record has this evidence ID. A mistyped, malformed or unknown code all get the same answer: `found: false` and nothing more.
- `ready` (boolean, optional): False while the record's latest event is still being sealed: ask again in a few seconds. Present only when `found` is true.
- `evidence_id` (string, optional): The evidence record's ID (`evd_…`), as printed on the Delivery Certificate.
- `delivery_id` (string, optional): The ID of the delivery (`dlv_…`) the record belongs to.
- `test` (boolean, optional): A test-mode delivery: nothing was sent.
- `issuer` (object · nullable, optional): Who issued the evidence, as sealed in the record: the provider's legal `name` and its `identifier`. null when the record does not say.
  - `issuer.name` (string · nullable, optional)
  - `issuer.identifier` (string · nullable, optional)
- `sender` (object · nullable, optional): The sender: `kind` (`organisation` or `individual`); for a company its `name`, with `basis` saying how the name was established, and its `kennitala` (Icelandic company number) when confirmed in the company registry. A person is never named. null when the record names no sender.
  - `sender.kind` (string, optional): One of: `organisation`, `individual`.
  - `sender.basis` (string · nullable, optional): `registry`: confirmed in the company registry. `declared`: as the sender gave it. `note-only`: an older record that names the company only in free text, which is not shown. Null for an individual. One of: `registry`, `declared`, `note-only`.
  - `sender.name` (string · nullable, optional): A company's name. A person is never named.
  - `sender.kennitala` (string · nullable, optional): Registry-confirmed companies only.
- `recipient` (object, optional): The recipient, never by name: `kind` is `individual` when a person identified themselves (else null), and `identified` gives the method, the eIDAS assurance level (`High`, `Substantial`, `Low` or `None`), whether the identity itself was verified, and when.
  - `recipient.kind` (string · nullable, optional): One of: `individual`.
  - `recipient.identified` (object · nullable, optional)
    - `recipient.identified.method` (string · nullable, optional)
    - `recipient.identified.level` (string · nullable, optional): One of: `High`, `Substantial`, `Low`, `None`.
    - `recipient.identified.verified` (boolean, optional)
    - `recipient.identified.at` (string · date-time · nullable, optional)
- `created_at` (string · date-time · nullable, optional): When the delivery's first sealed event happened, in ISO 8601 (UTC); null when the record has none.
- `record_sealed_at` (string · date-time · nullable, optional): When the record as a whole was sealed, in ISO 8601 (UTC); null while it is not.
- `seals` (object, optional): Parasend's check of the stored record: `intact`, every seal checks out and the record is the one asked for; `items`, the number of sealed events; `envelope_sealed`, whether the record as a whole is sealed.
  - `seals.intact` (boolean, optional)
  - `seals.items` (integer, optional)
  - `seals.envelope_sealed` (boolean, optional)
- `events` (array of object, optional): Every sealed event, in order: Parasend's event type (`event`, such as `delivery.created`), the ETSI evidence event (`etsi_event`, such as `SubmissionAcceptance`), its `time` and its reason codes (`reasons`). Never free text or addresses.
  - `events[].event` (string · nullable, optional)
  - `events[].etsi_event` (string, optional)
  - `events[].time` (string · date-time · nullable, optional)
  - `events[].reasons` (array of string, optional)
- `documents` (array of object, optional): The delivered documents, each by its SHA-256 digest only (64 hexadecimal characters), never by file name.
  - `documents[].sha256` (string · nullable, optional)
