forked from
rocksky.app/rocksky
A decentralized music tracking and discovery platform built on AT Protocol 馃幍
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}