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
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 |
Description |
|
---|---|---|---|---|
Author |
R |
Non |
Obtient une valeur qui spécifie l’utilisateur ayant ajouté le fichier. |
|
CheckedOutByUser |
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 |
R |
Non |
Obtient une valeur qui spécifie les valeurs de champ de l’élément de liste correspondant au fichier. |
|
LockedByUser |
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 |
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 |
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 |
|
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 |
|
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 |
|
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 |
Envoyer le contenu du fichier (flux) dans le corps de publication. |
HTTP method |
POST |
Response |
Type : Int64 |
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 |
|
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 |
|
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 |
Envoyer le contenu du fichier (flux) dans le corps de publication. |
HTTP method |
POST |
Response |
Type : SP.File |
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 |
|
HTTP method |
GET |
Réponse |
Type : SP.WebParts.LimitedWebPartManager |
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 |
|
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 |
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 |
|
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 |
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 |
Envoyer le contenu du fichier (flux) dans le corps de publication. |
HTTP method |
POST |
Response |
Type : Int64 |
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 |
|
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
Méthode Add
Point de terminaison |
/add(content, overwrite, url) |
Paramètres |
|
HTTP method |
POST |
Réponse |
Type : SP.File |
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 |
|
HTTP method |
POST |
Réponse |
Type : SP.File |
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 |
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 |
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 |
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
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 |
|
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 |
|
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 |
|
HTTP method |
GET |
Réponse |
Type : SP.FileVersion |
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 |
|
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 |
Description |
|
---|---|---|---|---|
ContentTypeOrder |
Collection (SP.ContentTypeId) |
R |
Oui |
Indique l’ordre dans lequel les types de contenu sont affichés. |
Files |
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 |
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 |
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 |
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
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 |
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
Méthode Add
Ajoute à la collection le dossier situé à l’URL spécifiée.
Point de terminaison |
/add(url) |
Paramètres |
|
HTTP method |
POST |
Réponse |
Type : SP.Folder |
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 |
HTTP method |
GET |
Réponse |
Type : SP.User |
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
Utilisation de dossiers et de fichiers à l’aide de l’interface REST
Effectuer des opérations de base à l’aide de terminaux REST SharePoint 2013
Flux d’authentification et d’autorisation d’OAuth pour les applications hébergées en nuage
Utiliser les opérations de requête OData dans les demandes REST SharePoint