SearchItems
Economy v2 est désormais en disponibilité générale. Pour obtenir de l’aide et donner votre avis, rendez-vous sur le forum PlayFab.
SearchItems exécute une recherche dans le catalogue public à l’aide des paramètres de recherche fournis et retourne une liste paginée d’articles.
Dans sa forme la plus simple, le paramètre Search effectue une recherche approximative en texte brut sur les champs Title, Description, Keywords et Searchable String Display Properties. Cependant, Filter, OrderBy et Select sont des ajouts de requête OData qui permettent de modifier les paramètres de recherche. Les résultats de recherche peuvent être filtrés et triés selon n’importe quel champ du document de recherche (à l’exception de Title et Description).
Vous trouverez plus d’informations sur la syntaxe des requêtes OData ici
Exemple de requête SearchItems :
Jetons de continuation
Le champContinuationToken retourné dans une réponse de recherche peut être transmis dans une requête de recherche pour parcourir plusieurs pages de résultats.
Propriétés d’affichage
Les recherches, filtres et tris peuvent également être effectués sur des champsDisplayProperties spécifiques configurés pour la recherche personnalisée. Les titres peuvent configurer leurs propriétés de recherche et de filtre personnalisées dans le paramètre Display Properties Mappings de Game Manager.

DisplayProperties, un nouvel index est créé pour vous dans la base de données. Seuls les documents ajoutés ou mis à jour après la création de l’index y sont inclus. Si vous avez besoin que la propriété d’affichage s’applique à tous les articles, vous devez republier l’intégralité du catalogue.
Les propriétés d’affichage DateTime, Double et Queryable String sont interrogeables : ces propriétés peuvent être utilisées dans les instructions Filter et OrderBy.
Les propriétés d’affichage Searchable String sont recherchables : ces propriétés sont interrogées par recherche approximative via le champ Search. Les propriétés recherchables ne peuvent pas être utilisées dans les instructions Filter et OrderBy.
Les titres sont limités à cinq propriétés d’affichage de chaque type.
Filter
Le paramètre Filter vous permet de filtrer la collection d’articles retournée par la requête de recherche. L’expression spécifiée avec Filter est évaluée pour chaque article du catalogue dans les résultats, et seuls les articles pour lesquels l’expression est évaluée à « true » sont inclus. Filter prend en charge les opérateurs logiques OData et la priorité à l’aide de parenthèses :- Égal : ‘eq’
- Différent : ‘ne’
- Supérieur à : ‘gt’
- Supérieur ou égal à : ‘ge’
- Inférieur à : ‘lt’
- Inférieur ou égal à : ‘le’
- ET logique : ‘and’
- OU logique : ‘or’
- Négation logique ‘not’
Filtrage par ContentType
Filtrage avec des conjonctions
Filtrage avec des valeurs null
OData prend en charge un typenull pour le filtrage
Filtrage par ID de créateur
Pour filtrer par créateur spécifique, vous devez utiliser la syntaxetitle_player_account!<ID>
Filtrage par champs de tableau
Filter prend également en chargeany() pour filtrer sur des tableaux. Par exemple : alternateIds/any(a: a/value eq 'StoreOfferId')
Filtrage avec des tableaux et des vérifications de valeurs null
Le filtre ci-dessous recherche tous les articles dont le champ contents contient des valeurs non nullPar défaut, Search ne retourne PAS le contenu des articles, sauf s’il est spécifié avec une instruction Select. Si la requête ci-dessus est exécutée sans instruction `“Select”: “contents”“, le filtre sera correctement appliqué, mais tous les résultats de recherche retournés auront des champs de contenu vides
Filtrage par propriétés d’affichage
Le filtrage ne peut être effectué qu’avec des propriétés d’affichage interrogeablesOrderBy
OrderBy est une liste séparée par des virgules utilisée pour trier les résultats de recherche.
OrderBy prend en charge quelques propriétés OData pour le tri :
ascdesc
asc et en dernier pour desc. Si aucune valeur OrderBy n’est transmise, la valeur par défaut id asc est utilisée.
Voici des exemples d’OrderBy :
Tri par titre
Utilisez le paramètretitle/<LANG> combiné avec asc ou desc pour indiquer l’ordre souhaité.
NEUTRAL pour trier selon les chaînes neutres
Tri par propriétés d’affichage
Le tri ne peut être effectué qu’avec des propriétés d’affichage interrogeablesSelect
Par défaut, Search retourne un ensemble riche de métadonnées d’article :IdTypeAlternateIdsTitle(NEUTRAL ou paramètres régionaux deLanguage)Description(NEUTRAL ou paramètres régionaux deLanguage)Keywords(NEUTRAL ou paramètres régionaux deLanguage)ContentTypeImages(miniature uniquement)TagsCreationDateLastModifiedDateCreatorEntityKey(CreatorIddans les versions antérieures de l’API)DisplayPropertiesItemReferences
Select, d’autres champs peuvent éventuellement être retournés dans les résultats de recherche paginés, notamment les métadonnées de contenu (contents), les images, StartDate, EndDate et l’ensemble complet des chaînes localisées du titre et de la description. Si le champ Select est laissé vide, les résultats de recherche constituent un sous-ensemble des métadonnées complètes du document, afin d’accélérer les temps de chargement.
Cette requête retourne les métadonnées d’article par défaut en plus du contenu et des images :
title, description et/ou keywords retourne l’ensemble complet des données de chaînes localisées :
Localisation
Des paramètres régionaux peuvent être transmis dans le paramètreLanguage. La transmission de paramètres régionaux fait que tous les champs Title, Description et Keywords retournent par défaut ces paramètres régionaux, ou NEUTRAL si l’article ne dispose pas de cette localisation.
Un exemple de requête SearchItems avec un paramètre Language est disponible en haut de cette page.
Pour plus d’informations sur la localisation, consultez Localisation.
Limites
La complexité des requêtes de filtre de recherche est limitée par requête. Les requêtes coûteuses peuvent être rejetées, et les titres doivent veiller à ne pas tenter des requêtes trop complexes. Voici des exemples de requêtes proches de la complexité maximale :"The filter provided in the request does not meet the complexity requirements for source".
Recherche dans une boutique
L’une des propriétés que vous pouvez transmettre est le paramètreStore. Il vous permet d’effectuer une recherche dans le contexte d’une boutique. En plus de pouvoir vérifier si un article existe dans une boutique donnée, il peut également servir à afficher les prix remplacés des articles/contenus de la boutique. Vous pouvez également utiliser l’AlternateId de la boutique pour la rechercher. Pour en savoir plus sur l’utilisation des boutiques, cliquez ici
