Skip to main content

PUT (/users/xuid(xuid)/lists/PINS/)

Met à jour les éléments d’une liste selon les index spécifiés pour chaque élément dans le corps de la requête. Le domaine de ces URI est eplists.xboxlive.com.

Remarques

Cet appel met à jour les éléments d’une liste selon les index spécifiés pour chaque élément dans le corps de la requête. Cet appel n’insère pas d’éléments dans la liste, et si aucun élément n’existe aux index spécifiés, l’appel retourne l’état 400 Bad Request. Plusieurs éléments peuvent être mis à jour en un seul appel, mais tous doivent exister dans la liste actuelle. Autrement dit, soit tous sont mis à jour, soit aucun ne l’est. Cet appel permet de spécifier l’élément à mettre à jour par son itemId plutôt que par son index. Pour ce faire, utilisez simplement « -1 » comme index dans la structure IndexedItems envoyée au service. Évidemment, dans ce cas, l’itemId ne peut pas être modifié dans le cadre de la mise à jour; cela ne fonctionne donc que pour les modifications des autres champs de métadonnées. La combinaison provider/providerId peut être utilisée au lieu de itemId pour identifier l’élément. En interne, le service recherche ces éléments dans la liste et détermine les index appropriés à mettre à jour. Si le ou les éléments sont introuvables, l’état 400 Bad Request est retourné et aucun élément n’est mis à jour. Cet appel exige que l’en-tête If-Match:versionNumber soit inclus dans la requête si des index sont utilisés pour identifier les éléments. Si des ID d’éléments sont utilisés pour identifier les éléments (et que la liste n’autorise pas les doublons), l’en-tête If-Match est facultatif. S’il est présent, l’en-tête if-Match est toujours validé. Dans l’en-tête, versionNumber est le numéro de version actuel de la liste. S’il n’est pas inclus (alors qu’il est obligatoire) ou ne correspond pas au numéro de version actuel de la liste, le code d’état HTTP 412 Precondition Failed est retourné et le corps de la réponse contient les métadonnées les plus récentes de la liste, y compris le numéro de version actuel. Cela permet d’éviter que les mises à jour de différents clients s’écrasent mutuellement.

Paramètres d’URI

Autorisation

Cet appel attend un jeton SAML XSTS dans l’en-tête Authorization. Une revendication Xuid doit exister dans ce jeton SAML pour identifier l’appelant. Cette valeur sert à déterminer si l’appelant dispose des droits d’accès aux données de la liste en question. La liste elle-même est également identifiée par le Xuid, qui est inclus dans l’URI de la liste. Grâce à cela, nous pourrions à l’avenir prendre en charge l’accès partagé aux listes, mais cette fonctionnalité n’est pas offerte pour le moment. Actuellement, toutes les listes auxquelles un utilisateur accède lui appartiennent et il n’y a pas d’accès partagé. Ainsi, le Xuid de l’URI doit correspondre au Xuid du jeton de revendications SAML.
Remarque :
Les jetons XBL Auth 2.0 et 3.0 sont tous deux pris en charge actuellement.

Codes d’état HTTP

Le service retourne l’un des codes d’état de cette section en réponse à une requête effectuée avec cette méthode sur cette ressource. Pour obtenir la liste complète des codes d’état HTTP standard utilisés avec les services XBOX Live, consultez Codes d’état HTTP standard. | Code| Phrase de motif| Description| | --- | --- | --- | --- | --- | --- | --- | | 200| OK| La requête s’est terminée avec succès. Le corps de la réponse doit contenir la ressource demandée (pour un GET). Les requêtes POST et PUT reçoivent les métadonnées à jour de la liste (version de la liste, nombre, etc.).| | 201| Created| Une nouvelle liste a été créée. Ce code est retourné lors de la première insertion dans une liste. La réponse comprend les métadonnées à jour de la liste et l’en-tête location contient l’URI de la liste.| | 304| Not Modified| Retourné pour les GET. Indique que le client possède la dernière version de la liste. Le service compare la valeur de l’en-tête If-Match à la version de la liste. Si elles sont égales, un code 304 est retourné sans données.| | 400| Bad Request| La requête était mal formée. Il peut s’agir d’une valeur ou d’un type non valide pour un paramètre d’URI ou de chaîne de requête. Cela peut aussi résulter d’un paramètre ou d’une valeur de données obligatoire manquant, ou d’une version de l’API manquante ou non valide indiquée dans la requête. Consultez l’en-tête X-XBL-Contract-Version.| | 401| Unauthorized| La requête nécessite l’authentification de l’utilisateur.| | 403| Forbidden| La requête n’est pas autorisée pour l’utilisateur ou le service.| | 404| Not Found| L’appelant n’a pas accès à la ressource. Cela indique qu’aucune liste de ce type n’a été créée.| | 412| Precondition Failed| Indique que la version de la liste a changé et qu’une requête de modification a échoué. Une requête de modification est une insertion, une mise à jour ou une suppression. Le service vérifie la version de la liste dans l’en-tête If-Match. Si elle ne correspond pas à la version actuelle de la liste, l’opération échoue et ce code est retourné avec les métadonnées actuelles de la liste (qui incluent la version actuelle).| | 500| Internal Server Error| Le service refuse la requête en raison d’une erreur côté serveur.| | 501| Not Implemented| L’appelant a demandé un URI qui n’a pas été implémenté sur le serveur. (Actuellement utilisé uniquement lorsqu’une requête porte sur un nom de liste qui ne figure pas dans la liste d’autorisation.)| | 503| Service Unavailable| Le serveur refuse la requête, généralement en raison d’une charge excessive. Après un délai (consultez l’en-tête Retry-after), la requête peut être réessayée.|

En-têtes de requête obligatoires

| En-tête| Description| | --- | --- | --- | --- | --- | --- | --- | --- | --- | | Authorization| Contient le jeton STS utilisé pour authentifier et autoriser la requête. Doit être un jeton du service XSTS et inclure le XUID parmi les revendications.| | X-XBL-Contract-Version| Indique la version de l’API demandée (entiers positifs). Pins prend en charge la version 2. Si cet en-tête est absent ou si la valeur n’est pas prise en charge, le service retourne un code 400 - Bad request avec « Unsupported or missing contract version header » dans la description de l’état.| | Content-Type| Indique si le contenu des corps de requête et de réponse sera en JSON ou en XML. Les valeurs prises en charge sont « application/json » et « application/xml »| | If-Match| Cet en-tête doit contenir le numéro de version actuel d’une liste lors des requêtes de modification. Les requêtes de modification utilisent les verbes PUT, POST ou DELETE. Si la version de l’en-tête « If-Match » ne correspond pas à la version actuelle de la liste, la requête est rejetée avec le code de retour HTTP 412 - precondition failed. (facultatif) Peut aussi être utilisé pour les GET : s’il est présent et que la version transmise correspond à la version actuelle de la liste, aucune donnée de liste n’est retournée et le code HTTP 304 - Not Modified est retourné.|

Corps de la requête

Exemple de requête

Corps de la réponse

Exemple de réponse

Voir aussi

Parent
/users/xuid(xuid)/lists/PINS/
Last modified on October 6, 2026