{"id":23878,"library":"imagekitio","title":"ImageKit Python SDK","description":"The official Python library for the ImageKit API. Version 5.4.0 supports image and video management, transformations, URL generation, and DAM operations. Requires Python >=3.9.","status":"active","version":"5.4.0","language":"python","source_language":"en","source_url":"https://github.com/imagekit-developer/imagekit-python","tags":["imagekit","image","video","dam","cdn","transformation"],"install":[{"cmd":"pip install imagekitio","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[{"note":"","wrong":"","symbol":"ImageKitClient","correct":"from imagekitio import ImageKitClient"}],"quickstart":{"code":"import os\nfrom imagekitio import ImageKitClient\n\nclient = ImageKitClient(\n    private_key=os.environ.get('IMAGEKIT_PRIVATE_KEY', 'your_private_key'),\n    public_key=os.environ.get('IMAGEKIT_PUBLIC_KEY', 'your_public_key'),\n    url_endpoint=os.environ.get('IMAGEKIT_URL_ENDPOINT', 'https://ik.imagekit.io/your_imagekit_id')\n)\n\n# Upload a file\nupload = client.upload_file(\n    file=open('path/to/image.jpg', 'rb'),\n    file_name='example.jpg'\n)\nprint(upload.url)","lang":"python","description":"Initialize the client with your credentials and upload a file."},"warnings":[{"fix":"Update imports to `from imagekitio import ImageKitClient` and adapt to new method signatures (e.g., `upload_file` instead of `upload`).","message":"Version 5.0.0 is a complete rewrite. The old SDK (v4.x) used `ImageKit` class and `imagekitio.ImageKit` import. New SDK uses `ImageKitClient` and different API methods.","severity":"breaking","affected_versions":"<5.0.0"},{"fix":"Replace `from imagekitio import ImageKit` with `from imagekitio import ImageKitClient`.","message":"The `ImageKit` class from v4.x is deprecated and removed in v5. Use `ImageKitClient` instead.","severity":"deprecated","affected_versions":">=4.0.0, <5.0.0"},{"fix":"Upgrade to v4.0.1+ and use URL-encoded strings when generating signed URLs.","message":"Signed URL generation with diacritic characters can produce invalid signatures (fixed in v4.0.1 but still relevant). Ensure URLs are properly encoded if you encounter 401 errors.","severity":"gotcha","affected_versions":"<4.0.1, >0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use `from imagekitio import ImageKitClient` (v5). If stuck on v4, pin version to 4.x: `pip install imagekitio==4.2.0` and use `from imagekitio import ImageKit`.","cause":"Trying to import the old class name from v4.x.","error":"ImportError: cannot import name 'ImageKit' from 'imagekitio'"},{"fix":"Use `client.upload_file(...)` in v5.x, or downgrade to v4.x.","cause":"Using old method name from v4.x.","error":"AttributeError: 'ImageKitClient' object has no attribute 'upload'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}