# CSV Direct Data

This endpoint allows direct extraction of collection data in CSV format. Since this endpoint is meant as a data source, to be used in external Business Intelligence tools, no authorization header need to be created for each call.

### Requirements

To successfully invoke this endpoint :

1. The Account API Key, Bot Token and Bot Secret must be sent in the request header
2. An active Database package must be active on the target account.
3. The desired [collection ](https://docs.xenioo.com/database/collections)must exist and must be flagged as [accessible through API](https://docs.xenioo.com/collections#enable-api-access).

### Request

The following request shows how to extract a direct CSV from a collection

```bash
curl --location --request GET 'https://<API ROUTE>/data/<COLLECTIONNAME>/direct/<FIELDS>/<FILTER>' \
--header 'account-key: <ACCOUNT API KEY>' \
--header 'bot-key: <BOT API KEY>' \
--header 'bot-secret: <BOT API SECRET>' \
--header 'Content-Type: application/json' \
```

{% hint style="warning" %}
Please note that this API purpose is not to access live data but for Excel statistical content. Data returned by this API is cached for up to 30 minutes and should not be considered live.
{% endhint %}

### Response

If successful, this call will return a complete CSV file containing all of the records affected by the supplied filter.&#x20;

Only the fields specified in the \<FIELDS> parameter will be returned. Multiple fields must be separated using a comma. Using \* (asterisk) as a value for fields will export only the fields found in the very first record returned by the query.

### Response Codes

This endpoint will reply with the following standard HTTP codes.

| Code | Meaning                                                                   |
| ---- | ------------------------------------------------------------------------- |
| 200  | Ok. The request has been successfully fulfilled.                          |
| 400  | Bad Request. The call does not contain the data required to be fulfilled. |
| 404  | Not Found. The specified collection has not been found.                   |
| 403  | Unauthorized. The specified collection cannot be access through API       |
