Skip to content

SDKs and Libraries ​

Official and community-maintained SDKs for Digisis APIs.

Official SDKs ​

JavaScript/Node.js SDK ​

Installation:

bash
npm install @digisis/sdk

Features:

  • TypeScript support
  • Promise-based API
  • Automatic retries
  • Built-in error handling
  • Webhook verification

GitHub: digisis/digisis-node

Python SDK ​

Installation:

bash
pip install digisis-python

Features:

  • Async/await support
  • Type hints
  • Comprehensive error handling
  • Request/response logging
  • Rate limit handling

GitHub: digisis/digisis-python

PHP SDK ​

Installation:

bash
composer require digisis/digisis-php

Features:

  • PSR-4 autoloading
  • Guzzle HTTP client
  • Exception handling
  • Configurable timeouts
  • Debug mode

GitHub: digisis/digisis-php

Go SDK ​

Installation:

bash
go get github.com/digisis/digisis-go

Features:

  • Context support
  • Structured logging
  • Custom HTTP clients
  • Concurrent requests
  • Zero dependencies

GitHub: digisis/digisis-go

Community SDKs ​

Ruby Gem ​

Installation:

bash
gem install digisis-ruby

Maintainer: @ruby-dev

.NET Package ​

Installation:

bash
dotnet add package Digisis.Net

Maintainer: @dotnet-community

Java Library ​

Installation (Maven):

xml
<dependency>
    <groupId>com.digisis</groupId>
    <artifactId>digisis-java</artifactId>
    <version>1.0.0</version>
</dependency>

Maintainer: @java-contributors

SDK Comparison ​

SDKVersionLast UpdatedTestsCoverage
JavaScript2.1.02024-01-15✅95%
Python1.8.22024-01-12✅92%
PHP1.5.12024-01-10✅88%
Go1.3.02024-01-08✅90%
Ruby0.9.02024-01-05✅85%
.NET0.7.02023-12-20✅80%
Java0.5.02023-12-15✅75%

Quick Start Examples ​

JavaScript ​

javascript
import { DigisisClient } from '@digisis/sdk'

const client = new DigisisClient({
  apiKey: 'your-api-key'
})

const products = await client.products.list()
console.log(products.data)

Python ​

python
import digisis

client = digisis.Client(api_key='your-api-key')
products = client.products.list()
print(products.data)

PHP ​

php
use Digisis\DigisisClient;

$client = new DigisisClient(['api_key' => 'your-api-key']);
$products = $client->products->list();
print_r($products->data);

Go ​

go
package main

import (
    "context"
    "github.com/digisis/digisis-go"
)

func main() {
    client := digisis.NewClient("your-api-key")
    products, err := client.Products.List(context.Background(), nil)
    if err != nil {
        panic(err)
    }
    fmt.Println(products.Data)
}

SDK Features Matrix ​

FeatureJSPythonPHPGoRuby.NETJava
Async/Await✅✅❌✅❌✅❌
Type Safety✅✅❌✅❌✅✅
Retries✅✅✅✅✅✅❌
Webhooks✅✅✅✅❌❌❌
Pagination✅✅✅✅✅✅✅
Rate Limiting✅✅❌✅❌❌❌

Contributing ​

We welcome contributions to our SDKs! Here's how to get started:

  1. Fork the repository
  2. Create a feature branch
  3. Write tests for your changes
  4. Ensure all tests pass
  5. Submit a pull request

Development Setup ​

Each SDK repository includes detailed development setup instructions in their respective README files.

Support ​

License ​

All official SDKs are licensed under the MIT License.