Base URL: https://api.loopy5418.dev
Some of the endpoints that use external APIs or generate images require an API key.
You can get API keys from our Discord server.
Latest News
No news at the moment.
Last updated: 2025-06-26 10:31:01 UTC
Response Preview
{
"cpu_cores": 4,
"cpu_threads": 8,
"cpu_usage_percent": 1.3,
"disk_total_gb": 0,
"disk_used_gb": 0,
"disk_used_percent": 99.5,
"platform": "Linux",
"platform_release": "5.15.0-1077-aws",
"python_version": "3.13.3",
"ram_total_mb": 63276,
"ram_used_mb": 31558,
"ram_used_percent": 51.4,
"uptime_seconds": 5404805
}
Query Parameters
- seconds: Number of seconds to convert (required)
Response Preview
{
"formatted_time": "01:23:20",
"success": true
}
Response Preview
{
"day": 24,
"day_of_week": "Thursday",
"day_of_year": "114",
"epoch_time": 1745514817,
"hour": 17,
"is_leap_year": false,
"iso_format": "2025-04-24T17:13:37.204512+00:00",
"minute": 13,
"month_name": "April",
"month_number": 4,
"quarter": 2,
"second": 37,
"timezone": "UTC",
"utc_time": "2025-04-24 17:13:37",
"week_of_year": "16",
"year": 2025,
"year_short": 25,
"success": true
}
Query Parameters
- minimum: The minimum number it can pick. (required)
- maximum: The maximum number it can pick. (required)
Example URL
https://api.loopy5418.dev/random-number?minimum=1&maximum=100
Response Preview
{
"result": 19
}
Request Body
{
"data": "Hello, World!"
}
Response Preview
{
"encrypted_data": "SGVsbG8sIFdvcmxkIQ==",
"success": true
}
Request Body
{
"data": "SGVsbG8sIFdvcmxkIQ=="
}
Response Preview
{
"decrypted_data": "Hello, World!",
"success": true
}
Supported Algorithms
- md5
- sha1
- sha224
- sha256
- sha384
- sha512
- sha3_224
- sha3_256
- sha3_384
- sha3_512
- blake2b
- blake2s
Request Body
{
"data": "hello world",
"algorithm": "sha256"
}
Response Preview
{
"algorithm": "sha256",
"hash": "a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447",
"success": true
}
Response Preview
{
"uuid": "123e4567-e89b-12d3-a456-426614174000",
"success": true
}
This endpoint requires an API key.
Query Parameters
- base: The base currency code (e.g., USD)
- target: The target currency code (e.g., EUR)
- amount: The amount to convert
Request Headers
- api-key: Your API key. (required)
Example URL
https://api.loopy5418.dev/currency-converter?base=USD&target=EUR&amount=10
Response Preview
{
"base": "USD",
"target": "EUR",
"amount": 10,
"converted": 9.25,
"success": true
}
This endpoint requires an API key.
Request Body
{
"image_url": "https://example.com/image.png",
"text": "Hello World!",
"position": "center", // or "top", "bottom", or [x, y] or "(x, y)"
"color": "#FF0000",
"font_size": 32,
"font_style": "bold" // or "normal", "italic", "bold-italic"
}
Position Options
- "top": Centered at the top of the image
- "center": Centered in the middle of the image
- "bottom": Centered at the bottom of the image
- [x, y]: Custom pixel coordinates as an array (e.g., [50, 100])
- "(x, y)": Custom pixel coordinates as a string (e.g., "(50, 100)")
Font Style Options
- "normal": Regular font
- "bold": Bold font
- "italic": Italic font
- "bold-italic": Bold and italic font
Request Headers
- api-key: Your API key. (required)
Response
Returns a PNG image with the specified text drawn on it.
This endpoint requires an API key.
Query Parameters
- data: The text or URL to encode in the QR code (required)
Request Headers
- api-key: Your API key. (required)
Example URL
https://api.loopy5418.dev/qr?data=HelloWorld
Response
Returns a PNG image of the QR code.
Query Parameters
- text: The text to emojify (required)
Example URL
https://api.loopy5418.dev/emojify?text=hello123
Response Preview
{
"result": ":regional_indicator_h: :regional_indicator_e: :regional_indicator_l: :regional_indicator_l: :regional_indicator_o: :one: :two: :three:",
"success": true
}
Query Parameters
- text: The text to owoify (required)
Example URL
https://api.loopy5418.dev/owoify?text=hello+no+love
Response Preview
{
"result": "hewwo nyo wuv UwU",
"success": true
}
Query Parameters
- options: Comma-separated list of options to choose from (required)
Example URL
https://api.loopy5418.dev/choose?options=apple,banana,orange
Response Preview
{
"result": "banana",
"success": true
}
This endpoint requires an API key.
Query Parameters
- ssid: WiFi network name (required)
- password: WiFi password (optional, default: empty)
- security: Security type (WPA, WEP, nopass; optional, default: WPA)
- hidden: Whether the network is hidden (true/false; optional, default: false)
Request Headers
- api-key: Your API key. (required)
Example URL
https://api.loopy5418.dev/wifi-qr?ssid=MyWiFi&password=MyPass123&security=WPA&hidden=false
Response
Returns a PNG image of a QR code that allows devices to connect to the specified WiFi network.
You have to provide atleast "content" or minimum 1 embed. Embed must contain atleast one embed field (not field)
Request Body
{
"url": "https://discord.com/webhook_url/webhook_id",
"username": "Custom Bot",
"avatar_url": "https://example.com/avatar.png",
"content": "This is a message with an embed!",
"embeds": [
{
"title": "Embed Title",
"description": "Embed Description",
"url": "https://example.com",
"color": 16711680,
"author": {
"name": "Author Name",
"url": "https://author.link",
"icon_url": "https://example.com/author_icon.png"
},
"footer": {
"text": "Footer text here",
"icon_url": "https://example.com/footer_icon.png"
},
"fields": [
{
"name": "Field 1 Name",
"value": "Field 1 Value",
"inline": true
},
{
"name": "Field 2 Name",
"value": "Field 2 Value",
"inline": false
}
],
"image": {
"url": "https://example.com/image.png"
},
"thumbnail": {
"url": "https://example.com/image.png"
}
}
]
}
Request Headers
- api-key: Your API key. (required)
Response Preview
{
"success": true
}
Query Parameters
- text: The text to reverse (required)
Example URL
https://api.loopy5418.dev/reverse?text=hello123
Response Preview
{
"result": "321olleh",
"success": true
}
Query Parameters
- length: The length of the password (optional, defaults to 12)
Example URL
https://api.loopy5418.dev/generate-password?length=16
Response Preview
{
"password": "G8$wNf3r!xYqLp7@",
"length": 16,
"success": true
}
Query Parameters
- to: The base timezone. (e.g. UTC, required)
- from: The timezone to convert to. (e.g. Asia/Tokyo, required)
- time: The time to convert. (e.g. 16:00, required)
Example URL
https://api.loopy5418.dev/convert-timezone?from=UTC&to=Asia/Tokyo&time=14:00
Response Preview
{
"from": "UTC",
"to": "Asia/Tokyo",
"original_time": "2025-04-30 14:00 UTC",
"converted_time": "2025-04-30 23:00 JST",
"success": true
}
Query Parameters
- number: Number to get the sqrt of (required)
Example URL
https://api.loopy5418.dev/sqrt?number=25
Response Preview
{
"success": true,
"number": 25,
"sqrt": 5.0
}
Query Parameters
- number: Number to get the cuberoot of (required)
Example URL
https://api.loopy5418.dev/cbrt?number=-8
Response Preview
{
"success": true,
"number": -8,
"cbrt": -2
}
Query Parameters
- text: Text to turn into ascii art. (required)
Example URL
https://api.loopy5418.dev/ascii-art?text=Hello
Response Preview
{
"success": true,
"ascii_art": " _ _ _ _ \n| | | | ___| | | ___ \n| |_| |/ _ \\ | |/ _ \\ \n| _ | __/ | | (_) | \n|_| |_|\\___|_|_|\\___/ \n"
}
This endpoint requires an API key. 100% free.
Supported Speeds
- fast: Provides fast answers varying from 1 to 7 seconds, but not long/smart responses.
- balanced: Provides average results at the average speed.
- large: Provides thoughtful and long answers, but can take up to 20 seconds.
Query Parameters
- speed: The speed you'd like for the AI. (optional, defaults to balanced)
- prompt: The prompt you want to send the AI. (required)
- previous_response_id: The previous response ID to continue chat with. This can be used to make AIs that have memory and context. (optional)
- web_search: Set this to "true", "yes" or "1" to make it search the web. (optional, defaults to "no")
Request Headers
- api-key: Your API key. (required)
Example URL
https://api.loopy5418.dev/openai/text?prompt=Hello%20what%20can%20you%20do&speed=balanced
Response Preview
{
"model": "gpt-4.1-mini",
"prompt": "Hello what can you do",
"id": "resp_6856effcb1d481a2ae41d88dd09fc52f0fddd1ff892d10a7"
"response": "Hello! I can assist you with various tasks such as answering questions, providing information, generating text, helping with programming, and more. If there's something specific you'd like help with, just let me know!",
"success": true
}
This endpoint requires an API key. 100% free.
Supported Speeds
- fast: Provides fast answers varying from 1 to 7 seconds, but not long/smart responses.
- balanced: Provides average results at the average speed.
- large: Provides thoughtful and long answers, but can take up to 20 seconds.
Request Body Parameters
- speed: The speed you'd like for the AI. (optional, defaults to balanced)
- prompt: The prompt you want to send the AI. (required)
- previous_response_id: The previous response ID to continue chat with. This can be used to make AIs that have memory and context. (optional)
- web_search: Set this to "true", "yes" or "1" to make it search the web. (optional, defaults to "no")
Request Headers
- api-key: Your API key. (required)
Example Request Body
{
"prompt": "Hello! What can you do?",
"speed": "balanced",
"web_search": "no"
}
Response Preview
{
"model": "gpt-4.1-mini",
"prompt": "Hello! What can you do?",
"id": "resp_6856effcb1d481a2ae41d88dd09fc52f0fddd1ff892d10a7"
"response": "Hello! I can assist you with various tasks such as answering questions, providing information, generating text, helping with programming, and more. If there's something specific you'd like help with, just let me know!",
"success": true
}
This endpoint requires an API key. 100% free.
Query Parameters
- username: The username of the person you want to search (required)
Request Headers
- api-key: Your API key. (required)
Example URL
https://api.loopy5418.dev/roblox/user-search?username=roblox
Response Preview
{
"results": [
{
"displayName": "Roblox",
"hasVerifiedBadge": true,
"id": 1,
"name": "Roblox",
"previousUsernames": []
},
{
"displayName": "Roblox Roblox",
"hasVerifiedBadge": false,
"id": 8376235114,
"name": "Roblox0013410",
"previousUsernames": []
} // it will display a lot more user info, i shortened it here (max 25 results)
],
"total": 2,
"success": true
}
This endpoint requires an API key. 100% free.
Query Parameters
- username: The username of the person you want to get the info of (optional)
- user_id: The user ID of the person you want to get the info of (optional)
- You must provide either username, or user_id. But never both.
Request Headers
- api-key: Your API key. (required)
Example URL
https://api.loopy5418.dev/roblox-user-info?username=roblox
https://api.loopy5418.dev/roblox-user-info?user_id=1
Response Preview
{
"created": {
"date": "October 25, 2020",
"day": 25,
"month": "October",
"time": "18:40",
"year": 2020
},
"description": "None",
"displayName": "Roblox",
"externalAppDisplayName": null,
"hasVerifiedBadge": true,
"id": 1,
"isBanned": false,
"name": "ROBLOX",
"profile_picture_url": "https://tr.rbxcdn.com/30DAY-AvatarHeadshot-1234567890-Png/100/100/AvatarHeadshot/Png/isCircular",
"success": true
}
Query Parameters
- timestamp: The iso8601 timestamp (required)
Example URL
https://api.loopy5418.dev/parse-iso8601?timestamp=2025-05-06T10:30
Response Preview
{
"day": 6,
"leap_year": false,
"month": {
"name": "May",
"number": 5
},
"success": true,
"time": {
"hour": 10,
"minute": 30,
"second": 0
},
"timezone": "UTC",
"utc_offset": "+0000",
"weekday": "Tuesday",
"year": 2025
}
Query Parameters
- bot_token: Your bot token (required)
- channel_id: The channel ID of the message (required)
- message_id: The ID of the message (required)
- We do not store your bot token at all. After the request ends, we immediately dispose of any data from you.
Request Headers
- api-key: Your API key. (required)
Supports text files, images, videos and audio files.
Example URL
https://api.loopy5418.dev/discord/get-attachments?bot_token=BOTTOKEN&channel_id=123456789&message_id=123456789
Response Preview
{
"attachments": [
{
"content": "Hello! This is the first attachment of a discord message.",
"fileType": "application/json",
"filename": "testingfile.json",
"url": "https://cdn.discordapp.com/attachments/123456789/123456789/testingfile.json"
},
{
"content": "Hello! This is the second attachment of a discord message.",
"fileType": "application/json",
"filename": "testingfile2.json",
"url": "https://cdn.discordapp.com/attachments/123456789/123456789/testingfile2.json"
}
],
"success": true
}
Query Parameters
- iso: An ISO8601-formatted date string (required)
- tz: A timezone name (e.g., UTC, America/New_York) (optional, defaults to UTC)
- format: Discord format You can see what they look like below. (F, R, T, etc.) (optional, defaults to F)
Example URL
https://api.loopy5418.dev/discord/timestamp/iso?iso=2025-12-25T15:00:00Z&tz=America/New_York&format=R
Response Preview
{
"timestamp": 1766667600,
"discord_format": "",
"timezone": "America/New_York",
"success": true
}
Special thanks to 161.bmw for recommending this endpoint!
Query Parameters
- year, month, day: Date parts (required)
- hour, minute, second: Time parts (optional, default 0)
- tz: A timezone name (e.g., UTC, Europe/London) (optional, defaults to UTC)
- format: Discord format. You can see what they look like below. (F, R, T, etc.) (optional, defaults to F)
Example URL
https://api.loopy5418.dev/discord/timestamp/normal?year=2025&month=12&day=25&hour=15&tz=Asia/Tokyo&format=f
Response Preview
{
"timestamp": 1766722800,
"discord_format": "",
"timezone": "Asia/Tokyo",
"success": true
}
Special thanks to 161.bmw for recommending this endpoint!
Discord allows different formats using a timestamp like <t:TIMESTAMP:FORMAT>
. Below are the available format codes with examples:
Format | Description | Example |
---|---|---|
t |
Short time | <t:1760000000:t> → 4:26 PM |
T |
Long time | <t:1760000000:T> → 4:26:40 PM |
d |
Short date | <t:1760000000:d> → 11/8/2025 |
D |
Long date | <t:1760000000:D> → November 8, 2025 |
f |
Short datetime | <t:1760000000:f> → November 8, 2025 4:26 PM |
F |
Long datetime | <t:1760000000:F> → Saturday, November 8, 2025 4:26 PM |
R |
Relative time | <t:1760000000:R> → in 6 months |
Example URL
https://api.loopy5418.dev/my-ip
Response Preview
{
"accept_language": "en-US,en;q=0.9",
"device_info": {
"browser": {
"name": "HTTPBot",
"version": "2025.3.1"
},
"device_brand": "Spider",
"device_model": "Desktop",
"is_bot": true,
"is_mobile": false,
"is_pc": false,
"is_tablet": false,
"os": {
"name": "LoopyOS",
"version": "1.2.3"
}
},
"forwarded_headers": {
"Forwarded": null,
"X-Forwarded-For": "123.321.213.312, 123.321.213.312",
"X-Real-IP": null
},
"ip": "123.321.213.312, 123.321.213.312",
"screen": {
"height": 720,
"width": 1080
},
"success": true,
"user_agent": "HTTPBot/2025.3.1"
}
Query Parameters
- query: The keyword to search for. (required)
Request Headers
- api-key: Your API key. (required)
Example URL
https://api.loopy5418.dev/yt-search?query=eurovision
Response Preview
{
"1": {
"channel": "Eurovision Song Contest",
"link": "https://www.youtube.com/watch?v=gT2wY0DjYGo",
"thumbnail": "https://i.ytimg.com/vi/gT2wY0DjYGo/hq720.jpg?sqp=-oaymwEcCNAFEJQDSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLC3OivzEU7ECV-zOZRibXCMxe3RAA",
"title": "Joost Klein - Europapa | Netherlands 🇳🇱 | Official Music Video | Eurovision 2024",
"videoId": "gT2wY0DjYGo",
"views": "57,580,668 views"
},
"2": {
"channel": "Eurovision Song Contest",
"link": "https://www.youtube.com/watch?v=IiHFnmI8pxg",
"thumbnail": "https://i.ytimg.com/vi/IiHFnmI8pxg/hq720.jpg?sqp=-oaymwEcCNAFEJQDSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLCNGR68n8pWayakuKL658M9UbJ8YQ",
"title": "Joost Klein - Europapa (LIVE) | Netherlands 🇳🇱 | Second Semi-Final | Eurovision 2024",
"videoId": "IiHFnmI8pxg",
"views": "43,580,535 views"
},
"3": {
"channel": "LatinHype",
"link": "https://www.youtube.com/watch?v=gInOau6EFdI",
"thumbnail": "https://i.ytimg.com/vi/gInOau6EFdI/hq720.jpg?sqp=-oaymwEcCNAFEJQDSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLCt782phjU9v4hx7zmeUqSdyUHuug",
"title": "Joost - Europapa",
"videoId": "gInOau6EFdI",
"views": "1,968,130 views"
},
"4": {
"channel": "MusiCat",
"link": "https://www.youtube.com/watch?v=IpzsZuazTpU",
"thumbnail": "https://i.ytimg.com/vi/IpzsZuazTpU/hq720.jpg?sqp=-oaymwEcCNAFEJQDSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLA4yvSqAvyWoje3i6zPaPFWAmuSEQ",
"title": "Joost Klein - Europapa (Lyrics)",
"videoId": "IpzsZuazTpU",
"views": "7,362,740 views"
},
"5": {
"channel": "STAROLOGY",
"link": "https://www.youtube.com/watch?v=MY1lwOAT--M",
"thumbnail": "https://i.ytimg.com/vi/MY1lwOAT--M/hq720_2.jpg?sqp=-oaymwE2CNAFEJQDSFXyq4qpAygIARUAAIhCGABwAcABBvABAfgBtgiAAoAPigIMCAAQARgTIDEofzAP&rs=AOn4CLAd26E4310jCUhZ_5wam_ywzntAGQ",
"title": "Joost Klein SPEAKS UP about Eurovision!",
"videoId": "MY1lwOAT--M",
"views": "1,270,649 views"
}
}
Request Headers
- api-key: Your API key. (required)
Response Preview
{
"online_bots": "1050",
"normal_nodes": {
"node_0": {
"bot_count": "26",
"ping": "1 ms",
"status": "Online"
},
"node_1": {
"bot_count": "25",
"ping": "1 ms",
"status": "Online"
},
"node_2": {
"bot_count": "19",
"ping": "1 ms",
"status": "Online"
},
"node_3": {
"bot_count": "21",
"ping": "1 ms",
"status": "Online"
},
"node_4": {
"bot_count": "27",
"ping": "1 ms",
"status": "Online"
},
"........"
},
},
"high_performance_nodes": {
"node_0": {
"bot_count": "4",
"ping": "1 ms",
"status": "Online"
},
"node_1": {
"bot_count": "1",
"ping": "1 ms",
"status": "Online"
}
}
}
This endpoint uses Flux to generate images instead of OpenAI's image models. This is completely temporary, and this endpoint will use OpenAI's models in the future at an undisclosed time.
Query Parameters
- prompt: The description of the image you want to generate. (required)
Request Headers
- api-key: Your API key. (required)
Example URL
https://api.loopy5418.dev/openai/image?prompt=A%20nice%20purple%sunset
Response
Returns the image buffer that the AI generated.
Query Parameters
- key: The API key you'd like to check. (required)
Example URL
https://api.loopy5418.dev/check-api-key?key=keyhere
Response Preview
{
"exists": true (or false)
"success": true
}
Request Body
{
"data": "Hello"
}
Response Preview
{
"hash": "$2a$12$LwSq21FSztc33HHm8nTB3.D7s2ZDmcFk0t2/PqGYJPj07Udv9LMwy",
"success": true
}
Request Headers
- api-key: Your API key. (required)
Request Body
{
"message": "I hate the country X because they are very lazy and they shouldn't live in this country."
}
Response Preview
{
"additional_info": "The user's message contains derogatory statements about a nationality.",
"flagged": true,
"message": [
"they are very lazy and shouldn't live in our country"
],
"reason": "Racial Discrimination",
"status": true
}
Request Headers
- api-key: Your API key. (required)
Request Body
{
"file_url": "https://www.example.com/path/file.txt"
}
Response Preview
{
"file_name": "file.txt",
"analysis": "The file is an image with a resolution of 1920x1080 pixels. It contains a scenic landscape with mountains and a lake. It is in PNG format and has a file size of 2.5 MB. The image is suitable for high-quality printing and web display. The colors are vibrant and the details are sharp.",
"success": true
}