Product Overview
Feature Description
Product Strengths
Use Cases
Basic Concept
PUT /api/v1/file/`{LibraryId}`/`{SpaceId}`/`{FilePath}`?conflict_resolution_strategy=`{ConflictResolutionStrategy}`&filesize=`{FileSize}`&access_token=`{AccessToken}`&user_id=`{UserId}`&traffic_limit=`{TrafficLimit}`&prefer_same_origin=`{PreferSameOrigin}`
Request parameters. | Description | Type | Required or Not |
LibraryId | Media Library ID, obtained after creating a media library in the media hosting console. See Create Media Library | String | Yes |
SpaceId | Space ID. If the media library is in single-tenant mode, this parameter is fixed as hyphen (`-`). If the media library is in multi-tenant mode, you must specify this parameter. See Create Tenant Space | String | No |
FilePath | String | Yes | |
FileSize | Upload file size in bytes (Byte) for judging if available space is sufficient. | String | No |
ConflictResolutionStrategy | Handling method when filename conflict, default is rename ask: returns HTTP 409 Conflict and SameNameDirectoryOrFileExists error code when conflicts with rename: automatically rename the file when conflicts with overwrite: If the target is a directory or album, it defaults to ask and does not support overwrite If the target is a file, overwrite the existing file When a file exists in the target space with an earlier version, do not support moving and overwrite. | String | No |
AccessToken | Access token, see Generate Access Token | String | Yes |
UserId | User identity recognition. When the access token has admin permission and the user identity recognition during token application is empty, it is used to temporarily specify user identity. For details, see Generate Access Token API. | String | No |
TrafficLimit | Single link download speed limit, range 100KB/s-100MB/s, Unit B | Number | No |
PreferSameOrigin | Whether to keep the same domain name, valid values: true or false This parameter is valid only when uploading a file with the same name exists in the file path and ConflictResolutionStrategy is set to rename or overwrite. When this parameter is set, the backend will try to ensure the newly uploaded file uses the same domain name as the original file for upload or download, but in special cases, a different domain name may be used, so this parameter should not be overly relied upon. | Boolean | No |
{"fullHash": "9fee55123adad49e5090236eead6a8a9edc9caaa0f97b9e38c3713c1b97b9d29","beginningHash": "9faskdfhwek2h3r4kjdsjkahfsdkfhjaksdldc9caaa0f97b9e38c3713c1b97b9d29","size": "2081112","labels":["elephant","animal","Asian elephant"],"category":"video","localCreationTime": "2022-07-26T02:58:09Z","localModificationTime": "2022-07-26T02:58:09Z"}
Request parameters. | Description | Type | Required or Not |
beginningHash | fullHash of the first 1MB of the file, used for instant upload: sha256 hash value of the first 1MB of the file | String | No |
fullHash | fullHash defined by SMH for instant upload, the following algorithm: Fetch the first 1MB of the file, calculate its sha256, and use the result as both beginningHash and fullHash. Continue fetching the next 1MB segment of the file, compute fullHash and the sha256 of the current 1MB data, sha256(Buffer.concat([Buffer.from(fullHash, 'hex'), contentBuffer])), and use the result as fullHash.Until all calculations are complete, obtain fullHash. | String | No |
size | File size for instant upload: Files with size >= 1MB can achieve instant upload. | String | No |
labels | File Tag List | String Array | No |
category | Customized File Category | String | No |
localCreationTime | File local creation time | String | No |
localModificationTime | File local modification time | String | No |
{"domain": "examplebucket-1250000000.cos.ap-beijing.myqcloud.com","path": "/smhxxx/xxx.mp4","headers": {"Cache-Control": "max-age=31104000","Content-Type": "video/mp4","x-cos-acl": "default","x-cos-storage-class": "STANDARD","Authorization": "q-sign-algorithm=sha1&xxxxxx","x-cos-security-token": "1dleQZoBrm4i5UKcV1ovQM4f63aE3Ldaa508aa686f404316d3628xxx","x-cos-traffic-limit": 204800},"confirmKey": "7e8481cea3beecbfe5374c904ca9e7496abc612f400c323877310198745270b0","expiration": "2021-07-24T10:34:32.000Z","availableDomainNum":1}
Response Parameters | Description | Type |
domain | Domain name during actual file upload | String |
path | URL path during actual file upload, fixed as "/" in form upload | String |
headers | Request header to be specified during actual upload | Key-Value Pair |
confirmKey | Parameters for confirming file upload completion | String Array |
expiration | Upload information valid period. It will become invalid if it exceeds the validity period. You must call this API again to get new upload parameters. | String |
availableDomainNum | Number of available domains | String |
{"path": ["test.xlsx"],"name": "test.xlsx","type": "file","creationTime": "2022-04-08T08:44:59.000Z","modificationTime": "2022-04-08T08:44:59.000Z","contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","size": "2811086","eTag": "\\"b581c674266a2b0ff16a9505b4c52300\\"","crc64": "16293198345556339838","metaData": {},"isOverwritten": false,"previewByDoc": true,"previewByCI": true,"previewAsIcon": false,"fileType": "excel"}
Response Parameters | Description | Type |
path | If it is an array of strings, it indicates the final file path. The last element in the array represents the final file name, and the other elements represent each first-level directory name. Because files with the same name may exist and be renamed automatically, the final path here may not equal the designated path when start uploading. If it is null, it means the directory where the file resides or a certain parent directory has been deleted, and the file can no longer be accessed. | String Array |
name | Final file name | String |
type | File type | String |
creationTime | The time when the file is uploaded for the first time | String |
modificationTime | The time when the file was last overwritten | String |
contentType | media type | String |
size | File size. | String |
eTag | File eTag | String |
crc64 | File CRC64-ECMA182 check value | String |
metaData | metadata, if there is no metadata the field does not exist | String |
isOverwritten | Whether file overwrite occurs during file upload | Boolean |
previewByDoc | Whether the file can be previewed in wps | Boolean |
previewByCI | Whether the file can be previewed in Wanxiang | Boolean |
previewAsIcon | Whether the preview image is available as an icon | Boolean |
fileType | File type: excel, powerpoint, etc. | String |
フィードバック