# Presentations

A presentation, short for [Verifiable Presentation](https://www.w3.org/TR/vc-data-model/#presentations), is a data model that allows a Holder of [Verifiable Credentials (VCs)](https://www.w3.org/TR/vc-data-model/#credentials) to present their VCs to a Verifier. The Verifier can then attest the authorship of the credentials included in the presentation.

The data format used for a presentation is [vp-jwt](https://www.w3.org/TR/vc-data-model/#json-web-token). Other formats are not supported at this time.

## Prerequisites

* [DID](/guides/api-guides/dids/did-methods.md)
* [Credentials](/guides/api-guides/credentials.md)

## Who can undertake this operation?

Presentations are generated by the Holder and are verified by an Organisation (Verifier), or another user.

## Generate Verifiable Presentation

Generate a verifiable presentation, ready for signing.

**Endpoint**

```bash
POST /presentation/generate
```

**Request**

* DID
* List of VCs

**Response**

The presentation object that includes an unsigned JWT. The client calling this endpoint (e.g. Holder wallet) is responsible for adding the signature.

## Verify Verifiable Presentation

Verify a given verifiable presentation. The steps performed during verification are:

1. Validate the presentation structure
2. Resolve the presentation DID
3. Verify the presentation signature
4. For each credential in the presentation:
   * Validate the credential structure
   * Resolve the Issuer DID
   * Verify the credential signature

**Endpoint**

```bash
POST /presentation/verify
```

**Request**

* Verifiable Presentation – supported format is vp-jwt

**Response**

The result of the verification, either true or false. In the event the response is false, all errors are provided, with an explanation.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.meeco.me/guides/api-guides/credentials/presentations.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
