Skip to main content
All CollectionsIntegrations
API Documentation | Arbox
API Documentation | Arbox

Version 2.6.7 | Last Update 08.12.24

Yuval Biton avatar
Written by Yuval Biton
Updated over a week ago

Arbox API For Developers

Welcome to Arbox, a business management platform where businesses manage all their daily challenges and interact with their customers. Our mission is to help companies to operate as best they can with their customers.

The API is part of the Arbox platform and allows developers to programmatically access and update data inside an Arbox account. The API connects external sources (websites, other applications, integration tools like Zapier) to Arbox.

So before you begin, you need to know:

  • The business’ API key will be provided to each business within the Arbox platform.

  • Please copy the API key from the “Settings” page > “Business Information”

  • location_box_fk parameter, which will be provided upon request to the support team.

  • You can only access the API using the HTTP protocol

Postman

Generating an access token using Postman.

Error Manual

The Arbox Open API returns the following error codes in related cases:

Error Code

Meaning

Description

415

FAILED

One or more of the fields are incorrect or invalid

500

INTERNAL SERVER ERROR

There was a problem with our server. Please try again later.

400

INVALID FORM REQUEST

One or more of your form values are not valid

400

INVALID API USER

The user connected with the API is invalid

401

NO API KEY

Please supply an access token

401

INVALID API KEY

Please provide a valid access token

401

NOT UNIQUE API KEY

Issued access token, please contact support@arboxapp.com

Leads

Get leads in progress

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Response:

  • Array of all leads

Request Sample:

Get All Converted Leads

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Response:

  • Array of all leads that were converted to clients

Request Sample:

Get Lost Leads

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Response:

  • Array of all leads that were converted to clients

Get All Lead Statuses

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Response:

  • Array of all lead statuses

Request Sample:

Get All Lead Sources

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Response:

  • Array of all lead sources

Request Sample:

Search Lead by email, phone, or ID

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the raw option.

Parameter

Description

Appearance

Explanation

user

string or integer

required

Email, phone or Id

isLead

Boolean

Optional

true - get lead details

Response:

  • An array that contains the user and its details, or user not found message if it could not find the user.

Request Sample:

Create Lead

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the form-data option.

Parameter

Description

Appearance

Explanation

first_name

string

required

Lead’s first name

last_name

string

optional

Lead’s last name

phone

string

required

Lead’s contact number

email

string

optional

Lead’s contact email

location_box_fk

Int (location must be connected to business)

required

System number - studio’s place

status_fk

Int (number)

optional

System number - lead’s status at which it will appear after filling out the form.

source_fk

Int (number)

optional

System number - the landing page from which the lead is generated.

campaign

string

optional

users_boxes_owner_id

Int (number)

optional

Staff member ID that will manage the lead.

comment

string

optional

Any additional parameter can be used here.

allow_sms

Enum = yes, no

optional

Case sensitive (Use lower case)

allow_mailing_list

Enum = yes, no

optional

Case sensitive (Use lower case)

Request Sample:

Successful Response Sample:

{

"statusCode": 200,

"data": {

"id": 53736,

"first_name": "Ella",

"last_name": "Fish",

"phone": 05239348583

"email": "talky@talk.8200"

}

}

Update Lead Status

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the raw option.​

Parameter

Description

Appearance

Explanation

leadId

integer

required

Lead id

statusFk

integer

required

Status Id, must be connected to the business

comment

string

optional

Notes

Successful Response Sample:

{

"statusCode": 200,

"data": {

"id": 258009,

"first_name": "Test",

"last_name": "name",

"email": "test@gmail.com",

"phone": "030020032",

"status_fk": 51

},

"extra": null

}

Clients & Staff members

Get All Active Users

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Response:

  • Array of all active clients

Body Params:

  • Select the raw option.

Parameter

Description

Appearance

Explanation

staff

Boolean

Optional

true - get staff users | false - get clients

active

INT

Optional

user status:

active=1 -> Active

active=0 -> None active

Request Sample:

Search Client by email or ID

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the raw option.

Parameter

Description

Appearance

Explanation

user

string or integer

required

Email or Id

Response:

  • An array that contains the user and its details, or user not found message if it could not find the user.

Request Sample:

Create Client

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the form-data option.

Parameter

Description

Appearance

Explanation

first_name

string

required

First name

last_name

string

required

Last name

email

string

required

Client email

locations_box_fk

Int (number)

optional

The location_id where the session is at

active

INT

optional

user status:

active=1 -> Active

active=0 -> None Active

phone

string

optional

Client number

additional_phone

string

optional

Secondary client number

gender

string

optional

male\female\other

personal_id

string

optional

Client personal id

