Panda Auth API Documentation


🐼 Panda Auth API Documentation

Base URL: https://pandadevelopment.net

Authentication: All API requests require an apiKey parameter, which is your unique service API Key. This key authenticates your requests to the Panda Auth system.


Execution Count

Endpoints for tracking application usage.

1. Push Execution Count

Increments the execution count for your service. This should be called each time your application is used or a significant event occurs.

  • Endpoint: POST /api/push-execution-count

  • Method: POST

  • Query Parameters:

    • apiKey (String, Required): Your service's API Key.

  • Example Request: POST https://pandadevelopment.net/api/push-execution-count?apiKey=YOUR_API_KEY

  • Successful Response (HTTP 200 OK):

    {
      "success": true,
      "message": "Execution count incremented successfully"
    }

2. Fetch Execution Count

Retrieves the current total execution count for your service.

  • Endpoint: GET /api/execution-count

  • Method: GET

  • Query Parameters:

    • apiKey (String, Required): Your service's API Key.

  • Example Request: GET https://pandadevelopment.net/api/execution-count?apiKey=YOUR_API_KEY

  • Successful Response (HTTP 200 OK):

    {
      "executionCount": 1234
    }
    • executionCount (Number): The current total execution count.


Key Management

Endpoints for generating, deleting, and managing license keys.

3. Generate Key

Generates one or more license keys for your service with specified properties. Available via both GET and POST methods.

  • Endpoints:

    • GET /api/generate-key/get

    • POST /api/generate-key/post

  • Parameters (Common to both GET and POST):

    • apiKey (String, Required): Your service's API Key.

    • expire (String, Required): Expiration date in YYYY-MM-DD format.

    • note (String, Optional): A note to associate with the generated keys.

    • count (Number, Required): The number of keys to generate.

    • isPremium (Boolean, Required): true or false to mark keys as premium.

    • expiresByDaysKey (Boolean, Optional): Set to true to enable expiration based on a number of days from generation/activation rather than a fixed date.

    • daysKey (Number, Optional): If expiresByDaysKey is true, this is the number of days for the key to expire. Must be between 1 and 999999.

  • Example GET Request: GET https://pandadevelopment.net/api/generate-key/get?apiKey=YOUR_API_KEY&expire=2024-12-31&note=TestKey&count=5&isPremium=true&expiresByDaysKey=true&daysKey=30

  • Example POST Request: URL: POST https://pandadevelopment.net/api/generate-key/post Headers: Content-Type: application/json Body:

    {
      "apiKey": "YOUR_API_KEY",
      "expire": "2024-12-31",
      "note": "TestKey",
      "count": 5,
      "isPremium": true,
      "expiresByDaysKey": true,
      "daysKey": 30
    }
  • Successful Response (HTTP 200 OK or 201 Created):

    {
      "message": "Keys generated successfully ✅",
      "generatedKeys": [
        {
          "expiresAt": "2024-12-31T00:00:00.000Z",
          "note": "TestKey",
          "value": "PREFIX12345ABCDE",
          "isPremium": true,
          "expiresByDaysKey": true,
          "daysKey": 30
        }
      ]
    }

4. Delete Key

Permanently deletes a specific license key from the system.

  • Endpoint: POST /api/key/delete

  • Method: POST

  • Request Body: application/json

  • JSON Body Parameters:

    • apiKey (String, Required): Your service's API Key.

    • keyValue (String, Required): The exact value of the license key to delete.

  • Example Request: URL: POST https://pandadevelopment.net/api/key/delete Headers: Content-Type: application/json Body:

    {
      "apiKey": "YOUR_API_KEY",
      "keyValue": "KEY_TO_DELETE"
    }
  • Successful Response (HTTP 200 OK):

    {
      "message": "Key deleted successfully ✅"
    }

5. Check Identifier

Verifies if a given identifier already exists within the Panda Auth system.

  • Endpoint: GET /api/identifier-check

  • Method: GET

  • Query Parameters:

    • apiKey (String, Required): Your service's API Key.

    • identifier (String, Required): The identifier string you want to check.

  • Example Request: GET https://pandadevelopment.net/api/identifier-check?apiKey=YOUR_API_KEY&identifier=example_identifier

  • Successful Response (HTTP 200 OK):

    {
      "exists": true, // or false
      "message": "Identifier exists in the system." // or "Identifier does not exist."
    }

6. Expand Key Expiration

