Kana’s Admin API utilises GraphQL. GraphQL is a query language for APIs, whereby you have the ability to define precisely the data you want to fetch or update. The Kana GraphQL API therefore offers the flexibility to grab feature, plan, or subscription data for a user as you need, and take actions upon this data, alongside recording feature/plan usage data for your users.

Introduction to GraphQL

If you’re unfamiliar with GraphQL, there’s some excellent resources to help you get started. You can find a fantastic introduction below that we recommend giving a brief look before getting started.

Introduction to GraphQL

graphql

Don’t worry if you’re not entirely familiar though - we’ll help you get setup with Kana no matter the case. Take a look at our Quick Start guide to get up-and-running using our GraphQL API with little effort.

Quick Start

Get set up and provide simple example code to create something within Kana

Authentication

You’ll need to an API Key in order to utilise the GraphQL API. We have a handy guide which goes into further detail on how to obtain and provide this.

Authorization (Backend)

API Reference

Our GraphQL API Reference details the schema - defining our GraphQL API’s type system in order to describe all accessible data (objects, fields, etc.) and the queries & mutations available at your disposal to fetch or manipulate your information in Kana.

Admin API (Backend) Reference

SDKs

We also provide SDKs which wrap the functionality of the API in the languages you use. While the Admin API (Backend) Reference shows example calls for both Queries and Mutations in each supported language, you can also access the repositories directly to gain information on how to install, authenticate, and make available calls.

Repositories

Follow the links to access the repositories for each SDK currently available:

Installation

Install the SDK necessary for your application by following the relevant instructions below:

Node.js
// CLI
npm i @usekana/admin\-kana\-js

// package.json - Ensure the following is present:
"dependencies": {
  "@usekana/admin-kana-js": "^0.1.19"
}