CloudIgnite SDK Documentation

Overview

CloudIgnite SDK provides easy-to-use interfaces for interacting with CloudIgnite services, including file uploads, downloads, listing files, and deletion operations. Below are the detailed guides for Android, Web, Python, and Flutter SDKs.

Android SDK

Initialization

Initialize the SDK in your build.gradle (:app):

implementation 'com.squareup.okhttp3:okhttp:4.10.0'
implementation 'com.github.arangi0072:CloudIgniteSdk:v1.0.1'

Add this in your settings gradle settings.gradle:

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven { url 'https://jitpack.io' }
    }
}

Add this to use Internet AndroidManifest.xml:

< uses-permission android:name="android.permission.INTERNET" / >

Add this in Activity MainActivity.java:

import com.cloudignite.cloudignitesdk.CloudIgniteSDK;
import java.io.IOException;

// Add this to your function
CloudIgniteSDK sdk = new CloudIgniteSDK("https://.cloudignite.in", "");

Methods

1. Upload File

// Run in a background thread
new Thread(() -> {
    try {
        String response = sdk.uploadFile("bucket-id", new File("path/to/file"));
        Log.d("file",response);
    } catch (IOException e) {
        e.printStackTrace();
    }
}).start();
Response
{'message': 'saved', 'object_id': '9edf-23dj-129dhj-28dj'}

Web SDK

Initialization

Include the SDK script in your project:

<script src="https://cloudignite.in/static/js/cloudignite-sdk.min.js"></script>

Initialize sdk:

CloudIgniteSDK sdk = new CloudIgniteSDK("https://< sub-domain >.cloudignite.in", "< api-key >")

Methods

1. Upload File

sdk.uploadFile("bucket-id", file)
    .then(response => console.log(response))
    .catch(error => console.error(error));
Response
{'message': 'saved', 'object_id': '9edf-23dj-129dhj-28dj'}

2. List Files

sdk.listFiles("bucket-id")
    .then(response => console.log(response))
    .catch(error => console.error(error));
