---
title: "Add Project File Format Settings"
method: POST
path: "/projects/{projectId}/file-format-settings"
tags: ["Projects"]
---

# Add Project File Format Settings

`POST /projects/{projectId}/file-format-settings`

## Request

- Base URL: `https://api.crowdin.com/api/v2`
- URL: `https://api.crowdin.com/api/v2/projects/{projectId}/file-format-settings`
- Auth: none declared
- TypeScript: <https://skmtc.dev/crowdin/apis/crowdin-api-v2/docs/projects/:projectId/file-format-settings/post.ts> (a function with typed inputs; its response is checked against the schema)

**Required scopes:** `project.settings` (Read and Write).

## Path parameters

- `projectId` integer, required

## Request body

- FileFormatSettingsCreateForm
  - `format` string, required: Defines file format
  - `settings` union, required: Defines file format settings
    - object
      - `contentSegmentation` boolean: Defines whether to split long texts into smaller text segments. __Important!__ This option disables the possibility to upload existing translations for XML files when enabled.
      - `srxStorageId` integer: Storage Identifier. Get via [List Storages](#operation/api.storages.getMany). Storage identifier of the SRX segmentation rules file. Read more about [Custom Segmentation](https://support.crowdin.com/custom-segmentation/#segmentation-examples).
    - object
      - `contentSegmentation` boolean: Defines whether to split long texts into smaller text segments. __Important!__ This option disables the possibility to upload existing translations for ARB files when enabled.
      - `srxStorageId` integer: Storage Identifier. Get via [List Storages](#operation/api.storages.getMany). Storage identifier of the SRX segmentation rules file. Read more about [Custom Segmentation](https://support.crowdin.com/custom-segmentation/#segmentation-examples).
    - object
      - `contentSegmentation` boolean: Defines whether to split long texts into smaller text segments. __Important!__ This option disables the possibility to upload existing translations for CSV files when enabled.
      - `srxStorageId` integer: Storage Identifier. Get via [List Storages](#operation/api.storages.getMany). Storage identifier of the SRX segmentation rules file. Read more about [Custom Segmentation](https://support.crowdin.com/custom-segmentation/#segmentation-examples).
    - object
      - `contentSegmentation` boolean: Defines whether to split long texts into smaller text segments. __Important!__ This option disables the possibility to upload existing translations for JSON files when enabled.
      - `srxStorageId` integer: Storage Identifier. Get via [List Storages](#operation/api.storages.getMany). Storage identifier of the SRX segmentation rules file. Read more about [Custom Segmentation](https://support.crowdin.com/custom-segmentation/#segmentation-examples).
      - `type` 'i18next_json' | 'nestjs_i18n': Values available: * 'i18next_json' — i18next (*.json) * 'nestjs_i18n' - NestJS i18n
    - object
      - `contentSegmentation` boolean: Defines whether to split long texts into smaller text segments. __Important!__ This option disables the possibility to upload existing translations for strings files when enabled.
      - `srxStorageId` integer: Storage Identifier. Get via [List Storages](#operation/api.storages.getMany). Storage identifier of the SRX segmentation rules file. Read more about [Custom Segmentation](https://support.crowdin.com/custom-segmentation/#segmentation-examples).
    - object
      - `contentSegmentation` boolean: Defines whether to split long texts into smaller text segments. __Important!__ This option disables the possibility to upload existing translations for xliff files when enabled.
      - `srxStorageId` integer: Storage Identifier. Get via [List Storages](#operation/api.storages.getMany). Storage identifier of the SRX segmentation rules file. Read more about [Custom Segmentation](https://support.crowdin.com/custom-segmentation/#segmentation-examples).
    - object
      - `contentSegmentation` boolean: Defines whether to split long texts into smaller text segments. __Important!__ This option disables the possibility to upload existing translations for xliff 2.0 files when enabled.
      - `srxStorageId` integer: Storage Identifier. Get via [List Storages](#operation/api.storages.getMany). Storage identifier of the SRX segmentation rules file. Read more about [Custom Segmentation](https://support.crowdin.com/custom-segmentation/#segmentation-examples).
    - object
      - `contentSegmentation` boolean: Defines whether to split long texts into smaller text segments. __Important!__ This option disables the possibility to upload existing translations for XLSX files when enabled.
      - `srxStorageId` integer: Storage Identifier. Get via [List Storages](#operation/api.storages.getMany). Storage identifier of the SRX segmentation rules file. Read more about [Custom Segmentation](https://support.crowdin.com/custom-segmentation/#segmentation-examples).

## Other responses

- `400`: Invalid Request Parameters
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Project Not Found
- `405`: Method Not Allowed
- `503`: Service Unavailable

---

[API](https://skmtc.dev/crowdin/apis/crowdin-api-v2.md) - [All operations](https://skmtc.dev/crowdin/apis/crowdin-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/crowdin/apis/crowdin-api-v2/revisions/27aae7751699?raw)
