Dans Graph API, est-il possible d'accéder aux propriétés publishingState et promotionKind de pages lorsqu'elles sont retournées en items ?

Sébastien CHEVRIAU 20 Points de réputation
2025-01-22T13:52:53.1366667+00:00

Bonjour,

Lorsque j'appelle l'api sur les pages, malheureusement certaines pages de certains types sont absentes.

Lorsque j'appelle l'api sur les items de la liste correspondant à la bibliothèque des pages du site, là j'ai bien toutes les pages, mais certaines propriétés semblent manquer comme publishingState et promotionKind.

Est-il possible d'accéder à ces propriétés via l'api items ?

Merci.

SharePoint
SharePoint
Groupe de produits et technologies Microsoft utilisés pour le partage et la gestion du contenu, des connaissances et des applications.
36 questions
0 commentaires Aucun commentaire
{count} votes

Réponse acceptée
  1. Ling Zhou_MSFT 21,955 Points de réputation Fournisseur Microsoft
    2025-01-24T09:26:37.06+00:00

    Bonjour @Sébastien CHEVRIAU,

    Nous sommes très heureux de savoir que le problème a été résolu et que vous avez généreusement partagé votre solution avec nous.

    Par ailleurs, la communauté Microsoft Q&A a pour politique que l'auteur de la question ne peut pas accepter sa propre réponse. Il ne peut accepter que les réponses des autres. Et selon le scénario présenté ici : Répondre à vos propres questions sur Microsoft Q&A, je ferais un bref résumé de ce fil de discussion :

    [Dans Graph API, est-il possible d'accéder aux propriétés publishingState et promotionKind de pages lorsqu'elles sont retournées en items ?]

    Statut actuel :

    Nous utilisons généralement le point de terminaison /sites/{site-id}/pages/{page-id}/microsoft.graph.sitePage pour obtenir les propriétés publishingState et promotionKind.

    Toutefois, la propriété publishingState indique l'état et la version de publication de la page, et la propriété promotionKind indique le type de promotion (par exemple, page, newsPost) de la page.

    Toutefois, si une page est une page standard ou si elle n'est ni promue ni publiée, ces deux propriétés ne sont pas disponibles.

    Mais nous pouvons également utiliser . _api/Web/Lists(guid'f8ee0b0f-2dd2-4a6b-ad21-6b1e61334d00')/Items(83)/versions pour obtenir des informations sur les critiques des pages.

    Référence : https://stackoverflow.com/questions/74849568/how-to-get-the-publishing-state-of-a-given-page

    Note : Non officielle, juste pour référence.


    Vous pouvez cliquer sur le bouton Accepter la réponse pour ce résumé afin de fermer ce fil de discussion, ce qui permettra aux autres membres de la communauté de voir plus facilement les informations utiles lorsqu'ils liront ce fil de discussion.

    Votre contribution est très appréciée.

    0 commentaires Aucun commentaire

4 réponses supplémentaires

Trier par : Le plus utile
  1. Sébastien CHEVRIAU 20 Points de réputation
    2025-01-24T08:42:23.2933333+00:00

    Bonjour @Ling Zhou_MSFT ,

    Merci pour votre recherche. Finalement j'ai réussi à identifier les pages publiées lorsqu'elles sont retournées en items avec le champ _UIVersionString comme expliqué ici :

    https://stackoverflow.com/questions/74849568/how-to-get-the-publishing-state-of-a-given-page

    Ce n'est très pro, mais ça m'a dépanné.

    Cordialement,

    0 commentaires Aucun commentaire

  2. Ling Zhou_MSFT 21,955 Points de réputation Fournisseur Microsoft
    2025-01-23T02:35:01.3866667+00:00

    Bonjour @Sébastien CHEVRIAU,

    Merci de nous avoir contactés. Nous sommes ravis de pouvoir vous aider.

    Oui, il est possible d'accéder aux propriétés publishingState et promotionKind des pages à l'aide de l'API Microsoft Graph.

    Référence : Type de ressource sitePage: Propriétés.

    Pour récupérer ces propriétés, vous pouvez utiliser le point de terminaison GET /sites/{site-id}/pages/{page-id}/microsoft.graph.sitePage. Veillez à inclure ces propriétés dans votre requête pour obtenir les informations souhaitées.

    Voici un exemple de la manière dont vous pourriez structurer votre requête :

    GET /sites/{site-id}/pages/{page-id}/microsoft.graph.sitePage?$select=publishingState,promotionKind
    Autorisation : Bearer {token}
    

    Voici les résultats de mes tests :Image de l’utilisateur

    Si vous avez des questions, n'hésitez pas à me contacter. En outre, si le problème peut être résolu avec succès, veuillez cliquer sur Accepter la réponse afin que nous puissions mieux archiver le cas et que les autres membres de la communauté qui souffrent du même problème puissent en bénéficier.Votre aimable contribution est très appréciée.


  3. Sébastien CHEVRIAU 20 Points de réputation
    2025-01-23T08:01:34.4633333+00:00

    Bonjour @Ling Zhou_MSFT ,

    Merci pour la réponse, mais comme dit, lorsque j'utilise le endpoint "pages", certaines pages d'un certain type ne sont pas présentes.

    C'est pourquoi j'utilise le endpoint "items" sur la liste "Pages du site" pour récupérer toutes les pages.

    Donc la question est est-ce qu'il est possible d'accéder aux propriétés "promotionKind" et "publishingState" avec le endpoint "items" ?

    Merci

    0 commentaires Aucun commentaire

  4. Ling Zhou_MSFT 21,955 Points de réputation Fournisseur Microsoft
    2025-01-24T08:22:14.1833333+00:00

    Bonjour @Sébastien CHEVRIAU,

    J'apprécie beaucoup votre mise à jour.

    J'ai testé cela et je ne peux pas obtenir publishingState et promotionKind en utilisant le point de terminaison /item parce qu'ils ne sont pas inclus dans les propriétés de l'élément.

    Référence : Type de ressource listItem

    Image de l’utilisateur

    J'ai également trouvé la raison pour laquelle toutes les pages ne contiennent pas ces deux propriétés :

    Toutes les pages n'ont pas les propriétés publishingState et promotionKind lorsqu'elles appellent le point de terminaison /sites/{site-id}/pages/{page-id}/microsoft.graph.sitePage, car ces propriétés sont spécifiques à certains types de pages, tels que les billets d'actualité ou les pages promues.

    La propriété publishingState indique l'état de publication et la version de la page, tandis que la propriété promotionKind indique le type de promotion de la page (par exemple, page, newsPost). Ces propriétés sont généralement présentes dans les pages destinées à une publication et une promotion plus larges au sein de SharePoint.

    Si une page ne possède pas ces propriétés, c'est peut-être parce qu'il s'agit d'une page de site standard qui n'a pas été promue ou publiée d'une manière qui nécessite ces attributs.

    Image de l’utilisateur

    Si vous avez des questions ou des préoccupations, n'hésitez pas à me contacter.


    Si la réponse est utile, veuillez cliquer sur Accepter la réponse et la noter. Elle sera utile à d'autres membres de la communauté qui lisent ici.


Votre réponse

Les réponses peuvent être marquées comme réponses acceptées par l’auteur de la question, ce qui aide les utilisateurs à savoir que la réponse a résolu le problème de l’auteur.