---
title: "Set upload configuration"
method: POST
path: "/companies/{companyId}/connections/{connectionId}/bankStatements/upload/configuration"
tags: ["Bank statements"]
---

# Set upload configuration

`POST /companies/{companyId}/connections/{connectionId}/bankStatements/upload/configuration`

Use the *Set upload configuration* endpoint to create bank statement upload configuration for the specified data connection. 

With this configuration, you set the source of the data you plan to upload, the ID of the account in third-party banking platform, and a provider ID, if required. This lets us determine the expected format of the data and any source-specific requirements.

Each data connection can only have one configuration for each company and external account ID combination. You will receive a Bad Request response if you try to set it again.

## Request body

- BankStatementUploadConfiguration — Configuration settings for uploading banking data to Codat
  - `source` 'codat' — The source of the banking data that determines its format
  - `accountId` string — The ID of the account in the third-party platform
  - `providerId` string — TrueLayer provider ID (only required if source is TrueLayer)

## Response `200`

Success

- BankStatementUploadConfiguration — Configuration settings for uploading banking data to Codat
  - `source` 'codat' — The source of the banking data that determines its format
  - `accountId` string — The ID of the account in the third-party platform
  - `providerId` string — TrueLayer provider ID (only required if source is TrueLayer)

## Other responses

- `400` — The request made is not valid.
- `401` — Your API request was not properly authorized.
- `402` — An account limit has been exceeded. The type of limit is described in the error property: - You have exceeded the 50-company limit that applies to a Free plan. Delete any companies you no longer need and retry the request. - The requested sync schedule is not allowed. You requested an hourly sync schedule but this functionality is not included in the Free plan. - Your Free account is older than 365 days and has expired. Contact support@codat.io.
- `403` — You are using an outdated API key or a key not associated with that resource.
- `404` — One or more of the resources you referenced could not be found. This might be because your company or data connection id is wrong, or was already deleted.
- `429` — Too many requests were made in a given amount of time. Wait a short period and then try again.
- `500` — There is a problem with our server. Please try again later.
- `503` — The Codat API is temporarily offline for maintenance. Please try again later.

---

[API](https://skmtc.net/codatio/apis/lending.md) · [All operations](https://skmtc.net/codatio/apis/lending/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/codatio/lending/revisions/791e242d1faf/schema)
