Fichiers et dossiers de référence API REST

Découvrez l’API REST pour File, FileVersion, Folder et les ressources associées.

Dernière modification : jeudi 17 septembre 2015

S’applique à : apps for SharePoint | SharePoint Foundation 2013 | SharePoint Online | SharePoint Server 2013

À propos des exemples de requêtes de cet article

Les exemples de requêtes de cet article supposent que vous utilisez la bibliothèque inter-domaines (SP.RequestExecutor.js) pour lancer des requêtes inter-domaines. Elles utilisent donc SP.AppContextSite dans l’URI du point de terminaison. Voir Accéder à des données SharePoint 2013 à partir de compléments à l’aide de la bibliothèque inter-domaines pour plus d’informations.

Avant d’utiliser un exemple de requête, effectuez les opérations suivantes :

  • Modifiez <URL du site web de l’application>, <URL du site web hôte> et d’autres données d’espace réservé telles que les ID, noms ou chemins des entités SharePoint.

  • Si vous n’utilisez pas la bibliothèque inter-domaines, insérez un en-tête X-RequestDigest pour envoyer la valeur de chiffrement à toutes les requêtes POST et un content-length pour les requêtes POST qui envoient des données dans le corps de requête.

  • Si vous ne lancez pas de requête inter-domaines, retirez SP.AppContextSite(@target) et ?@target='<host web url>' de l’URI de point de terminaison.

  • Si vous utilisez OAuth, insérez un en-tête Authorization ("Authorization": "Bearer " + <access token>) pour envoyer un jeton d’accès OAuth.

  • Supprimez les sauts de ligne des valeurs de propriété url et body. Les sauts de ligne sont ajoutés aux exemples pour en faciliter la lecture.

  • Si vous souhaitez que le serveur renvoie des réponses au format Atom, supprimez l’en-tête "accept": "application/json; odata=verbose".

Voir Ressources supplémentaires pour obtenir davantage d’informations sur l’utilisation de la bibliothèque inter-domaines, OAuth, et le service REST SharePoint. Voir Différences des requêtes REST en fonction de l’environnement et Propriétés utilisées dans les requêtes REST pour obtenir des informations sur les formats de requête.

Conseil

Le service REST SharePoint Online prend en charge la combinaison de plusieurs requêtes en un seul appel au service à l’aide de l’option de requête $batch OData. Pour plus de détails et des liens vers des exemples de code, reportez-vous à Effectuer des requêtes de lot avec les API REST. Cette option n’est pas encore prise en charge dans les instances de SharePoint sur site.

Étudiez la syntaxe REST SharePoint 2013 des fichiers et dossiers

Explorer les fichiers de service REST et la syntaxe de dossier

Explorez visuellement la syntaxe REST des listes et des éléments de liste SharePoint 2013.

Explorez les autres schémas de syntaxe SharePoint  :

Listes et éléments de liste | Utilisateurs et groupes

Télécharger le PDF de l’ensemble des schémas de syntaxe REST SharePoint.

Ressource de fichier

Représente un fichier dans un site web SharePoint qui peut être une page de composants WebPart, un élément d’une bibliothèque de documents ou un fichier dans un dossier.

URI du point de terminaison  |  Propriétés  |  Méthodes  |  Représentation OData

URI du point de terminaison

http://<URL du site>/_api/web/getfilebyserverrelativeurl('/<nom du dossier>/<nom du fichier>')

Méthodes HTTP prises en charge

GET  |  PUT  (ressource multimédia)

GET  |  DELETE  |  POST  (Ressource de fichier)

Exemples de requête

Exemple de requête GET : obtenir le contenu de fichier (ressource multimédia)

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/$value
    ?@target='<host web url>'",
  method: "GET",
  binaryStringResponseBody: true,
  success: successHandler,
  error: errorHandler
});

Exemple de requête GET : obtenir les métadonnées de fichier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Exemple de requête PUT : mettre à jour le contenu de fichier (ressource multimédia)

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.txt')/$value
    ?@target='<host web url>'",
  method: "POST",
  body: "Updated contents of the file go here",
  headers: { "X-HTTP-Method":"PUT" },
  success: successHandler,
  error: errorHandler
});

Extrayez le document pour éviter que d’autres utilisateurs ne le modifient, puis réarchivez-le une fois vos modifications effectuées. Voir la Méthode CheckOut et la méthode Méthode CheckIn.

Exemple de requête DELETE : supprimer un fichier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    ?@target='<host web url>'",
  method: "POST",
  headers: { "X-HTTP-Method":"DELETE" },
  success: successHandler,
  error: errorHandler
});

Vous pouvez utiliser la méthode Recycle pour supprimer le fichier et obtenir le GUID de l’élément recyclé.

Notes

Voir la Méthode Add pour obtenir un exemple de création de fichier et de l’ajout à son dossier.

Propriétés de fichier

Pour obtenir une propriété, envoyez une requête GET au point de terminaison de la propriété, comme le montre l’exemple suivant.

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/<property name>
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Propriété

Type

R/W

Renvoyée avec la ressource

Description

Author

SP.User

R

Non

Obtient une valeur qui spécifie l’utilisateur ayant ajouté le fichier.

CheckedOutByUser

SP.User

R

Non

Obtient une valeur qui renvoie l’utilisateur ayant extrait le fichier.

CheckInComment

String

R

Oui

Obtient une valeur qui renvoie le commentaire utilisé lors de l’archivage d’un document dans une bibliothèque de documents.

CheckOutType

Int32

R

Oui

