Media2URL Developer Platform REST API
    • Media2URL Developer Platform - Overview & API Documentation
    • Retrieve Account & API Usage
      GET
    • Request Direct R2 Upload URL
      POST
    • Finalize Upload & Promote Asset
      POST
    • Check for Duplicate Asset
      POST
    • List Assets
      GET
    • Get Asset Details
      GET
    • Delete Asset
      DELETE
    • Presign Replacement Upload
      POST
    • Finalize Asset Replacement
      POST
    • List Asset Version History
      GET
    • List Folders
      GET
    • Create Folder
      POST
    • Import Remote URL
      POST
    • Get Job Status
      GET
    • Schemas
      • CredentialSurface
      • ProblemDetails
      • UsageResponse
      • AutomationAccountCapabilities
      • PresignUploadRequest
      • PresignUploadResponse
      • FinalizeUploadRequest
      • ReplacePresignRequest
      • AssetResource
      • CheckDuplicateRequest
      • CheckDuplicateResponse
      • PaginatedAssetList
      • VersionHistoryResponse
      • FolderResource
      • FolderListResponse
      • CreateFolderRequest
      • ImportRequest
      • ImportResponse
      • JobResource

      Request Direct R2 Upload URL

      POST
      /uploads/presign
      Validates file metadata against account quotas, atomically reserves storage capacity, and generates a short-lived presigned PUT URL targeting a temporary R2 key.

      Request

      Authorization
      Bearer Token
      Provide your bearer token in the
      Authorization
      header when making requests to protected resources.
      Example:
      Authorization: Bearer ********************
      or
      Body Params application/jsonRequired

      Examples

      Responses

      🟢201
      application/json
      Temporary upload URL generated
      Bodyapplication/json

      🟠400BadRequest
      🟠401Unauthorized
      🟠403Forbidden
      🟠429RateLimited
      Request Request Example
      Shell
      JavaScript
      Java
      Swift
      curl --location '/uploads/presign' \
      --header 'Authorization: Bearer <token>' \
      --header 'Content-Type: application/json' \
      --data '{
          "filename": "hero.png",
          "content_type": "image/png",
          "size": 245817,
          "checksum_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
          "privacy": "public"
      }'
      Response Response Example
      201 - Example 1
      {
          "upload_id": "upl_9f3b1458-45a2-4a0b-8d59-2c7bb2de3f1a",
          "upload_url": "http://example.com",
          "expires_at": "2019-08-24T14:15:22.123Z",
          "required_headers": {
              "Content-Type": "image/png",
              "x-amz-checksum-sha256": "string"
          }
      }
      Modified at 2026-10-11 18:32:15
      Previous
      Retrieve Account & API Usage
      Next
      Finalize Upload & Promote Asset
      Built with