birthday (yyyy-mm-dd)

DATE

optional

birthdate

allow_sms

Enum = yes, no

optional

Case sensitive (Use lower case)

allow_mailing_list

Enum = yes, no

optional

Case sensitive (Use lower case)

send_welcome_email

Boolean = true, false

optional

Request Sample:

Successful Response Sample:

{

"statusCode": 200,

"data": {

"id": 3647191

},

"extra": null

}

Update Client

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the form-data option.

Parameter

Description

Appearance

Explanation

first_name

string

required

first name

last_name

string

required

last name

phone

string

optional

contact number

active

INT

required

user status:

active=1 -> Active

active=0 -> None Active

birthday (yyyy-mm-dd)

DATE

optional

birthdate

allow_sms

Enum = yes, no

optional

Case sensitive (Use lower case)

allow_mailing_list

Enum = yes, no

optional

Case sensitive (Use lower case)

Request Sample:

Successful Response Sample:

{

"statusCode": 200,

"data": {

"id": 3647191,

"first_name": "apiUser",

"last_name": "test",

"active": 0

},

"extra": null

}

Delete Client

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the form-data option.

Parameter

Description

Appearance

Explanation

users_id

string

required

Client user_id

is_permanent

is_permanent: true

required

Client Login Authentication

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the form-data option.

Parameter

Description

Appearance

Explanation

email

integer

required

User’s email address

password

integer

required

User’s password

Successful Response Sample:

