curl -X POST "https://api.tokenlab.sh/v1/worlds/media-assets/prepare-upload" \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"file_name": "reference.png",
"kind": "image",
"extension": "png"
}'
import requests
response = requests.post(
"https://api.tokenlab.sh/v1/worlds/media-assets/prepare-upload",
headers={"Authorization": "Bearer sk-your-api-key"},
json={"file_name": "reference.png", "kind": "image", "extension": "png"},
)
print(response.json()["media_asset"]["media_asset_id"])
const response = await fetch('https://api.tokenlab.sh/v1/worlds/media-assets/prepare-upload', {
method: 'POST',
headers: {
Authorization: 'Bearer sk-your-api-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({ file_name: 'reference.png', kind: 'image', extension: 'png' })
});
const prepared = await response.json();
console.log(prepared.media_asset.media_asset_id, prepared.upload_info.upload_url);
{
"media_asset": {
"file_name": "<string>",
"media_asset_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"kind": "image",
"extension": "<string>",
"metadata": {},
"updated_at": "2023-11-07T05:31:56Z"
},
"upload_info": {
"upload_url": "<string>",
"upload_method": "<string>",
"curl_example": "<string>",
"required_headers": {}
}
}{
"error": {
"message": "Invalid API key provided",
"type": "invalid_api_key"
}
}Worlds
Chuẩn bị tải lên media asset
Tạo đích tải lên cho media asset World Labs
POST
/
v1
/
worlds
/
media-assets
/
prepare-upload
curl -X POST "https://api.tokenlab.sh/v1/worlds/media-assets/prepare-upload" \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"file_name": "reference.png",
"kind": "image",
"extension": "png"
}'
import requests
response = requests.post(
"https://api.tokenlab.sh/v1/worlds/media-assets/prepare-upload",
headers={"Authorization": "Bearer sk-your-api-key"},
json={"file_name": "reference.png", "kind": "image", "extension": "png"},
)
print(response.json()["media_asset"]["media_asset_id"])
const response = await fetch('https://api.tokenlab.sh/v1/worlds/media-assets/prepare-upload', {
method: 'POST',
headers: {
Authorization: 'Bearer sk-your-api-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({ file_name: 'reference.png', kind: 'image', extension: 'png' })
});
const prepared = await response.json();
console.log(prepared.media_asset.media_asset_id, prepared.upload_info.upload_url);
{
"media_asset": {
"file_name": "<string>",
"media_asset_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"kind": "image",
"extension": "<string>",
"metadata": {},
"updated_at": "2023-11-07T05:31:56Z"
},
"upload_info": {
"upload_url": "<string>",
"upload_method": "<string>",
"curl_example": "<string>",
"required_headers": {}
}
}{
"error": {
"message": "Invalid API key provided",
"type": "invalid_api_key"
}
}Tạo bản ghi media asset World Labs và nhận URL tải lên cho ảnh hoặc video. Tải tệp nhị phân lên
upload_info.upload_url, sau đó tham chiếu media_asset.media_asset_id trong world_prompt với source: "media_asset".
TokenLab ghi nhận chủ sở hữu asset. Chỉ cùng tổ chức mới có thể lấy hoặc dùng media asset này trong tạo World.
Thân yêu cầu
string
bắt buộc
Tên tệp gốc, tối đa 64 ký tự.
string
bắt buộc
Loại media:
image hoặc video.string | null
Đuôi tệp tùy chọn như
png, jpg hoặc mp4.object | null
Đối tượng metadata tùy chọn lưu cùng media asset upstream.
Phản hồi
object
Metadata của media asset World Labs đã chuẩn bị.
string
URL upstream đã ký để tải tệp nhị phân lên.
string
Phương thức HTTP để tải tệp nhị phân lên
upload_info.upload_url, nếu được trả về.object
Các header cần gửi cùng tệp nhị phân, nếu được trả về.
curl -X POST "https://api.tokenlab.sh/v1/worlds/media-assets/prepare-upload" \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"file_name": "reference.png",
"kind": "image",
"extension": "png"
}'
import requests
response = requests.post(
"https://api.tokenlab.sh/v1/worlds/media-assets/prepare-upload",
headers={"Authorization": "Bearer sk-your-api-key"},
json={"file_name": "reference.png", "kind": "image", "extension": "png"},
)
print(response.json()["media_asset"]["media_asset_id"])
const response = await fetch('https://api.tokenlab.sh/v1/worlds/media-assets/prepare-upload', {
method: 'POST',
headers: {
Authorization: 'Bearer sk-your-api-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({ file_name: 'reference.png', kind: 'image', extension: 'png' })
});
const prepared = await response.json();
console.log(prepared.media_asset.media_asset_id, prepared.upload_info.upload_url);
Ủy quyền
Xác thực bằng Khóa API. Tạo hoặc quản lý khóa API trong Dashboard > API > API Keys.
Nội dung
application/json