A decentralized music tracking and discovery platform built on AT Protocol 馃幍
at feat/feed-generator 125 lines 4.1 kB view raw
1{ 2 "lexicon": 1, 3 "id": "app.rocksky.scrobble.createScrobble", 4 "defs": { 5 "main": { 6 "type": "procedure", 7 "description": "Create a new scrobble", 8 "input": { 9 "encoding": "application/json", 10 "schema": { 11 "type": "object", 12 "required": [ 13 "title", 14 "artist" 15 ], 16 "properties": { 17 "title": { 18 "type": "string", 19 "description": "The title of the track being scrobbled" 20 }, 21 "artist": { 22 "type": "string", 23 "description": "The artist of the track being scrobbled" 24 }, 25 "album": { 26 "type": "string", 27 "description": "The album of the track being scrobbled" 28 }, 29 "duration": { 30 "type": "integer", 31 "description": "The duration of the track in seconds" 32 }, 33 "mbId": { 34 "type": "string", 35 "description": "The MusicBrainz ID of the track, if available" 36 }, 37 "albumArt": { 38 "type": "string", 39 "description": "The URL of the album art for the track", 40 "format": "uri" 41 }, 42 "trackNumber": { 43 "type": "integer", 44 "description": "The track number of the track in the album" 45 }, 46 "releaseDate": { 47 "type": "string", 48 "description": "The release date of the track, formatted as YYYY-MM-DD" 49 }, 50 "year": { 51 "type": "integer", 52 "description": "The year the track was released" 53 }, 54 "discNumber": { 55 "type": "integer", 56 "description": "The disc number of the track in the album, if applicable" 57 }, 58 "lyrics": { 59 "type": "string", 60 "description": "The lyrics of the track, if available" 61 }, 62 "composer": { 63 "type": "string", 64 "description": "The composer of the track, if available" 65 }, 66 "copyrightMessage": { 67 "type": "string", 68 "description": "The copyright message for the track, if available" 69 }, 70 "label": { 71 "type": "string", 72 "description": "The record label of the track, if available" 73 }, 74 "artistPicture": { 75 "type": "string", 76 "description": "The URL of the artist's picture, if available", 77 "format": "uri" 78 }, 79 "spotifyLink": { 80 "type": "string", 81 "description": "The Spotify link for the track, if available", 82 "format": "uri" 83 }, 84 "lastfmLink": { 85 "type": "string", 86 "description": "The Last.fm link for the track, if available", 87 "format": "uri" 88 }, 89 "tidalLink": { 90 "type": "string", 91 "description": "The Tidal link for the track, if available", 92 "format": "uri" 93 }, 94 "appleMusicLink": { 95 "type": "string", 96 "description": "The Apple Music link for the track, if available", 97 "format": "uri" 98 }, 99 "youtubeLink": { 100 "type": "string", 101 "description": "The Youtube link for the track, if available", 102 "format": "uri" 103 }, 104 "deezerLink": { 105 "type": "string", 106 "description": "The Deezer link for the track, if available", 107 "format": "uri" 108 }, 109 "timestamp": { 110 "type": "integer", 111 "description": "The timestamp of the scrobble in milliseconds since epoch" 112 } 113 } 114 } 115 }, 116 "output": { 117 "encoding": "application/json", 118 "schema": { 119 "type": "ref", 120 "ref": "app.rocksky.scrobble.defs#scrobbleViewBasic" 121 } 122 } 123 } 124 } 125}