Obtient une valeur qui indique la façon dont le fichier est extrait d’une bibliothèque de documents. Représente une valeur SP.CheckOutType : En ligne = 0 ; Hors ligne = 1 ; Aucun = 2.

L’état d’extraction d’un fichier est indépendant de son état verrouillé.

ContentTag

String

R

Oui

Renvoie la version interne du contenu, utilisée pour valider l’égalité des documents à des fins de lecture.

CustomizedPageStatus

Int32

R

Oui

Obtient une valeur qui spécifie le statut de personnalisation du fichier. Représente une valeur SP.CustomizedPageStatus : Aucun = 0 ; Non personnalisé = 1 ; Personnalisé = 2.

ETag

String

R

Oui

Obtient une valeur qui spécifie la valeur ETag.

Exists

Boolean

R

Oui

Obtient une valeur qui indique si le fichier existe.

Length

Int64

R

Oui

Obtient la taille du fichier, en octets, sans prendre en compte la taille des composants WebPart utilisés dans le fichier.

Level

Byte

R

Oui

Obtient une valeur qui spécifie le niveau de publication du fichier. Représente une valeur SP.FileLevel : Publié = 1 ; Brouillon = 2 ; Extraction = 255.

ListItemAllFields

SP.ListItem

R

Non

Obtient une valeur qui spécifie les valeurs de champ de l’élément de liste correspondant au fichier.

LockedByUser

SP.User

R

Non

Obtient une valeur qui renvoie l’utilisateur possédant le verrou actuel sur le fichier.

MajorVersion

Int32

R

Oui

Obtient une valeur qui spécifie la version majeure du fichier.

MinorVersion

Int32

R

Oui

Obtient une valeur qui spécifie la version mineure du fichier.

ModifiedBy

SP.User

R

Non

Obtient une valeur qui renvoie le dernier utilisateur ayant modifié le fichier.

Name

String

R

Oui

Obtient le nom du fichier, avec l’extension.

ServerRelativeUrl

String

R

Oui

Obtient l’URL relative du fichier en fonction de l’URL du serveur.

TimeCreated

DateTime

R

Oui

Obtient une valeur qui spécifie quand le fichier a été créé.

TimeLastModified

DateTime

R

Oui

Obtient une valeur qui spécifie quand a eu lieu la dernière modification du fichier.

Title

String

R

Oui

Obtient une valeur qui spécifie le nom d’affichage du fichier.

UiVersion

Int32

R

Oui

Obtient une valeur qui indique l’identificateur de version du fichier propre à l’implémentation.

UiVersionLabel

String

R

Oui

Obtient une valeur qui indique l’identificateur de version du fichier propre à l’implémentation.

Versions

SP.FileVersionCollection

R

Non

Obtient une valeur qui renvoie une collection d’objets de version de fichier représentant les versions du fichier.

Méthodes de fichier

Approve
CancelUpload
CheckIn
CheckOut
ContinueUpload
CopyTo
DeleteObject
Deny
FinishUpload
GetLimitedWebPartManager
MoveTo
OpenBinaryStream
Publish
Recycle
SaveBinaryStream
StartUpload
UndoCheckOut
Unpublish

Approve

Approuve le fichier soumis pour approbation de contenu avec le commentaire spécifié.

Seuls les documents présents dans des listes activées pour approbation de contenu peuvent être approuvés.

Point de terminaison

/approve(comment)

Paramètres

comment

Type : String
Commentaire de l’approbation.

Méthode HTTP

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /approve(comment='Check-in comment for the approval.')
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode CancelUpload

Arrête la session de téléchargement de bloc sans enregistrer les données téléchargées. Si le fichier n’existe pas déjà dans la bibliothèque, le fichier partiellement téléchargé est supprimé. Utilisez ce paramètre en réponse à une action de l’utilisateur (telle qu’une demande d’annulation de téléchargement) ou une erreur ou une exception.

Utilisez la valeur uploadId transmise à la méthode StartUpload qui a lancé la session de téléchargement.

Cette méthode est actuellement disponible uniquement sur Office 365.

Endpoint

/cancelupload(uploadId)

Parameters

uploadID

Type : GUID
Identificateur unique de la session de téléchargement.

HTTP method

POST

Response

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /cancelupload(uploadId=guid'GUID')
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode CheckIn

Archive le fichier dans une bibliothèque de documents en fonction du type d’archivage.

Endpoint

/checkin(comment, checkInType)

Parameters

comment

Type : String
Commentaire de l’archivage. Sa longueur doit être inférieure ou égale à 1023 caractères.

checkInType

Type : Int32
SP.CheckinType du fichier : MinorCheckIn = 0 ; MajorCheckIn = 1 ; OverwriteCheckIn = 2.

HTTP method

POST

Response

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /checkin(comment='Check-in comment.',checkintype=0)
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode CheckOut

Extrait le fichier d’une bibliothèque de documents en fonction du type d’extraction.

Endpoint

/checkout

Parameters

Aucun

HTTP method

POST

Response

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /checkout
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode ContinueUpload

Poursuit la session de téléchargement de bloc avec un fragment supplémentaire. Le contenu actuel du fichier n’est pas modifié.

Utilisez la valeur uploadId transmise à la méthode StartUpload qui a lancé la session de téléchargement.

Cette méthode est actuellement disponible uniquement sur Office 365.

Endpoint

/continueupload(uploadId, fileOffset)

Parameters

uploadID

Type : GUID
Identificateur unique de la session de téléchargement.

fileOffset

Type : Int64
Taille du décalage dans le fichier où le fragment débute.

