ImageKit Account Management API API
The Account Management API API from ImageKit — 5 operation(s) for account management api.
The Account Management API API from ImageKit — 5 operation(s) for account management api.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/imagekit-account-management-api-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: ImageKit Account Management 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: Account Management API
paths:
/v1/accounts/usage:
get:
tags:
- Account Management API
operationId: get-usage
summary: Get account usage information
description: 'Get the account usage information between two dates. Note that the API response includes data from the start date while excluding data from the end date. In other words, the data covers the period starting from the specified start date up to, but not including, the end date.
'
parameters:
- in: query
name: startDate
description: Specify a `startDate` in `YYYY-MM-DD` format. It should be before the `endDate`. The difference between `startDate` and `endDate` should be less than 90 days.
schema:
type: string
format: date
required: true
- in: query
name: endDate
description: Specify a `endDate` in `YYYY-MM-DD` format. It should be after the `startDate`. The difference between `startDate` and `endDate` should be less than 90 days.
schema:
type: string
format: date
required: true
responses:
'200':
description: In the response, you will get different usage metrics.
content:
application/json:
schema:
type: object
properties:
bandwidthBytes:
type: integer
description: Amount of bandwidth used in bytes.
mediaLibraryStorageBytes:
type: integer
description: Storage used by media library in bytes.
videoProcessingUnitsCount:
type: integer
description: Number of video processing units used.
extensionUnitsCount:
type: integer
description: Number of extension units used.
originalCacheStorageBytes:
type: integer
description: Storage used by the original cache in bytes.
examples:
default:
value:
bandwidthBytes: 21991583578
mediaLibraryStorageBytes: 1878758298
videoProcessingUnitsCount: 0
extensionUnitsCount: 0
originalCacheStorageBytes: 0
'400':
description: Bad request.
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- startDate and endDate should be within 90 days.
- startDate and endDate are required in query parameters.
- startDate and endDate should be in format YYYY-MM-DD.
- startDate should be before endDate.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'429':
$ref: '#/components/responses/RateLimitExceeded'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
/v1/accounts/origins:
get:
summary: List origins
tags:
- Account Management API
operationId: list-origins
description: "**Note:** This API is currently in beta. \nReturns an array of all configured origins for the current account.\n"
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/OriginResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/RateLimitExceeded'
post:
summary: Create origin
tags:
- Account Management API
operationId: create-origin
description: "**Note:** This API is currently in beta. \nCreates a new origin and returns the origin object.\n"
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/OriginRequest'
responses:
'201':
description: Origin created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/OriginResponse'
'400':
description: Bad request. The request body is invalid.
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- Invalid origin type. Must be one of S3, S3_COMPATIBLE, CLOUDINARY_BACKUP, WEB_FOLDER, WEB_PROXY, GCS, AZURE_BLOB, AKENEO_PIM.
- name is required and must be a string
- bucket is required and must be a string
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/RateLimitExceeded'
/v1/accounts/origins/{id}:
get:
summary: Get origin
tags:
- Account Management API
operationId: get-origin
description: "**Note:** This API is currently in beta. \nRetrieves the origin identified by `id`.\n"
parameters:
- in: path
name: id
schema:
description: Unique identifier for the origin. This is generated by ImageKit when you create a new origin.
type: string
required: true
description: Unique identifier for the origin. This is generated by ImageKit when you create a new origin.
responses:
'200':
description: Successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/OriginResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
description: Resource not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- Origin not found.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'429':
$ref: '#/components/responses/RateLimitExceeded'
put:
summary: Update origin
tags:
- Account Management API
operationId: update-origin
description: "**Note:** This API is currently in beta. \nUpdates the origin identified by `id` and returns the updated origin object.\n"
parameters:
- in: path
name: id
schema:
description: Unique identifier for the origin. This is generated by ImageKit when you create a new origin.
type: string
required: true
description: Unique identifier for the origin. This is generated by ImageKit when you create a new origin.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/OriginRequest'
responses:
'200':
description: Origin updated successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/OriginResponse'
'400':
description: Bad request. The request body is invalid.
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- Invalid origin type. Must be one of S3, S3_COMPATIBLE, CLOUDINARY_BACKUP, WEB_FOLDER, WEB_PROXY, GCS, AZURE_BLOB, AKENEO_PIM.
- name is required and must be a string
- bucket is required and must be a string
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
description: Resource not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- Origin not found.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'429':
$ref: '#/components/responses/RateLimitExceeded'
delete:
summary: Delete origin
tags:
- Account Management API
operationId: delete-origin
description: "**Note:** This API is currently in beta. \nPermanently removes the origin identified by `id`. If the origin is in use by any URL‑endpoints, the API will return an error.\n"
parameters:
- in: path
name: id
schema:
description: Unique identifier for the origin. This is generated by ImageKit when you create a new origin.
type: string
required: true
description: Unique identifier for the origin. This is generated by ImageKit when you create a new origin.
responses:
'204':
description: Origin deleted successfully.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
description: Resource not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- Origin not found.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'429':
$ref: '#/components/responses/RateLimitExceeded'
/v1/accounts/url-endpoints:
get:
summary: List URL‑endpoints
tags:
- Account Management API
operationId: list-url-endpoints
description: "**Note:** This API is currently in beta. \nReturns an array of all URL‑endpoints configured including the default URL-endpoint generated by ImageKit during account creation.\n"
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/UrlEndpointResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
description: Resource not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- URL-endpoint not found.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'429':
$ref: '#/components/responses/RateLimitExceeded'
post:
summary: Create URL‑endpoint
tags:
- Account Management API
operationId: create-url-endpoint
description: "**Note:** This API is currently in beta. \nCreates a new URL‑endpoint and returns the resulting object.\n"
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UrlEndpointRequest'
responses:
'201':
description: URL‑endpoint created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/UrlEndpointResponse'
'400':
description: Bad request. The request body is invalid.
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- description is required
- urlPrefix must be a string
- urlPrefix cannot be empty string. This is reserved for the default URL-endpoint created by ImageKit.
- Origin does not exists. Please create origin before using it in URL-endpoint.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/RateLimitExceeded'
/v1/accounts/url-endpoints/{id}:
get:
summary: Get URL‑endpoint
tags:
- Account Management API
operationId: get-url-endpoint
description: "**Note:** This API is currently in beta. \nRetrieves the URL‑endpoint identified by `id`.\n"
parameters:
- in: path
name: id
schema:
description: Unique identifier for the URL-endpoint. This is generated by ImageKit when you create a new URL-endpoint. For the default URL-endpoint, this is always `default`.
type: string
required: true
description: Unique identifier for the URL-endpoint. This is generated by ImageKit when you create a new URL-endpoint. For the default URL-endpoint, this is always `default`.
responses:
'200':
description: Successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/UrlEndpointResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
description: Resource not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- URL-endpoint not found.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'429':
$ref: '#/components/responses/RateLimitExceeded'
put:
summary: Update URL‑endpoint
tags:
- Account Management API
operationId: update-url-endpoint
description: "**Note:** This API is currently in beta. \nUpdates the URL‑endpoint identified by `id` and returns the updated object.\n"
parameters:
- in: path
name: id
schema:
description: Unique identifier for the URL-endpoint. This is generated by ImageKit when you create a new URL-endpoint. For the default URL-endpoint, this is always `default`.
type: string
required: true
description: Unique identifier for the URL-endpoint. This is generated by ImageKit when you create a new URL-endpoint. For the default URL-endpoint, this is always `default`.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UrlEndpointRequest'
responses:
'200':
description: URL‑endpoint updated successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/UrlEndpointResponse'
'400':
description: Bad request. The request body is invalid.
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- description is required
- urlPrefix must be a string
- urlPrefix cannot be empty string. This is reserved for the default URL-endpoint created by ImageKit.
- Origin does not exists. Please create origin before using it in URL-endpoint.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
description: Resource not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- URL-endpoint not found.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'429':
$ref: '#/components/responses/RateLimitExceeded'
delete:
summary: Delete URL‑endpoint
tags:
- Account Management API
operationId: delete-url-endpoint
description: "**Note:** This API is currently in beta. \nDeletes the URL‑endpoint identified by `id`. You cannot delete the default URL‑endpoint created by ImageKit during account creation.\n"
parameters:
- in: path
name: id
schema:
description: Unique identifier for the URL-endpoint. This is generated by ImageKit when you create a new URL-endpoint. For the default URL-endpoint, this is always `default`.
type: string
required: true
description: Unique identifier for the URL-endpoint. This is generated by ImageKit when you create a new URL-endpoint. For the default URL-endpoint, this is always `default`.
responses:
'204':
description: URL‑endpoint deleted successfully.
'400':
description: Bad request. The request body is invalid.
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- Default URL-endpoint cannot be deleted.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
description: Resource not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
examples:
- URL-endpoint not found.
help:
type: string
example: For support kindly contact us at support@imagekit.io.
'429':
$ref: '#/components/responses/RateLimitExceeded'
components:
schemas:
OriginRequest:
title: Origin request
description: Schema for origin request resources.
example:
name: My S3 Origin
type: S3
bucket: test-bucket
prefix: images
accessKey: AKIATEST123
secretKey: secrettest123
discriminator:
propertyName: type
oneOf:
- title: S3
type: object
properties:
name:
description: Display name of the origin.
example: US S3 Storage
type: string
minLength: 1
maxLength: 100
pattern: ^[a-zA-Z0-9 ]+$
type:
type: string
enum:
- S3
includeCanonicalHeader:
description: Whether to send a Canonical header.
example: false
default: false
type: boolean
baseUrlForCanonicalHeader:
description: URL used in the Canonical header (if enabled).
example: https://cdn.example.com
type: string
format: uri
bucket:
description: S3 bucket name.
example: product-images
type: string
minLength: 1
maxLength: 100
prefix:
description: Path prefix inside the bucket.
example: raw-assets
default: ''
type: string
maxLength: 100
accessKey:
description: Access key for the bucket.
example: AKIAIOSFODNN7EXAMPLE
type: string
minLength: 1
maxLength: 100
secretKey:
description: Secret key for the bucket.
example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
type: string
minLength: 1
maxLength: 100
required:
- name
- type
- bucket
- accessKey
- secretKey
additionalProperties: false
- title: S3 Compatible
type: object
properties:
name:
description: Display name of the origin.
example: US S3 Storage
type: string
minLength: 1
maxLength: 100
pattern: ^[a-zA-Z0-9 ]+$
type:
type: string
enum:
- S3_COMPATIBLE
includeCanonicalHeader:
description: Whether to send a Canonical header.
example: false
default: false
type: boolean
baseUrlForCanonicalHeader:
description: URL used in the Canonical header (if enabled).
example: https://cdn.example.com
type: string
format: uri
bucket:
description: S3 bucket name.
example: product-images
type: string
minLength: 1
maxLength: 100
prefix:
description: Path prefix inside the bucket.
example: raw-assets
default: ''
type: string
maxLength: 100
accessKey:
description: Access key for the bucket.
example: AKIAIOSFODNN7EXAMPLE
type: string
minLength: 1
maxLength: 100
secretKey:
description: Secret key for the bucket.
example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
type: string
minLength: 1
maxLength: 100
endpoint:
description: Custom S3-compatible endpoint.
example: https://s3.eu-central-1.wasabisys.com
type: string
format: uri
s3ForcePathStyle:
default: false
description: Use path-style S3 URLs?
example: true
type: boolean
required:
- name
- type
- bucket
- accessKey
- secretKey
- endpoint
additionalProperties: false
- title: Cloudinary Backup
type: object
properties:
name:
description: Display name of the origin.
example: US S3 Storage
type: string
minLength: 1
maxLength: 100
pattern: ^[a-zA-Z0-9 ]+$
type:
type: string
enum:
- CLOUDINARY_BACKUP
includeCanonicalHeader:
description: Whether to send a Canonical header.
example: false
default: false
type: boolean
baseUrlForCanonicalHeader:
description: URL used in the Canonical header (if enabled).
example: https://cdn.example.com
type: string
format: uri
bucket:
description: S3 bucket name.
example: product-images
type: string
minLength: 1
maxLength: 100
prefix:
description: Path prefix inside the bucket.
example: raw-assets
default: ''
type: string
maxLength: 100
accessKey:
description: Access key for the bucket.
example: AKIAIOSFODNN7EXAMPLE
type: string
minLength: 1
maxLength: 100
secretKey:
description: Secret key for the bucket.
example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
type: string
minLength: 1
maxLength: 100
required:
- name
- type
- bucket
- accessKey
- secretKey
additionalProperties: false
- title: Web Folder
type: object
properties:
name:
description: Display name of the origin.
example: US S3 Storage
type: string
minLength: 1
maxLength: 100
pattern: ^[a-zA-Z0-9 ]+$
type:
type: string
enum:
- WEB_FOLDER
includeCanonicalHeader:
description: Whether to send a Canonical header.
example: false
default: false
type: boolean
baseUrlForCanonicalHeader:
description: URL used in the Canonical header (if enabled).
example: https://cdn.example.com
type: string
format: uri
baseUrl:
description: Root URL for the web folder origin.
example: https://images.example.com/assets
type: string
format: uri
forwardHostHeaderToOrigin:
description: Forward the Host header to origin?
example: false
default: false
type: boolean
required:
- name
- type
- baseUrl
additionalProperties: false
- title: Web Proxy
type: object
properties:
name:
description: Display name of the origin.
example: US S3 Storage
type: string
minLength: 1
maxLength: 100
pattern: ^[a-zA-Z0-9 ]+$
type:
type: string
enum:
- WEB_PROXY
includeCanonicalHeader:
description: Whether to send a Canonical header.
example: false
default: false
type: boolean
baseUrlForCanonicalHeader:
description: URL used in the Canonical header (if enabled).
example: https://cdn.example.com
type: string
format: uri
required:
- name
- type
additionalProperties: false
- title: Google Cloud Storage (GCS)
type: object
properties:
name:
description: Display name of the origin.
example: US S3 Storage
type: string
minLength: 1
maxLength: 100
pattern: ^[a-zA-Z0-9 ]+$
type:
type: string
enum:
- GCS
includeCanonicalHeader:
description: Whether to send a Canonical header.
example: false
default: false
type: boolean
baseUrlForCanonicalHeader:
description: URL used in the Canonical header (if enabled).
example: https://cdn.example.com
type: string
format: uri
bucket:
example: gcs-media
type: string
minLength: 1
maxLength: 100
prefix:
example: products
default: ''
type: string
maxLength: 100
clientEmail:
example: service-account@project.iam.gserviceaccount.com
type: string
format: email
pattern: ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
privateKey:
example: '-----BEGIN PRIVATE KEY-----\nMIIEv...'
type: string
minLength: 1
required:
- name
- type
- bucket
- clientEmail
- privateKey
additionalProperties: false
- title: Azure Blob Storage
type: object
properties:
name:
description: Display name of the origin.
example: US S3 Storage
type: string
minLength: 1
maxLength: 100
pattern: ^[a-zA-Z0-9 ]+$
type:
type: string
enum:
- AZURE_BLOB
includeCanonicalHeader:
description: Whether to send a Canonical header.
example: false
default: false
type: boolean
baseUrlForCanonicalHeader:
description: URL used in the Canonical header (if enabled).
example: https://cdn.example.com
type: string
format: uri
container:
example: images
type: string
minLength: 1
maxLength: 100
prefix:
example: uploads
default: ''
type: string
maxLength: 100
accountName:
example: account123
type: string
minLength: 1
maxLength: 100
sasToken:
example: ?sv=2023-01-03&sr=c&sig=abc123
type: string
minLength: 1
required:
- name
- type
- container
- accountName
- sasToken
additionalProperties: false
- title: Akeneo PIM
type: object
properties:
name:
description: Display name of the origin.
example: US S3 Storage
type: string
minLength: 1
maxLength: 100
pattern: ^[a-zA-Z0-9 ]+$
type:
type: string
enum:
- AKENEO_PIM
includeCanonicalHeader:
description: Whether to send a Canonical header.
example: false
default: false
type: boolean
baseUrlForCanonicalHeader:
description: URL used in the Canonical header (if enabled).
example: https://cdn.example.com
type: string
format: uri
baseUrl:
description: Akeneo instance base URL.
example: https://akeneo.company.com
type: string
format: uri
clientId:
description: Akeneo API client ID.
example: akeneo-client-id
type: string
minLength: 1
maxLength: 100
clientSecret:
description: Akeneo API client secret.
example: akeneo-client-secret
type: string
minLength: 1
maxLength: 100
username:
description: Akeneo API username.
example: integration-user
type: string
minLength: 1
maxLength: 100
password:
description: Akeneo API password.
example: strongpassword123
type: string
minLength: 1
maxLength: 100
required:
# --- truncated at 32 KB (51 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/imagekit/refs/heads/main/openapi/imagekit-account-management-api-api-openapi.yml