-
Notifications
You must be signed in to change notification settings - Fork 0
/
plugin.json
72 lines (72 loc) · 4.76 KB
/
plugin.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
{
"id": "recommend_spotify_playlist",
"code": "",
"uuid": "8fa0f5bd-13de-4a18-af6e-6ee6ca929e2e",
"emoji": "🧩",
"title": "Spotify Song Suggestions",
"iconURL": "https://cdn-icons-png.flaticon.com/512/3669/3669986.png",
"disabled": false,
"githubURL": "https://github.com/TypingMind/plugin-read-google-calendar",
"httpAction": {
"id": "132b743d-97b4-4c96-bb93-2302e364d71b",
"url": "https://api.spotify.com/v1/recommendations?limit={number_of_songs}&seed_genres={genres}&target_valence={target_valence}&target_energy={target_energy}",
"name": "",
"method": "GET",
"hasBody": false,
"hasHeaders": true,
"requestBody": "{\n \"info\": {info}\n}",
"requestHeaders": "{\n \"Authorization\": \"Bearer {OAUTH_PLUGIN_ACCESS_TOKEN}\"\n}",
"resultTransform": {
"engine": "jmes",
"expression": ""
},
"hasResultTransform": false
},
"openaiSpec": {
"name": "recommend_spotify_playlist",
"parameters": {
"type": "object",
"required": [
"genres"
],
"properties": {
"genres": {
"type": "array",
"items": {
"type": "string"
},
"default": [],
"description": "A list of genres to include in the playlist, such as ['chill', 'acoustic', 'jazz']. This helps refine the type of music included. Default is an empty array, implying no specific genre preference."
},
"target_energy": {
"type": "number",
"default": 0.5,
"description": "A value between 0.0 and 1.0 indicating the desired energy level of the tracks. Optional. Default is 0.5, representing a neutral energy level."
},
"target_valence": {
"type": "number",
"default": 0.5,
"description": "A value between 0.0 and 1.0 indicating the desired valence (positivity) of the tracks. Optional. Default is 0.5, representing a neutral positive level."
},
"number_of_songs": {
"type": "integer",
"default": 20,
"description": "The specific number of songs to include in the playlist. This is optional and overrides duration-based calculations if provided. Default is calculated from the duration assuming an average song length of 3 minutes."
}
}
},
"description": "Return a Spotify playlist recommendation based on the specified energy and valence levels, preferred genres, and the desired duration or number of songs."
},
"outputType": "respond_to_ai",
"oauthConfig": {
"scopes": "",
"tokenURL": "https://accounts.spotify.com/api/token",
"contentType": "urlencoded",
"authorizationURL": "https://accounts.spotify.com/authorize"
},
"userSettings": null,
"overviewMarkdown": "# Spotify Song Suggestions\n\nThis plugin suggests a Spotify playlist based on user descriptions using the **Spotify Web API**.\n\n## Playlist Personalization \n- Use Spotify’s **recommendation endpoint** to generate tailored playlists.\n- Example: Create playlists based on **mood, genre, or number of songs**.\n\n👉 **Get started with the Spotify Web API:** \n[Spotify API Documentation](https://developer.spotify.com/documentation/web-api)\n\n🔑 **Set up Your Spotify App and Authenticate with OAuth 2.0:** \n[Create a Spotify App](https://developer.spotify.com/dashboard/applications) \n- **Spotify's API requires OAuth 2.0 for access.** Learn more: [Spotify OAuth Guide](https://developer.spotify.com/documentation/general/guides/authorization) \n- **Update your app credentials in the plugin's user settings:** \n - **Client ID:** `XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX` \n - **Client Secret:** Save this securely, as it will only be shown once.\n\n## ❗ Important Notes\n\n### Rate Limits \nIn **Development Mode**, your app can onboard up to 25 users and access all OAuth scopes. To unlock higher rate limits, apply for **Extended Quota Mode**, where Spotify will review your app for compliance. Learn more: [Spotify Rate Limits](https://developer.spotify.com/documentation/web-api/concepts/rate-limits)\n\n## Example Usage \nAs a coffee shop manager, I’d like to ask AI to suggest a song list for today: \n> Create a Spotify playlist with about 20 songs for my coffee shop. Today is a great day, so I’d like the playlist to help everyone stay calm and focused on work.",
"authenticationType": "AUTH_TYPE_OAUTH",
"implementationType": "http",
"hideUsageInUserConversation": false
}