Response
{"files": [{"object_id": "0c50d684-ab84-4269-9e0a-0a44ce87180c", "created_at": "2024-12-29T15:18:58.618", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T15:18:58.618"}, 
        {"object_id": "cd16bba8-63de-47d8-988f-56ea1ea416bc", "created_at": "2024-12-29T14:59:59.960", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-27 at 7.36.52PM.png\"}", "object_size": 746385, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T14:59:59.960"}, 
        {"object_id": "54801786-a9ba-416b-88d0-3c2299c0982c", "created_at": "2024-12-29T14:06:52.730", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T14:06:52.730"}, 
        {"object_id": "ef80a7ec-2387-4833-ba95-4c1b137a3a68", "created_at": "2024-12-29T14:06:19.272", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T14:06:19.272"}, 
        {"object_id": "4d808bae-b344-4108-8a4a-77e6aa2a721a", "created_at": "2024-12-29T09:42:25.768", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-27 at 3.01.17PM (2).png\"}", "object_size": 722322, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T09:42:25.768"}, 
        {"object_id": "cbf03e17-e6eb-4488-b161-8b09677970b8", "created_at": "2024-12-29T15:16:55.247", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T15:16:55.247"}]}

3. Delete File

sdk.deleteFile("bucket-id", "< ObjectId >")
    .then(response => console.log(response))
    .catch(error => console.error(error));
Response
{"message": "File deleted"}

Python SDK

Installation

Install the SDK using pip:

pip install cloudignite-sdk

Initialization

from cloudignite.sdk import CloudIgniteSDK

sdk = CloudIgniteSDK("https://< sub-domain >.cloudignite.in", "api-key")

1. Upload File

response = sdk.upload_file("bucket-id", "path/to/file")
Response
{'message': 'saved', 'object_id': '9edf-23dj-129dhj-28dj'}

2. List Files

response = sdk.list_files("bucket-id")
Response
{"files": [{"object_id": "0c50d684-ab84-4269-9e0a-0a44ce87180c", "created_at": "2024-12-29T15:18:58.618", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T15:18:58.618"}, 
        {"object_id": "cd16bba8-63de-47d8-988f-56ea1ea416bc", "created_at": "2024-12-29T14:59:59.960", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-27 at 7.36.52PM.png\"}", "object_size": 746385, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T14:59:59.960"}, 
        {"object_id": "54801786-a9ba-416b-88d0-3c2299c0982c", "created_at": "2024-12-29T14:06:52.730", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T14:06:52.730"}, 
        {"object_id": "ef80a7ec-2387-4833-ba95-4c1b137a3a68", "created_at": "2024-12-29T14:06:19.272", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T14:06:19.272"}, 
        {"object_id": "4d808bae-b344-4108-8a4a-77e6aa2a721a", "created_at": "2024-12-29T09:42:25.768", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-27 at 3.01.17PM (2).png\"}", "object_size": 722322, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T09:42:25.768"}, 
        {"object_id": "cbf03e17-e6eb-4488-b161-8b09677970b8", "created_at": "2024-12-29T15:16:55.247", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T15:16:55.247"}]}

3. Delete File

response = sdk.delete_file("bucket-id", "ObjectId")
Response
{"message": "File deleted"}

Flutter SDK

Installation

Add the SDK dependency in pubspec.yaml:

dependencies:
  cloudignite: ^1.0.0

Initialization

import 'package:cloudignite_sdk/cloudignite_sdk.dart';

final sdk = CloudIgniteSDK(
  apiUrl: 'https://< sub-domain >.cloudignite.in',
  authToken: 'api-key',
);

1. Upload File

final response = await sdk.uploadFile('bucket-id', File('path/to/file.txt'));
print(response);
Response
{'message': 'saved', 'object_id': '9edf-23dj-129dhj-28dj'}

2. List Files

final response = await sdk.listFiles('bucket-id');
print(response);
Response
{"files": [{"object_id": "0c50d684-ab84-4269-9e0a-0a44ce87180c", "created_at": "2024-12-29T15:18:58.618", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T15:18:58.618"}, 
        {"object_id": "cd16bba8-63de-47d8-988f-56ea1ea416bc", "created_at": "2024-12-29T14:59:59.960", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-27 at 7.36.52PM.png\"}", "object_size": 746385, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T14:59:59.960"}, 
        {"object_id": "54801786-a9ba-416b-88d0-3c2299c0982c", "created_at": "2024-12-29T14:06:52.730", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T14:06:52.730"}, 
        {"object_id": "ef80a7ec-2387-4833-ba95-4c1b137a3a68", "created_at": "2024-12-29T14:06:19.272", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T14:06:19.272"}, 
        {"object_id": "4d808bae-b344-4108-8a4a-77e6aa2a721a", "created_at": "2024-12-29T09:42:25.768", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-27 at 3.01.17PM (2).png\"}", "object_size": 722322, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T09:42:25.768"}, 
        {"object_id": "cbf03e17-e6eb-4488-b161-8b09677970b8", "created_at": "2024-12-29T15:16:55.247", "metadata": "{\"user_id\": \"14c38627-3476-46a9-95fa-0d0e46ed0ae3\", \"name\": \"Screenshot 2024-12-29 at 5.01.53PM.png\"}", "object_size": 574356, "object_type": "image/png", "path": "/home/joy/storage/buckets/f60bcce2_806c_41f4_9f8f_dd333a63232a", "updated_at": "2024-12-29T15:16:55.247"}]}

3. Delete File

final response = await sdk.deleteFile('bucket-id', 'ObjectId');
print(response);
Response
{"message": "File deleted"}

API Endpoints

Refer to the CloudIgnite API documentation for detailed information about the underlying REST API:

CloudIgnite API Documentation

Support

For support, contact support@cloudignite.in.