Delulu documentation
Media
6 endpoints in the Media API group.
Generated from the typed server contract. Download the complete OpenAPI 3.1 specification.
media.list
GET
/v1/workspaces/{workspaceId}/mediaParameters
| Name | In | Required | Type |
|---|---|---|---|
workspaceId | path | yes | string |
limit | query | no | value |
offset | query | no | value |
Request body
No request body.
Responses
| Status | Meaning |
|---|---|
200 | Success |
401 | UnauthorizedError |
402 | QuotaExceededError |
403 | ForbiddenError |
404 | NotFoundError |
409 | ConflictError |
422 | ValidationError |
429 | RateLimitedError |
Response bodies
200 — application/json
{
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"bucketKey": {
"type": "string"
},
"url": {
"type": "string"
},
"mediaType": {
"type": "string",
"enum": [
"image",
"video",
"document"
]
},
"mimeType": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sizeBytes": {
"type": "string"
},
"width": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"height": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"durationSeconds": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"thumbnails": {
"type": "array",
"items": {
"type": "string"
}
},
"altText": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"type": "string",
"enum": [
"pending",
"ready",
"failed"
]
},
"createdAt": {
"type": "string"
}
},
"required": [
"id",
"bucketKey",
"url",
"mediaType",
"mimeType",
"sizeBytes",
"width",
"height",
"durationSeconds",
"thumbnails",
"altText",
"status",
"createdAt"
],
"additionalProperties": false
}
},
"total": {
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
"limit": {
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
"offset": {
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
}
},
"required": [
"data",
"total",
"limit",
"offset"
],
"additionalProperties": false
}401 — application/json
{
"$ref": "#/components/schemas/UnauthorizedError"
}402 — application/json
{
"$ref": "#/components/schemas/QuotaExceededError"
}403 — application/json
{
"$ref": "#/components/schemas/ForbiddenError"
}404 — application/json
{
"$ref": "#/components/schemas/NotFoundError"
}409 — application/json
{
"$ref": "#/components/schemas/ConflictError"
}422 — application/json
{
"$ref": "#/components/schemas/ValidationError"
}429 — application/json
{
"$ref": "#/components/schemas/RateLimitedError"
}media.get
GET
/v1/workspaces/{workspaceId}/media/{id}Parameters
| Name | In | Required | Type |
|---|---|---|---|
workspaceId | path | yes | string |
id | path | yes | string |
Request body
No request body.
Responses
| Status | Meaning |
|---|---|
200 | Success |
401 | UnauthorizedError |
402 | QuotaExceededError |
403 | ForbiddenError |
404 | NotFoundError |
409 | ConflictError |
422 | ValidationError |
429 | RateLimitedError |
Response bodies
200 — application/json
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"bucketKey": {
"type": "string"
},
"url": {
"type": "string"
},
"mediaType": {
"type": "string",
"enum": [
"image",
"video",
"document"
]
},
"mimeType": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sizeBytes": {
"type": "string"
},
"width": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"height": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"durationSeconds": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"thumbnails": {
"type": "array",
"items": {
"type": "string"
}
},
"altText": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"type": "string",
"enum": [
"pending",
"ready",
"failed"
]
},
"createdAt": {
"type": "string"
}
},
"required": [
"id",
"bucketKey",
"url",
"mediaType",
"mimeType",
"sizeBytes",
"width",
"height",
"durationSeconds",
"thumbnails",
"altText",
"status",
"createdAt"
],
"additionalProperties": false
}401 — application/json
{
"$ref": "#/components/schemas/UnauthorizedError"
}402 — application/json
{
"$ref": "#/components/schemas/QuotaExceededError"
}403 — application/json
{
"$ref": "#/components/schemas/ForbiddenError"
}404 — application/json
{
"$ref": "#/components/schemas/NotFoundError"
}409 — application/json
{
"$ref": "#/components/schemas/ConflictError"
}422 — application/json
{
"$ref": "#/components/schemas/ValidationError"
}429 — application/json
{
"$ref": "#/components/schemas/RateLimitedError"
}media.remove
DELETE
/v1/workspaces/{workspaceId}/media/{id}Parameters
| Name | In | Required | Type |
|---|---|---|---|
workspaceId | path | yes | string |
id | path | yes | string |
Request body
No request body.
Responses
| Status | Meaning |
|---|---|
200 | Success |
401 | UnauthorizedError |
402 | QuotaExceededError |
403 | ForbiddenError |
404 | NotFoundError |
409 | ConflictError |
422 | ValidationError |
429 | RateLimitedError |
Response bodies
200 — application/json
{
"type": "object",
"properties": {
"deleted": {
"type": "boolean"
}
},
"required": [
"deleted"
],
"additionalProperties": false
}401 — application/json
{
"$ref": "#/components/schemas/UnauthorizedError"
}402 — application/json
{
"$ref": "#/components/schemas/QuotaExceededError"
}403 — application/json
{
"$ref": "#/components/schemas/ForbiddenError"
}404 — application/json
{
"$ref": "#/components/schemas/NotFoundError"
}409 — application/json
{
"$ref": "#/components/schemas/ConflictError"
}422 — application/json
{
"$ref": "#/components/schemas/ValidationError"
}429 — application/json
{
"$ref": "#/components/schemas/RateLimitedError"
}media.uploads
POST
/v1/workspaces/{workspaceId}/media/uploadsParameters
| Name | In | Required | Type |
|---|---|---|---|
workspaceId | path | yes | string |
Request body
Required.
application/json
{
"type": "array",
"items": {
"type": "object",
"properties": {
"filename": {
"type": "string"
},
"contentType": {
"type": "string"
},
"width": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"height": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"durationSeconds": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"thumbnails": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"altText": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"filename",
"contentType"
],
"additionalProperties": false
}
}Responses
| Status | Meaning |
|---|---|
200 | Success |
401 | UnauthorizedError |
402 | QuotaExceededError |
403 | ForbiddenError |
404 | NotFoundError |
409 | ConflictError |
422 | ValidationError |
429 | RateLimitedError |
Response bodies
200 — application/json
{
"type": "array",
"items": {
"type": "object",
"properties": {
"mediaId": {
"type": "string"
},
"bucketKey": {
"type": "string"
},
"uploadUrl": {
"type": "string"
}
},
"required": [
"mediaId",
"bucketKey",
"uploadUrl"
],
"additionalProperties": false
}
}401 — application/json
{
"$ref": "#/components/schemas/UnauthorizedError"
}402 — application/json
{
"$ref": "#/components/schemas/QuotaExceededError"
}403 — application/json
{
"$ref": "#/components/schemas/ForbiddenError"
}404 — application/json
{
"$ref": "#/components/schemas/NotFoundError"
}409 — application/json
{
"$ref": "#/components/schemas/ConflictError"
}422 — application/json
{
"$ref": "#/components/schemas/ValidationError"
}429 — application/json
{
"$ref": "#/components/schemas/RateLimitedError"
}media.import
POST
/v1/workspaces/{workspaceId}/media/importsParameters
| Name | In | Required | Type |
|---|---|---|---|
workspaceId | path | yes | string |
Request body
Required.
application/json
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"filename": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"altText": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"idempotencyKey": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"url"
],
"additionalProperties": false
}Responses
| Status | Meaning |
|---|---|
200 | Success |
401 | UnauthorizedError |
402 | QuotaExceededError |
403 | ForbiddenError |
404 | NotFoundError |
409 | ConflictError |
422 | ValidationError |
429 | RateLimitedError |
Response bodies
200 — application/json
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"bucketKey": {
"type": "string"
},
"url": {
"type": "string"
},
"mediaType": {
"type": "string",
"enum": [
"image",
"video",
"document"
]
},
"mimeType": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sizeBytes": {
"type": "string"
},
"width": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"height": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"durationSeconds": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"thumbnails": {
"type": "array",
"items": {
"type": "string"
}
},
"altText": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"type": "string",
"enum": [
"pending",
"ready",
"failed"
]
},
"createdAt": {
"type": "string"
}
},
"required": [
"id",
"bucketKey",
"url",
"mediaType",
"mimeType",
"sizeBytes",
"width",
"height",
"durationSeconds",
"thumbnails",
"altText",
"status",
"createdAt"
],
"additionalProperties": false
}401 — application/json
{
"$ref": "#/components/schemas/UnauthorizedError"
}402 — application/json
{
"$ref": "#/components/schemas/QuotaExceededError"
}403 — application/json
{
"$ref": "#/components/schemas/ForbiddenError"
}404 — application/json
{
"$ref": "#/components/schemas/NotFoundError"
}409 — application/json
{
"$ref": "#/components/schemas/ConflictError"
}422 — application/json
{
"$ref": "#/components/schemas/ValidationError"
}429 — application/json
{
"$ref": "#/components/schemas/RateLimitedError"
}media.complete
POST
/v1/workspaces/{workspaceId}/media/completeParameters
| Name | In | Required | Type |
|---|---|---|---|
workspaceId | path | yes | string |
Request body
Required.
application/json
{
"type": "array",
"items": {
"type": "object",
"properties": {
"mediaId": {
"type": "string"
}
},
"required": [
"mediaId"
],
"additionalProperties": false
}
}Responses
| Status | Meaning |
|---|---|
200 | Success |
401 | UnauthorizedError |
402 | QuotaExceededError |
403 | ForbiddenError |
404 | NotFoundError |
409 | ConflictError |
422 | ValidationError |
429 | RateLimitedError |
Response bodies
200 — application/json
{
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"bucketKey": {
"type": "string"
},
"url": {
"type": "string"
},
"mediaType": {
"type": "string",
"enum": [
"image",
"video",
"document"
]
},
"mimeType": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sizeBytes": {
"type": "string"
},
"width": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"height": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"durationSeconds": {
"anyOf": [
{
"anyOf": [
{
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"NaN"
]
},
{
"type": "string",
"enum": [
"Infinity"
]
},
{
"type": "string",
"enum": [
"-Infinity"
]
}
]
},
{
"type": "string",
"enum": [
"Infinity",
"-Infinity",
"NaN"
]
}
]
},
{
"type": "null"
}
]
},
"thumbnails": {
"type": "array",
"items": {
"type": "string"
}
},
"altText": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"type": "string",
"enum": [
"pending",
"ready",
"failed"
]
},
"createdAt": {
"type": "string"
}
},
"required": [
"id",
"bucketKey",
"url",
"mediaType",
"mimeType",
"sizeBytes",
"width",
"height",
"durationSeconds",
"thumbnails",
"altText",
"status",
"createdAt"
],
"additionalProperties": false
}
}401 — application/json
{
"$ref": "#/components/schemas/UnauthorizedError"
}402 — application/json
{
"$ref": "#/components/schemas/QuotaExceededError"
}403 — application/json
{
"$ref": "#/components/schemas/ForbiddenError"
}404 — application/json
{
"$ref": "#/components/schemas/NotFoundError"
}409 — application/json
{
"$ref": "#/components/schemas/ConflictError"
}422 — application/json
{
"$ref": "#/components/schemas/ValidationError"
}429 — application/json
{
"$ref": "#/components/schemas/RateLimitedError"
}