{

"statusCode": 200,

"data": {

"isActive": true/false

}

Get Client Data

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the form-data option.

  • VALUE on the request can be ID of the user or email address

Successful Response Sample:

{

"statusCode": 200,

"data": {

"id": 494716,

"user_fk": 9,

"box_fk": 8,

"locations_box_fk": 1,

"first_name": "test",

"last_name": "register",

"child": 0,

"birthday": "2222-02-12",

"image_public_id_cloudinary": null,

"employee_id": null,

"gender": "male",

"phone": "0523783352",

"rfid": null,

"additional_phone": "6",

"weight": "100",

"height": "180",

"country": "AO",

"city": "add",

"address": "sda",

"zip": "12321",

"state": "xasd",

"personal_id": "23131231",

"medical_cert": 1,

"epidemic_statement": 1,

"active": 1,

"suspended": 0,

"restricted": 0,

"restricted_time": null,

"has_waiver": 1,

"date_waiver": null,

"has_basics_workshop": 0,

"has_nutrition_counseling": 0,

"has_professional_meeting": 0,

"has_insurance": 0,

"has_changed_property": 0,

"allow_sms": "unknown",

"allow_mailing_list": "yes",

"rivhit_customer_id": "8046",

"union_fk": null,

"sugarwod_id": null,

"source_fk": null,

"status_fk": null,

"lost_reasons_fk": null,

"created_at": "2015-08-17 10:25:29",

"updated_at": "2022-02-16 09:54:50",

"deleted_at": null,

"age": "199.1",

"full_name": "test register",

}

Purchases

Create Purchase (Membership)

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the form-data option.

Parameter

Description

Appearance

Explanation

id

string

required

Users_boxes_id

membership_types_id

string

required

membership id

start

string

required

membership start date (yyyy-mm-dd)

end

string

optional

membership end date (yyyy-mm-dd)

generate_qr

Boolean = true, false

optional

true= Create a Static QR Code for this membership

Successful Response Sample:

{

"statusCode": 200,

"data": {

"id": 741,

"start": "2022-12-13",

"end": "2023-03-12",

"sessions_left": null,

"active": 1

},

"extra": null

}

Get Client Purchases

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the raw option.

Parameter

Description

Appearance

Explanation

userId

String

required

user id

Successful Response Sample:

{

"statusCode": 200,

"data": {

"id": 146,

"name": "15 Sessions",

“type”: “plan”,

“price”: “300”,

“sessions_left: 2”,

“start”: “2020-01-01”,

“end”: “2021-01-01”,

“active”: 1,

“cancelled” : 0,

“debt” : 100,

“created_at”: “2020-01-01”

}

}

Schedule

Get Schedule

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the raw option.

Parameter

Description

Appearance

Explanation

from

'dd-mm-YYYY'

or

'mm-dd-YYYY'

Required

If Parameter “to” exists then optional

According to the time format

to

'dd-mm-YYYY'

or

'mm-dd-YYYY'

Required

If Parameter “from” exists then optional

According to the time format

location

Int, (location must be connected to business)

optional

System number - studio’s place

bookings

Boolean -

True / False

optional

True - Show the number of participants in the class

waiting_list

Boolean

True / False

optional

True - Show the number of participants on the Waiting list

Successful Response Sample:

{

statusCode:200,

data: Array({

"coach": “Michael Cohen”,

"secondCoach": “Lora Smith”,

"name": “Yoga for Beginners”,

"startTime": ״14:00:00,

"endTime": “15:00:00”,

"date": ”2020-07-26”,

"liveLink": Live Link to class, if exists,

"isCancelled": false,

"maxMembers": 15,

"location": Tel Aviv,

"isTransparent": false

})}

Error code list

Integer

Name

Description

415

DATE RANGE EXCEEDS

The date range is greater than 7 days, please limit your request to up to 7 days

Create Group Session

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the raw option:

Parameter

Description

Appearance

Explanation

box_category_fk

Int (number)

required

Event type id

date

Date string in format YYYY-MM-DD

required

The date of the event if it’s a one-time event, or the start date if it’s a recurring event

time

Time string in format HH:mm: ss

required

The start time of the event

max_users

Int (number)

optional

Maximum capacity of the session

min_users

Int (number)

optional

Minimum capacity of the session.

live_link

String

optional

A Zoom/google link

cancel_limit

Int (number)

optional

How many hours before the session should it be canceled if there are no minimum users.

coach_fk

Int (number)

optional

The user_id of the coach

second_coach_fk

Int (number)

optional

The user_id of the coach

locations_box_fk

Int (number)

required

The location_id where the session is at

enable_registration_time

boolean

optional

How many hours before the session should it be open for registration in the app/site

disable_cancellation_time

Int (number)

optional

How many hours before the session a user can cancel without a fine.

enable_late_cancellation

boolean

optional

Allow users to cancel after the limited cancellation time with a fine

transparent

boolean

optional

Default false. Should it be presented in the user's app.

end_time

Time string in format HH:mm:ss

required

The end time of the event

repeatConfig

object

required

The session accuracy configurations

repeatConfig.repeat

boolean

required

Is the session one time or not

repeatConfig.type

String, one of :

['forever', 'until', 'times']

Required if repeat=1

forever= no end date

until= until a certain date (passed in “until” prop)

times= several times (passed in “times” prop)

repeatConfig.until

Date string in format YYYY-MM-DD

Required if type=’until’

Until what date should the sessions be created. Only relevant if type=’until’

repeatConfig.times

Int (number)

Required if type=’times’

How many times should the sessions be repeated. Only relevant if type=’times’

repeatConfig.days

An array of numbers from 0-Sunday to 6-Saturday

Required if repeat=1

What days of the week should a session be created

repeatConfig.seriesName

String

Required if type=’forever’

The name of the series. Only relevant when type=‘forever’

Request Sample:

Tasks

Get All Task Types

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Response:

  • Array of all task types

Request Sample:

Create Task

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the raw option.

Parameter

Description

Appearance

Explanation

targetableType

string

required

user/lead /general

taskTypeId

Int (number)

required

System number of task type

targetableId

Int (number) or string when targetableType=user

optional

Required when targetableType is user or lead,

id or email

assignedTo

Int (number)

optional

Staff member assignee

task_owner_user_fk

Int (number)

optional

Created by

dateFormat

string

optional

When you want to use your format for a date. (must be Y-m-d or d-m-Y or m-d-Y)

reminderDate

string

required

As default, the format is due to box location (mm-dd-yyyy or dd-mm-yyyy), you can also use your format, according to the parameter “format”.

reminderTime

string

required

Hh:mm or HH:mm A format

locationBoxFk

Int, (location must

be connected to business)

required

System number - studio’s place filling out the form.

description

string

optional

comment

Request Sample:

Successful Response Sample:

{

"statusCode": 200,

"data": {

"id": 1599744,

"reminderTime": "2021-08-19 19:30:00",

"taskType": "Call",

"description": null,

"targetableType": null,

"targetableId": null

},

"extra": null

}

Messages

Send Message

API URL:

Acceptable request type:

Headers:

  • In the KEY field, enter “apiKey”

  • In the VALUE field, enter the business API KEY

Body Params:

  • Select the raw option.

Parameter

Description

Appearance

Explanation

type

string

required

sms/push

/email

identify

string

optional

email/phone

/user_id

user

array

required

List of users or leads, by user email, ID, or phone (according to the identify field), the user must be a member of your business

message

string

required

The message will be sent

subject

string

optional

subject, for an email message

isLead

boolean

optional

If true, send a message to leads, otherwise, to users

Request Sample:

Successful Response Sample:

{

"statusCode": 200,

"data": {

"type": "sms",

"message": "Test",

"users": [

178695,

24

],

"sendMessageIsNotAllowed": [24]

},

"extra": null

}

Did this answer your question?