Skip to main content

Introduction

What is the Reseller API?

The Reseller API is a REST-based interface within the Eenos ecosystem used to manage reseller operations, hosting accounts, and sub-reseller hierarchies.

It enables resellers to automate and integrate their hosting environment with external systems such as billing platforms, provisioning tools, and other remote management services.

Through this API, a reseller can create and manage end-user hosting accounts as well as create sub-resellers, forming a structured reseller chain within their allocated resources and permissions.

The Eensos reseller API can be accessed over SSL port  4444 and non-SSL port 4443

API Architecture Overview

A reseller API request is composed of three main parts:

  • Authentication Headers
  • Request Payload (Data)
  • API Endpoint URL

1. Authentication Headers

Every request must include the following headers:

  • X-RESELLER: 
    • The reseller account username registered on the server. This identifies the reseller under which the API request is executed
  • X-API-USER  :
    • The API username used for authentication. This is created via the API Manager under the reseller account.
  • X-API-PASSWORD :
    • The password associated with the API user. This is used together with X-API-USER to validate the request.

These credentials are required for all API operations.

Every API Request needs X-RESELLER, X-API-USER, and X-API-PASSWORD

2. Request Data  ( Request Parameters )

The request data contains the parameters required to execute an API operation. These parameters define what action should be performed and provide any additional information needed by the API.

This data is processed by the Reseller API to perform the requested task within the scope of the reseller account in the Eenos environment.

Request parameters may include details such as usernames, resource limits, account identifiers, or configuration values, depending on the specific API endpoint being used.

3. API URL Structure

Each API operation is exposed through a dedicated endpoint.

Base Formats

There are two supported API URL formats:

  • Default API URL:  https://your-host-name:4444/api/
  • Versioned API URL (recommended): https://your-host-name:4444/api/v1/

The versioned format ensures backward compatibility and stability across releases.

Default vs Versioned API

Default API URL
  • Uses the server’s default API version (currently v1).
  • May change in future releases without notice.
Versioned API URL
  • Explicitly targets a specific API version (e.g., v1).
  • Recommended for production integrations to ensure stability.

Response &  Output

All API responses are returned in JSON format with the following structure:

data

Contains the result of the API operation.

info

Provides a human-readable description of the response.

status

HTTP-like status code indicating the result of the operation.

  • 200 indicates success
  • Other codes indicate errors or specific conditions (documented per API)

Example

The following example shows how to send an API request to Eenos WAP Admin.

We are using the following data,

Credentials Used

  • X-RESELLER: alphareseller
  • X-API-USER: eenos_api
  • X-API-PASSWORD: eenos123

Endpoint Example

  • URL: https://your-host-name::4444/api/load-average/
Sample CURL Command on Default API Url
# Endpoint: Load Average
curl -X POST "https://your-host-name:4444/api/load-average/" \
  -H "X-RESELLER: alphareseller" \
  -H "X-API-USER: eenos_api" \
  -H "X-API-PASSWORD: eenos123" \
  -H "Content-Type: application/json" \
  -d '{}'
Sample CURL Command on Version API URl, v1
# Endpoint: Load Average
curl -X POST "https://your-host-name:4444/api/v1/load-average/" \
  -H "X-RESELLER: alphareseller" \
  -H "X-API-USER: eenos_api" \
  -H "X-API-PASSWORD: eenos123" \
  -H "Content-Type: application/json" \
  -d '{}'
Output
{
  "data": {
    "load_average": "0.55 0.51 0.46"
  },
  "info": "Current server load",
  "status": 200
}

This request retrieves the server’s current load average.

Authentication Errors

The API may return the following authentication-related errors:

1. Authentication credentials were not provided

This error occurs when the required authentication headers are missing.

Solution:

Ensure that X-RESELLERX-API-USER and X-API-PASSWORD headers are included in the request.

2. You do not have permission to perform this action

This error may occur due to:

  • Incorrect API username or password
  • IP address restrictions on the API account
  • Disabled or unauthorized API user

Solution:

Verify credentials and confirm that the requesting IP is allowed for API access.

Demo servers don't have  Reseller API access.