Spaces:
Running
Running
openapi: 3.0.0 | |
info: | |
title: woolbot's FunAPI | |
description: Big API for bots, developers or just fun by @podvaljoey. | |
version: $VERSION_VARIABLE$ | |
servers: | |
- url: 'https://imperialwool-funapi.hf.space/' | |
description: 'You are here! ^з^' | |
paths: | |
/signatures/api/v1/get: | |
get: | |
tags: | |
- "Authentication" | |
parameters: | |
- name: 'key' | |
description: Key to generate signature. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: rickroll | |
summary: "Generating auth key with small TTL." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/AuthSuccessObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/AuthErrorObject" | |
post: | |
tags: | |
- "Authentication" | |
parameters: | |
- name: 'key' | |
description: Key to generate signature. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: rickroll | |
summary: "Generating auth key with small TTL." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/AuthSuccessObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/AuthErrorObject" | |
/osu/api/v1/find-song: | |
get: | |
tags: | |
- "osu! API" | |
parameters: | |
- name: 'query' | |
description: Query to find beatmap. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: rickroll | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Finding beatmap by query." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/FindBeatmapsObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
post: | |
tags: | |
- "osu! API" | |
parameters: | |
- name: 'query' | |
description: Query to find beatmap. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: rickroll | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Finding beatmap by query." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/FindBeatmapsObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
/osu/api/v1/get-full: | |
get: | |
tags: | |
- "osu! API" | |
parameters: | |
- name: 'query' | |
description: Query to find beatmap and download full song. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: rickroll | |
- name: 'beatmapId' | |
description: Beatset id. Not map, set. | |
in: 'query' | |
schema: | |
type: 'integer' | |
example: 1 | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Get beatmap's full song." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/SongFullObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
post: | |
tags: | |
- "osu! API" | |
parameters: | |
- name: 'query' | |
description: Query to find beatmap and download full song. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: rickroll | |
- name: 'beatmapId' | |
description: Beatset id. Not map, set. | |
in: 'query' | |
schema: | |
type: 'integer' | |
example: 1 | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Get beatmap's full song." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/SongFullObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
/osu/api/v1/get-preview: | |
get: | |
tags: | |
- "osu! API" | |
parameters: | |
- name: 'query' | |
description: Query to find beatmap and download full song. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: rickroll | |
- name: 'beatmapId' | |
description: Beatset id. Not map, set. | |
in: 'query' | |
schema: | |
type: 'integer' | |
example: 1 | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Get beatmap's song preview." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/SongPreviewObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
post: | |
tags: | |
- "osu! API" | |
parameters: | |
- name: 'query' | |
description: Query to find beatmap and download full song. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: rickroll | |
- name: 'beatmapId' | |
description: Beatset id. Not map, set. | |
in: 'query' | |
schema: | |
type: 'integer' | |
example: 1 | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Get beatmap's song preview." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/SongPreviewObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
/recognize/api/v1/voice: | |
get: | |
tags: | |
- Recognize API | |
parameters: | |
- name: 'url' | |
description: URL-link to voice message. Should be mp3, ogg or wav. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: https://cdn-102.anonfiles.com/q8v0o5O5y8/3d62dac1-1671893935/j4893hg894g4.mp3 | |
- name: 'extendInfo' | |
description: Provide additional information or not. | |
in: 'query' | |
schema: | |
type: 'string' | |
default: False | |
example: False | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "This method can help with converting voice into the text." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/RecognizeObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
post: | |
tags: | |
- Recognize API | |
parameters: | |
- name: 'url' | |
description: URL-link to voice message. Should be mp3, ogg or wav. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: https://cdn-102.anonfiles.com/q8v0o5O5y8/3d62dac1-1671893935/j4893hg894g4.mp3 | |
- name: 'file' | |
description: Upload file to recognize voice. **NOT SUPPORTED NOW** | |
in: 'query' | |
schema: | |
type: 'string' | |
- name: 'extendInfo' | |
description: Provide additional information or not. | |
in: 'query' | |
schema: | |
type: 'string' | |
default: False | |
example: False | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "This method can help with converting voice into the text." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/RecognizeObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
/system-info/api/v1/get: | |
get: | |
tags: | |
- "System information" | |
summary: "Information about server." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/SysinfoObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
post: | |
tags: | |
- "System information" | |
summary: "Information about server." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/SysinfoObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
/yt/api/v1/search: | |
get: | |
tags: | |
- "Youtube: Becoming Music Platform" | |
parameters: | |
- name: 'query' | |
description: Query for YouTube to find videos. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: never gonna give you up | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "This method can help with searching videos on YouTube." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/YTSearchObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
post: | |
tags: | |
- "Youtube: Becoming Music Platform" | |
parameters: | |
- name: 'query' | |
description: Query for YouTube to find videos. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: never gonna give you up | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "This method can help with searching videos on YouTube." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/YTSearchObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
/yt/api/v1/get-full: | |
get: | |
tags: | |
- "Youtube: Becoming Music Platform" | |
parameters: | |
- name: 'url' | |
description: Url to video from YouTube. (TikTok also works sometimes.) | |
in: 'query' | |
schema: | |
type: 'string' | |
- name: 'bitrate' | |
description: Bitrate of final audio. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: "64k" | |
- name: 'quality' | |
description: Quality of final audio. Only 'worst' or 'best'. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: "worst" | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Download video as audio and providing link for you." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/YTFullObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
post: | |
tags: | |
- "Youtube: Becoming Music Platform" | |
parameters: | |
- name: 'url' | |
description: Url to video from YouTube. (TikTok also works sometimes.) | |
in: 'query' | |
schema: | |
type: 'string' | |
- name: 'bitrate' | |
description: Bitrate of final audio. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: "64k" | |
- name: 'quality' | |
description: Quality of final audio. Only 'worst' or 'best'. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: "worst" | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Download video as audio and providing link for you." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/YTFullObject" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
/yt/api/v1/get-preview: | |
get: | |
tags: | |
- "Youtube: Becoming Music Platform" | |
parameters: | |
- name: 'url' | |
description: Url to video from YouTube. (TikTok also works sometimes.) | |
in: 'query' | |
schema: | |
type: 'string' | |
- name: 'bitrate' | |
description: Bitrate of final audio. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: "64k" | |
- name: 'quality' | |
description: Quality of final audio. Only 'worst' or 'best'. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: "worst" | |
- name: 'duration' | |
description: Duration of preview. Maximum 60 seconds. | |
in: 'query' | |
schema: | |
type: 'integer' | |
example: 30 | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Download video as cutted audio and providing link for you." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/YTPreviewResult" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
post: | |
tags: | |
- "Youtube: Becoming Music Platform" | |
parameters: | |
- name: 'url' | |
description: Url to video from YouTube. (TikTok also works sometimes.) | |
in: 'query' | |
schema: | |
type: 'string' | |
- name: 'bitrate' | |
description: Bitrate of final audio. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: "64k" | |
- name: 'quality' | |
description: Quality of final audio. Only 'worst' or 'best'. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: "worst" | |
- name: 'duration' | |
description: Duration of preview. Maximum 60 seconds. | |
in: 'query' | |
schema: | |
type: 'integer' | |
example: 30 | |
- name: 'signature' | |
description: Special access key. | |
in: 'query' | |
schema: | |
type: 'string' | |
example: 'B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B' | |
summary: "Download video as cutted audio and providing link for you." | |
responses: | |
200: | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/YTPreviewResult" | |
400: | |
description: Bad Request | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/ErrorObject" | |
components: | |
schemas: | |
SongFullObject: | |
type: object | |
properties: | |
status: | |
type: string | |
example: pass | |
details: | |
type: object | |
properties: | |
code: | |
type: integer | |
example: 200 | |
name: | |
type: string | |
example: "1592415.ogg" | |
result: | |
type: string | |
example: "https://imperialwool-funapi.hf.space/static/full/1592415.ogg" | |
SongPreviewObject: | |
type: object | |
properties: | |
status: | |
type: string | |
example: pass | |
details: | |
type: object | |
properties: | |
code: | |
type: integer | |
example: 200 | |
name: | |
type: string | |
example: "1244874.mp3" | |
result: | |
type: string | |
example: "https://b.ppy.sh/preview/1244874.mp3" | |
BeatmapObject: | |
type: object | |
properties: | |
"artist": | |
type: string | |
example: "never gonna give you up remix" | |
"beatmapId": | |
type: integer | |
example: 1542795 | |
"creator": | |
type: string | |
example: "CrisFloppa" | |
"source": | |
type: string | |
example: "" | |
"tags": | |
type: string | |
example: "never gonna gie you up rick roll" | |
"title": | |
type: string | |
example: "rick astley" | |
FindBeatmapsObject: | |
type: object | |
properties: | |
status: | |
type: string | |
example: pass | |
details: | |
type: object | |
properties: | |
"code": | |
type: integer | |
example: 200 | |
"result": | |
type: array | |
items: | |
$ref: "#/components/schemas/BeatmapObject" | |
SysinfoObject: | |
type: object | |
properties: | |
"API_VERSION": | |
type: string | |
example: "1.0 build62" | |
"CPU_INFO": | |
type: object | |
properties: | |
"cpu_brand": | |
type: string | |
example: "AMD EPYC 7R13 Processor" | |
"cpu_count": | |
type: object | |
properties: | |
"all": | |
type: integer | |
example: 16 | |
"exclude_virtual": | |
type: integer | |
example: 8 | |
"cpu_freq": | |
type: object | |
properties: | |
"current": | |
type: number | |
format: float | |
example: 3522.9323125 | |
"min": | |
type: number | |
format: float | |
example: 0.0 | |
"max": | |
type: number | |
format: float | |
example: 3600.0 | |
"cpu_load": | |
type: number | |
format: float | |
example: 16.2 | |
"MEM_INFO": | |
type: object | |
properties: | |
"mem_total": | |
type: integer | |
example: 126125 | |
"mem_used": | |
type: integer | |
example: 87497 | |
AuthSuccessObject: | |
type: object | |
properties: | |
status: | |
type: string | |
example: pass | |
endtime: | |
type: integer | |
example: 1672602259 | |
result: | |
type: string | |
example: B46AAB1A3F1E33625C1B6BD9507453B928DE69BA638E7098DB533A2184ED288EFB899D563EF8AB5487DACBCAD909A801E4C81FD6D34B639F6591295CD1D10A5B | |
AuthErrorObject: | |
type: object | |
properties: | |
status: | |
type: string | |
example: error | |
details: | |
type: object | |
properties: | |
error_code: | |
type: integer | |
example: -1 | |
error_details: | |
type: string | |
example: This key already got signature | |
ErrorObject: | |
type: object | |
properties: | |
status: | |
type: string | |
example: error | |
details: | |
type: object | |
properties: | |
error_code: | |
type: integer | |
example: 103 | |
error_details: | |
type: string | |
example: No signature | |
RecognizeObject: | |
type: object | |
properties: | |
status: | |
type: string | |
example: pass | |
result: | |
type: string | |
example: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean condimentum neque quis enim bibendum, ut molestie magna gravida. Donec et felis eget lacus sodales convallis. Quisque vitae erat et leo lobortis iaculis. Maecenas a lectus vitae metus fringilla luctus. Morbi sed pellentesque elit. Phasellus bibendum et urna sed elementum. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus." | |
YTSearchObject: | |
type: object | |
properties: | |
status: | |
type: string | |
example: ok | |
query: | |
type: string | |
example: never gonna give you up | |
videoIds: | |
type: object | |
properties: | |
"0": | |
type: string | |
example: dQw4w9WgXcQ | |
"1": | |
type: string | |
example: GtL1huin9EE | |
"2": | |
type: string | |
example: uXV-IaR_vNE | |
YTFullObject: | |
type: object | |
properties: | |
status: | |
type: string | |
example: pass | |
details: | |
type: object | |
properties: | |
code: | |
type: integer | |
example: 0 | |
name: | |
type: string | |
example: "R8YprjS6ztg.ogg" | |
result: | |
type: string | |
example: "https://imperialwool-funapi.hf.space/static/full/R8YprjS6ztg.ogg" | |
YTPreviewResult: | |
type: object | |
properties: | |
status: | |
type: string | |
example: pass | |
details: | |
type: object | |
properties: | |
code: | |
type: integer | |
example: 0 | |
name: | |
type: string | |
example: "R8YprjS6ztg.ogg" | |
result: | |
type: string | |
example: "https://imperialwool-funapi.hf.space/static/previews/R8YprjS6ztg.ogg" |