Partager via


Créer une newsLinkPage

Espace de noms: microsoft.graph

Importante

Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .

Créez une newsLinkPage dans la liste des pages d’un site.

Cette API est disponible dans les déploiements de cloud national suivants.

Service global Gouvernement des États-Unis L4 Us Government L5 (DOD) Chine gérée par 21Vianet

Autorisations

Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.

Type d’autorisation Autorisations avec privilèges minimum Autorisations privilégiées plus élevées
Déléguée (compte professionnel ou scolaire) Sites.ReadWrite.All Non disponible.
Déléguée (compte Microsoft personnel) Non prise en charge. Non prise en charge.
Application Sites.ReadWrite.All Non disponible.

Requête HTTP

POST /sites/{site-id}/pages

En-têtes de demande

Nom Description
Autorisation Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation.
Content-Type application/json pour le contenu JSON, y compris la propriété title requise dans les requêtes en plusieurs parties. Les requêtes en plusieurs parties utilisent le multipart/form-data ; boundary=your-boundary content type. Obligatoire.
Préférence include-unknown-enum-members. Utilisez l’en-tête Prefer: include-unknown-enum-members de requête pour obtenir la valeur suivante dans pageLayoutType, qui est une énumération évolutive : newsLink.

Corps de la demande

Dans le corps de la demande, fournissez une représentation JSON de l’objet newsLinkPage . Le corps doit contenir les propriétés requises placées directement dans le corps de la demande ; Toutefois, pour définir une image de bannière en chargeant une image, elle doit être dans un format de message en plusieurs parties, comme illustré dans l’exemple. Pour le chargement de l’image de bannière, vous devez envoyer une requête en plusieurs parties, car elle implique des données binaires.

Remarques :

  • Pour garantir la réussite de l’analyse du corps de la demande, le @odata.type=#microsoft.graph.newsLinkPage doit être inclus dans le corps de la demande.
  • Actuellement, pour définir la bannièreImageWebUrl, il existe la possibilité de charger les octets d’image directement. Ces octets sont enregistrés automatiquement dans la bibliothèque de ressources du site, et la bannièreImageWebUrl est ensuite générée en fonction du fichier persistant. Pour ce faire, effectuez une requête en plusieurs parties et définissez l’annotation @microsoft.graph.bannerImageWebUrlContent pour envoyer le contenu de l’image. Pour plus d’informations, consultez Exemple 2.

Vous pouvez spécifier les propriétés suivantes lorsque vous créez une newsLinkPage.

Propriété Type Description
description String Description de l’élément. La limite de longueur maximale est de 250 caractères. Optional. Hérité de baseSitePage.
newsWebUrl String URL de l’article d’actualité référencé par newsLinkPage. Il peut s’agir d’un lien externe. Obligatoire.
title String Titre de la newsLinkPage. La limite de longueur maximale est de 110 caractères. Obligatoire. Hérité de baseSitePage.

Réponse

Si elle réussit, cette méthode renvoie un 201 Created code de réponse et un objet newsLinkPage dans le corps de la réponse.

Exemples

L’exemple suivant montre comment créer une page de liens d’actualités en utilisant uniquement les propriétés requises.

Demande

L’exemple suivant illustre une demande.

POST /sites/c1370818-f5e0-4a40-a99b-be4520640642/pages
prefer: include-unknown-enum-members
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.newsLinkPage",
  "newsWebUrl":"https://someexternalnewssite.com/2024/11/11/contoso-unveils-first-self-driving-car",
  "title": "Contoso Unveils First Self-Driving Car"
}

Réponse

L’exemple suivant illustre la réponse.

HTTP/1.1 201 Created
Content-type: application/json

