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

# MediaClient

> X API TypeScript SDK의 MediaClient 클래스에 대한 레퍼런스. X API v2 media 엔드포인트에 대한 메서드, 매개변수 및 반환 타입.

media 작업을 위한 클라이언트

이 클라이언트는 X API의 media 엔드포인트와 상호작용하기 위한 메서드를
제공합니다. 모든 media 관련 작업에 대한 인증, 요청 형식화 및 응답
파싱을 처리합니다.

zeUpload]\(/xdks/typescript/reference/classes/MediaClient#finalizeupload)

* [initializeUpload](/xdks/typescript/reference/classes/MediaClient#initializeupload)
* [createSubtitles](/xdks/typescript/reference/classes/MediaClient#createsubtitles)
* [deleteSubtitles](/xdks/typescript/reference/classes/MediaClient#deletesubtitles)

## 생성자

### constructor

• **new MediaClient**(`client`): [`MediaClient`](/xdks/typescript/reference/classes/MediaClient)

새 media 클라이언트 인스턴스를 생성합니다

#### 매개변수

| 이름       | 타입                                                    | 설명                  |
| :------- | :---------------------------------------------------- | :------------------ |
| `client` | [`Client`](/xdks/typescript/reference/classes/Client) | 메인 X API 클라이언트 인스턴스 |

#### 반환값

[`MediaClient`](/xdks/typescript/reference/classes/MediaClient)

#### 정의 위치

[media/client.ts:250](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L250)

## 메서드

### getByKey

▸ **getByKey**(`mediaKey`, `options`): `Promise`\<`Response`>

Get Media by media key
media key로 특정 Media 파일의 세부 정보를 검색합니다.

#### 매개변수

| 이름         | 타입                                                              | 설명               |
| :--------- | :-------------------------------------------------------------- | :--------------- |
| `mediaKey` | `string`                                                        | 단일 Media Key입니다. |
| `options`  | `GetByKeyOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } | -                |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:295](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L295)

▸ **getByKey**(`mediaKey`, `options?`): `Promise`\<[`Get2MediaMediaKeyResponse`](/xdks/typescript/reference/interfaces/Schemas.Get2MediaMediaKeyResponse)>

#### 매개변수

| 이름         | 타입                |
| :--------- | :---------------- |
| `mediaKey` | `string`          |
| `options?` | `GetByKeyOptions` |

#### 반환값

`Promise`\<[`Get2MediaMediaKeyResponse`](/xdks/typescript/reference/interfaces/Schemas.Get2MediaMediaKeyResponse)>

#### 정의 위치

[media/client.ts:308](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L308)

***

### getUploadStatus

▸ **getUploadStatus**(`mediaId`, `options`): `Promise`\<`Response`>

Get Media upload status
ID로 Media 업로드 상태를 검색합니다.

#### 매개변수

| 이름        | 타입                                                                     | 설명                                |
| :-------- | :--------------------------------------------------------------------- | :-------------------------------- |
| `mediaId` | `string`                                                               | 요청된 media 업로드 상태에 대한 Media id입니다. |
| `options` | `GetUploadStatusOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } | -                                 |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:442](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L442)

▸ **getUploadStatus**(`mediaId`, `options?`): `Promise`\<[`MediaUploadResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadResponse)>

#### 매개변수

| 이름         | 타입                       |
| :--------- | :----------------------- |
| `mediaId`  | `string`                 |
| `options?` | `GetUploadStatusOptions` |

#### 반환값

`Promise`\<[`MediaUploadResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadResponse)>

#### 정의 위치

[media/client.ts:455](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L455)

***

### upload

▸ **upload**(`options`): `Promise`\<`Response`>

Upload media
게시물이나 다른 콘텐츠에서 사용할 media 파일을 업로드합니다.

#### 매개변수

| 이름        | 타입                                                            |
| :-------- | :------------------------------------------------------------ |
| `options` | `UploadOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:582](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L582)

▸ **upload**(`options?`): `Promise`\<[`MediaUploadResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadResponse)>

#### 매개변수

| 이름         | 타입              |
| :--------- | :-------------- |
| `options?` | `UploadOptions` |

#### 반환값

`Promise`\<[`MediaUploadResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadResponse)>

#### 정의 위치

[media/client.ts:591](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L591)

***

### getAnalytics

▸ **getAnalytics**(`mediaKeys`, `endTime`, `startTime`, `granularity`, `options`): `Promise`\<`Response`>

Get Media analytics
media에 대한 분석 데이터를 검색합니다.

#### 매개변수

| 이름            | 타입                                                                  | 설명                                                  |
| :------------ | :------------------------------------------------------------------ | :-------------------------------------------------- |
| `mediaKeys`   | `any`\[]                                                            | 쉼표로 구분된 Media Keys 목록입니다. 단일 요청에 최대 100개까지 허용됩니다.   |
| `endTime`     | `string`                                                            | YYYY-MM-DDTHH:mm:ssZ. 시간 범위의 끝을 나타내는 UTC 타임스탬프입니다.  |
| `startTime`   | `string`                                                            | YYYY-MM-DDTHH:mm:ssZ. 시간 범위의 시작을 나타내는 UTC 타임스탬프입니다. |
| `granularity` | `string`                                                            | 검색 카운트 결과의 세분화 수준입니다.                               |
| `options`     | `GetAnalyticsOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } | -                                                   |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:699](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L699)

