Blueticks

Quickstart

Install the Blueticks SDK for your language, authenticate, and make your first call.

Pick your language below. All five SDKs expose the same resources and follow each language's idiomatic naming conventions.

1. Install

pip install blueticks
npm install blueticks
composer require blueticks/blueticks guzzlehttp/guzzle

PHP uses PSR-18 HTTP clients. Install any concrete client (Guzzle shown); the SDK discovers it at runtime.

gem install blueticks
go get github.com/serenix-com/blueticks-go

2. Set your API key

Export your key as an environment variable so the SDK picks it up automatically:

export BLUETICKS_API_KEY="bt_live_..."

See Authentication for how to obtain a key.

3. Ping the API

from blueticks import Blueticks

client = Blueticks()
ping = client.ping()
print(ping.account_id, ping.whatsapp_connections)
import { Blueticks } from "blueticks";

const client = new Blueticks();
const ping = await client.ping();
console.log(ping.account_id, ping.whatsapp_connections);
<?php
require 'vendor/autoload.php';

use Blueticks\Blueticks;

$client = new Blueticks();
$ping = $client->ping();
echo $ping->account_id, ' ', count($ping->whatsapp_connections), " connection(s)\n";
require "blueticks"

client = Blueticks::Client.new # reads BLUETICKS_API_KEY
ping = client.ping.retrieve
puts ping.account_id
package main

import (
	"context"
	"fmt"
	"log"

	blueticks "github.com/serenix-com/blueticks-go"
)

func main() {
	c, err := blueticks.NewClient() // reads BLUETICKS_API_KEY
	if err != nil {
		log.Fatal(err)
	}
	ping, err := c.Ping.Retrieve(context.Background())
	if err != nil {
		log.Fatal(err)
	}
	fmt.Println(ping.AccountID)
}

A successful response looks like:

{
  "api": "ok",
  "account_id": "acct_abc123",
  "whatsapp_connections": [
    { "id": "engine_01h7...", "type": "gateway", "connected": true }
  ]
}

api: "ok" confirms your key works. whatsapp_connections lists the WhatsApp engines currently connected for your account — an empty array means no WhatsApp is connected yet (not an error; the message field explains it).

4. Retrieve your account

account = client.account.retrieve()
print(account.name, account.timezone)
const account = await client.account.retrieve();
console.log(account.name, account.timezone);
$account = $client->account->retrieve();
echo $account->name, ' ', $account->timezone, "\n";
account = client.account.retrieve
puts account.name, account.timezone
account, _ := c.Account.Retrieve(context.Background())
fmt.Println(account.Name)

Next steps