# General Translation Platform: Загрузка ресурсов проекта URL: https://generaltranslation.com/ru/docs/platform/openapi/reference/project/upload-assets.mdx --- title: "Загрузка ресурсов проекта" description: "Загрузите шрифты OpenType или TrueType в проект, чтобы сделать их доступными для процессов перевода Lottie во всей организации. Каждый шрифт идентифицируется нормализованным идентификатором, сформированным на основе семейства, начертания и курсивного стиля (из указанных family и style либо из метаданных шрифта и имени файла). Повторная загрузка шрифта с тем же идентификатором перезаписывает существующий ресурс, поэтому повторные попытки после ответа 500 безопасны. Справочник API для загрузки ресурсов проекта." method: POST full: true _openapi: method: POST route: /v2/project/assets toc: [] structuredData: headings: [] contents: - content: > Загрузите шрифты OpenType или TrueType в проект, чтобы сделать их доступными для процессов перевода Lottie во всей организации. Каждый шрифт идентифицируется нормализованным идентификатором, сформированным на основе семейства, начертания и курсивного стиля (из указанных `family` и `style` либо из метаданных шрифта и имени файла). Повторная загрузка шрифта с тем же идентификатором перезаписывает существующий ресурс, поэтому повторные попытки после ответа `500` безопасны. --- ## `POST https://api.gtx.dev/v2/project/assets` Upload OpenType or TrueType fonts through a Project and make them available to Lottie translation workflows across its Organization. Each font is keyed by a normalized identity derived from its family, weight, and italic style (from the supplied `family` and `style`, or from the font metadata and file name). Re-uploading the same identity overwrites the existing asset, so complete retries after a `500` response are safe. Authentication: send an API key as a bearer token in the `Authorization: Bearer ` header. ### Parameters - `gt-api-version` (header, "2025-01-01.v0" | "2025-11-03.v1" | "2026-02-18.v1" | "2026-03-06.v1", optional): API version. Defaults to the earliest supported version. Latest is `2026-03-06.v1`. - `gt-project-id` (header, string, optional): Target project ID. Required when authenticating with an organization API key. ### Request body Body (`application/json`, object): - `assets` (object[], required) - `assetType` ("FONT", required): Asset type. Only `FONT` is supported. - `content` (string, required): Base64-encoded font content, up to 20MB after decoding. - `fileName` (string, required): Font file name ending in `.ttf` or `.otf`. - `family` (string): Font family name used by the Lottie file. When omitted, the server derives it from the font metadata or file name. - `style` (string): Style or weight used with `family`, such as `Bold`, `350`, or `Bold Italic`. Defaults to Regular (`400`) when `family` is set. ### Responses **201**: Uploaded font assets. Response body (`application/json`, object): - `assets` (object[], required) - `id` (string): Stored organization asset ID. - `assetKey` (string): Normalized identity in the form `-[-i]`. - `fileName` (string) - `count` (number, required): Number of uploaded assets. **400**: Invalid request body, invalid base64, an empty asset, an unsupported file extension, an asset larger than 20MB, or a font family that cannot be determined. Response body (`application/json`, object): - `error` (string): Human-readable error message. **401**: Missing or invalid API key. Response body (`application/json`, object): - `error` (string): Human-readable error message. **403**: The API key lacks the required permission, or the action is not allowed on the current plan. Response body (`application/json`, object): - `error` (string): Human-readable error message. **404**: The requested resource was not found. Response body (`application/json`, object): - `error` (string): Human-readable error message. **413**: The JSON request body exceeds 100MB. Response body (`application/json`, object): - `error` (string): Human-readable error message. **429**: Rate limit or quota exceeded. Response body (`application/json`, object): - `error` (string): Human-readable error message. **500**: An asset could not be stored. Retry the complete request; each font identity is upserted. Response body (`application/json`, object): - `error` (string): Human-readable error message. The complete OpenAPI 3.1 spec is available at https://generaltranslation.com/openapi.yaml.