{
  "service": "imagekit",
  "displayName": "ImageKit",
  "categories": [
    "Design & Media",
    "Storage"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "Private API Key",
      "placeholder": "private_...",
      "description": "ImageKit private API key used as the HTTP Basic auth username. View or reveal it in the ImageKit dashboard under Developer options > API keys."
    }
  ],
  "homepageUrl": "https://imagekit.io",
  "actions": [
    {
      "id": "imagekit.delete_file",
      "service": "imagekit",
      "name": "delete_file",
      "description": "Delete one ImageKit file and all of its versions permanently.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "fileId": {
            "type": "string",
            "minLength": 1,
            "description": "The unique ImageKit fileId returned by upload or list assets APIs."
          }
        },
        "additionalProperties": false,
        "required": [
          "fileId"
        ],
        "description": "Input parameters for an ImageKit file operation."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "deleted": {
            "type": "boolean",
            "description": "Whether the delete request completed successfully."
          }
        },
        "additionalProperties": false,
        "required": [
          "deleted"
        ],
        "description": "The ImageKit delete file result."
      }
    },
    {
      "id": "imagekit.get_file_details",
      "service": "imagekit",
      "name": "get_file_details",
      "description": "Get details for the current version of an ImageKit file.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "fileId": {
            "type": "string",
            "minLength": 1,
            "description": "The unique ImageKit fileId returned by upload or list assets APIs."
          }
        },
        "additionalProperties": false,
        "required": [
          "fileId"
        ],
        "description": "Input parameters for an ImageKit file operation."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "asset": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "An ImageKit asset object returned by the Digital Asset Management API."
          }
        },
        "additionalProperties": false,
        "required": [
          "asset"
        ],
        "description": "The ImageKit file details response."
      }
    },
    {
      "id": "imagekit.get_purge_status",
      "service": "imagekit",
      "name": "get_purge_status",
      "description": "Get the status of an ImageKit cache purge request.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "requestId": {
            "type": "string",
            "minLength": 1,
            "description": "The ImageKit purge request identifier."
          }
        },
        "additionalProperties": false,
        "required": [
          "requestId"
        ],
        "description": "Input parameters for checking ImageKit purge status."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "Pending",
              "Completed"
            ],
            "description": "The current purge request status."
          }
        },
        "additionalProperties": false,
        "required": [
          "status"
        ],
        "description": "The ImageKit purge cache status response."
      },
      "asyncLifecycle": {
        "startActionId": "imagekit.purge_cache",
        "statusActionId": "imagekit.get_purge_status"
      }
    },
    {
      "id": "imagekit.get_remote_file_metadata",
      "service": "imagekit",
      "name": "get_remote_file_metadata",
      "description": "Get image or video metadata from a remote URL through ImageKit.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "The remote image or video URL to inspect.",
            "format": "uri"
          }
        },
        "additionalProperties": false,
        "required": [
          "url"
        ],
        "description": "Input parameters for reading metadata from a remote URL."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "metadata": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "Image or video metadata returned by ImageKit."
          }
        },
        "additionalProperties": false,
        "required": [
          "metadata"
        ],
        "description": "The ImageKit remote file metadata response."
      }
    },
    {
      "id": "imagekit.get_uploaded_file_metadata",
      "service": "imagekit",
      "name": "get_uploaded_file_metadata",
      "description": "Get image or video metadata for an uploaded ImageKit file.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "fileId": {
            "type": "string",
            "minLength": 1,
            "description": "The unique ImageKit fileId returned by upload or list assets APIs."
          }
        },
        "additionalProperties": false,
        "required": [
          "fileId"
        ],
        "description": "Input parameters for an ImageKit file operation."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "metadata": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "Image or video metadata returned by ImageKit."
          }
        },
        "additionalProperties": false,
        "required": [
          "metadata"
        ],
        "description": "The ImageKit uploaded file metadata response."
      }
    },
    {
      "id": "imagekit.list_assets",
      "service": "imagekit",
      "name": "list_assets",
      "description": "List or search assets in the ImageKit media library.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "minLength": 1,
            "description": "Folder path used to limit the search to a specific folder."
          },
          "searchQuery": {
            "type": "string",
            "minLength": 1,
            "description": "Lucene-like ImageKit search query for advanced asset search."
          },
          "fileType": {
            "type": "string",
            "enum": [
              "all",
              "image",
              "non-image"
            ],
            "description": "File type filter for listed ImageKit assets."
          },
          "sort": {
            "type": "string",
            "enum": [
              "ASC_NAME",
              "DESC_NAME",
              "ASC_CREATED",
              "DESC_CREATED",
              "ASC_UPDATED",
              "DESC_UPDATED",
              "ASC_HEIGHT",
              "DESC_HEIGHT",
              "ASC_WIDTH",
              "DESC_WIDTH",
              "ASC_SIZE",
              "DESC_SIZE",
              "ASC_RELEVANCE",
              "DESC_RELEVANCE"
            ],
            "description": "Sort order for listed ImageKit assets."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 1000,
            "description": "Maximum number of assets to return."
          },
          "skip": {
            "type": "integer",
            "minimum": 0,
            "description": "Number of assets to skip before returning results."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for listing or searching ImageKit media library assets."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "assets": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "An ImageKit asset object returned by the Digital Asset Management API."
            },
            "description": "ImageKit assets returned by the list and search API."
          }
        },
        "additionalProperties": false,
        "required": [
          "assets"
        ],
        "description": "The listed ImageKit assets."
      }
    },
    {
      "id": "imagekit.purge_cache",
      "service": "imagekit",
      "name": "purge_cache",
      "description": "Submit a cache purge request for an ImageKit file URL.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "The full ImageKit file URL to purge from cache.",
            "format": "uri"
          }
        },
        "additionalProperties": false,
        "required": [
          "url"
        ],
        "description": "Input parameters for purging ImageKit cache."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "requestId": {
            "type": "string",
            "description": "The purge request identifier returned by ImageKit."
          }
        },
        "additionalProperties": false,
        "required": [
          "requestId"
        ],
        "description": "The ImageKit purge cache response."
      },
      "followUpActions": [
        "imagekit.get_purge_status"
      ],
      "asyncLifecycle": {
        "startActionId": "imagekit.purge_cache",
        "statusActionId": "imagekit.get_purge_status"
      }
    }
  ]
}