▸ **getAnalytics**(`mediaKeys`, `endTime`, `startTime`, `granularity`, `options?`): `Promise`\<[`MediaAnalytics`](/xdks/typescript/reference/interfaces/Schemas.MediaAnalytics)>

#### 매개변수

| 이름            | 타입                    |
| :------------ | :-------------------- |
| `mediaKeys`   | `any`\[]              |
| `endTime`     | `string`              |
| `startTime`   | `string`              |
| `granularity` | `string`              |
| `options?`    | `GetAnalyticsOptions` |

#### 반환값

`Promise`\<[`MediaAnalytics`](/xdks/typescript/reference/interfaces/Schemas.MediaAnalytics)>

#### 정의 위치

[media/client.ts:724](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L724)

***

### appendUpload

▸ **appendUpload**(`id`, `options`): `Promise`\<`Response`>

Append Media upload
Media 업로드 요청에 데이터를 추가합니다.

#### 매개변수

| 이름        | 타입                                                                  | 설명                                  |
| :-------- | :------------------------------------------------------------------ | :---------------------------------- |
| `id`      | `string`                                                            | append 작업을 수행할 media의 media 식별자입니다. |
| `options` | `AppendUploadOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } | -                                   |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:918](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L918)

▸ **appendUpload**(`id`, `options?`): `Promise`\<[`MediaUploadAppendResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadAppendResponse)>

#### 매개변수

| 이름         | 타입                    |
| :--------- | :-------------------- |
| `id`       | `string`              |
| `options?` | `AppendUploadOptions` |

#### 반환값

`Promise`\<[`MediaUploadAppendResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadAppendResponse)>

#### 정의 위치

[media/client.ts:931](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L931)

***

### getByKeys

▸ **getByKeys**(`mediaKeys`, `options`): `Promise`\<`Response`>

Get Media by media keys
media key로 Media 파일의 세부 정보를 검색합니다.

#### 매개변수

| 이름          | 타입                                                               | 설명                                                |
| :---------- | :--------------------------------------------------------------- | :------------------------------------------------ |
| `mediaKeys` | `any`\[]                                                         | 쉼표로 구분된 Media Keys 목록입니다. 단일 요청에 최대 100개까지 허용됩니다. |
| `options`   | `GetByKeysOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } | -                                                 |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:1039](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1039)

▸ **getByKeys**(`mediaKeys`, `options?`): `Promise`\<[`Get2MediaResponse`](/xdks/typescript/reference/interfaces/Schemas.Get2MediaResponse)>

#### 매개변수

| 이름          | 타입                 |
| :---------- | :----------------- |
| `mediaKeys` | `any`\[]           |
| `options?`  | `GetByKeysOptions` |

#### 반환값

`Promise`\<[`Get2MediaResponse`](/xdks/typescript/reference/interfaces/Schemas.Get2MediaResponse)>

#### 정의 위치

[media/client.ts:1052](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1052)

***

### createMetadata

▸ **createMetadata**(`options`): `Promise`\<`Response`>

Create Media metadata
Media 파일에 대한 메타데이터를 생성합니다.

#### 매개변수

