93 lines
3.2 KiB
YAML
93 lines
3.2 KiB
YAML
|
|
version: v1-draft
|
||
|
|
exports:
|
||
|
|
nd_get_sonic_similar_tracks:
|
||
|
|
input:
|
||
|
|
$ref: '#/components/schemas/GetSonicSimilarTracksRequest'
|
||
|
|
contentType: application/json
|
||
|
|
output:
|
||
|
|
$ref: '#/components/schemas/SonicSimilarityResponse'
|
||
|
|
contentType: application/json
|
||
|
|
nd_find_sonic_path:
|
||
|
|
input:
|
||
|
|
$ref: '#/components/schemas/FindSonicPathRequest'
|
||
|
|
contentType: application/json
|
||
|
|
output:
|
||
|
|
$ref: '#/components/schemas/SonicSimilarityResponse'
|
||
|
|
contentType: application/json
|
||
|
|
components:
|
||
|
|
schemas:
|
||
|
|
FindSonicPathRequest:
|
||
|
|
properties:
|
||
|
|
startSong:
|
||
|
|
$ref: '#/components/schemas/SongRef'
|
||
|
|
endSong:
|
||
|
|
$ref: '#/components/schemas/SongRef'
|
||
|
|
count:
|
||
|
|
type: integer
|
||
|
|
format: int32
|
||
|
|
required:
|
||
|
|
- startSong
|
||
|
|
- endSong
|
||
|
|
- count
|
||
|
|
GetSonicSimilarTracksRequest:
|
||
|
|
properties:
|
||
|
|
song:
|
||
|
|
$ref: '#/components/schemas/SongRef'
|
||
|
|
count:
|
||
|
|
type: integer
|
||
|
|
format: int32
|
||
|
|
required:
|
||
|
|
- song
|
||
|
|
- count
|
||
|
|
SongRef:
|
||
|
|
description: SongRef is a reference to a song with metadata for matching.
|
||
|
|
properties:
|
||
|
|
id:
|
||
|
|
type: string
|
||
|
|
description: ID is the internal Navidrome mediafile ID (if known).
|
||
|
|
name:
|
||
|
|
type: string
|
||
|
|
description: Name is the song name.
|
||
|
|
mbid:
|
||
|
|
type: string
|
||
|
|
description: MBID is the MusicBrainz ID for the song.
|
||
|
|
isrc:
|
||
|
|
type: string
|
||
|
|
description: ISRC is the International Standard Recording Code for the song.
|
||
|
|
artist:
|
||
|
|
type: string
|
||
|
|
description: Artist is the artist name.
|
||
|
|
artistMbid:
|
||
|
|
type: string
|
||
|
|
description: ArtistMBID is the MusicBrainz artist ID.
|
||
|
|
album:
|
||
|
|
type: string
|
||
|
|
description: Album is the album name.
|
||
|
|
albumMbid:
|
||
|
|
type: string
|
||
|
|
description: AlbumMBID is the MusicBrainz release ID.
|
||
|
|
duration:
|
||
|
|
type: number
|
||
|
|
format: float
|
||
|
|
description: Duration is the song duration in seconds.
|
||
|
|
required:
|
||
|
|
- name
|
||
|
|
SonicMatch:
|
||
|
|
properties:
|
||
|
|
song:
|
||
|
|
$ref: '#/components/schemas/SongRef'
|
||
|
|
similarity:
|
||
|
|
type: number
|
||
|
|
format: float
|
||
|
|
required:
|
||
|
|
- song
|
||
|
|
- similarity
|
||
|
|
SonicSimilarityResponse:
|
||
|
|
properties:
|
||
|
|
matches:
|
||
|
|
type: array
|
||
|
|
items:
|
||
|
|
$ref: '#/components/schemas/SonicMatch'
|
||
|
|
required:
|
||
|
|
- matches
|