# General Translation Platform: プロジェクトアセットのアップロード URL: https://generaltranslation.com/ja/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.