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

# Create a URL for file upload

> Generates a pre-signed URL for uploading a file to Vetcove's file storage (Amazon S3). The response includes the upload URL and form data that must be included when POSTing the file. After uploading, call the create uploaded file endpoint to register the file with the system.



## OpenAPI

````yaml post /ext/v2/uploaded-files/generate-upload-url/
openapi: 3.1.0
info:
  description: ''
  title: NinjaAPI
  version: 2.0.0
servers:
  - url: https://connect.vetcove.com/
security: []
paths:
  /ext/v2/uploaded-files/generate-upload-url/:
    post:
      tags:
        - File Uploads
      summary: Create a URL for file upload
      description: >-
        Generates a pre-signed URL for uploading a file to Vetcove's file
        storage (Amazon S3). The response includes the upload URL and form data
        that must be included when POSTing the file. After uploading, call the
        create uploaded file endpoint to register the file with the system.
      operationId: generate_upload_url
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenerateUploadUrlPayloadSchema'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenerateUploadUrlResponseSchema'
          description: Created
      security:
        - ExternalAPIAuth: []
components:
  schemas:
    GenerateUploadUrlPayloadSchema:
      properties:
        content_type:
          description: The content type of the file to upload
          title: Content Type
          type: string
        filename:
          description: The filename of the file to upload
          title: Filename
          type: string
      required:
        - filename
        - content_type
      title: GenerateUploadUrlPayloadSchema
      type: object
    GenerateUploadUrlResponseSchema:
      properties:
        key:
          description: The key of the file to upload
          title: Key
          type: string
        post_data:
          description: The POST data of the file to upload
          title: Post Data
          type: object
        url:
          description: The URL to upload the file to. Good for one hour after creation
          title: Url
          type: string
      required:
        - key
        - url
        - post_data
      title: GenerateUploadUrlResponseSchema
      type: object
  securitySchemes:
    ExternalAPIAuth:
      scheme: bearer
      type: http

````