docs: def find_collection_ids(self, search_pattern="", identifier="", fetched=0, page=1):
          """
          Fetches a list of resource URLs for every top-level description in the database.
  
          :param string search_pattern: A search pattern to use in looking up resources by title or resourceid.
              The search will match any title containing this string;
              for example, "text" will match "this title has this text in it".
              If omitted, then all resources will be fetched.
          :param string identifier: Only records containing this identifier will be returned.
              Substring matching will not be performed; however, wildcards are supported.
              For example, searching "F1" will only return records with the identifier "F1", while searching "F*" will return "F1", "F2", etc.
  
          :return: A list containing every matched resource's URL.
          :rtype list:
          """
          response = self._collections_search_request(search_pattern, identifier, page)
          hits = response.json()
          results = [r["slug"] for r in hits["results"]]
  
          results_so_far = fetched + len(results)
          if hits["total"] > results_so_far:
              results.extend(
                  self.find_collection_ids(fetched=results_so_far, page=page + 1)
              )
  
          return results