For using my NoCopyrightSounds-API library on the web and in other programming languages
npm install ncs-api-servernpm i -g ncs-api-server (may require root/sudo on linux)
ncs_api_server
GET
ts
interface SongsReqest {
page?: number // starts at 1
all?: boolean // send all songs from cache
}
`
Response:
`ts
interface SongsResponse {
lastRefresh: number // time since last cache refresh in seconds
songs: Song {
name: string
url: string
date: JJJJ-MM-DD
genre: string
artists: {
name: string
url: string
}[]
imageUrl: string
songUrl: string
tags: {
name: string
color: { r: number, g: number, b: number }
mood: number | null
}[]
}[] // array of songs
}
`
$3
Method: GET
Parameters:
`ts
interface SearchReqest {
page: number // starts at 1
genre?: number
mood?: number
search?: string
}
`
Response:
`ts
interface SongsResponse {
lastRefresh: number // time since last cache refresh in seconds
songs: Song {
name: string
url: string
date: JJJJ-MM-DD
genre: string
artists: {
name: string
url: string
}[]
imageUrl: string
songUrl: string
tags: {
name: string
color: { r: number, g: number, b: number }
mood: number | null
}[]
}[] // array of songs
}
`
$3
Method: GET
Request:
`ts
interface ArtistReq {
url: string // escaped url with encodeURIComponent in js | like: encodeURIComponent("/artist/749/felix-samuel")
}
`
Response:
`ts
interface Artist_Info {
name: string
url: string
genres: string[]
featured: Song {
name: string
url: string
date: JJJJ-MM-DD
genre: string
artists: {
name: string
url: string
}[]
imageUrl: string
songUrl: string
tags: {
name: string
color: { r: number, g: number, b: number }
mood: number | null
}[]
}[]
songs: Song {
name: string
url: string
date: JJJJ-MM-DD
genre: string
artists: {
name: string
url: string
}[]
imageUrl: string
songUrl: string
tags: {
name: string
color: { r: number, g: number, b: number }
mood: number | null
}[]
}[]
}
``