Envoyer le contenu du fichier (flux) dans le corps de publication.

HTTP method

POST

Response

Type : Int64
Taille du total de données téléchargées en octets.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /continueupload(uploadId=guid'GUID',fileOffset=8388608)
    ?@target='<host web url>'",
  method: "POST",
  body: stream containing intermediate chunk of file
  success: successHandler,
  error: errorHandler
});

Méthode CopyTo

Copie le fichier à l’URL de destination.

Point de terminaison

/copyto(strNewUrl, bOverWrite)

Paramètres

strNewUrl

Type : String
URL absolue ou URL relative du serveur du chemin du fichier de destination vers lequel effectuer la copie.

bOverWrite

Type : Boolean
true pour remplacer un fichier de même nom au même emplacement, sinon false.

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /copyto(strnewurl='/foldername/filename.docx',boverwrite=false)
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode DeleteObject

Pour supprimer un fichier, il est recommandé d’envoyer une requête DELETE au point de terminaison de la ressource File, comme indiqué dans Exemples de requête UserCustomAction.

Méthode Deny

Refuse l’approbation d’un fichier ayant été soumis pour approbation de contenu.

Seuls les documents figurant dans les listes activées pour approbation de contenu peuvent être refusés.

Point de terminaison

/deny(comment)

Paramètres

comment

Type : String
Commentaire du refus.

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /deny(comment='Check-in comment for the denial.')
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode FinishUpload

Télécharge le dernier fragment de fichier et valide le fichier. Le contenu du fichier est modifié à l’issue de cette méthode.

Utilisez la valeur uploadId transmise à la méthode StartUpload qui a lancé la session de téléchargement.

Cette méthode est actuellement disponible uniquement sur Office 365.

Endpoint

/finishupload(uploadId, fileOffset)

Parameters

uploadID

Type : GUID
Identificateur unique de la session de téléchargement.

fileOffset

Type : Int64
Taille du décalage dans le fichier où le fragment débute.

Envoyer le contenu du fichier (flux) dans le corps de publication.

HTTP method

POST

Response

Type : SP.File
Fichier nouvellement téléchargé.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /finishupload(uploadId=guid'GUID',fileOffset=125829120)
    ?@target='<host web url>'",
  method: "POST",
  body: stream containing final chunk of file
  success: successHandler,
  error: errorHandler
});

Méthode GetLimitedWebPartManager

Spécifie le jeu de contrôles permettant d’atteindre, de modifier ou d’ajouter des composants WebPart associés à cette page de composants WebPart et à cet affichage.

Une exception est envoyé si le fichier ne se trouve pas à la page ASPX.

Point de terminaison

/getlimitedwebpartmanager(scope)

Paramètres

scope

Type : Int32
Vue SP.WebParts.PersonalizationScope sur le Page de composants WebPart. Utilisateur = 0 ; Partagé = 1.

HTTP method

GET

Réponse

Type : SP.WebParts.LimitedWebPartManager
Ensemble de commandes associées utilisées pour accéder à des composants WebPart, les modifier et en ajouter.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/fileName.aspx')
    /getlimitedwebpartmanager(scope=0)
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Méthode MoveTo

Déplace le fichier vers l’URL de destination spécifiée.

Point de terminaison

/moveto(newUrl, flags)

Paramètres

newUrl

Type : String
URL absolue ou URL serveur relative du chemin d’accès au fichier de destination vers lequel se déplacer.

flags

Type : Int32
Valeur de bits SP.MoveOperations pour la manière de déplacer le fichier. Remplacer = 1 ; AllowBrokenThickets (déplacer même si les fichiers support sont séparés du fichier) = 8.

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /moveto(newurl='/Other Folder/filename.docx',flags=1)
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode OpenBinaryStream

Ouvre le fichier en tant que flux.

Point de terminaison

/openbinarystream

Paramètres

Aucun

HTTP method

GET

Réponse

Type : Stream
Flux de fichier spécifié.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /openbinarystream
    ?@target='<host web url>'",
  method: "GET",
  binaryStringResponseBody: true,
  success: successHandler,
  error: errorHandler
});

Notes

Vous pouvez également utiliser $value dans la ressource de fichier pour ouvrir un fichier. Exemple :…/getfilebyserverrelativeurl('/Shared Documents/filename.docx')/$value.

Méthode Publish

Envoie le fichier pour approbation de contenu avec le commentaire spécifié.

Point de terminaison

/publish(comment)

Paramètres

comment

Type  : String
Commentaire du fichier publié. Sa longueur doit être inférieure ou égale à 1 023 caractères.

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /publish(comment='Check-in comment for the publish operation.')
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode Recycle

Déplace le fichier vers la Corbeille et renvoie l’identificateur du nouvel élément de la Corbeille.

Point de terminaison

/recycle

Paramètres

Aucun

HTTP method

POST

Réponse

Type : GUID
GUID du fichier recyclé.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /recycle
    ?@target='<host web url>'",
  method: "POST",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Méthode SaveBinaryStream

Point de terminaison

/savebinary

Paramètres

Envoyer le contenu du fichier (flux) dans le corps de publication.

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /savebinarystream
    ?@target='<host web url>'",
  method: "POST",
  body: "This is the new content.",
  success: successHandler,
  error: errorHandler
});

Méthode StartUpload

