Documentation

GraphQL API

Search

Run full text searches on entities by supplying your query string.  You can narrow down the results by specifying the types you would like to search for.  Take note that the station factory (SF) type is used to search for stations.  The station (ST) type will only return results if a station factory (SF) was personalized (for example renamed) by the listener.  It is also possible to limit the number of items returned and/or paginate through the results. See pagination for more info.

Request



{
  search(types: [SF, ST], query: "Adele", pagination: { limit: 3 }) {
    items {
      id
      ... on Station {
        name
        art {
          url (size: WIDTH_90)
        }
      }
      ... on StationFactory {
        name
        art {
          url (size: WIDTH_90)
        }
      }
    }
  }
}

* Add your OAuth bearer token to the Authorization header



curl 'https://ce.pandora.com/api/v1/graphql/graphql' \
  -H 'Authorization: Bearer ' \
  -H 'Content-Type: application/json' \
  -d '{"operationName":null,"variables":{},"query":"{ search(types: [SF, ST], query: \"Adele\", pagination: {limit: 3}) { items { id  ... on Station {  name  art {  url( size: WIDTH_90 ) } } ... on StationFactory {  name art {  url( size: WIDTH_90 ) }}}}}"}'

Response



{
  "data": {
    "search": {
      "items": [
        {
          "id": "SF:16722:269367",
          "name": "Adele",
          "art": {
            "url": "https://dyn-images.p-cdn.com/?l=images%2F8c%2F2c%2F0e%2Fc3%2Fa7ae4f0eb39e6300a9e0e369%2F%3Acover()&w=50&h=50"
          }
        },
        {
          "id": "SF:17231:21727",
          "name": "Adele",
          "art": {
            "url": null
          }
        },
        {
          "id": "SF:16722:888020",
          "name": "Adele Anthony",
          "art": {
            "url": "https://dyn-images.p-cdn.com/?l=images%2Fpublic%2Frovi%2Fportrait%2F5%2F0%2F2%2F9%2FMN0000059205_640W.jpg%3Acover()&w=50&h=50"
          }
        }
      ]
    }
  }
}

Search will always return the same content no matter what subscription tier the account is, but not all entities can be used for playback. If you try using a restricted source Id for playback you will get a NOT_SUPPORTED error.  See restrictions on entities for playback by subscription tier.