Extends the expiration date of an existing license key by a specified number of days.

  • Endpoint: POST /api/key/expand-expiration

  • Method: POST

  • Query Parameters (if used, or use JSON body):

    • apiKey (String, Required): Your service's API Key.

    • keyValue (String, Required): The license key value to extend.

    • days (Number, Required): Number of days to add to the expiration (1-999999).

  • Example Request (using query parameters): POST https://pandadevelopment.net/api/key/expand-expiration?apiKey=YOUR_API_KEY&keyValue=KEY_TO_EXTEND&days=30 (Alternatively, if a JSON body is supported/preferred for POST: URL: POST https://pandadevelopment.net/api/key/expand-expiration Headers: Content-Type: application/json Body:

    {
      "apiKey": "YOUR_API_KEY",
      "keyValue": "KEY_TO_EXTEND",
      "days": 30
    }

    )

  • Successful Response (HTTP 200 OK):

    {
      "success": true,
      "message": "Key expiration extended successfully.",
      "newExpirationDate": "2024-06-17T00:00:00.000Z"
    }

7. Fetch Key

Retrieves details for an active (used/redeemed) key using its note, value, or associated HWID as a search term.

  • Endpoint: GET /api/key/fetch

  • Method: GET

  • Query Parameters:

    • apiKey (String, Required): Your service's API Key.

    • fetch (String, Required): The search term (can be a key's note, its value, or an HWID associated with a key).

  • Example Request: GET https://pandadevelopment.net/api/key/fetch?apiKey=YOUR_API_KEY&fetch=SEARCH_TERM

  • Successful Response (HTTP 200 OK):

    {
      "key": {
        "id": "KEY_ID",
        "value": "KEY_VALUE",
        "note": "KEY_NOTE",
        "hwid": "KEY_HWID",
        "expiresAt": "2024-12-31T00:00:00.000Z",
        "isPremium": true
      }
    }

8. Reset HWID

Resets (clears) the Hardware ID associated with a specific active license key.

  • Endpoint: POST /api/reset-hwid

  • Method: POST

  • Request Body: application/json

  • JSON Body Parameters:

    • apiKey (String, Required): Your service's API Key.

    • keyValue (String, Required): The value of the license key whose HWID needs to be reset.

  • Example Request: URL: POST https://pandadevelopment.net/api/reset-hwid Headers: Content-Type: application/json Body:

    {
      "apiKey": "YOUR_API_KEY",
      "keyValue": "KEY_TO_RESET_HWID_FOR"
    }
  • Successful Response (HTTP 200 OK):

    {
      "message": "HWID reset successfully ✅"
    }

Keyless Management

Endpoints for managing hardware-based authentication.

9. Delete Keyless Entry

Removes a specific Hardware ID from the keyless authorization list. (Note: The "Add Keyless Entry" endpoint was on the previous image but not this one. Assuming it exists, it would be similar to other POSTs with a JSON body.)

  • Endpoint: POST /api/keyless/delete

  • Method: POST

  • Request Body: application/json

  • JSON Body Parameters:

    • apiKey (String, Required): Your service's API Key.

    • hwid (String, Required): The Hardware ID of the keyless entry to delete.

  • Example Request: URL: POST https://pandadevelopment.net/api/keyless/delete Headers: Content-Type: application/json Body:

    {
      "apiKey": "YOUR_API_KEY",
      "hwid": "HWID_TO_DELETE"
    }
  • Successful Response (HTTP 200 OK):

    {
      "message": "Keyless entry deleted successfully ✅"
    }

Generated Key Management (Unused Keys)

Endpoints for managing keys that have been generated but not yet activated/used.

10. Fetch Generated Key

Retrieves details for a generated (but not yet active/used) key using its note or value as a search term.

  • Endpoint: GET /api/generated-key/fetch

  • Method: GET

  • Query Parameters:

    • apiKey (String, Required): Your service's API Key.

    • fetch (String, Required): The search term (can be a generated key's note or its value).

  • Example Request: GET https://pandadevelopment.net/api/generated-key/fetch?apiKey=YOUR_API_KEY&fetch=SEARCH_TERM_FOR_GENERATED_KEY

  • Successful Response (HTTP 200 OK):

    {
      "generatedKey": {
        "id": "GENERATED_KEY_ID",
        "value": "GENERATED_KEY_VALUE",
        "note": "GENERATED_KEY_NOTE",
        "expiresAt": "2024-12-31T00:00:00.000Z",
        "isPremium": true
      }
    }

General Notes:

  • Replace YOUR_API_KEY and other placeholder values with your actual data.

  • Error responses would typically follow standard HTTP practices (e.g., 400 Bad Request, 401 Unauthorized, etc.), likely with a JSON body detailing the error.

  • For POST requests expecting a JSON body, ensure the Content-Type: application/json header is set.

  • Parameter types (e.g., Boolean isPremium in /generate-key/post example body) should be strictly adhered to as specified by the API or confirmed through testing. Usually, booleans in JSON are true or false (without quotes).

Last updated