Démarre une nouvelle session de téléchargement de blocs et télécharge le premier fragment. Le contenu du fichier actuel n’est pas modifié lorsque cette méthode se termine. La méthode est idempotente (et ne modifie donc pas le résultat) tant que vous utilisez les mêmes valeurs pour uploadId et stream. La session de téléchargement se termine lorsque vous utilisez la méthode CancelUpload ou lorsque vous terminez avec succès la session de téléchargement en transmettant le reste des contenus de fichier à l’aide des méthodes ContinueUpload et FinishUpload.

Par exemple, vous pouvez transmettre un fichier de 35 Mo en le divisant en trois flux de 10 Mo et un flux de 5 Mo, et en les téléchargeant de cette façon (en utilisant les valeurs de décalage qui en résultent : 10, 20 et 30 Mo) :

startUpload(GUID, stream1)
continueUpload(GUID, 10 MB, stream2)
continueUpload(GUID, 20 MB, stream3)
finishUpload(GUID, 30 MB, stream4)

Les méthodes StartUpload et ContinueUpload renvoient le volume total, en octets, des données en cours de téléchargement. Vous pouvez ainsi transmettre ces valeurs pour les utilisations ultérieures de ContinueUpload et de FinishUpload.

Cette méthode est actuellement disponible uniquement sur Office 365.

Endpoint

/startupload(uploadId)

Parameters

uploadID

Type : GUID
Identificateur unique de la session de téléchargement.

Envoyer le contenu du fichier (flux) dans le corps de publication.

HTTP method

POST

Response

Type : Int64
Volume des données téléchargées en octets.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /startupload(uploadId=guid'GUID')
    ?@target='<host web url>'",
  method: "POST",
  body: stream containing first chunk of file
  success: successHandler,
  error: errorHandler
});

UndoCheckOut method

Annule une extraction existante du fichier.

Point de terminaison

/undocheckout

Paramètres

Aucun

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /undocheckout
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode Unpublish

Supprime le fichier de l’approbation de contenu ou annule la publication d’une version majeure.

Point de terminaison

/unpublish

Paramètres

comment

Type : String
Commentaire accompagnant l’opération de retrait de publication. Sa longueur doit être inférieure ou égale à 1 023 caractères.

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /unpublish(comment='Check-in comment for the unpublish operation.')
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Représentation OData

L’exemple qui suit représente une ressource File au format JSON.

    {"d":{
      "__metadata":{,
        "id":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared Documents/folderName/fileName.docx')",
        "uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName.docx')",
        "type":"SP.File"
      },
      "Author":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName.docx')/Author"}},
      "CheckedOutByUser":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName.docx')/CheckedOutByUser"}},
      "ListItemAllFields":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName.docx')/ListItemAllFields"}},
      "LockedByUser":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName.docx')/LockedByUser"}},
      "ModifiedBy":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName.docx')/ModifiedBy"}},
      "Versions":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName.docx')/Versions"}},
      "CheckInComment":"Revisions to the file.",
      "CheckOutType":2,
      "ContentTag":"{2FBB0C3C-4059-41A2-A5CF-3E076EA0A94C},2,3",
      "CustomizedPageStatus":0,
      "ETag":"\"{2FBB0C3C-4059-41A2-A5CF-3E076EA0A94C},2\"",
      "Exists":true,
      "Length":"20609",
      "Level":1,
      "MajorVersion":1,
      "MinorVersion":0,
      "Name":"fileName.docx",
      "ServerRelativeUrl":"/Shared Documents/folderName/fileName.docx",
      "TimeCreated":"2013-05-16T21:01:23Z",
      "TimeLastModified":"2013-05-18T04:57:32Z",
      "Title":"",
      "UIVersion":512,
      "UIVersionLabel":"1.0"
    }}

Ressource FileCollection

Représente une collection de ressources File.

URI du point de terminaison  |  Méthodes  |  Représentation OData

URI du point de terminaison

http://<url de site>/_api/web/getfolderbyserverrelativeurl('/<nom de dossier>')/files

Méthodes HTTP prises en charge

GET  |  POST

Exemples de requête

obtenir les exemples de requêtes GET : Obtenir les métadonnées de tous les fichiers d’un dossier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')/files
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Exemple de requête GET : obtenir le contenu de fichier (ressource multimédia) par nom de fichier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')/files('filename.docx')/$value
    ?@target='<host web url>'",
  method: "GET",
  binaryStringResponseBody: true,
  success: successHandler,
  error: errorHandler
});

Exemple de requête GET : obtenir les métadonnées de fichier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')/files('filename.docx')
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
};

Voir Exemples de fichier pour obtenir des exemples de la manière d’extraire un fichier en utilisant le point de terminaison GetFileByServerRelativeUrl et de la façon de mettre à jour et de supprimer un fichier. Pour créer un fichier, voir méthode Add.

FileCollection methods

Add
AddTemplateFile
GetByUrl

Méthode Add

Point de terminaison

/add(content, overwrite, url)

Paramètres

content

Type : Stream
Contenus du fichier. Passez les paramètres content dans le corps de la demande. La taille maximale d’un fichier binaire que vous pouvez ajouter à l’aide de l’API REST est de 2 Go.

overwrite

Type : Boolean
true pour remplacer le fichier, sinon false.

url

Type : String
URL relative du fichier.

HTTP method

POST

Réponse

Type : SP.File
Nouveau fichier.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')/files
    /add(overwrite=true,url='filename.txt')
    ?@target='<host web url>'",
  method: "POST",
  body: "Contents of the file go here",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

L’exemple suivant montre comment télécharger un fichier binaire à l’aide de la bibliothèque inter-domaines, opération qui requiert la conversion du flux de fichier en chaîne. Pour un exemple de jQuery, reportez-vous à Télécharger un fichier en utilisant l’API REST et jQuery.

