openapi: 3.1.0 info: title: SoundCloud Playlists Search API version: 1.0.0 summary: SoundCloud REST API for tracks, users, playlists, search, social actions, and streaming. description: 'The SoundCloud HTTP API exposes endpoints for tracks (upload, metadata, streaming, comments), users (/me, profile actions), playlists (CRUD), search/discovery, and social actions (follow, like). Authentication uses OAuth 2.1 with PKCE. Access tokens expire approximately every hour. The token endpoint is on secure.soundcloud.com; all resource endpoints are on api.soundcloud.com. ' contact: name: SoundCloud Developers url: https://developers.soundcloud.com/docs/api/guide servers: - url: https://api.soundcloud.com description: SoundCloud REST API security: - oauth2: - non-expiring tags: - name: Search description: Search and resolution paths: /tracks: get: tags: - Search summary: Search tracks operationId: searchTracks parameters: - name: q in: query schema: type: string description: Free-text query against title and description - name: genres in: query schema: type: string - name: access in: query schema: type: string - name: bpm in: query schema: type: string - name: duration in: query schema: type: string - name: ids in: query schema: type: string - name: linked_partitioning in: query schema: type: boolean description: Enable cursor pagination via next_href responses: '200': description: Track collection /resolve: get: tags: - Search summary: Resolve a SoundCloud URL to an API resource representation operationId: resolveUrl parameters: - name: url in: query required: true schema: type: string format: uri responses: '302': description: Redirect to canonical API resource '200': description: Resource representation components: securitySchemes: oauth2: type: oauth2 description: 'OAuth 2.1 with PKCE. Access tokens are short-lived (~1 hour). Use Authorization: OAuth {ACCESS_TOKEN} on each request. ' flows: authorizationCode: authorizationUrl: https://secure.soundcloud.com/authorize tokenUrl: https://secure.soundcloud.com/oauth/token scopes: non-expiring: Non-expiring refresh-token grant clientCredentials: tokenUrl: https://secure.soundcloud.com/oauth/token scopes: {}