# Proofs

A consent proof is a file serving as a proof of the consent of a user. It can be a signature, a form, etc. that gets attached to a consent event.

The /consents/proofs endpoint of the API exposes the proofs of consent managed by Didomi for your organizations. For a full reference of the endpoint and the resources that it returns, visit <https://api.didomi.io/docs/>.

## Get a proof

To retrieve a proof from an existing proof ID, send a GET `/consents/proofs` request.

**Example**

```javascript
GET /consents/proofs/c1cda26362828b69266512052b97cb3729e3b052e4ade47c0a1e3383defe73c7.png?organization_id={organization_id}
```

The proof will be returned as a base64-encoded data URI along with its ID and size:

**Example response**

```javascript
{
  "id": "c1cda26362828b69266512052b97cb3729e3b052e4ade47c0a1e3383defe73c7.png",
  "file": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==",
  "size": 123
}
```

[See the API documentation for more details on this endpoint](https://api.didomi.io/docs/#/consents%2Fproofs/get_consents_proofs__id_)

## Upload a proof

{% hint style="info" %}
Proofs can be uploaded as part of a consent event. You will usually want to upload proofs that way rather than directly through this endpoint.
{% endhint %}

To upload a proof, send a `POST /consents/proofs` request with the file to upload as a [base64-encoded data URI](https://en.wikipedia.org/wiki/Data_URI_scheme) in the `proof` property of the JSON body.

Example:

```javascript
POST /consents/proofs?organization_id={organization_id}

BODY
{
  "file": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="
}
```

Files must be smaller than 15mb when encoded in base64 and their type must be one of the following formats: PDF, PNG, JPG, GIF, DOCX, DOC, MSG.

[See the API documentation for more details on this endpoint](https://api.didomi.io/docs/#/consents%2Fproofs/post_consents_proofs)
