Create resource upload. POST /api/openapi/v1/resource-uploads, scope admin.v1.resource-uploads.manage.
- Scope: admin.v1.resource-uploads.manage
- Permission: Manage resource uploads (resource-uploads)
- Permission type: Manage
- Endpoint: POST/api/openapi/v1/resource-uploads
Authentication and request headers
Call with an application API key. This endpoint checks only the scope above; read, manage and execute permissions do not imply one another.
| Name | Location | Type | Required | Description | Example |
|---|---|---|---|---|---|
| Authorization | header | string | Yes | Application API key, passed as a Bearer token. | Bearer qwk_*** |
| X-Request-Id | header | string | No | Optional request tracing identifier; generated by the server if omitted. | req-20260831-001 |
Request parameters
| Name | Location | Type | Required | Description | Example |
|---|---|---|---|---|---|
| Idempotency-Key | header | string | Required | Idempotency key used to prevent duplicate submissions | "<string>" |
| media_type | body | string | No | File media type | "<string>" |
| resource_type | body | string | Required | Resource type | "skill" |
| size_bytes | body | integer · int64 | No | File size in bytes | 1 |
| upload_kind | body | string | No | Upload kind | "package" |
Request example
cURL
Responses
201 Created
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
| asset_url | string | No | Asset URL | "<string>" |
| created_at | string · date-time | Yes | Created at | "2026-08-27T10:00:00Z" |
| error_code | string | No | Error code | "<string>" |
| expected_sha256 | string | No | Expected file SHA-256 digest | "<string>" |
| expires_at | string · date-time | Yes | Expires at | "2026-08-27T10:00:00Z" |
| max_size_bytes | integer · int64 | No | Maximum file size in bytes | 0 |
| media_type | string | No | File media type | "<string>" |
| resource_type | string | Yes | Resource type | "skill" |
| size_bytes | integer · int64 | No | File size in bytes | 0 |
| status | string | Yes | Status | "created" |
| updated_at | string · date-time | Yes | Updated at | "2026-08-27T10:00:00Z" |
| upload_headers | object | No | Upload headers | {} |
| upload_id | string · uuid | Yes | Upload session ID | "<uuid>" |
| upload_kind | string | Yes | Upload kind | "package" |
| upload_method | string | No | Upload HTTP method | "<string>" |
| upload_url | string | No | Upload URL | "<string>" |
| upload_url_expires_at | string · date-time | No | Upload URL expiration time | "2026-08-27T10:00:00Z" |
default Flat business error
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
| code | string | No | Stable business error code | "<string>" |
| detail | string | Yes | Human-readable error description | "<string>" |
| details | OpenapiErrorDetails | No | Error details | {"field":"<string>","reason":"<string>","suggestion":"<string>"} |
| details.field | string | No | Request field that failed validation | "<string>" |
| details.reason | string | No | Stable validation failure reason | "<string>" |
| details.suggestion | string | No | Suggested normalized value | "<string>" |
| error | string | Yes | Stable HTTP error type | "<string>" |