function addFile(arrayBuffer) { 
    var executor = new SP.RequestExecutor(appWebUrl);

    // Construct the endpoint.
    // The GetList method is available for SharePoint Online only. 
    var fileCollectionEndpoint = String.format(
         "{0}/_api/sp.appcontextsite(@target)/web/getlist('{1}')/" +
         "rootfolder/files/add(overwrite=true, url='{2}')?@target='{3}'",
         appWebUrl, listName, fileName, hostWebUrl);

    var fileData = '';
    var byteArray = new Uint8Array(arrayBuffer);
    for (var i = 0; i < byteArray.byteLength; i++) {
        fileData += String.fromCharCode(byteArray[i]);
    }

    // Send the request.
    executor.executeAsync({
        url: fileCollectionEndpoint,
        method: "POST",
        body: fileData,
        binaryStringRequestBody: true,
        headers: {"accept":"application/json;odata=verbose"},
        success: function (data) {
            alert('File upload succeeded.');
        },
        error: function (err) {
            alert('Error: ' + err.responseText);
        }
    });
}

Méthode AddTemplateFile

Ajoute un fichier dédoublé à une liste ou à une bibliothèque de documents existante.

Point de terminaison

/addTemplateFile(urlOfFile,templateFileType)

Paramètres

urlOfFile

Type : String
URL relative de serveur vers laquelle enregistrer le fichier.

templateFileType

Type : Int32
SP.TemplateFileType à utiliser pour créer le fichier : StandardPage = 0 ; WikiPage = 1 ; FormPage = 2.

HTTP method

POST

Réponse

Type : SP.File
Modèle de fichier ajouté.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents')/files
    /addtemplatefile(urloffile='/Shared Documents/newwikipage.aspx',templatefiletype=1)
    ?@target='<host web url>'",
  method: "POST",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

GetByUrl method

Obtient le fichier situé à l’URL spécifiée.

Le point de terminaison GetFileByServerRelativeUrl est le moyen recommandé pour obtenir un fichier. Voir les exemples SP.File request.

Point de terminaison

/getbyurl('<nom ou url relative de service de fichier>')

Paramètres

Aucun

HTTP method

GET

Réponse

Type : SP.File
Fichier à l’URL spécifiée.

Exemples de requête

  Obtenir le contenu de fichier (ressource multimédia)

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/foldername')/files
    /getbyurl('filename.docx')/$value
    ?@target='<host web url>'",
  method: "GET",
  binaryStringResponseBody: true,
  success: successHandler,
  error: errorHandler
});

  Accéder aux métadonnées de fichier (Ressource de fichier)

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/foldername')/files
    /getbyurl('filename.docx')
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Voir Exemples de requête de fichier et Exemples de requête FileCollection pour voir d’autres façons d’obtenir un fichier.

Représentation OData

L’exemple suivant représente une ressource FileCollection au format JSON.

    {"d":{
      "results":[{
        "__metadata":{
          "id":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared Documents/folderName/fileName1.docx')",
          "uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName1.docx')",
          "type":"SP.File"
        },
        "Author":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName1.docx')/Author"}},
        "CheckedOutByUser":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName1.docx')/CheckedOutByUser"}},
        "ListItemAllFields":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName1.docx')/ListItemAllFields"}},
        "LockedByUser":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName1.docx')/LockedByUser"}},
        "ModifiedBy":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName1.docx')/ModifiedBy"}},
        "Versions":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName1.docx')/Versions"}},
        "CheckInComment":"",
        "CheckOutType":2,
        "ContentTag":"{2FBB0C3C-4059-41A2-A5CF-3E076EA0A94C},4,7",
        "CustomizedPageStatus":0,
        "ETag":"\"{2FBB0C3C-4059-41A2-A5CF-3E076EA0A94C},4\"",
        "Exists":true,
        "Length":"20609",
        "Level":1,
        "MajorVersion":1,
        "MinorVersion":0,
        "Name":"fileName1.docx",
        "ServerRelativeUrl":"/Shared Documents/folderName/fileName1.docx",
        "TimeCreated":"2013-05-16T21:01:23Z",
        "TimeLastModified":"2013-06-09T02:38:14Z",
        "Title":"Title of fileName1",
        "UIVersion":512,
        "UIVersionLabel":"1.0"
        },{
        "__metadata":{
          "id":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared Documents/folderName/fileName2.docx')",
          "uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName2.docx')",
          "type":"SP.File"
        },
        "Author":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName2.docx')/Author"}},
        "CheckedOutByUser":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName2.docx')/CheckedOutByUser"}},
        "ListItemAllFields":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName2.docx')/ListItemAllFields"}},
        "LockedByUser":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName2.docx')/LockedByUser"}},
        "ModifiedBy":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName2.docx')/ModifiedBy"}},
        "Versions":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFileByServerRelativeUrl('/Shared%20Documents/folderName/fileName2.docx')/Versions"}},
        "CheckInComment":"",
        "CheckOutType":2,
        "ContentTag":"{E654B970-C4BF-4DC5-9719-B5B01CAD6FD9},4,9",
        "CustomizedPageStatus":0,
        "ETag":"\"{E654B970-C4BF-4DC5-9719-B5B01CAD6FD9},4\"",
        "Exists":true,
        "Length":"12263",
        "Level":1,
        "MajorVersion":1,
        "MinorVersion":0,
        "Name":"fileName2.docx",
        "ServerRelativeUrl":"/Shared Documents/folderName/fileName2.docx",
        "TimeCreated":"2013-05-18T05:01:51Z",
        "TimeLastModified":"2013-06-09T02:38:59Z",
        "Title":"Title of fileName2",
        "UIVersion":512,
        "UIVersionLabel":"1.0"
      }]}}

