--- title: "Issue person thumbnail presigned URL" slug: "maiu-upload-person-thumbnail-url" updated: 2026-09-17T10:12:40Z published: 2026-09-17T10:12:40Z canonical: "api.ncloud-docs.com/maiu-upload-person-thumbnail-url" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Issue person thumbnail presigned URL Available in VPC Issue a presigned URL for uploading thumbnail images of a person. Note - The issued presigned URL is valid for 15 minutes and is a one-time use. - Only one thumbnail can be uploaded at a time. - File specifications are as follows: - Format: `jpg`, `png`, `webp` - Maximum size: 5 MB - Minimum resolution: 256px or higher - Up to 50 calls can be made per second. ## Request This section describes the request format. The method and URI are as follows: | Method | URI | | --- | --- | | POST | /api/v1/workspaces/{workspace_name}/person-thumbnail/uploads/presigned-url | ### Request headers For information about the headers common to all Media Intelligence APIs, see [Media Intelligence request headers](/docs/en/maiu-overview#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94). ### Request path parameters You can use the following path parameters with your request: | Field | Type | Required | Description | | --- | --- | --- | --- | | `workspace_name` | String | Required | Workspace name | ### Request body You can include the following data in the body of your request: | Field | Type | Required | Description | | --- | --- | --- | --- | | `thumbnailFileName` | String | Required | File name of the profile image to upload - Example: `test_profile.jpg` | ### Request example The request example is as follows: ``` curl --location --request POST 'https://mi.apigw.ntruss.com/api/v1/workspaces/my-workspace/person-thumbnail/presign' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \ --header 'Content-Type: application/json' \ --data '{ "thumbnailFileName": "test_profile.jpg" }' ``` ## Response This section describes the response format. ### Response body The response body includes the following data: | Field | Type | Required | Description | | --- | --- | --- | --- | | `code` | String | - | [API processing result code](/docs/en/maiu-overview#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C) | | `message` | String | - | [API processing result message](/docs/en/maiu-overview#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C) | | `result` | Object | - | Presigned URL issuance result | | `result.thumbnailKey` | String | - | Path to the thumbnail file to be stored in Object Storage | | `result.url` | String | - | Presigned URL address - Valid for 15 minutes - One-time use | | `result.expirationSeconds` | Integer | - | URL's validity time (unit: Second) - Default: 900 | ### Response status codes For information about the HTTP status codes common to all Media Intelligence APIs, see [Media Intelligence response status codes](/docs/en/maiu-overview#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C). ### Response example The response example is as follows: ``` { "code": "0", "message": "success", "result": { "thumbnailKey": "persons/thumbnails/test_profile.jpg", "url": "https://kr.object.ncloudstorage.com/..../test_profile.jpg?...", "expirationSeconds": 900 } } ```