Skip to main content

Request Format

This guide explains how to structure and format requests to the Audian API.

Request Structure​

Every API request consists of:

[METHOD] [BASE_URL]/v2/accounts/{ACCOUNT_ID}/[ENDPOINT]
Headers:
X-Auth-Token: [TOKEN]
Content-Type: application/json
Body (if applicable):
JSON payload

Base URL​

All API requests use the base URL:

https://api.audian.com:8443/v2

HTTP Methods​

The Audian API uses standard HTTP methods:

GET - Retrieve Data​

curl -X GET "https://api.audian.com:8443/v2/accounts/{ACCOUNT_ID}/users" \
-H "X-Auth-Token: YOUR_API_KEY"

Use for:

  • Fetching resources
  • Listing resources
  • Checking status

PUT - Create Resource​

curl -X PUT "https://api.audian.com:8443/v2/accounts/{ACCOUNT_ID}/users" \
-H "X-Auth-Token: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"data": {
"username": "jsmith",
"first_name": "John",
"last_name": "Smith",
"email": "jsmith@example.com"
}
}'

Use for:

  • Creating new resources

POST - Update Resource​

curl -X POST "https://api.audian.com:8443/v2/accounts/{ACCOUNT_ID}/users/{USER_ID}" \
-H "X-Auth-Token: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"data": {
"first_name": "Jonathan"
}
}'

Use for:

  • Updating existing resources
  • Partial updates

DELETE - Remove Resource​

curl -X DELETE "https://api.audian.com:8443/v2/accounts/{ACCOUNT_ID}/users/{USER_ID}" \
-H "X-Auth-Token: YOUR_API_KEY"

Use for:

  • Deleting resources

Headers​

Required Headers​

HeaderValueDescription
X-Auth-TokenYour API tokenAuthentication
Content-Typeapplication/jsonRequired for PUT/POST
Acceptapplication/jsonResponse format

Example with All Headers​

curl -X GET "https://api.audian.com:8443/v2/accounts/{ACCOUNT_ID}/users" \
-H "X-Auth-Token: YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json"

Request Body​

JSON Format​

All request bodies must be valid JSON wrapped in a data object:

{
"data": {
"username": "jsmith",
"first_name": "John",
"last_name": "Smith"
}
}

Creating a User​

curl -X PUT "https://api.audian.com:8443/v2/accounts/{ACCOUNT_ID}/users" \
-H "X-Auth-Token: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"data": {
"username": "jsmith",
"first_name": "John",
"last_name": "Smith",
"email": "jsmith@example.com",
"priv_level": "user"
}
}'

Creating a Device​

curl -X PUT "https://api.audian.com:8443/v2/accounts/{ACCOUNT_ID}/devices" \
-H "X-Auth-Token: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"data": {
"name": "John Desk Phone",
"device_type": "sip_device",
"sip": {
"username": "device001",
"password": "securepassword"
}
}
}'

URL Parameters​

Path Parameters​

Include resource IDs in the URL path:

# Get specific user
GET /accounts/{ACCOUNT_ID}/users/{USER_ID}

# Get specific device
GET /accounts/{ACCOUNT_ID}/devices/{DEVICE_ID}

Query Parameters​

Add filters and options as query strings:

# With filtering
GET /accounts/{ACCOUNT_ID}/users?filter_status=enabled

# With pagination
GET /accounts/{ACCOUNT_ID}/users?page_size=25

# Combined
GET /accounts/{ACCOUNT_ID}/users?filter_status=enabled&page_size=25

Code Examples​

Python​

import requests
import json

API_KEY = 'your_api_key'
ACCOUNT_ID = 'your_account_id'

# GET request
response = requests.get(
f'https://api.audian.com:8443/v2/accounts/{ACCOUNT_ID}/users',
headers={'X-Auth-Token': API_KEY}
)

# PUT request (create)
response = requests.put(
f'https://api.audian.com:8443/v2/accounts/{ACCOUNT_ID}/users',
headers={
'X-Auth-Token': API_KEY,
'Content-Type': 'application/json'
},
json={
'data': {
'username': 'jsmith',
'first_name': 'John',
'last_name': 'Smith'
}
}
)

Node.js​

const API_KEY = 'your_api_key';
const ACCOUNT_ID = 'your_account_id';

// GET request
const response = await fetch(
`https://api.audian.com:8443/v2/accounts/${ACCOUNT_ID}/users`,
{
headers: { 'X-Auth-Token': API_KEY }
}
);

// PUT request (create)
const createResponse = await fetch(
`https://api.audian.com:8443/v2/accounts/${ACCOUNT_ID}/users`,
{
method: 'PUT',
headers: {
'X-Auth-Token': API_KEY,
'Content-Type': 'application/json'
},
body: JSON.stringify({
data: {
username: 'jsmith',
first_name: 'John',
last_name: 'Smith'
}
})
}
);

Best Practices​

Do's ✓​

  • Always include the X-Auth-Token header
  • Use Content-Type: application/json for PUT/POST
  • Wrap request body in a data object
  • URL-encode query parameters

Don'ts ✗​

  • Don't send request body for GET/DELETE
  • Don't use form-encoded data
  • Don't include sensitive data in URLs

Next Steps​