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

# Get S3 Upload Parameters

> Get S3 upload parameters via query string. This endpoint provides the necessary information
to complete the file upload process using GET parameters.

Example CURL command:
```
  curl -X GET "https://lilt.com/v2/upload/s3/params?key=API_KEY&filename=example.json&type=application/json&metadata.size=1024&metadata.labels=important,review-needed"
```




## OpenAPI

````yaml /api-reference/openapi-bundled.yaml get /v2/upload/s3/params
openapi: 3.0.3
info:
  title: LILT API
  description: >
    LILT API Support: https://lilt.atlassian.net/servicedesk/customer/portals


    The LILT API enables programmatic access to the full-range of LILT backend
    services including:
      * Training of and translating with interactive, adaptive machine translation
      * Large-scale translation memory
      * The Lexicon (a large-scale termbase)
      * Programmatic control of the LILT CAT environment
      * Translation memory synchronization


    Requests and responses are in JSON format. The REST API only responds to
    HTTPS / SSL requests.


    The base url for this REST API is `https://api.lilt.com/`.


    ## Authentication


    Requests are authenticated via API key, which requires the Business plan.


    Requests are authenticated using [HTTP Basic
    Auth](https://en.wikipedia.org/wiki/Basic_access_authentication). Add your
    API key as both the `username` and `password`.


    For development, you may also pass the API key via the `key` query
    parameter. This is less secure than HTTP Basic Auth, and is not recommended
    for production use.


    ## Quotas


    Our services have a general quota of 4000 requests per minute. Should you
    hit the maximum requests per minute, you will need to wait 60 seconds before
    you can send another request.
  version: v3.0.3
  license:
    name: LILT Platform Terms and Conditions
    url: https://lilt.com/lilt-platform-terms-and-conditions
servers:
  - url: https://api.lilt.com
security:
  - BasicAuth: []
  - ApiKeyAuth: []
paths:
  /v2/upload/s3/params:
    get:
      tags:
        - Uploads
      summary: Get S3 Upload Parameters
      description: >
        Get S3 upload parameters via query string. This endpoint provides the
        necessary information

        to complete the file upload process using GET parameters.


        Example CURL command:

        ```
          curl -X GET "https://lilt.com/v2/upload/s3/params?key=API_KEY&filename=example.json&type=application/json&metadata.size=1024&metadata.labels=important,review-needed"
        ```
      operationId: getS3UploadParams
      parameters:
        - in: query
          name: filename
          description: A file name including file extension.
          required: true
          schema:
            type: string
            example: document.xliff
        - in: query
          name: type
          description: The content-type or mime-type of the file to upload.
          required: true
          schema:
            type: string
            example: video/mp4
        - in: query
          name: metadata.size
          description: The size of the file to upload in bytes.
          required: false
          schema:
            type: integer
            minimum: 0
            example: 1024
        - in: query
          name: metadata.category
          description: File category metadata.
          required: false
          schema:
            type: string
            example: documents
        - in: query
          name: metadata.uuid
          description: File UUID metadata.
          required: false
          schema:
            type: string
            example: 123e4567-e89b-12d3-a456-426614174000
        - in: query
          name: metadata.labels
          description: >-
            Comma-separated list of label names to be added to the file after
            upload completes.
          required: false
          schema:
            type: string
            example: important,review-needed
      responses:
        '200':
          description: Upload initialization information.
          content:
            application/json:
              schema:
                type: object
                properties:
                  url:
                    type: string
                    description: Pre-signed URL for file upload
                    example: >-
                      https://storage.googleapis.com/bucket/uploads/user123/file456.json?...
                  key:
                    type: string
                    description: Upload key identifier
                    example: uploads/user123/file456.json
                  method:
                    type: string
                    description: HTTP method to use for upload
                    example: PUT
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Error:
      type: object
      properties:
        message:
          type: string
          description: A human-readable message describing the error.
      description: |
        Response in the event of an unexpected error.
      example:
        message: Internal server error.
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
    ApiKeyAuth:
      type: apiKey
      name: key
      in: query

````