Ressource FileVersion

Repésente une version de ressource File.

URI du point de terminaison  |  Propriétés  |  Méthodes  |  Représentation OData

URI du point de terminaison

http://<url de site>/_api/web/getfilebyserverrelativeurl('/<nom de dossier>/<nom de fichier>')/versions(<id de version>)

Méthodes HTTP prises en charge

GET  |  POST  |  DELETE

Exemples de requête

Exemple de requête GET : Obtenez les métadonnées d’une version de fichier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/versions(512)
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Exemple de requête DELETE : supprimer une version spécifique d’un fichier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/versions(513)
    ?@target='<host web url>'",
  method: "POST",
  headers: { "X-HTTP-Method":"DELETE" },
  success: successHandler,
  error: errorHandler
});

Propriétés FileVersion

Pour obtenir une propriété, envoyez une requête GET au point de terminaison de la propriété, comme le montre l’exemple suivant.

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')
    /versions(512)/<property name>
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Propriété

Type

R/W

Renvoyée avec la ressource

Description

CheckInComment

String

R

Oui

Obtient une valeur qui spécifie le commentaire d’archivage.

Created

DateTime

R

Oui

Obtient une valeur qui spécifie la date et l’heure de création de la version de fichier.

CreatedBy

SP.User

R

Non

Obtient une valeur qui spécifie l’utilisateur représentant le créateur de la version de fichier.

ID

Int32

R

Oui

Obtient l’identificateur interne de la version de fichier.

IsCurrentVersion

Boolean

R

Oui

Obtient une valeur qui indique si la version de fichier est la version actuelle.

Size

Int32

R

Oui

Url

String

R

Oui

Obtient une valeur qui spécifie l’URL relative de la version de fichier en fonction de l’URL du site ou du sous-site.

VersionLabel

String

R

Oui

Obtient une valeur qui spécifie l’identificateur du fichier propre à l’implémentation. Utilise le format majorVersionNumber.minorVersionNumber, par exemple : 1.2.

FileVersion methods

DeleteObject

Méthode DeleteObject

Pour supprimer une version de fichier, il est recommandé d’envoyer une requête DELETE au point de terminaison de la ressource FileVersion, tel qu’indiqué dans Exemples de requête FileVersion.

Représentation OData

L’exemple suivant représente une ressource FileVersion au format JSON.

    {"d":{
      "__metadata":{,
        "id":"http://<site url>/_api/web/getfilebyserverrelativeurl('/Shared Documents/folderName/fileName1.docx')/versions(512)",
        "uri":"http://<site url>/_api/web/getfilebyserverrelativeurl('/Shared%20Documents/folderName/fileName1.docx')/versions(512)",
        "type":"SP.FileVersion"
      },
      "CreatedBy":{"__deferred":{"uri":"http://<site url>/_api/web/getfilebyserverrelativeurl('/Shared%20Documents/folderName/fileName1.docx')/versions(512)/CreatedBy"}},
      "CheckInComment":"Revisions to the file.",
      "Created":"2013-06-10T04:02:53Z",
      "ID":512,
      "IsCurrentVersion":true,
      "Size":20609,
      "Url":"_vti_history/512/Shared Documents/folderName/fileName1.docx",
      "VersionLabel":"1.0"
    }}

FileVersionCollection resource

Représente une collection de ressources FileVersion.

URI du point de terminaison  |  Méthodes  |  Représentation OData

URI du point de terminaison

  http://<URL du site>/_api/web/getfilebyserverrelativeurl('/<nom du dossier>/<nom du fichier>')/auteur

Méthode HTTP

Cette ressource prend en charge les méthodes HTTP suivantes :

GET  |  POST

Exemple de requête

Exemple de requête GET : obtenir les métadonnées de toutes les versions d’un fichier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/versions
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Exemple de requête GET : accéder aux métadonnées d’une version de fichier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/versions(512)
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

FileVersionCollection methods

DeleteAll
DeleteById
DeleteByLabel
GetById
RestoreByLabel

Méthode DeleteAll

Supprime de la collection tous les objets de version de fichier.

Point de terminaison

/deleteall

Paramètres

Aucun

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/versions
    /deleteall
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

DeleteById method

Supprime la version spécifiée du fichier.

Point de terminaison

/deletebyid(vid)

Paramètres

vid

Type : Int32
ID de la version de fichier à supprimer.

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/versions
    /deletebyid(vid=3)
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

DeleteByLabel method

Supprime l’objet de version de fichier portant le libellé de version spécifié.

Point de terminaison

/deletebylabel(versionlabel)

Paramètres

versionlabel

Type : String
Propriété SP.FileVersion.VersionLabel de la version de fichier à supprimer.

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/versions
    /deletebylabel(versionlabel='1.2')
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Méthode GetById

Point de terminaison

/getbyid(versionid)

Paramètres

versionid

Type : Int32
ID de la version de fichier auquel accéder.

HTTP method

GET

Réponse

Type : SP.FileVersion
Version de fichier spécifiée.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/versions
    /getbyid(512)
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Vous pouvez également transmettre l’ID de version directement à la collection (…/versions(512)). Voir les exemples de requêtes FileVersionCollection.

