Introduction & Base URL
Welcome to the Ghosted Development API documentation. Our public utility APIs are designed to be fast, simple, and reliable for common development needs. All services are currently **public** and **do not require an API key**.
Base URL:
https://api.ghosted-development.space
Utility Endpoints
These are the core utility endpoints available to all developers. Click on any endpoint to view the details.
Calculates the time difference from a Unix timestamp to the current time.
Parameters
?timestamp={Unix Timestamp in seconds}
Example Request
GET /time-diff?timestamp=1700000000
Example Response
{
"timestamp": 1700000000,
"days": 2,
"hours": 0,
"minutes": 18,
"seconds": 0,
"success": true
}
Returns a Magic 8-Ball style answer based on a given question.
Parameters
?question={Text of the question, URL encoded}
Example Request
GET /8ball?question=Will%20I%20win?
Example Response
{
"question": "Will I win?",
"answer": "Outlook good.",
"type": "positive",
"success": true
}
Automatically encodes or decodes a given text string into or from Morse code.
Parameters
?text={Text or Morse code to process, URL encoded}
Example Request (Encode)
GET /morse-code?text=Hello
Example Response (Encode)
{
"input": "Hello",
"output": ".... . .-.. .-.. ---",
"operation": "encode",
"success": true
}
Converts temperatures between Celsius (C) and Fahrenheit (F).
Parameters
?value={Numeric temperature value}
?unit={F or C, the unit of the input value}
Example Request (Fahrenheit to Celsius)
GET /temperature-convert?value=32&unit=F
Example Response
{
"value": 0,
"unit": "C",
"unit_type": "Celsius",
"success": true
}
Formats large numbers using a custom separator for thousands.
Parameters
?number={Large integer}
?separator={Character to use as separator, e.g., ., or ,}
Example Request
GET /number-formatter?number=4532134521342&separator=.
Example Response
{
"formatted": "4.532.134.521.342",
"original": 4532134521342,
"separator": ".",
"success": true
}
⏱️ Rate Limits
As this is a public API, requests are limited based on your **IP address** to ensure service stability and fair usage for all developers.
Current Limits
- **Limit:** 100 requests per minute (RPM) per IP address.
- **Burst:** A burst limit of 10 requests is allowed within the first second.
Rate Limit Response (429)
If you exceed the limit, you will receive an HTTP **429 Too Many Requests** status code, with an error message detailing when you can retry.
Example Error Response (429)
{
"success": false,
"error": "Rate limit exceeded. Try again in 5 seconds."
}
❌ Error Response Format
All non-200 responses will return a consistent JSON structure to help you debug quickly.
Standard Error Structure
{
"success": false,
"error": "Descriptive message detailing the issue (e.g., Missing parameter, Invalid value)."
}
Common Status Codes
- **400 Bad Request:** Missing or invalid required query parameters (e.g., missing `timestamp`).
- **429 Too Many Requests:** Rate limit exceeded (see Rate Limits section).
- **500 Internal Server Error:** A problem occurred on the server (rare).