User Registration

Register New User Without Package

POST ‎https://<domain>/<api prefix>/<version>/user/signup/‎

This API endpoint add new user into the system.

Headers

NameTypeDescription

apikey*

string

apikey

Authorization*

string

Bearer access token

Request Body

NameTypeDescription

country_code*

string

country code

‎Countries

first_name*

string

first name

last_name*

string

last name

username*

string

username

password*

string

password

agree_terms*

string

agree terms - Possible values are 1 or 0

user_type*

string

user role - Possible values are customer or member. member role is equivalent to distributor, consultant, or agent.

email*

string

email address

phone_number*

string

phone number

place_genealogy

string

place_genealogy - Possible values are 1 or 0

position

string

if place_geneolgy is 1, choose user position from the following - HOLDING_TANK, LEFT, RIGHT

sponsor

string

sponsor username, required when user_type is member

Get Sponsors List

subdomain

string

subdomain name, required when user_type is member

HTTP/1.1 200 OK
Content-Type: application/json

Body:
{
    "status_code": 200,
    "errors": {},
    "data": {
        "uid": "<Unique user id>"
    }
}

Sample code

Node

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://<domain>/<api prefix>/<version>/user/signup/',
  'headers': {
    'apikey': '<apikey>'
  },
  formData: {
    'country_code': '<country code>',
    'sponsor': '<sponsor username>',
    'first_name': '<first name>',
    'last_name': '<last name>',
    'username': '<username>',
    'password': '<password>',
    'agree_terms': '<agree terms>',
    'user_type': '<user role>',
    'email': '<email address>',
    'phone_number': '<phone number>',
    'place_genealogy': '<place genealogy>',
    'position' : '<Genealogy position>'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://<domain>/<api prefix>/<version>/user/signup/",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_POSTFIELDS => array(
        'country_code' => <country code>,
        'sponsor' => <sponsor username>,
        'first_name' => <first name>,
        'last_name' => <last name>,
        'username' => <username>,
        'password' => <password>,
        'agree_terms' => <agree terms>,
        'user_type' => <user role>,
        'email' => <email address>,
        'phone_number' => <phone number>,
        'place_genealogy' => <place genealogy>,
        'position' => <Genealogy position>
    ),
    CURLOPT_HTTPHEADER => array(
        "apikey: <apikey>"
    )
));

$response = curl_exec($curl);

curl_close($curl);
echo $response; 

Error Responses

Status Code

Error Type

Field

Description

400

Validation Error

country_code

Invalid country code

400

Validation Error

sponsor

Invalid sponsor name

400

Validation Error

sponsor

The selected sponsor is not found or is in the inactive state.

400

Validation Error

first_name

The first name should be an alphabet.

400

Validation Error

last_name

The last name should be an alphabet.

400

Validation Error

username

Username is already taken. Please try another one.

400

Validation Error

username

Invalid username. Only contains alphanumeric characters, underscore and dot. \nUnderscore and dot can't be next to each other (e.g user_.name). \nUnderscore or dot can't be used multiple times in a row (e.g user__name / user..name). The number of characters must be between 5 to 250.

400

Validation Error

password

password validation errors

400

Validation Error

phone_number

Phone number already taken. Please try another one.

400

Validation Error

email

There is a user registered with the specified E-Mail address.

400

Validation Error

position

Your chosen position is invalid. The default will be the spilling preference of

400

Validation Error

subdomain

Ensure this field has no more than 15 characters.

Ensure this field has at least 3 characters.

Register New User With Package

POST ‎‎https://<domain>/<api prefix>/<version>/user/signup-package/

This API endpoint add new user into the system with an enrollment package.

Headers

NameTypeDescription

apikey*

string

apikey

Authorization*

string

Bearer access token

Request Body

NameTypeDescription

country_code*

string

country code

‎Countries

sponsor*

string

sponsor username

Get Sponsors List

first_name*

string

first name

last_name*

string

last name

username*

string

username

password*

string

password

confirm_password*

string

confirm password

agree_terms*

string

agree terms - Possible values are 1 or 0

user_type*

string

user role - Possible values are customer or member. member role is equivalent to distributor, consultant, or agent.

email*

string

email address

phone_number*

string

phone number

place_genealogy

string

place_genealogy - Possible values are 1 or 0

product_id*

string

enrollment package - product id

Enrollment Packages

address_first_name*

string

address first name

address_last_name*

string

address last name

address_mail_id*

string

address E-mail address

address_phone_number*

string

address phone number

address_name_line*

string

address house number

address_premise*

string

address street

address_locality*

string

address locality

address_postal_code*

string

address post code

address_country_code*

string

address country code

‎Countries

address_state_code*

string

address state code

States

subdomain*

string

subdomain name

position

string

possible values - HOLDING_TANK, LEFT, RIGHT

HTTP/1.1 200 OK
Content-Type: application/json

Body:
{
    "status_code": 200,
    "errors": {},
    "data": {
        "uid": "<Unique user id>"
    }
}

Sample Code

