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-countMethod:
POSTQuery Parameters:
apiKey(String, Required): Your service's API Key.
Example Request:
POST https://pandadevelopment.net/api/push-execution-count?apiKey=YOUR_API_KEYSuccessful 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-countMethod:
GETQuery Parameters:
apiKey(String, Required): Your service's API Key.
Example Request:
GET https://pandadevelopment.net/api/execution-count?apiKey=YOUR_API_KEYSuccessful 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/getPOST /api/generate-key/post
Parameters (Common to both GET and POST):
apiKey(String, Required): Your service's API Key.expire(String, Required): Expiration date inYYYY-MM-DDformat.note(String, Optional): A note to associate with the generated keys.count(Number, Required): The number of keys to generate.isPremium(Boolean, Required):trueorfalseto mark keys as premium.expiresByDaysKey(Boolean, Optional): Set totrueto enable expiration based on a number of days from generation/activation rather than a fixed date.daysKey(Number, Optional): IfexpiresByDaysKeyistrue, this is the number of days for the key to expire. Must be between 1 and 999999.
Example
GETRequest:GET https://pandadevelopment.net/api/generate-key/get?apiKey=YOUR_API_KEY&expire=2024-12-31¬e=TestKey&count=5&isPremium=true&expiresByDaysKey=true&daysKey=30Example
POSTRequest: URL:POST https://pandadevelopment.net/api/generate-key/postHeaders:Content-Type: application/jsonBody:{ "apiKey": "YOUR_API_KEY", "expire": "2024-12-31", "note": "TestKey", "count": 5, "isPremium": true, "expiresByDaysKey": true, "daysKey": 30 }Successful Response (HTTP
200 OKor201 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/deleteMethod:
POSTRequest Body:
application/jsonJSON 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/deleteHeaders:Content-Type: application/jsonBody:{ "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-checkMethod:
GETQuery 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_identifierSuccessful 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-expirationMethod:
POSTQuery 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-expirationHeaders:Content-Type: application/jsonBody:{ "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/fetchMethod:
GETQuery 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_TERMSuccessful 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-hwidMethod:
POSTRequest Body:
application/jsonJSON 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-hwidHeaders:Content-Type: application/jsonBody:{ "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/deleteMethod:
POSTRequest Body:
application/jsonJSON 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/deleteHeaders:Content-Type: application/jsonBody:{ "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/fetchMethod:
GETQuery 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_KEYSuccessful 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_KEYand 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
POSTrequests expecting a JSON body, ensure theContent-Type: application/jsonheader is set.Parameter types (e.g., Boolean
isPremiumin/generate-key/postexample body) should be strictly adhered to as specified by the API or confirmed through testing. Usually, booleans in JSON aretrueorfalse(without quotes).
Last updated