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

# Excel to Text

> Converts a `xls`/`xlsx`/`csv` file to `text`.

## `POST /v1/xls/convert/to/txt`

<Warning>During conversion you should not expect any Word macros to operate as we do not support Office macros.</Warning>

## Attributes

<Note>Attributes are case-sensitive and should be inside JSON for POST request. for example: `{ "url": "https://example.com/file1.pdf" }`</Note>

| Attribute                     | Type    | Required | Default | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ----------------------------- | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`                         | string  | *Yes*    | -       | URL to the source file [`url` attribute](/api-reference/url-input-and-request-limits#supported-file-sources)                                                                                                                                                                                                                                                                                                                                                                            |
| `callback`                    | string  | *No*     | -       | The callback URL (or Webhook) used to receive the POST data. see [Webhooks & Callbacks](/api-reference/webhooks). This is only applicable when `async` is set to `true`.                                                                                                                                                                                                                                                                                                                |
| `httpusername`                | string  | *No*     | -       | HTTP auth user name if required to access source URL.                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `httppassword`                | string  | *No*     | -       | HTTP auth password if required to access source URL.                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `inline`                      | boolean | *No*     | `false` | Set to true to return results inside the response. Otherwise, the endpoint will return a URL to the output file generated.                                                                                                                                                                                                                                                                                                                                                              |
| `async`                       | boolean | *No*     | `false` | Set `async` to `true` for long processes to run in the background, API will then return a `jobId` which you can use with the [Background Job Check endpoint](/api-reference/job-check). Also see [Webhooks & Callbacks](/api-reference/webhooks)                                                                                                                                                                                                                                        |
| `name`                        | string  | *No*     | -       | File name for the generated output, the input must be in string format.                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `expiration`                  | integer | *No*     | `60`    | Set the expiration time for the output link in minutes. After this specified duration, any generated output file(s) will be automatically deleted from [PDF.co Temporary Files Storage](/api-reference/file-upload/overview). The maximum duration for link expiration varies based on your current subscription plan. To store permanent input files (e.g. re-usable images, pdf templates, documents) consider using [PDF.co Built-In Files Storage](https://app.pdf.co/tools/files). |
| `worksheetIndex`              | string  | *No*     | -       | Set the index of the worksheet to be used. The first worksheet has index 1.                                                                                                                                                                                                                                                                                                                                                                                                             |
| `profiles`                    | object  | *No*     | -       | See [Profiles](/api-reference/profiles) for more information.                                                                                                                                                                                                                                                                                                                                                                                                                           |
|     `DataEncryptionAlgorithm` | string  | *No*     | -       | Controls the encryption algorithm used for data encryption. See [User-Controlled Encryption](/knowledgebase/user-controlled-encryption) for more information. The available algorithms are: `AES128`, `AES192`, `AES256`.                                                                                                                                                                                                                                                               |
|     `DataEncryptionKey`       | string  | *No*     | -       | Controls the encryption key used for data encryption. See [User-Controlled Encryption](/knowledgebase/user-controlled-encryption) for more information.                                                                                                                                                                                                                                                                                                                                 |
|     `DataEncryptionIV`        | string  | *No*     | -       | Controls the encryption IV used for data encryption. See [User-Controlled Encryption](/knowledgebase/user-controlled-encryption) for more information.                                                                                                                                                                                                                                                                                                                                  |
|     `DataDecryptionAlgorithm` | string  | *No*     | -       | Controls the decryption algorithm used for data decryption. See [User-Controlled Encryption](/knowledgebase/user-controlled-encryption) for more information. The available algorithms are: `AES128`, `AES192`, `AES256`.                                                                                                                                                                                                                                                               |
|     `DataDecryptionKey`       | string  | *No*     | -       | Controls the decryption key used for data decryption. See [User-Controlled Encryption](/knowledgebase/user-controlled-encryption) for more information.                                                                                                                                                                                                                                                                                                                                 |
|     `DataDecryptionIV`        | string  | *No*     | -       | Controls the decryption IV used for data decryption. See [User-Controlled Encryption](/knowledgebase/user-controlled-encryption) for more information.                                                                                                                                                                                                                                                                                                                                  |

## Query parameters

*No query parameters accepted.*

## Responses

| Parameter             | Type    | Description                                                                                                                  |
| --------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `url`                 | string  | Direct URL to the final PDF file stored in S3.                                                                               |
| `outputLinkValidTill` | string  | Timestamp indicating when the output link will expire                                                                        |
| `error`               | boolean | Indicates whether an error occurred (`false` means success)                                                                  |
| `status`              | string  | Status code of the request (200, 404, 500, etc.). For more information, see [Response Codes](/api-reference/response-codes). |
| `name`                | string  | Name of the output file                                                                                                      |
| `credits`             | integer | Number of credits consumed by the request                                                                                    |
| `remainingCredits`    | integer | Number of credits remaining in the account                                                                                   |
| `duration`            | integer | Time taken for the operation in milliseconds                                                                                 |

## `Example` Payload

<Note>To see the request size limits, please refer to the [Request Size Limits](/api-reference/url-input-and-request-limits#pdf-co-request-size).</Note>

```json theme={null}
{
  "url": "https://pdfco-test-files.s3.us-west-2.amazonaws.com/other/Input.xls",
  "async": false,
  "name": "Output"
}
```