RestoreByLabel method

Crée une version de fichier à partir du fichier spécifié par le libellé de version.

Point de terminaison

/restorebylabel(versionlabel)

Paramètres

versionlabel

Type : String
Propriété SP.FileVersion.VersionLabel de la version de fichier à restaurer.

HTTP method

POST

Réponse

Aucun

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfilebyserverrelativeurl('/Shared Documents/filename.docx')/versions
    /restorebylabel(versionlabel='1.2')
    ?@target='<host web url>'",
  method: "POST",
  success: successHandler,
  error: errorHandler
});

Représentation OData

L’exemple qui suit représente une ressource Ressource FileVersionCollection au format JSON.

    {"d":{
      "results":[{
        "__metadata":{
          "id":"http://<site url>/_api/SP.FileVersiona6a6bb00-2b96-41e6-a901-46df015183b9",
          "uri":"http://<site url>/_api/SP.FileVersiona6a6bb00-2b96-41e6-a901-46df015183b9",
          "type":"SP.FileVersion"
        },
        "CreatedBy":{"__deferred":{"uri":"http://<site url>/_api/SP.FileVersiona6a6bb00-2b96-41e6-a901-46df015183b9/CreatedBy"}},
        "CheckInComment":"",
        "Created":"2013-06-10T04:02:53Z",
        "ID":512,
        "IsCurrentVersion":true,
        "Size":20609,
        "Url":"_vti_history/512/Shared Documents/folderName/fileName1.docx",
        "VersionLabel":"1.0"
        },{
        "__metadata":{
          "id":"http://<site url>/_api/SP.FileVersion6accd876-7579-47b6-9779-19a24f6ab8a1",
          "uri":"http://<site url>/_api/SP.FileVersion6accd876-7579-47b6-9779-19a24f6ab8a1",
          "type":"SP.FileVersion"
        },
        "CreatedBy":{"__deferred":{"uri":"http://<site url>/_api/SP.FileVersion6accd876-7579-47b6-9779-19a24f6ab8a1/CreatedBy"}},
        "CheckInComment":"Revisions to the file.",
        "Created":"2013-06-11T17:42:41Z",
        "ID":513,
        "IsCurrentVersion":false,
        "Size":17973,
        "Url":"_vti_history/513/Shared Documents/folderName/fileName1.docx",
        "VersionLabel":"1.1"
      }]}}

Ressource Folder

Représente un dossier sur un site web SharePoint.

URI du point de terminaison  |  Propriétés  |  Méthodes  |  Représentation OData

URI du point de terminaison

http://<URL du site>/_api/web/getfolderbyserverrelativeurl('/<Nom du dossier>)

Méthodes HTTP prises en charge

GET  |  POST  |  DELETE  |  MERGE  |  PUT

Exemples de requête

Exemple de requête GET : obtenir un dossier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Exemple de requête MERGE : modifier un dossier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')
    ?@target='<host web url>'",
  method: "POST",
  body: "{ '__metadata':{ 'type': 'SP.Folder' }, 'WelcomePage':'Folder B/WelcomePage.aspx' }",
  headers: {
    "content-type": "application/json; odata=verbose",
    "X-HTTP-Method": "MERGE"
  },
  success: successHandler,
  error: errorHandler
});

Exemple de requête DELETE : supprimer un dossier

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')
    ?@target='<host web url>'",
  method: "POST",
  headers: { "X-HTTP-Method":"DELETE" },
  success: successHandler,
  error: errorHandler
});

Voir Exemples de requête FolderCollection pour obtenir un exemple indiquant comment créer un dossier.

Propriétés de dossier

Pour obtenir une propriété, envoyez une requête GET au point de terminaison de la propriété, comme le montre l’exemple suivant.

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')/<property name>
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Pour définir une propriété en écriture, accédez à la ressource, définissez la valeur de la propriété dans le corps, puis utilisez la méthode MERGE de la ressource pour fusionner vos modifications ou utiliser la méthode PUT méthode pour remplacer la ressource. Voir les exemples de requêtes de dossier pour trouver un exemple.

Propriété

Type

R/W

Renvoyée avec la ressource

Description

ContentTypeOrder

Collection (SP.ContentTypeId)

R

Oui

Indique l’ordre dans lequel les types de contenu sont affichés.

Files

SP.FileCollection

R

Non

Obtient la collection de tous les fichiers contenus dans le dossier de liste. Vous pouvez ajouter un fichier à un dossier en utilisant la méthode Add sur la ressource FileCollection du dossier.

Folders

SP.FolderCollection

R

Non

Obtient la collection des dossiers de liste contenus dans le dossier de liste.

ItemCount

Int32

R

Oui

Obtient une valeur qui spécifie le nombre d’éléments dans le dossier de liste.

ListItemAllFields

SP.ListItem

R

Non

Spécifie les valeurs de champ (2) de l’élément de liste correspondant au fichier.

Name

String

R

Oui

Obtient le nom du dossier.

ParentFolder

SP.Folder

R

Non

Obtient le dossier de liste parent du dossier.

Properties

SP.PropertyValues

R

Non

Obtient la collection de tous les fichiers contenus dans le dossier.

ServerRelativeUrl

String

R

Oui

Obtient l’URL relative de serveur du dossier de liste.

UniqueContentTypeOrder

Collection (SP.ContentTypeId)

RW

Oui

Obtient ou définit une valeur qui spécifie l’ordre des types de contenu.

WelcomePage

String

RW

Oui

Obtient ou définit une valeur qui spécifie l’URL relative de dossier de la page d’accueil du dossier de liste.