| 이름        | 타입                                                                    |
| :-------- | :-------------------------------------------------------------------- |
| `options` | `CreateMetadataOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:1191](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1191)

▸ **createMetadata**(`options?`): `Promise`\<[`MetadataCreateResponse`](/xdks/typescript/reference/interfaces/Schemas.MetadataCreateResponse)>

#### 매개변수

| 이름         | 타입                      |
| :--------- | :---------------------- |
| `options?` | `CreateMetadataOptions` |

#### 반환값

`Promise`\<[`MetadataCreateResponse`](/xdks/typescript/reference/interfaces/Schemas.MetadataCreateResponse)>

#### 정의 위치

[media/client.ts:1200](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1200)

***

### finalizeUpload

▸ **finalizeUpload**(`id`, `options`): `Promise`\<`Response`>

Finalize Media upload
Media 업로드 요청을 완료합니다.

#### 매개변수

| 이름                           | 타입       | 설명                         |
| :--------------------------- | :------- | :------------------------- |
| `id`                         | `string` | 완료할 대상 media의 media id입니다. |
| `options`                    | `Object` | -                          |
| `options.requestOptions`     | `Object` | -                          |
| `options.requestOptions.raw` | `true`   | -                          |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:1296](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1296)

▸ **finalizeUpload**(`id`): `Promise`\<[`MediaUploadResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadResponse)>

#### 매개변수

| 이름   | 타입       |
| :--- | :------- |
| `id` | `string` |

#### 반환값

`Promise`\<[`MediaUploadResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadResponse)>

#### 정의 위치

[media/client.ts:1309](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1309)

***

### initializeUpload

▸ **initializeUpload**(`options`): `Promise`\<`Response`>

Initialize media upload
media 업로드를 초기화합니다.

#### 매개변수

| 이름        | 타입                                                                      |
| :-------- | :---------------------------------------------------------------------- |
| `options` | `InitializeUploadOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:1396](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1396)

▸ **initializeUpload**(`options?`): `Promise`\<[`MediaUploadResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadResponse)>

#### 매개변수

| 이름         | 타입                        |
| :--------- | :------------------------ |
| `options?` | `InitializeUploadOptions` |

#### 반환값

`Promise`\<[`MediaUploadResponse`](/xdks/typescript/reference/interfaces/Schemas.MediaUploadResponse)>

#### 정의 위치

[media/client.ts:1405](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1405)

***

### createSubtitles

▸ **createSubtitles**(`options`): `Promise`\<`Response`>

Create Media subtitles
특정 Media 파일에 대한 자막을 생성합니다.

#### 매개변수

| 이름        | 타입                                                                     |
| :-------- | :--------------------------------------------------------------------- |
| `options` | `CreateSubtitlesOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:1497](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1497)

▸ **createSubtitles**(`options?`): `Promise`\<[`SubtitlesCreateResponse`](/xdks/typescript/reference/interfaces/Schemas.SubtitlesCreateResponse)>

#### 매개변수

| 이름         | 타입                       |
| :--------- | :----------------------- |
| `options?` | `CreateSubtitlesOptions` |

#### 반환값

`Promise`\<[`SubtitlesCreateResponse`](/xdks/typescript/reference/interfaces/Schemas.SubtitlesCreateResponse)>

#### 정의 위치

[media/client.ts:1506](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1506)

***

### deleteSubtitles

▸ **deleteSubtitles**(`options`): `Promise`\<`Response`>

Delete Media subtitles
특정 Media 파일에 대한 자막을 삭제합니다.

#### 매개변수

| 이름        | 타입                                                                     |
| :-------- | :--------------------------------------------------------------------- |
| `options` | `DeleteSubtitlesOptions` & \{ `requestOptions`: \{ `raw`: `true`  }  } |

#### 반환값

`Promise`\<`Response`>

API 응답 또는 requestOptions.raw가 true인 경우 원본 Response로 해결되는 Promise

#### 정의 위치

[media/client.ts:1598](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1598)

▸ **deleteSubtitles**(`options?`): `Promise`\<[`SubtitlesDeleteResponse`](/xdks/typescript/reference/interfaces/Schemas.SubtitlesDeleteResponse)>

#### 매개변수

| 이름         | 타입                       |
| :--------- | :----------------------- |
| `options?` | `DeleteSubtitlesOptions` |

#### 반환값

`Promise`\<[`SubtitlesDeleteResponse`](/xdks/typescript/reference/interfaces/Schemas.SubtitlesDeleteResponse)>

#### 정의 위치

[media/client.ts:1607](https://github.com/xdevplatform/xdk-typescript/blob/81aacb165e0802e188f608bdf462b60fc4e713a2/src/media/client.ts#L1607)
