SharePanel API Documentation

Table of Contents

Overview

The SharePanel API allows you to programmatically manage authentication, user profiles, organizations, and instances. This API uses simple HTTP requests and returns JSON responses.

Base URL: https://api.sharepanel.host

Authentication

All API endpoints except the authentication endpoint require an API key. You can obtain an API key by authenticating with your SharePanel credentials.

Rate Limiting

Rate limits are enforced based on your plan:

Plan Daily Requests Rate Limit (per minute) Max Payload Size
Free 100 10 1 MB
Basic 1,000 30 5 MB
Pro 10,000 100 15 MB
Enterprise 50,000 500 50 MB

API Endpoints

Authentication

Generate a new API key by authenticating with your email and password.

GET https://api.sharepanel.host?mode=auth&email={email}&password={password}

Parameters

Parameter Type Required Description
mode String Yes Set to auth
email String Yes Your SharePanel account email
password String Yes Your SharePanel account password

Response

{
  "status": "success",
  "message": "Authentication successful",
  "data": {
    "api_key": "your_api_key_here"
  }
}

User Profile

Retrieve your user profile information.

GET https://api.sharepanel.host?mode=profile&api_key={api_key}&action=view

Parameters

Parameter Type Required Description
mode String Yes Set to profile
api_key String Yes Your API key
action String Yes Set to view

Response

{
  "status": "success",
  "message": "Profile retrieved successfully",
  "data": {
    "id": 123,
    "username": "username",
    "email": "user@example.com",
    "bio": "User bio",
    "pfp": "profile_picture_url",
    "plan": "pro",
    "org_limit": 10,
    "instance_limit": 25,
    "verified": 1,
    "balance": 100,
    "first_name": "John",
    "last_name": "Doe",
    "phone": "1234567890",
    "address": "123 Main St"
  }
}

Organizations

Manage your organizations with the following endpoints.

List Organizations

List all organizations where you are a member.

GET https://api.sharepanel.host?mode=orgs&api_key={api_key}&action=list
Parameters
Parameter Type Required Description
mode String Yes Set to orgs
api_key String Yes Your API key
action String Yes Set to list
Response
{
  "status": "success",
  "message": "Organizations retrieved successfully",
  "data": [
    {
      "id": 1,
      "title": "Organization Name",
      "path": "organization-name",
      "admin_id": 123,
      "contact": "contact@example.com",
      "created_by": 123
    }
  ]
}

Create Organization

Create a new organization.

GET https://api.sharepanel.host?mode=orgs&api_key={api_key}&action=new&title={title}&path={path}&contact={contact}
Parameters
Parameter Type Required Description
mode String Yes Set to orgs
api_key String Yes Your API key
action String Yes Set to new
title String No Organization title (default: "New Organization")
path String No Organization path (default: lowercase hyphenated title)
contact String No Organization contact email
Response
{
  "status": "success",
  "message": "Organization created successfully",
  "data": {
    "org_id": 1
  }
}

Delete Organization

Delete an organization where you are an admin.

GET https://api.sharepanel.host?mode=orgs&api_key={api_key}&action=delete&org_id={org_id}
Parameters
Parameter Type Required Description
mode String Yes Set to orgs
api_key String Yes Your API key
action String Yes Set to delete
org_id Integer Yes ID of the organization to delete
Response
{
  "status": "success",
  "message": "Organization deleted successfully"
}

Instances

Manage your instances with the following endpoints.

List Instances

List all instances for your account.

GET https://api.sharepanel.host?mode=instances&api_key={api_key}&action=list
Parameters
Parameter Type Required Description
mode String Yes Set to instances
api_key String Yes Your API key
action String Yes Set to list
Response
{
  "status": "success",
  "message": "Instances retrieved successfully",
"status": "success",
  "message": "Instances retrieved successfully",
  "data": [
    {
      "id": 1,
      "instance_name": "Instance Name",
      "instance_path": "instance-path",
      "created_at": "2023-01-01 12:00:00",
      "status": "active",
      "instance_type": "default",
      "type": "SNCS"
    }
  ]
}

Delete Dead Instances

Delete all instances with a "dead" status.

GET https://api.sharepanel.host?mode=instances&api_key={api_key}&action=delete_dead
Parameters
Parameter Type Required Description
mode String Yes Set to instances
api_key String Yes Your API key
action String Yes Set to delete_dead
Response
{
  "status": "success",
  "message": "3 dead instances deleted successfully"
}

Awaken All Instances

Set all sleeping instances to "active" status.

GET https://api.sharepanel.host?mode=instances&api_key={api_key}&action=awaken_all
Parameters
Parameter Type Required Description
mode String Yes Set to instances
api_key String Yes Your API key
action String Yes Set to awaken_all
Response
{
  "status": "success",
  "message": "5 instances awakened successfully"
}

Sleep All Instances

Set all active instances to "sleep" status.

GET https://api.sharepanel.host?mode=instances&api_key={api_key}&action=sleep_all
Parameters
Parameter Type Required Description
mode String Yes Set to instances
api_key String Yes Your API key
action String Yes Set to sleep_all
Response
{
  "status": "success",
  "message": "5 instances put to sleep successfully"
}

Error Handling

All API errors will return a JSON response with a status of "error" and a message explaining the error.

{
  "status": "error",
  "message": "Error message here"
}

Common error messages include:

  • "Invalid or expired API key"
  • "Rate limit exceeded. Please try again later."
  • "Email and password are required"
  • "Invalid email or password"
  • "Organization ID is required"
  • "You do not have permission to delete this organization"
  • "Organization limit reached for your plan"
  • "Invalid mode. Available modes: auth, profile, orgs, instances"
  • "Invalid action for [mode] mode"

Support

If you have any questions or need assistance with the SharePanel API, please contact our support team at support@sharepanel.host.