openapi: 3.0.3 info: title: ImageKit Account Management API Upload File API version: 1.0.0 description: Checkout [API overview](/docs/api-overview) to learn about ImageKit's APIs, authentication, rate limits, and error codes etc. contact: email: developer@imagekit.io name: ImageKit Team url: https://imagekit.io termsOfService: https://imagekit.io/terms/ servers: - url: https://api.imagekit.io security: - basicAuth: [] tags: - name: Upload File paths: /api/v1/files/upload: servers: - url: https://upload.imagekit.io post: tags: - Upload File operationId: upload-file summary: Upload file V1 description: 'ImageKit.io allows you to upload files directly from both the server and client sides. For server-side uploads, private API key authentication is used. For client-side uploads, generate a one-time `token`, `signature`, and `expire` from your secure backend using private API. [Learn more](/docs/api-reference/upload-file/upload-file#how-to-implement-client-side-file-upload) about how to implement client-side file upload. The [V2 API](/docs/api-reference/upload-file/upload-file-v2) enhances security by verifying the entire payload using JWT. **File size limit** \ On the free plan, the maximum upload file sizes are 25MB for images, audio, and raw files and 100MB for videos. On the Lite paid plan, these limits increase to 40MB for images, audio, and raw files and 300MB for videos, whereas on the Pro paid plan, these limits increase to 50MB for images, audio, and raw files and 2GB for videos. These limits can be further increased with enterprise plans. **Version limit** \ A file can have a maximum of 100 versions. **Demo applications** - A full-fledged [upload widget using Uppy](https://github.com/imagekit-samples/uppy-uploader), supporting file selections from local storage, URL, Dropbox, Google Drive, Instagram, and more. - [Quick start guides](/docs/quick-start-guides) for various frameworks and technologies. ' requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/FileUploadV1' responses: '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '200': description: File uploaded successfully. content: application/json: schema: $ref: '#/components/schemas/Upload' examples: Simple image file: value: $ref: '#/components/examples/UploadResponseImage' Simple video file: value: $ref: '#/components/examples/UploadResonseVideo' Image with EmbeddedMetadata: value: $ref: '#/components/examples/UploadResponseWithEmbeddedMetadata' '202': description: File accepted for upload. Pre transformation for video is being processed. content: application/json: schema: type: object properties: message: type: string example: The pre-transformation has been queued successfully. '400': description: Bad request. content: application/json: schema: type: object properties: message: type: string examples: - Your request is missing file parameter. - Your request contains both signature and basic auth parameter. Use only one method, you might be exposing your private API key. - Your request contains invalid expire parameter. Expire parameter should be a Unix time in less than 1 hour into the future. - A file with the same name already exists at the exact location. We could not overwrite it because both overwriteFile and useUniqueFileName are set to false. - Your request contains invalid file parameter. The file size exceeds limits. - Upload Limit Exceeded. - Extensions quota exceeded. - The file could not be uploaded because the transformation field is invalid. - The file could not be uploaded because transformations are supported only for image and video files. - The file could not be uploaded because the detected file type & post-transformation are incompatible. - You have sent too many requests to update the file recently. Please try again later. - Your request contains invalid syntax for the checks parameter. - Your request failed 'checks' validation. help: type: string example: For support kindly contact us at support@imagekit.io. /api/v2/files/upload: servers: - url: https://upload.imagekit.io post: tags: - Upload File operationId: upload-file-v2 summary: Upload file V2 description: 'The V2 API enhances security by verifying the entire payload using JWT. This API is in beta. ImageKit.io allows you to upload files directly from both the server and client sides. For server-side uploads, private API key authentication is used. For client-side uploads, generate a one-time `token` from your secure backend using private API. [Learn more](/docs/api-reference/upload-file/upload-file-v2#how-to-implement-secure-client-side-file-upload) about how to implement secure client-side file upload. **File size limit** \ On the free plan, the maximum upload file sizes are 25MB for images, audio, and raw files, and 100MB for videos. On the Lite paid plan, these limits increase to 40MB for images, audio, and raw files and 300MB for videos, whereas on the Pro paid plan, these limits increase to 50MB for images, audio, and raw files and 2GB for videos. These limits can be further increased with enterprise plans. **Version limit** \ A file can have a maximum of 100 versions. **Demo applications** - A full-fledged [upload widget using Uppy](https://github.com/imagekit-samples/uppy-uploader), supporting file selections from local storage, URL, Dropbox, Google Drive, Instagram, and more. - [Quick start guides](/docs/quick-start-guides) for various frameworks and technologies. ' requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/FileUploadV2' responses: '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '200': description: File uploaded successfully. content: application/json: schema: $ref: '#/components/schemas/Upload' examples: Simple image file: value: $ref: '#/components/examples/UploadResponseImage' Simple video file: value: $ref: '#/components/examples/UploadResonseVideo' Image with EmbeddedMetadata: value: $ref: '#/components/examples/UploadResponseWithEmbeddedMetadata' '202': description: File accepted for upload. Pre transformation for video is being processed. content: application/json: schema: type: object properties: message: type: string example: The pre-transformation has been queued successfully. '400': description: Bad request. content: application/json: schema: type: object properties: message: type: string examples: - Your request is missing file parameter. - Your request contains both token and basic auth parameter. Use only one method, you might be exposing your private API key. - Your request contains invalid payload. It does not match with the payload used to generate token. - Your request is missing token parameter. - Your request contains expired token. - Your request has invalid token. - A file with the same name already exists at the exact location. We could not overwrite it because both overwriteFile and useUniqueFileName are set to false. - Your request contains invalid file parameter. The file size exceeds limits. - Upload Limit Exceeded. - Extensions quota exceeded. - The file could not be uploaded because the transformation field is invalid. - The file could not be uploaded because transformations are supported only for image and video files. - The file could not be uploaded because the detected file type & post-transformation are incompatible. - You have sent too many requests to update the file recently. Please try again later. - Your request contains invalid syntax for the checks parameter. - Your request failed 'checks' validation. help: type: string example: For support kindly contact us at support@imagekit.io. components: schemas: RemovedotBGExtension: title: Remove background type: object required: - name properties: name: type: string description: Specifies the background removal extension. enum: - remove-bg options: type: object properties: add_shadow: type: boolean description: 'Whether to add an artificial shadow to the result. Default is false. Note: Adding shadows is currently only supported for car photos. ' default: false semitransparency: type: boolean description: 'Allows semi-transparent regions in the result. Default is true. Note: Semitransparency is currently only supported for car windows. ' default: true bg_color: type: string description: 'Specifies a solid color background using hex code (e.g., "81d4fa", "fff") or color name (e.g., "green"). If this parameter is set, `bg_image_url` must be empty. ' bg_image_url: type: string description: 'Sets a background image from a URL. If this parameter is set, `bg_color` must be empty. ' Gps: description: Object containing GPS information. type: object additionalProperties: true properties: GPSVersionID: type: array items: type: integer GPSLatitudeRef: type: string GPSLatitude: type: array items: type: number GPSLongitudeRef: type: string GPSLongitude: type: array items: type: number GPSAltitudeRef: type: integer GPSAltitude: type: number GPSTimeStamp: type: array items: type: number GPSImgDirectionRef: type: string GPSImgDirection: type: number GPSDateStamp: type: string ExifImage: description: Object containing EXIF image information. type: object additionalProperties: true properties: Make: type: string Model: type: string ImageDescription: type: string Artist: type: string Copyright: type: string Orientation: type: integer XResolution: type: number YResolution: type: number ResolutionUnit: type: integer Software: type: string ModifyDate: type: string YCbCrPositioning: type: integer ExifOffset: type: integer GPSInfo: type: integer AITaskYesNo: title: AI Task - Yes/No type: object required: - type - instruction properties: type: type: string description: Task type that asks a yes/no question and executes actions based on the answer. enum: - yes_no instruction: type: string minLength: 1 maxLength: 2000 description: The yes/no question for the AI to answer about the image. example: Is this a luxury or high-end fashion item? on_yes: $ref: '#/components/schemas/AITaskAction' description: Actions to execute if the AI answers yes. on_no: $ref: '#/components/schemas/AITaskAction' description: Actions to execute if the AI answers no. on_unknown: $ref: '#/components/schemas/AITaskAction' description: Actions to execute if the AI cannot determine the answer. Thumbnail: description: Object containing Thumbnail information. type: object additionalProperties: true properties: Compression: type: integer XResolution: type: number YResolution: type: number ResolutionUnit: type: integer ThumbnailOffset: type: integer ThumbnailLength: type: integer AutoTaggingExtension: title: Auto tagging type: object required: - name - minConfidence - maxTags properties: name: type: string enum: - google-auto-tagging - aws-auto-tagging description: Specifies the auto-tagging extension used. minConfidence: type: integer description: Minimum confidence level for tags to be considered valid. maxTags: type: integer description: Maximum number of tags to attach to the asset. AITaskAction: title: AI Task Action type: object description: Defines actions to perform based on AI task results. properties: add_tags: type: array description: Array of tag strings to add to the asset. items: type: string example: - luxury - premium remove_tags: type: array description: Array of tag strings to remove from the asset. items: type: string example: - budget - affordable set_metadata: type: array description: Array of custom metadata field updates. items: type: object required: - field - value properties: field: type: string description: Name of the custom metadata field to set. value: description: Value to set for the custom metadata field. The value type should match the custom metadata field type. oneOf: - type: string - type: number - type: boolean - type: array x-stainless-variantName: Mixed title: Mixed items: title: Metadata value item oneOf: - type: string - type: number - type: boolean example: - field: price_range value: premium unset_metadata: type: array description: Array of custom metadata fields to remove. items: type: object required: - field properties: field: type: string description: Name of the custom metadata field to remove. example: - field: price_range Extensions: title: Extensions Array type: array items: discriminator: propertyName: name anyOf: - $ref: '#/components/schemas/RemovedotBGExtension' - $ref: '#/components/schemas/AutoTaggingExtension' - $ref: '#/components/schemas/AutoDescriptionExtension' - $ref: '#/components/schemas/AITasksExtension' - $ref: '#/components/schemas/SavedExtensionReference' description: 'Array of extensions to be applied to the asset. Each extension can be configured with specific parameters based on the extension type. ' example: - name: remove-bg options: add_shadow: true bg_colour: green - name: google-auto-tagging maxTags: 5 minConfidence: 95 - name: ai-auto-description - name: ai-tasks tasks: - type: select_tags instruction: What types of clothing items are visible in this image? vocabulary: - shirt - tshirt - dress - trousers - jacket - type: yes_no instruction: Is this a luxury or high-end fashion item? on_yes: add_tags: - luxury - premium - name: saved-extension id: ext_abc123 FileUploadV2: type: object required: - file - fileName properties: file: type: string format: binary contentEncoding: binary description: 'The API accepts any of the following: - **Binary data** – send the raw bytes as `multipart/form-data`. - **HTTP / HTTPS URL** – a publicly reachable URL that ImageKit’s servers can fetch. - **Base64 string** – the file encoded as a Base64 data URI or plain Base64. When supplying a URL, the server must receive the response headers within 8 seconds; otherwise the request fails with 400 Bad Request. ' fileName: type: string description: 'The name with which the file has to be uploaded. ' token: type: string description: 'This is the client-generated JSON Web Token (JWT). The ImageKit.io server uses it to authenticate and check that the upload request parameters have not been tampered with after the token has been generated. Learn how to create the token on the page below. This field is only required for authentication when uploading a file from the client side. **Note**: Sending a JWT that has been used in the past will result in a validation error. Even if your previous request resulted in an error, you should always send a new token. **⚠️Warning**: JWT must be generated on the server-side because it is generated using your account''s private API key. This field is required for authentication when uploading a file from the client-side. ' useUniqueFileName: type: boolean default: true description: 'Whether to use a unique filename for this file or not. If `true`, ImageKit.io will add a unique suffix to the filename parameter to get a unique filename. If `false`, then the image is uploaded with the provided filename parameter, and any existing file with the same name is replaced. ' tags: type: array items: type: string description: 'Set the tags while uploading the file. Provide an array of tag strings (e.g. `["tag1", "tag2", "tag3"]`). The combined length of all tag characters must not exceed 500, and the `%` character is not allowed. If this field is not specified and the file is overwritten, the existing tags will be removed. ' example: - t-shirt - round-neck - men folder: type: string description: 'The folder path in which the image has to be uploaded. If the folder(s) didn''t exist before, a new folder(s) is created. Using multiple `/` creates a nested folder. ' default: / isPrivateFile: type: boolean default: false description: 'Whether to mark the file as private or not. If `true`, the file is marked as private and is accessible only using named transformation or signed URL. ' isPublished: type: boolean default: true description: 'Whether to upload file as published or not. If `false`, the file is marked as unpublished, which restricts access to the file only via the media library. Files in draft or unpublished state can only be publicly accessed after being published. The option to upload in draft state is only available in custom enterprise pricing plans. ' customCoordinates: type: string description: "Define an important area in the image. This is only relevant for image type files.\n\n - To be passed as a string with the x and y coordinates of the top-left corner, and width and height of the area of interest in the format `x,y,width,height`. For example - `10,10,100,100`\n - Can be used with fo-customtransformation.\n - If this field is not specified and the file is overwritten, then customCoordinates will be removed.\n" responseFields: type: array items: type: string enum: - tags - customCoordinates - isPrivateFile - embeddedMetadata - isPublished - customMetadata - metadata - selectedFieldsSchema description: 'Array of response field keys to include in the API response body. ' example: - tags - customCoordinates - isPrivateFile extensions: $ref: '#/components/schemas/Extensions' webhookUrl: type: string format: uri description: 'The final status of extensions after they have completed execution will be delivered to this endpoint as a POST request. [Learn more](/docs/api-reference/digital-asset-management-dam/managing-assets/update-file-details#webhook-payload-structure) about the webhook payload structure. ' overwriteFile: type: boolean default: true description: 'If `false` and `useUniqueFileName` is also `false`, and a file already exists at the exact location, upload API will return an error immediately. ' overwriteAITags: type: boolean default: true description: 'If set to `true` and a file already exists at the exact location, its AITags will be removed. Set `overwriteAITags` to `false` to preserve AITags. ' overwriteTags: type: boolean default: true description: 'If the request does not have `tags`, and a file already exists at the exact location, existing tags will be removed. ' overwriteCustomMetadata: type: boolean default: true description: 'If the request does not have `customMetadata`, and a file already exists at the exact location, existing customMetadata will be removed. ' customMetadata: type: object additionalProperties: true description: 'JSON key-value pairs to associate with the asset. Create the custom metadata fields before setting these values. ' example: brand: Nike color: red transformation: type: object $ref: '#/components/schemas/TransformationObject' checks: type: string description: 'Server-side checks to run on the asset. Read more about [Upload API checks](/docs/api-reference/upload-file/upload-file-v2#upload-api-checks). ' example: '"request.folder" : "marketing/" ' description: type: string description: 'Optional text to describe the contents of the file. ' example: Running shoes AITaskSelectMetadata: title: AI Task - Select Metadata type: object required: - type - instruction - field properties: type: type: string description: Task type that analyzes the image and sets a custom metadata field value from a vocabulary. enum: - select_metadata instruction: type: string minLength: 1 maxLength: 2000 description: The question or instruction for the AI to analyze the image. example: What is the primary color of the clothing? field: type: string description: Name of the custom metadata field to set. The field must exist in your account. example: primary_color vocabulary: type: array minItems: 1 maxItems: 30 description: An array of possible values matching the custom metadata field type. If not provided for SingleSelect or MultiSelect field types, all values from the custom metadata field definition will be used. When providing large vocabularies (above 30 items), the AI may not strictly adhere to the list. items: oneOf: - type: string - type: number - type: boolean example: - red - blue - green - black - white min_selections: type: integer minimum: 0 description: Minimum number of values to select from the vocabulary. max_selections: type: integer minimum: 1 description: Maximum number of values to select from the vocabulary. Metadata: description: JSON object containing metadata. type: object additionalProperties: true properties: height: type: integer description: The height of the image or video in pixels. width: type: integer description: The width of the image or video in pixels. size: type: integer description: The file size in bytes. format: type: string description: The format of the file (e.g., 'jpg', 'mp4'). hasColorProfile: type: boolean description: Indicates if the image has a color profile. quality: type: integer description: The quality indicator of the image. density: type: integer description: The density of the image in DPI. hasTransparency: type: boolean description: Indicates if the image contains transparent areas. pHash: type: string description: Perceptual hash of the image. bitRate: type: integer description: The bit rate of the video in kbps (only for video). duration: type: integer description: The duration of the video in seconds (only for video). audioCodec: type: string description: The audio codec used in the video (only for video). videoCodec: type: string description: The video codec used in the video (only for video). exif: type: object additionalProperties: true properties: image: $ref: '#/components/schemas/ExifImage' thumbnail: $ref: '#/components/schemas/Thumbnail' exif: $ref: '#/components/schemas/ExifDetails' gps: $ref: '#/components/schemas/Gps' interoperability: $ref: '#/components/schemas/Interoperability' makernote: type: object additionalProperties: true CustomMetadata: type: object description: 'A key-value data associated with the asset. ' additionalProperties: true EmbeddedMetadata: type: object additionalProperties: true description: Consolidated embedded metadata associated with the file. It includes exif, iptc, and xmp data. TransformationObject: type: object additionalProperties: false x-stainless-naming: java: type_name: UploadTransformation description: "Configure pre-processing (`pre`) and post-processing (`post`) transformations.\n\n- `pre` — applied before the file is uploaded to the Media Library. \n Useful for reducing file size or applying basic optimizations upfront (e.g., resize, compress).\n\n- `post` — applied immediately after upload. \n Ideal for generating transformed versions (like video encodes or thumbnails) in advance, so they're ready for delivery without delay.\n\nYou can mix and match any combination of post-processing types.\n" properties: pre: type: string description: 'Transformation string to apply before uploading the file to the Media Library. Useful for optimizing files at ingestion. ' example: w-300,h-300,q-80 post: type: array description: "List of transformations to apply *after* the file is uploaded. \nEach item must match one of the following types:\n`transformation`, `gif-to-video`, `thumbnail`, `abs`.\n" items: discriminator: propertyName: type oneOf: - type: object title: Simple post-transformation required: - type - value additionalProperties: false properties: type: type: string description: Transformation type. enum: - transformation value: type: string description: "Transformation string (e.g. `w-200,h-200`). \nSame syntax as ImageKit URL-based transformations.\n" example: type: transformation value: w-400,h-400,q-70 - type: object title: Convert GIF to video required: - type additionalProperties: false properties: type: type: string description: Converts an animated GIF into an MP4. enum: - gif-to-video value: type: string description: "Optional transformation string to apply to the output video. \n**Example**: `q-80`\n" example: type: gif-to-video value: q-90 - type: object title: Generate a thumbnail required: - type additionalProperties: false properties: type: type: string description: Generates a thumbnail image. enum: - thumbnail value: type: string description: "Optional transformation string. \n**Example**: `w-150,h-150`\n" example: type: thumbnail value: w-150,h-150 - type: object title: Adaptive Bitrate Streaming required: - type - value - protocol additionalProperties: false properties: type: type: string description: Adaptive Bitrate Streaming (ABS) setup. enum: - abs value: type: string description: 'List of different representations you want to create separated by an underscore. ' protocol: type: string enum: - hls - dash description: Streaming protocol to use (`hls` or `dash`). example: type: abs value: sr-240_360_480_720_1080 protocol: hls example: post: - type: thumbnail value: w-150,h-150 - type: abs value: sr-240_360_480_720_1080 protocol: dash FileUploadV1: type: object required: - file - fileName properties: file: type: string format: binary contentEncoding: binary description: 'The API accepts any of the following: - **Binary data** – send the raw bytes as `multipart/form-data`. - **HTTP / HTTPS URL** – a publicly reachable URL that ImageKit’s servers can fetch. - **Base64 string** – the file encoded as a Base64 data URI or plain Base64. When supplying a URL, the server must receive the response headers within 8 seconds; otherwise the request fails with 400 Bad Request. ' example: https://www.example.com/path/to-image.jpg fileName: type: string description: "The name with which the file has to be uploaded.\nThe file name can contain:\n\n - Alphanumeric Characters: `a-z`, `A-Z`, `0-9`.\n - Special Characters: `.`, `-`\n\nAny other character including space will be replaced by `_`\n" publicKey: type: string description: 'Your ImageKit.io public key. This field is only required for authentication when uploading a file from the client side. ' signature: type: string description: 'HMAC-SHA1 digest of the token+expire using your ImageKit.io private API key as a key. Learn how to create a signature on the page below. This should be in lowercase. Signature must be calculated on the server-side. This field is only required for authentication when uploading a file from the client side. ' expire: type: integer description: 'The time until your signature is valid. It must be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in less than 1 hour into the future. It should be in seconds. This field is only required for authentication when uploading a file from the client side. ' token: type: string description: 'A unique value that the ImageKit.io server will use to recognize and prevent subsequent retries for the same request. We suggest using V4 UUIDs, or another random string with enough entropy to avoid collisions. This field is only required for authentication when uploading a file from the client side. **Note**: Sending a value that has been used in the past will result in a validation error. Even if your previous request resulted in an error, you should always send a new value for this field. ' useUniqueFileName: type: boolean default: true description: 'Whether to use a unique filename for this file or not. If `true`, ImageKit.io will add a unique suffix to the filename parameter to get a unique filename. If `false`, then the image is uploaded with the provided filename parameter, and any existing file with the same name is replaced. ' tags: type: array items: type: string description: 'Set the tags while uploading the file. Provide an array of tag strings (e.g. `["tag1", "tag2", "tag3"]`). The combined length of all tag characters must not exceed 500, and the `%` character is not allowed. If this field is not specified and the file is overwritten, the existing tags will be removed. ' example: - t-shirt - round-neck - men folder: type: string description: "The folder path in which the image has to be uploaded. If the folder(s) didn't exist before, a new folder(s) is created.\n\nThe folder name can contain:\n\n - Alphanumeric Characters: `a-z` , `A-Z` , `0-9`\n - Special Characters: `/` , `_` , `-`\n\nUsing multiple `/` creates a nested folder.\n" default: / isPrivateFile: type: boolean default: false description: 'Whether to mark the file as private or not. If `true`, the file is marked as private and is accessible only using named transformation or signed URL. ' isPublished: type: boolean default: true description: 'Whether to upload file as published or not. If `false`, the file is marked as unpublished, which restricts access to the file only via the media library. Files in draft or unpublished state can only be publicly accessed after being published. The option to upload in draft state is only available in custom enterprise pricing plans. ' customCoordinates: type: string description: "Define an important area in the image. This is only relevant for image type files.\n\n - To be passed as a string with the x and y coordinates of the top-left corner, and width and height of the area of interest in the format `x,y,width,height`. For example - `10,10,100,100`\n - Can be used with fo-customtransformation.\n - If this field is not specified and the file is overwritten, then customCoordinates will be removed.\n" responseFields: type: array items: type: string enum: - tags - customCoordinates - isPrivateFile - embeddedMetadata - isPublished - customMetadata - metadata - selectedFieldsSchema description: 'Array of response field keys to include in the API response body. ' example: - tags - customCoordinates - isPrivateFile extensions: $ref: '#/components/schemas/Extensions' webhookUrl: type: string format: uri description: 'The final status of extensions after they have completed execution will be delivered to this endpoint as a POST request. [Learn more](/docs/api-reference/digital-asset-management-dam/managing-assets/update-file-details#webhook-payload-structure) about the webhook payload structure. ' overwriteFile: type: boolean default: true description: 'If `false` and `useUniqueFileName` is also `false`, and a file already exists at the exact location, upload API will return an error immediately. ' overwriteAITags: type: boolean default: true description: 'If set to `true` and a file already exists at the exact location, its AITags will be removed. Set `overwriteAITags` to `false` to preserve AITags. ' overwriteTags: type: boolean default: true description: 'If the request does not have `tags`, and a file already exists at the exact location, existing tags will be removed. ' overwriteCustomMetadata: type: boolean default: true description: 'If the request does not have `customMetadata`, and a file already exists at the exact location, existing customMetadata will be removed. ' customMetadata: type: object additionalProperties: true description: 'JSON key-value pairs to associate with the asset. Create the custom metadata fields before setting these values. ' example: brand: Nike color: red transformation: type: object $ref: '#/components/schemas/TransformationObject' checks: type: string description: 'Server-side checks to run on the asset. Read more about [Upload API checks](/docs/api-reference/upload-file/upload-file#upload-api-checks). ' example: '"request.folder" : "marketing/" ' description: type: string description: 'Optional text to describe the contents of the file. ' example: Running shoes Upload: description: Object containing details of a successful upload. type: object properties: fileId: type: string description: Unique fileId. Store this fileld in your database, as this will be used to perform update action on this file. name: type: string description: Name of the asset. filePath: type: string description: The relative path of the file in the media library e.g. `/marketing-assets/new-banner.jpg`. url: type: string description: A publicly accessible URL of the file. thumbnailUrl: type: string description: In the case of an image, a small thumbnail URL. height: type: number description: Height of the image in pixels (Only for images) width: type: number description: Width of the image in pixels (Only for Images) size: type: number description: Size of the image file in Bytes. bitRate: type: integer description: The bit rate of the video in kbps (only for video). duration: type: integer description: The duration of the video in seconds (only for video). audioCodec: type: string description: The audio codec used in the video (only for video). videoCodec: type: string description: The video codec used in the video (only for video). tags: type: array items: type: string description: The array of tags associated with the asset. If no tags are set, it will be `null`. Send `tags` in `responseFields` in API request to get the value of this field. AITags: type: array items: $ref: '#/components/schemas/AITag' description: 'An array of tags assigned to the uploaded file by auto tagging. ' versionInfo: $ref: '#/components/schemas/VersionInfo' isPrivateFile: type: boolean description: 'Is the file marked as private. It can be either `true` or `false`. Send `isPrivateFile` in `responseFields` in API request to get the value of this field. ' isPublished: type: boolean description: 'Is the file published or in draft state. It can be either `true` or `false`. Send `isPublished` in `responseFields` in API request to get the value of this field. ' customCoordinates: type: string description: 'Value of custom coordinates associated with the image in the format `x,y,width,height`. If `customCoordinates` are not defined, then it is `null`. Send `customCoordinates` in `responseFields` in API request to get the value of this field. ' fileType: type: string description: 'Type of the uploaded file. Possible values are `image`, `non-image`. ' customMetadata: description: 'A key-value data associated with the asset. Use `responseField` in API request to get `customMetadata` in the upload API response. Before setting any custom metadata on an asset, you have to create the field using custom metadata fields API. Send `customMetadata` in `responseFields` in API request to get the value of this field. ' $ref: '#/components/schemas/CustomMetadata' selectedFieldsSchema: $ref: '#/components/schemas/SelectedFieldsSchema' extensionStatus: type: object description: 'Extension names with their processing status at the time of completion of the request. It could have one of the following status values: `success`: The extension has been successfully applied. `failed`: The extension has failed and will not be retried. `pending`: The extension will finish processing in some time. On completion, the final status (success / failed) will be sent to the `webhookUrl` provided. If no extension was requested, then this parameter is not returned. ' properties: google-auto-tagging: type: string enum: - success - pending - failed aws-auto-tagging: type: string enum: - success - pending - failed remove-bg: type: string enum: - success - pending - failed ai-auto-description: type: string enum: - success - pending - failed ai-tasks: type: string enum: - success - pending - failed metadata: type: object $ref: '#/components/schemas/Metadata' description: 'Legacy metadata. Send `metadata` in `responseFields` in API request to get metadata in the upload API response. ' embeddedMetadata: description: Consolidated embedded metadata associated with the file. It includes exif, iptc, and xmp data. Send `embeddedMetadata` in `responseFields` in API request to get embeddedMetadata in the upload API response. $ref: '#/components/schemas/EmbeddedMetadata' description: type: string description: 'Optional text to describe the contents of the file. Can be set by the user or the ai-auto-description extension. ' AITag: type: object properties: name: type: string description: Name of the tag. confidence: type: number description: Confidence score of the tag. source: type: string description: Source of the tag. Possible values are `google-auto-tagging` and `aws-auto-tagging`. description: 'AI-generated tag associated with an image. These tags can be added using the `google-auto-tagging` or `aws-auto-tagging` extensions. ' AITasksExtension: title: AI Tasks type: object required: - name - tasks properties: name: type: string description: Specifies the AI tasks extension for automated image analysis using AI models. enum: - ai-tasks tasks: type: array minItems: 1 maxItems: 10 description: Array of task objects defining AI operations to perform on the asset. items: discriminator: propertyName: type oneOf: - $ref: '#/components/schemas/AITaskSelectTags' - $ref: '#/components/schemas/AITaskSelectMetadata' - $ref: '#/components/schemas/AITaskYesNo' AutoDescriptionExtension: title: Auto description type: object required: - name properties: name: type: string description: Specifies the auto description extension. enum: - ai-auto-description AITaskSelectTags: title: AI Task - Select Tags type: object required: - type - instruction properties: type: type: string description: Task type that analyzes the image and adds matching tags from a vocabulary. enum: - select_tags instruction: type: string minLength: 1 maxLength: 2000 description: The question or instruction for the AI to analyze the image. example: What types of clothing items are visible in this image? vocabulary: type: array minItems: 1 maxItems: 30 description: Array of possible tag values. The combined length of all strings must not exceed 500 characters, and values cannot include the `%` character. When providing large vocabularies (more than 30 items), the AI may not follow the list strictly. items: type: string example: - shirt - tshirt - dress - trousers - jacket min_selections: type: integer minimum: 0 description: Minimum number of tags to select from the vocabulary. max_selections: type: integer minimum: 1 description: Maximum number of tags to select from the vocabulary. VersionInfo: type: object properties: id: type: string description: Unique identifier of the file version. name: type: string description: Name of the file version. description: 'An object containing the file or file version''s `id` (versionId) and `name`. ' SelectedFieldsSchema: type: object description: 'This field is included in the response only if the Path policy feature is available in the plan. It contains schema definitions for the custom metadata fields selected for the specified file path. Field selection can only be done when the Path policy feature is enabled. Keys are the names of the custom metadata fields; the value object has details about the custom metadata schema. ' additionalProperties: type: object required: - type properties: type: description: Type of the custom metadata field. type: string enum: - Text - Textarea - Number - Date - Boolean - SingleSelect - MultiSelect selectOptions: type: array items: oneOf: - type: string - type: number - type: boolean description: 'An array of allowed values when field type is `SingleSelect` or `MultiSelect`. ' example: - small - medium - large - 30 - 40 - true selectOptionsTruncated: type: boolean description: 'Specifies if the selectOptions array is truncated. It is truncated when number of options are > 100. ' defaultValue: description: 'The default value for this custom metadata field. The value should match the `type` of custom metadata field. ' oneOf: - type: string - type: number - type: boolean - type: array x-stainless-variantName: Mixed title: Mixed items: oneOf: - type: string - type: number - type: boolean description: 'Default value should be of type array when custom metadata field type is set to `MultiSelect`. ' example: - true - 10 - Hello isValueRequired: type: boolean description: 'Specifies if the custom metadata field is required or not. ' readOnly: type: boolean description: 'Indicates whether the custom metadata field is read only. A read only field cannot be modified after being set. This field is configurable only via the **Path policy** feature. ' minValue: description: 'Minimum value of the field. Only set if field type is `Date` or `Number`. For `Date` type field, the value will be in ISO8601 string format. For `Number` type field, it will be a numeric value. ' oneOf: - type: string - type: number maxValue: description: 'Maximum value of the field. Only set if field type is `Date` or `Number`. For `Date` type field, the value will be in ISO8601 string format. For `Number` type field, it will be a numeric value. ' oneOf: - type: string - type: number minLength: description: 'Minimum length of string. Only set if `type` is set to `Text` or `Textarea`. ' type: number maxLength: description: 'Maximum length of string. Only set if `type` is set to `Text` or `Textarea`. ' type: number ExifDetails: description: Object containing Exif details. x-stainless-naming: java: type_name: ExifDetails type: object additionalProperties: true properties: ExposureTime: type: number FNumber: type: number ExposureProgram: type: integer ISO: type: integer ExifVersion: type: string DateTimeOriginal: type: string CreateDate: type: string ShutterSpeedValue: type: number ApertureValue: type: number ExposureCompensation: type: number MeteringMode: type: integer Flash: type: integer BrightnessValue: type: number MaxApertureValue: type: number LightSource: type: integer FocalLength: type: number UserComment: type: string SensingMethod: type: integer SceneType: type: string FocalLengthIn35mmFormat: type: integer LensModel: type: string SubSecTime: type: string FlashpixVersion: type: string ColorSpace: type: integer ExifImageWidth: type: integer ExifImageHeight: type: integer InteropOffset: type: integer FocalPlaneXResolution: type: number FocalPlaneYResolution: type: number FocalPlaneResolutionUnit: type: integer CustomRendered: type: integer ExposureMode: type: integer WhiteBalance: type: integer SceneCaptureType: type: integer Interoperability: description: JSON object. type: object additionalProperties: true properties: InteropIndex: type: string InteropVersion: type: string SavedExtensionReference: title: Saved Extension Reference type: object required: - name - id properties: name: type: string description: Indicates this is a reference to a saved extension. enum: - saved-extension id: type: string description: The unique ID of the saved extension to apply. example: ext_abc123 responses: Forbidden: description: Forbidden. content: application/json: schema: type: object properties: message: type: string examples: - Your account cannot be authenticated. - Your request contains expired private API key. - Your account is disabled. help: type: string example: For support kindly contact us at support@imagekit.io. Unauthorized: description: Unauthorized request. content: application/json: schema: type: object properties: message: type: string example: Your request does not contain private API key. help: type: string example: For support kindly contact us at support@imagekit.io. examples: UploadResonseVideo: fileId: 6673f99b37b244ef54d98f11 name: test-video.mp4 size: 1378305 versionInfo: id: 6673f99b37b244ef54d98f11 name: Version 1 filePath: /test-video.mp4 url: https://ik.imagekit.io/demo/test-video.mp4 height: 720 width: 720 bitRate: 1453966 duration: 7 audioCodec: aac videoCodec: h264 fileType: non-image metadata: height: 720 width: 720 bitRate: 1453966 duration: 7 audioCodec: aac videoCodec: h264 size: 1378305 UploadResponseImage: fileId: 6673f88237b244ef54d60180 name: test-image.jpg size: 117079 versionInfo: id: 6673f88237b244ef54d60180 name: Version 1 filePath: /test-image.jpg url: https://ik.imagekit.io/demo/test-image.jpg fileType: image height: 500 width: 1000 orientation: 1 thumbnailUrl: https://ik.imagekit.io/demo/tr:n-ik_ml_thumbnail/test-image.jpg UploadResponseWithEmbeddedMetadata: fileId: 6673f88237b244ef54d60180 name: test-image.jpg size: 117079 versionInfo: id: 6673f88237b244ef54d60180 name: Version 1 filePath: /test-image.jpg url: https://ik.imagekit.io/demo/test-image.jpg fileType: image height: 500 width: 1000 orientation: 1 thumbnailUrl: https://ik.imagekit.io/demo/tr:n-ik_ml_thumbnail/test-image.jpg AITags: null metadata: height: 500 width: 1000 size: 117079 format: jpg hasColorProfile: false quality: 0 density: 72 hasTransparency: false exif: image: ImageDescription: The description aka caption (ref2019.1) Orientation: 1 XResolution: 72 YResolution: 72 ResolutionUnit: 2 Artist: Creator1 (ref2019.1) YCbCrPositioning: 1 Copyright: Copyright (Notice) 2019.1 IPTC - www.iptc.org (ref2019.1) ExifOffset: 260 thumbnail: {} exif: ExifVersion: '0232' DateTimeOriginal: 2019:10:16 19:01:03 ComponentsConfiguration: "\x01\x02\x03\0" FlashpixVersion: '0100' ColorSpace: 65535 ExifImageWidth: 1000 ExifImageHeight: 500 gps: {} interoperability: {} makernote: {} pHash: 17949d3d3573ebca embeddedMetadata: Orientation: Horizontal (normal) ExifVersion: '0232' ImageDescription: The description aka caption (ref2019.1) XResolution: 72 YResolution: 72 ResolutionUnit: inches Artist: Creator1 (ref2019.1) Copyright: Copyright (Notice) 2019.1 IPTC - www.iptc.org (ref2019.1) DateTimeOriginal: '2019-10-16T19:01:03.000Z' OffsetTimeOriginal: +00:00 ComponentsConfiguration: Y,Cb,Cr,- FlashpixVersion: '0100' ColorSpace: Uncalibrated ObjectAttributeReference: A Genre (ref2019.1) ObjectName: The Title (ref2019.1) SubjectReference: - IPTC:1ref2019.1 - IPTC:2ref2019.1 - IPTC:3ref2019.1 Keywords: - Keyword1ref2019.1 - Keyword2ref2019.1 - Keyword3ref2019.1 SpecialInstructions: An Instruction (ref2019.1) TimeCreated: 19:01:03+00:00 Byline: Creator1 (ref2019.1) BylineTitle: Creator's Job Title (ref2019.1) Sublocation: Sublocation (Core) (ref2019.1) ProvinceState: Province/State(Core)(ref2019.1) CountryPrimaryLocationCode: R19 CountryPrimaryLocationName: Country (Core) (ref2019.1) OriginalTransmissionReference: Job Id (ref2019.1) CopyrightNotice: Copyright (Notice) 2019.1 IPTC - www.iptc.org (ref2019.1) CaptionAbstract: The description aka caption (ref2019.1) WriterEditor: Description Writer (ref2019.1) ApplicationRecordVersion: 4 CountryCode: R19 CreatorCity: 'Creator''s CI: City (ref2019.1)' CreatorCountry: 'Creator''s CI: Country (ref2019.1)' CreatorAddress: 'Creator''s CI: Address, line 1 (ref2019.1)' CreatorPostalCode: 'Creator''s CI: Postcode (ref2019.1)' CreatorRegion: 'Creator''s CI: State/Province (ref2019.1)' CreatorWorkEmail: 'Creator''s CI: Email@1, Email@2 (ref2019.1)' CreatorWorkTelephone: 'Creator''s CI: Phone # 1, Phone # 2 (ref2019.1)' CreatorWorkURL: http://www.Creators.CI/WebAddress/ref2019.1 IntellectualGenre: A Genre (ref2019.1) Location: Sublocation (Core) (ref2019.1) Scene: - IPTC-Scene-Code1 (ref2019.1) - IPTC-Scene-Code2 (ref2019.1) SubjectCode: - IPTC:1ref2019.1 - IPTC:2ref2019.1 - IPTC:3ref2019.1 AboutCvTermCvId: http://example.com/cv/about/ref2019.1 AboutCvTermId: http://example.com/cv/about/ref2019.1/code987 AboutCvTermName: CV-Term Name 1 (ref2019.1) AboutCvTermRefinedAbout: http://example.com/cv/refinements2/ref2019.1/codeX145 AdditionalModelInformation: Additional Model Info (ref2019.1) ArtworkCircaDateCreated: 'AO Circa Date: between 1550 and 1600 (ref2019.1)' ArtworkContentDescription: AO Content Description 1 (ref2019.1) ArtworkContributionDescription: AO Contribution Description 1 (ref2019.1) ArtworkCopyrightNotice: AO Copyright Notice 1 (ref2019.1) ArtworkCreator: - AO Creator Name 1a (ref2019.1) - AO Creator Name 1b (ref2019.1) ArtworkCreatorID: - AO Creator Id 1a (ref2019.1) - AO Creator Id 1b (ref2019.1) ArtworkCopyrightOwnerID: AO Current Copyright Owner ID 1 (ref2019.1) ArtworkCopyrightOwnerName: AO Current Copyright Owner Name 1 (ref2019.1) ArtworkLicensorID: AO Current Licensor ID 1 (ref2019.1) ArtworkLicensorName: AO Current Licensor Name 1 (ref2019.1) ArtworkDateCreated: '1919-10-16T19:01:00.000Z' ArtworkPhysicalDescription: AO Physical Description 1 (ref2019.1) ArtworkSource: AO Source 1 (ref2019.1) ArtworkSourceInventoryNo: AO Source Inventory No 1 (ref2019.1) ArtworkSourceInvURL: AO Source Inventory URL (ref2019.1) ArtworkStylePeriod: - AO Style Baroque (ref2019.1) - AO Style Italian Baroque (ref2019.1) ArtworkTitle: AO Title 1 (ref2019.1) DigitalImageGUID: http://example.com/imageGUIDs/TestGUID12345/ref2019.1 DigitalSourceType: http://cv.iptc.org/newscodes/digitalsourcetype/softwareImage EmbeddedEncodedRightsExpr: The Encoded Rights Expression (ref2019.1) EmbeddedEncodedRightsExprType: IANA Media Type of ERE (ref2019.1) EmbeddedEncodedRightsExprLangID: http://example.org/RELids/id4711/ref2019.1 Event: An Event (ref2019.1) GenreCvId: http://example.com/cv/genre/ref2019.1 GenreCvTermId: http://example.com/cv/genre/ref2019.1/code1369 GenreCvTermName: Genre CV-Term Name 1 (ref2019.1) GenreCvTermRefinedAbout: http://example.com/cv/genrerefinements2/ref2019.1/codeY864 ImageRegionName: - Listener 1 - Listener 2 - Speaker 1 ImageRegionOrganisationInImageName: - Organisation name no 1 in region persltr2 (ref2019.1) - Organisation name no 1 in region persltr2 (ref2019.1) - Organisation name no 1 in region persltr3 (ref2019.1) ImageRegionPersonInImage: - Person name no 1 in region persltr2 (ref2019.1) - Person name no 1 in region persltr3 (ref2019.1) - Person name no 1 in region persltr1 (ref2019.1) ImageRegionBoundaryH: - 0.385 ImageRegionBoundaryShape: - rectangle - circle - polygon ImageRegionBoundaryUnit: - relative - relative - relative ImageRegionBoundaryW: - 0.127 ImageRegionBoundaryX: - 0.31 - 0.59 ImageRegionBoundaryY: - 0.18 - 0.426 ImageRegionCtypeName: - Region Boundary Content Type Name (ref2019.1) - Region Boundary Content Type Name (ref2019.1) - Region Boundary Content Type Name (ref2019.1) ImageRegionCtypeIdentifier: - https://example.org/rctype/type2019.1a - https://example.org/rctype/type2019.1b - https://example.org/rctype/type2019.1a - https://example.org/rctype/type2019.1b - https://example.org/rctype/type2019.1a - https://example.org/rctype/type2019.1b ImageRegionID: - persltr2 - persltr3 - persltr1 ImageRegionRoleName: - Region Boundary Content Role Name (ref2019.1) - Region Boundary Content Role Name (ref2019.1) - Region Boundary Content Role Name (ref2019.1) ImageRegionRoleIdentifier: - https://example.org/rrole/role2019.1a - https://example.org/rrole/role2019.1b - https://example.org/rrole/role2019.1a - https://example.org/rrole/role2019.1b - https://example.org/rrole/role2019.1a - https://example.org/rrole/role2019.1b ImageRegionBoundaryRx: - 0.068 ImageRegionBoundaryVerticesX: - 0.05 - 0.148 - 0.375 ImageRegionBoundaryVerticesY: - 0.713 - 0.041 - 0.863 LinkedEncodedRightsExpr: http://example.org/linkedrightsexpression/id986/ref2019.1 LinkedEncodedRightsExprType: IANA Media Type of ERE (ref2019.1) LinkedEncodedRightsExprLangID: http://example.org/RELids/id4712/ref2019.1 LocationCreatedCity: City (Location created1) (ref2019.1) LocationCreatedCountryCode: R17 LocationCreatedCountryName: CountryName (Location created1) (ref2019.1) LocationCreatedLocationId: Location Id (Location created1) (ref2019.1) LocationCreatedLocationName: Location Name (Location created1) (ref2019.1) LocationCreatedProvinceState: Province/State (Location created1) (ref2019.1) LocationCreatedSublocation: Sublocation (Location created1) (ref2019.1) LocationCreatedWorldRegion: Worldregion (Location created1) (ref2019.1) LocationCreatedGPSAltitude: 480 m LocationCreatedGPSLatitude: 48,16.5N LocationCreatedGPSLongitude: 16,20.28E LocationShownCity: - City (Location shown1) (ref2019.1) - City (Location shown2) (ref2019.1) LocationShownCountryCode: - R17 - R17 LocationShownCountryName: - CountryName (Location shown1) (ref2019.1) - CountryName (Location shown2) (ref2019.1) LocationShownLocationId: - Location Id 1a(Location shown1) (ref2019.1) - Location Id 1b(Location shown1) (ref2019.1) - Location Id 2a(Location shown2) (ref2019.1) - Location Id 2b(Location shown2) (ref2019.1) LocationShownLocationName: - Location Name (Location shown1) (ref2019.1) - Location Name (Location shown2) (ref2019.1) LocationShownProvinceState: - Province/State (Location shown1) (ref2019.1) - Province/State (Location shown2) (ref2019.1) LocationShownSublocation: - Sublocation (Location shown1) (ref2019.1) - Sublocation (Location shown2) (ref2019.1) LocationShownWorldRegion: - Worldregion (Location shown1) (ref2019.1) - Worldregion (Location shown2) (ref2019.1) LocationShownGPSAltitude: - 140 m - 120 m LocationShownGPSLatitude: - 48,8.82N - 47,57.12N LocationShownGPSLongitude: - 17,5.88E - 16,49.8E MaxAvailHeight: 20 MaxAvailWidth: 19 ModelAge: - 25 - 27 - 30 OrganisationInImageCode: - Organisation Code 1 (ref2019.1) - Organisation Code 2 (ref2019.1) - Organisation Code 3 (ref2019.1) OrganisationInImageName: - Organisation Name 1 (ref2019.1) - Organisation Name 2 (ref2019.1) - Organisation Name 3 (ref2019.1) PersonInImage: - Person Shown 1 (ref2019.1) - Person Shown 2 (ref2019.1) PersonInImageCvTermCvId: - http://example.com/cv/test99/ref2019.1 PersonInImageCvTermId: - http://example.com/cv/test99/code987/ref2019.1 PersonInImageCvTermName: - Person Characteristic Name 1 (ref2019.1) PersonInImageCvTermRefinedAbout: - http://example.com/cv/refinements987/codeY765/ref2019.1 PersonInImageDescription: - Person Description 1 (ref2019.1) PersonInImageId: - http://wikidata.org/item/Q123456789/ref2019.1 - http://freebase.com/m/987654321/ref2019.1 PersonInImageName: - Person Name 1 (ref2019.1) ProductInImageDescription: - Product Description 1 (ref2019.1) ProductInImageGTIN: - 123456782019.1 ProductInImageName: - Product Name 1 (ref2019.1) RegistryEntryRole: - Registry Entry Role ID 1 (ref2019.1) - Registry Entry Role ID 2 (ref2019.1) RegistryItemID: - Registry Image ID 1 (ref2019.1) - Registry Image ID 2 (ref2019.1) RegistryOrganisationID: - Registry Organisation ID 1 (ref2019.1) - Registry Organisation ID 2 (ref2019.1) Creator: Creator1 (ref2019.1) Description: The description aka caption (ref2019.1) Rights: Copyright (Notice) 2019.1 IPTC - www.iptc.org (ref2019.1) Subject: - Keyword1ref2019.1 - Keyword2ref2019.1 - Keyword3ref2019.1 Title: The Title (ref2019.1) AuthorsPosition: Creator's Job Title (ref2019.1) CaptionWriter: Description Writer (ref2019.1) City: City (Core) (ref2019.1) Country: Country (Core) (ref2019.1) Credit: Credit Line (ref2019.1) DateCreated: '2019-10-16T00:00:00.000Z' Headline: The Headline (ref2019.1) Instructions: An Instruction (ref2019.1) Source: Source (ref2019.1) State: Province/State(Core)(ref2019.1) TransmissionReference: Job Id (ref2019.1) CopyrightOwnerID: - Copyright Owner Id 1 (ref2019.1) - Copyright Owner Id 2 (ref2019.1) CopyrightOwnerName: - Copyright Owner Name 1 (ref2019.1) - Copyright Owner Name 2 (ref2019.1) ImageCreatorID: Image Creator Id 1 (ref2019.1) ImageCreatorName: Image Creator Name 1 (ref2019.1) ImageCreatorImageID: Image Creator Image ID (ref2019.1) ImageSupplierID: Image Supplier Id (ref2019.1) ImageSupplierName: Image Supplier Name (ref2019.1) ImageSupplierImageID: Image Supplier Image ID (ref2019.1) LicensorCity: - Licensor City 1 (ref2019.1) - Licensor City 2 (ref2019.1) LicensorCountry: - Licensor Country 1 (ref2019.1) - Licensor Country 2 (ref2019.1) LicensorEmail: - Licensor Email 1 (ref2019.1) - Licensor Email 2 (ref2019.1) LicensorExtendedAddress: - Licensor Ext Addr 1 (ref2019.1) - Licensor Ext Addr 2 (ref2019.1) LicensorID: - Licensor ID 1 (ref2019.1) - Licensor ID 2 (ref2019.1) LicensorName: - Licensor Name 1 (ref2019.1) - Licensor Name 2 (ref2019.1) LicensorPostalCode: - Licensor Postcode 1 (ref2019.1) - Licensor Postcode 2 (ref2019.1) LicensorRegion: - Licensor Region 1 (ref2019.1) - Licensor Region 2 (ref2019.1) LicensorStreetAddress: - Licensor Street Addr 1 (ref2019.1) - Licensor Street Addr 2 (ref2019.1) LicensorTelephone1: - Licensor Phone1 1 (ref2019.1) - Licensor Phone1 2 (ref2019.1) LicensorTelephone2: - Licensor Phone2 1 (ref2019.1) - Licensor Phone2 2 (ref2019.1) LicensorURL: - Licensor URL 1 (ref2019.1) - Licensor URL 2 (ref2019.1) ModelReleaseID: - Model Release ID 1 (ref2019.1) - Model Release ID 2 (ref2019.1) PropertyReleaseID: - Property Release ID 1 (ref2019.1) - Property Release ID 2 (ref2019.1) Rating: 1 UsageTerms: Rights Usage Terms (ref2019.1) WebStatement: http://www.WebStatementOfRights.org/2019.1 DateTimeCreated: '2019-10-16T00:00:00.000Z' Caption: The description aka caption (ref2019.1) Writer: Description Writer (ref2019.1) securitySchemes: basicAuth: description: 'Basic HTTP authentication. Allowed headers-- Authorization: Basic | Authorization: Basic ImageKit API uses API keys to authenticate requests. You can view and manage your API keys in [the dashboard](https://imagekit.io/dashboard/developer/api-keys). All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.' scheme: basic type: http