1#%RAML 0.8 2title: Spotify Web API 3version: v1 4baseUri: https://api.spotify.com/{version} 5mediaType: application/json 6documentation: 7 - title: Spotify Web API Docs 8 content: | 9 Welcome to the _Spotify Web API_ specification. For more information about 10 how to use the API, check out the [Spotify's developer site](https://developer.spotify.com/web-api/). 11resourceTypes: 12 - base: 13 get?: &common 14 headers: 15 Accept: 16 description: It is used to set specified media type. 17 type: string 18 EmptyAccept: 19 EmptyAcceptParams: 20 description: 21 responses: 22 429: 23 description: | 24 API rate limit exceeded. See http://developer.spotify.com/web-api/user-guide/#rate-limiting for details. 25 430: 26 post?: *common 27 put?: *common 28 delete?: *common 29 - item: 30 type: base 31 get?: 32securitySchemes: 33 - oauth_2_0: 34 description: | 35 Spotify supports OAuth 2.0 for authenticating all API requests. 36 type: OAuth 2.0 37 describedBy: 38 headers: 39 Authorization: 40 description: | 41 Used to send a valid OAuth 2 access token. 42 type: string 43 responses: 44 401: 45 description: | 46 Bad or expired token. This can happen if the user revoked a token or 47 the access token has expired. You should re-authenticate the user. 48 403: 49 description: | 50 Bad OAuth request (access token without necessary scope). 51 settings: 52 authorizationUri: https://accounts.spotify.com/authorize 53 accessTokenUri: https://accounts.spotify.com/api/token 54 authorizationGrants: [ code, token ] 55 scopes: 56 - "user-library-read" 57 - "user-library-modify" 58 - "user-read-private" 59 - "user-read-birthdate" 60 - "user-read-email" 61 - "user-follow-read" 62 - "user-follow-modify" 63 - "playlist-read-collaborative" 64 - "playlist-read-private" 65 - "playlist-modify-public" 66 - "playlist-modify-private" 67traits: 68 - emptyTrait: 69 - filterable: 70 queryParameters: 71 fields: 72 description: A comma-separated list of fields to filter query 73 type: string 74 example: items(added_by.id,track(name,href,album(name,href))) 75 displayName: Fields 76 - paged: 77 queryParameters: 78 limit: 79 displayName: Limit 80 description: The maximum number of items to return 81 type: integer 82 example: 10 83 minimum: 0 84 default: 20 85 maximum: 50 86 required: false 87 offset: 88 displayName: Offset 89 description: The index of the first item to return 90 type: integer 91 example: 5 92 default: 0 93 required: false 94/me: 95 displayName: current-user 96 securedBy: [ oauth_2_0: {scopes: ["user-read-private", "user-read-birthdate", "user-read-email"]} ] 97 /tracks: 98 displayName: current-user-saved-tracks 99 type: collection 100 put: 101 description: | 102 [Save Tracks for Current User](https://developer.spotify.com/web-api/save-tracks-user/) 103 securedBy: [ oauth_2_0: {scopes: ["user-library-modify"]}] 104 queryParameters: 105 ids: 106 displayName: Spotify Track IDs 107 type: string 108 description: A comma-separated list of IDs 109 required: true 110 example: "7ouMYWpwJ422jRcDASZB7P,4VqPOruhp5EdPBeR92t6lQ,2takcwOaAZWiXQijPHIx7B" 111