Méthodes Folder

DeleteObject
RenderAsHtml

Méthode DeleteObject

Le moyen conseillé pour supprimer un dossier consiste à envoyer une requête DELETE au point de terminaison de la ressource Folder, comme indiqué dans Exemples de requête Folder.

Méthode Recycle

Déplace le dossier de liste vers la Corbeille et renvoie l’identificateur du nouvel élément de la Corbeille.

Point de terminaison

/recycle

HTTP method

POST

Paramètres

Aucun

Réponse

Type : GUID
ID de l’opération de recyclage.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')
    /recycle
    ?@target='<host web url>'",
  method: "POST",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Représentation OData

L’exemple suivant représente une ressource Folder au format JSON.

    {"d":{
      "__metadata":{,
        "id":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared Documents/Folder A')",
        "uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Folder%20A')",
        "type":"SP.Folder"
      },
      "Files":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Folder%20A')/Files"}},
      "ListItemAllFields":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Folder%20A')/ListItemAllFields"}},
      "ParentFolder":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Folder%20A')/ParentFolder"}},
      "Properties":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Folder%20A')/Properties"}},
      "Folders":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Folder%20A')/Folders"}},
      "ItemCount":7,
      "Name":"Folder A",
      "ServerRelativeUrl":"/Shared Documents/Folder A",
      "WelcomePage":""
    }}

Ressource FolderCollection

Représente une collection de ressources Folder.

URI du point de terminaison  |  Méthodes  |  Représentation OData

URI du point de terminaison

http://<url de site>/_api/web/folders (dossiers de niveau supérieur au site racine)
http://<url de site>/_api/web/getfolderbyserverrelativeurl('/<nom de dossier>')/folders

Méthodes HTTP prises en charge

GET  |  POST

Exemples de requête

Exemple de requête GET : obtenir les dossiers sur le site racine

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web/folders
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Exemple de requête GET : obtenir les dossiers d’une bibliothèque de documents

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents')/folders
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Exemple de requête GET : obtenir un dossier grâce à son nom

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')/folders('Folder B')
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Exemple de requête POST : créer un dossier (vous pouvez utiliser la méthode Add)

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web
    /getfolderbyserverrelativeurl('/Shared Documents/Folder A')/folders
    ?@target='<host web url>'",
  method: "POST",
  body: "{ '__metadata':{ 'type': 'SP.Folder' }, 'ServerRelativeUrl':'Folder B' }",
  headers: {
    "accept": "application/json; odata=verbose",
    "content-type": "application/json; odata=verbose"
  },
  success: successHandler,
  error: errorHandler
});

Voir Exemples de requêtes Folder pour obtenir des exemples de la façon de mettre à jour et de supprimer un fichier.

Méthodes FolderCollection

Ajouter
GetByUrl

Méthode Add

Ajoute à la collection le dossier situé à l’URL spécifiée.

Point de terminaison

/add(url)

Paramètres

url

Type : String
Chemin où vous souhaitez ajouter le dossier (notamment le nom du nouveau dossier) en tant qu’URL pleinement qualifiée, URL relative du serveur ou URL relative du site.

HTTP method

POST

Réponse

Type : SP.Folder
Dossier venant d’être ajouté.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web/folders
    /add('/Shared Documents/Folder A/Folder B')
    ?@target='<host web url>'",
  method: "POST",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Méthode GetByUrl

Point de terminaison

/getbyurl('<url relative du dossier serveurl>')

Paramètres

Type : String
URL relative de serveur du dossier.

HTTP method

GET

Réponse

Type : SP.User
Dossier spécifié.

  Exemple de requête

executor.executeAsync({
  url: "<app web url>/_api/SP.AppContextSite(@target)/web/folders
    /getbyurl('Folder B')
    ?@target='<host web url>'",
  method: "GET",
  headers: { "accept": "application/json; odata=verbose" },
  success: successHandler,
  error: errorHandler
});

Vous pouvez également transmettre un nom de fichier directement à une collection de fichiers. Exemple : …/folders('Folder B'). Voir Exemples de requête FolderCollection.

Représentation OData

L’exemple suivant représente une ressource FolderCollection au format JSON.

    {"d":{
      "results":[{
        "__metadata":{
          "id":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared Documents/Forms')",
          "uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Forms')",
          "type":"SP.Folder"
        },
        "Files":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Forms')/Files"}},
        "ListItemAllFields":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Forms')/ListItemAllFields"}},
        "ParentFolder":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Forms')/ParentFolder"}},
        "Properties":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Forms')/Properties"}},
        "Folders":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/Forms')/Folders"}},
        "ItemCount":0,
        "Name":"Forms",
        "ServerRelativeUrl":"/Shared Documents/Forms",
        "WelcomePage":""
        },{
        "__metadata":{
          "id":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared Documents/folderName')",
          "uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/folderName')",
          "type":"SP.Folder"
        },
        "Files":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/folderName')/Files"}},
        "ListItemAllFields":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/folderName')/ListItemAllFields"}},
        "ParentFolder":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/folderName')/ParentFolder"}},
        "Properties":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/folderName')/Properties"}},
        "Folders":{"__deferred":{"uri":"http://<site url>/_api/Web/GetFolderByServerRelativeUrl('/Shared%20Documents/folderName')/Folders"}},
        "ItemCount":4,
        "Name":"folderName",
        "ServerRelativeUrl":"/Shared Documents/folderName",
        "WelcomePage":""
      }]}}

Ressources supplémentaires