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

# Complete Upload

Finalize an upload and receive the public URL for the file. Use the `uploadID` from the create upload response.

## Error Responses

| Status | Description                                                                                    |
| ------ | ---------------------------------------------------------------------------------------------- |
| 402    | Upload quota exceeded. The file has been deleted.                                              |
| 409    | Upload incomplete. The file bytes were not fully uploaded to the `uploadLocation`.             |
| 413    | File too large. The uploaded file exceeds the maximum allowed size. The file has been deleted. |

Note that Glide will delete this file within 30 days if the URL is not stored in a table in Glide.


## OpenAPI

````yaml post /apps/{appID}/uploads/{uploadID}/complete
openapi: 3.0.0
info:
  title: ''
  version: 0.0.1
servers:
  - description: Production
    url: https://api.glideapps.com
security:
  - BearerAuth: []
tags: []
paths:
  /apps/{appID}/uploads/{uploadID}/complete:
    post:
      parameters:
        - name: appID
          in: path
          schema:
            type: string
            description: ID of the app, e.g., `mT91fPcZCWigkZXgSZGJ`
            example: mT91fPcZCWigkZXgSZGJ
          required: true
        - name: uploadID
          in: path
          schema:
            type: string
            description: ID of the upload, e.g., `upload-123`
            example: upload-123
          required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      url:
                        type: string
                        description: Public URL for the uploaded file
                        example: >-
                          https://storage.googleapis.com/glide-uploads/example.png
                    required:
                      - url
                    additionalProperties: false
                required:
                  - data
                additionalProperties: false
        '402':
          description: Upload quota exceeded
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      type:
                        type: string
                      message:
                        type: string
                    required:
                      - type
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '403':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      type:
                        type: string
                      message:
                        type: string
                    required:
                      - type
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '404':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      type:
                        type: string
                      message:
                        type: string
                    required:
                      - type
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '409':
          description: Upload incomplete
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      type:
                        type: string
                      message:
                        type: string
                    required:
                      - type
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '413':
          description: File too large
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      type:
                        type: string
                      message:
                        type: string
                    required:
                      - type
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Bearer authentication header of the form Bearer `<token>`, where
        `<token>` is your [auth
        token](/api-reference/v2/general/authentication).

````