{
  "eTag": "\"{6A34958A-6F84-4571-A26E-B2CEB20261EB},3\"",
  "id": "6a34958a-6f84-4571-a26e-b2ceb20261eb",
  "lastModifiedDateTime": "2023-09-10T18:46:23Z",
  "name": "contoso-unveils-first-self-driving-car.aspx",
  "webUrl": "https://contoso.sharepoint.com/SitePages/contoso-unveils-first-self-driving-car.aspx",
  "title": "Contoso Unveils First Self-Driving Car",
  "pageLayout": "newsLink",
  "newsWebUrl": "https://someexternalnewssite.com/2024/11/11/contoso-unveils-first-self-driving-car",
  "createdBy": {
    "user": {
      "displayName": "Jane Doe"
    }
  },
  "lastModifiedBy": {
    "user": {
      "displayName": "Jane Doe"
    }
  },
  "contentType": {
    "id": "0x0101009D1CB255DA76424F860D91F20E6C4118002A50BFCFB7614729B56886FADA02339B000B27C676C81DC54289A1417148759BF3",
    "name": "Repost Page"
  },
  "publishingState": {
    "level":"checkout",
    "versionId":"0.1",
    "checkedOutBy": {
      "user": {
        "displayName":"Jane Doe",
        "email":"JaneDoe@contoso.sharepoint.com"
      }
    }
  }
}

L’exemple suivant montre comment créer une page de lien d’actualités avec une image de bannière. Ce processus nécessite une requête en plusieurs parties.

Demande

L’exemple suivant illustre une demande.

POST https://graph.microsoft.com/beta/sites/c1370818-f5e0-4a40-a99b-be4520640642/pages
Prefer: include-unknown-enum-members
Content-type: multipart/form-data; boundary=MyPartBoundary198374

--MyPartBoundary198374
Content-Disposition: form-data; name="request"
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.newsLinkPage",
  "title": "Microsoft Build brings AI tools to the forefront for developers",
  "newsWebUrl": "https://someexternalnewssite.com/2024/05/23/microsoft-build-ai-tools-developers",
  "description": "You only need two simple letters to accurately convey the major shift in the technology space this year: A and I. Beyond those letters, however, is a complex, evolving and exciting way in which we work, communicate and collaborate.",
  "@microsoft.graph.bannerImageWebUrlContent": "name:content"
}

--MyPartBoundary198374
Content-Disposition: form-data; name="content"; filename="b3.jpg"
Content-Type: image/jpeg

... binary image data ...

--MyPartBoundary198374

Réponse

L’exemple suivant illustre la réponse. Si un échec se produit lorsque vous chargez ou conservez l’image de bannière, la réponse contient @microsoft.graph.bannerImageWebUrlContentError un message d’erreur descriptif.

Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

HTTP/1.1 201 Created
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.newsLinkPage",
  "createdDateTime": "2024-06-11T17:31:20Z",
  "description": "You only need two simple letters to accurately convey the major shift in the technology space this year: A and I. Beyond those letters, however, is a complex, evolving and exciting way in which we work, communicate and collaborate.",
  "eTag": "\"{179210C2-637E-4C61-8491-331D0D4A0C05},2\"",
  "id": "179210c2-637e-4c61-8491-331d0d4a0c05",
  "lastModifiedDateTime": "2024-06-11T17:31:21Z",
  "name": "microsoft-build-ai-tools-developers.aspx",
  "webUrl": "https://contoso.sharepoint.com/SitePages/Microsoft-Build-brings-AI-tools-to-the-forefront-for-developers.aspx",
  "title": "Microsoft Build brings AI tools to the forefront for developers",
  "pageLayout": "newsLink",
  "bannerImageWebUrl": "https://contoso.sharepoint.com/_layouts/15/getpreview.ashx?path=/SiteAssets/SitePages/microsoft-build-ai-tools-developers/BannerImage.png",
  "newsWebUrl": "https://someexternalnewssite.com/2024/05/23/microsoft-build-ai-tools-developers",
  "createdBy": {
    "user": {
      "displayName": "John Doe",
      "email": "jdoe@contoso.com"
    }
  },
  "lastModifiedBy": {
    "user": {
      "displayName": "John Doe",
      "email": "jdoe@contoso.com"
    }
  },
  "publishingState": {
    "level": "checkout",
    "versionId": "0.1",
    "checkedOutBy": {
      "user": {
        "displayName": "John Doe",
        "email": "jdoe@contoso.com"
      }
    }
  }
}