Node

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://<domain>/<api prefix>/<version>/user/signup-package/',
  'headers': {
    'apikey': '<apikey>'
  },
  formData: {
    'country_code': '<country code>',
    'sponsor': '<sponsor username>',
    'first_name': '<first name>',
    'last_name': '<last name>',
    'username': '<username>',
    'password': '<password>',
    'confirm_password': '<confirm password>',
    'agree_terms': '<agree terms>',
    'user_type': '<user role>',
    'email': '<email address>',
    'phone_number': '<phone number>',
    'place_genealogy': '<place genealogy>',
    'position' : '<Genealogy position>',
    'product_id': '<product id>',
    'address_first_name': '<address first name>',
    'address_last_name': '<address last name>',
    'address_mail_id': '<address email id>',
    'address_phone_number': '<address phone number>',
    'address_name_line': '<address house number>',
    'address_premise': '<address street>',
    'address_locality': '<address locality>',
    'address_postal_code': '<address post code>',
    'address_country_code': '<address country code>',
    'address_state_code': '<address state code>'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://<domain>/<api prefix>/<version>/user/signup-package/",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_POSTFIELDS => array(
        'country_code' => <country code>,
        'sponsor' => <sponsor username>,
        'first_name' => <first name>,
        'last_name' => <last name>,
        'username' => <username>,
        'password' => <password>,
        'confirm_password' => <confirm password>,
        'agree_terms' => <agree terms>,
        'user_type' => <user role>,
        'email' => <email address>,
        'phone_number' => <phone number>,
        'place_genealogy' => <place genealogy>,
        'position' => <genealogy position>,
        'product_id' => <product id>,
        'address_first_name' => <address first name>,
        'address_last_name' => <address last name>,
        'address_mail_id' => <address email id>,
        'address_phone_number' => <address phone number>,
        'address_name_line' => <address house number>,
        'address_premise' => <address street>,
        'address_locality' => <address locality>,
        'address_postal_code' => <address post code>,
        'address_country_code' => <address country code>,
        'address_state_code' => <address state code>
    ),
    CURLOPT_HTTPHEADER => array(
        "apikey: <apikey>"
    )
));

Error Responses

Status Code

Error Type

Field

Description

400

Validation Error

country_code

Invalid country code

400

Validation Error

sponsor

Invalid sponsor name

400

Validation Error

sponsor

The selected sponsor is not found or is in the inactive state.

400

Validation Error

first_name

The first name should be an alphabet.

400

Validation Error

last_name

The last name should be an alphabet.

400

Validation Error

username

Username is already taken. Please try another one.

400

Validation Error

username

username Invalid username. Only contains alphanumeric characters, underscore and dot. \nUnderscore and dot can't be next to each other (e.g user_.name). \nUnderscore or dot can't be used multiple times in a row (e.g user__name / user..name). The number of characters must be between 5 to 250.

400

Validation Error

password

password validation errors

400

Validation Error

confirm_password

Confirmed password doesn't match.

400

Validation Error

phone_number

Phone number already taken. Please try another one.

400

Validation Error

email

There is a user registered with the specified E-Mail address.

400

Validation Error

position

Your chosen position is invalid. The default will be the spilling preference of

400

Validation Error

address_postal_code

Invalid postcode

400

Validation Error

address_state_code

Invalid address_state_code

400

Validation Error

address_first_name

Invalid address_first_name

400

Validation Error

address_last_name

Invalid address_last_name

400

Validation Error

address_country_code

Invalid address_country_code

400

Validation Error

product_id

Invalid product_id

400

Validation Error

subdomain

Ensure this field has no more than 15 characters.

Ensure this field has at least 3 characters.

500

Server Error

User creation is failed.

Get Sponsors List

GET ‎https://<domain>/<api prefix>/<version>/user/get/sponsors/

This API endpoint will return a list of sponsors.

Headers

NameTypeDescription

apikey*

string

Apikey

Authorization*

string

Bearer access token

HTTP/1.1 200 OK
Content-Type: application/json
{
    "status_code": 200,
    "errors": {},
    "data": {
        "results": [
            {
                "username": "<username>",
                "first_name": "<first_name>",
                "last_name": "<last_name>"
            },
            ...
        ],
        "count": <list_count>,
        "previous": "<previous_page_url>",
        "next": "<next_page_url>"
    }
}

Sample Code

Node

var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://<domain>/<api prefix>/<version>/user/get/sponsors/',
  'headers': {
    'apikey': '<apikey>',
    'Authorization': 'Bearer <access token>',
  },
  formData: {}
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://<domain>/<api prefix>/<version>/user/get/sponsors/',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_HTTPHEADER => array(
    'apikey: <apikey>',
    'Authorization: Bearer <access tooken>',
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Validate Sponsor

POST ‎https://<domain>/<api prefix>/<version>/user/validate-sponsor/

This API endpoint will validate a sponsor.

Headers

NameTypeDescription

apikey*

string

Apikey

Authorization*

string

Bearer access token

HTTP/1.1 200 OK
Content-Type: application/json
{
    "status_code": 200,
    "errors": {},
    "data": {}
}

Sample Code

Node

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://<domain>/<api prefix>/<version>/user/validate-sponsor/',
  'headers': {
    'apikey': '<apikey>',
    'Authorization': 'Bearer <access token>',
  },
  formData: {
    'sponsor': '<sponsor_user_name>'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://<domain>/<api prefix>/<version>/user/validate-sponsor/',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => array('sponsor' => '<sponsor_user_name>'),
  CURLOPT_HTTPHEADER => array(
    'apikey: <apikey>',
    'Authorization: Bearer <access token>',
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Error Responses

Status CodeError TypeFIeldDescription

400

Validation Error

sponsor

Invalid sponsor username.

Sponsor is blocked or inactive.

The selected sponsor is not found or is in the inactive state.

Last updated