> ## Documentation Index
> Fetch the complete documentation index at: https://docs.upscayl.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Multipart Upload URLs

> This endpoint generates a URLs for uploading a file to upscayl servers in multipart format. This is useful for large files or slow connections.




## OpenAPI

````yaml post /get-upload-url
openapi: 3.0.2
info:
  title: Upscayl Cloud API
  description: |
    API for Upscayl Cloud - An AI-powered image upscaling service.
    Use this API to upscale images, check processing status, and manage uploads.
  version: 1.0.0
  contact:
    name: Upscayl Support
    url: mailto:support@upscayl.org
servers:
  - url: https://api.upscayl.org
    description: Upscayl Server
security: []
paths:
  /get-upload-url:
    post:
      summary: Get Multipart Upload URLs
      description: >
        This endpoint generates a URLs for uploading a file to upscayl servers
        in multipart format. This is useful for large files or slow connections.
      operationId: getUploadUrl
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    fileSize:
                      type: integer
                      description: The size of the file in bytes.
                    fileType:
                      type: string
                      description: The MIME type of the file.
                    originalFileName:
                      type: string
                      description: The original name of the file.
                  required:
                    - fileSize
                    - fileType
                    - originalFileName
      responses:
        '200':
          description: Presigned URLs generated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: success
                  data:
                    type: object
                    properties:
                      uploadId:
                        type: string
                        description: The ID of the multipart upload.
                      partUrls:
                        type: array
                        items:
                          type: object
                          properties:
                            partNumber:
                              type: integer
                              description: The part number for the upload.
                            signedUrl:
                              type: string
                              description: The presigned URL for uploading the part.
                      partSize:
                        type: integer
                        description: The size of each part in bytes.
                      fileName:
                        type: string
                        description: The generated file name.
                      fileType:
                        type: string
                        description: The MIME type of the file.
                      fileSize:
                        type: integer
                        description: The size of the file in bytes.
                      originalFileName:
                        type: string
                        description: The original name of the file.
                      path:
                        description: >-
                          The path of the file to send to
                          [start-task](/start-task).
                      createdAt:
                        type: integer
                        description: Timestamp of URL generation.
                      expiresAt:
                        type: integer
                        description: Timestamp of URL expiration.
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                example: 'Bad Request: Missing User ID'
        '402':
          description: Payment Required
          content:
            application/json:
              schema:
                type: object
                example: Insufficient credits
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                example: Internal Server Error
      security:
        - ApiKeyAuth: []
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: >
        API key required to access the API. You can obtain an API key at
        [https://upscayl.org/account/api-keys](https://upscayl.org/account/api-keys)

````