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-1595%
Python1.8.22024-01-1292%
PHP1.5.12024-01-1088%
Go1.3.02024-01-0890%
Ruby0.9.02024-01-0585%
.NET0.7.02023-12-2080%
Java0.5.02023-12-1575%

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.