NetExplorer - API REST

Ce document présente les fonctionnalités exposées par l'API NetExplorer.
Celle-ci est basée sur l'architecture REST, reposant sur le protocole HTTP, permettant ainsi aux développeurs de tirer pleinement parti de leur plateforme de stockage NetExplorer, et mettre au point une solution logicielle répondant aux besoins de leur entreprise.

L'API est accessible en ajoutant /api à l'adresse de votre plateforme.
L'accès aux différents modules se fera donc via des URLs sous la forme https://exemple.fr/api/module.

Enfin, si vous souhaitez rester informé des modifications de la documentation API, vous pouvez vous inscrire à notre liste de diffusion dédiée en cliquant ici : Rester informé


En-têtes HTTP utilisés pour les requêtes:

AsId de l'utilisateur pour une requête "en tant que", si disponible (dépend de l'utilisateur connecté, et des méthodes appelées).
Content-LengthTaille en octet du contenu envoyé, si applicable.
Content-Typeapplication/json (défaut)
Détermine le format du contenu envoyé par le client au serveur (si la requête nécéssite l'envoi de données).
AuthorizationContient le token d'authentification de l'utilisateur (sous la forme "Bearer <token>").
Il s'obtient après avoir authentifié l'utilisateur via les méthodes appropriées.
Certaines méthodes ne nécéssiteront pas de token.

Info Consultez la section Authentification pour savoir comment obtenir un token.


En-têtes HTTP utilisés pour les réponses:

Content-LengthTaille en octet du contenu retourné.
Content-Typeapplication/json
Détermine le format du contenu qui est retourné par le serveur.

Info Les codes HTTP standards sont à prendre en compte lorsque le serveur répond aux requêtes.

Quelques en-têtes communs:

200 OkLa requête a été traitée avec succès, et le corps de la réponse contient du contenu à traiter.
Si le corps devait être vide, le serveur renverrait un code 204 No Content à la place.
204 No ContentLa demande a bien été traitée avec succès, mais la méthode appelée ne génère aucun contenu.
Le corps de la réponse sera donc vide.
Equivaut à un code 200 Ok.
401 UnauthorizedCe code de retour signifie que le token d'authentification n'a pas été fourni ou que celui-ci n'est plus valide et qu'un nouveau doit être demandé.
403 ForbiddenLe token d'authentification est valide, mais les droits d'accès de l'utilisateur ne lui permettent pas d'accéder à la ressource.
404 Not FoundLa ressource recherchée n'existe pas (utilisateur, fichier, dossier, ...)
500 Internal Server ErrorLe serveur a rencontré un problème lors du traitement de la demande.
Si le serveur retourne un corps dans la réponse, le message d'erreur donnera plus d'informations sur son origine.
Si aucun corps n'est présent, il peut alors s'agir d'un cas d'erreur interne. Il vous faudra alors nous contacter pour essayer d'en savoir plus.

Note Les structures présentées ci-dessous sont affichées sous la forme d'un objet JSON. Il s'agit du seul format proposé par l'API.
Pour l'exploiter correctement, certains points sont à savoir:

  • Les dates sont toujours soit au format ISO 8601, soit sous forme de timestamp unix.
  • Les identifiants uniques des utilisateurs/groupes sont des chaines de caractères (string) et non pas des entiers numériques (int).
  • Les tailles des fichiers/dossiers sont toujours indiquées en octets, et doivent être considérées comme des long.

Structure d'un dossier


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique du dossier.
namestringNom du dossier.
parent_idintIdentifiant numérique unique du dossier parent.
can_read
Lecture seule
boolIndique si l'utilisateur courant peut avoir un aperçu des documents présents dans ce dossier.
can_download
Lecture seule
boolIndique si l'utilisateur courant peut télécharger des documents présents dans ce dossier.
can_write
Lecture seule
boolIndique si l'utilisateur courant peut créer de nouveaux fichiers dans ce dossier.
can_edit
Lecture seule
boolIndique si l'utilisateur courant peut modifier des documents présents dans ce dossier.
can_delete
Lecture seule
boolIndique si l'utilisateur courant peut supprimer des documents présents dans ce dossier.
can_share
Lecture seule
boolIndique si l'utilisateur courant peut partager des documents présents dans ce dossier avec des personnes extérieures.
creation
Lecture seule
Indisponible en mode light
dateDate de création du dossier.
modification
Lecture seule
Indisponible en mode light
dateDate de dernière modification du contenu du dossier.
owner
Lecture seule
Indisponible en mode light
stringNom complet de l'utilisateur propriétaire du dossier.
owner_id
Lecture seule
Indisponible en mode light
stringIdentifiant unique de l'utilisateur propriétaire du dossier.
can_dlink
Lecture seule
Mode complet uniquement
boolIndique si l'utilisateur peut générer un lien de téléchargement sur ce dossier, en prenant en compte les droits d'accès et les informations de configuration de la plateforme.
can_ulink
Lecture seule
Mode complet uniquement
boolIndique si l'utilisateur peut générer un lien de dépôt sur ce dossier, en prenant en compte les droits d'accès et les informations de configuration de la plateforme.
can_admin_rights
Lecture seule
Mode complet uniquement
boolIndique si l'utilisateur courant peut gérer les droits sur le dossier.
can_admin_alerts
Lecture seule
Mode complet uniquement
boolIndique si l'utilisateur courant peut gérer les alertes emails sur le dossier.
self_alert
Mode complet uniquement
Optionnel
bool ou non définiIndique si l'utilisateur courant est alerté des modifications sur le dossier.
Si l'option self_alert de la configuration n'est pas activée, ce champ sera totalement absent des réponses.
shared
Lecture seule
Mode complet uniquement
boolIndique si le dossier est un dossier d'un espace privé qui a été partagé.
nb_participants
Lecture seule
Mode complet uniquement
Optionnel
int ou non définiNombre de participants invités sur le dossier.
Valeur présente uniquement si > 0.
nb_annotations
Lecture seule
Mode complet uniquement
Optionnel
int ou non définiNombre d'annotations sur le dossier.
Valeur présente uniquement si > 0.
nb_unread_annotations
Lecture seule
Mode complet uniquement
Optionnel
int ou non définiNombre d'annotations non-lues sur le dossier.
Valeur présente uniquement si > 0.
size
Lecture seule
Mode complet uniquement
intTaille en octets du dossier.
nb_d_folders
Lecture seule
Mode complet uniquement
intNombre de sous-dossiers présents, sans prendre en compte toute l'arborescence inférieure.
nb_d_files
Lecture seule
Mode complet uniquement
intNombre de fichiers présents, sans prendre en compte toute l'arborescence inférieure.
nb_folders
Lecture seule
Mode complet uniquement
intNombre total de sous-dossiers (totalité de l'arborescence).
nb_files
Lecture seule
Mode complet uniquement
intNombre total de fichiers (totalité de l'arborescence).
quota
Mode complet uniquement
intQuota d'espace disque appliqué au dossier.
0 = illimité, -1 = Hériter du dossier parent, sinon un nombre d'octets.
purge_frequency
Mode complet uniquement
intDélai après lequel les fichiers sont automatiquement supprimés du dossier.
0 = désactivé, sinon un nombre de jours
path
Lecture seule
Mode complet uniquement
stringChemin d'accès au dossier, composé des identifiants uniques des dossiers parents.
path_name
Lecture seule
Mode complet uniquement
stringChemin d'accès au dossier, composé des noms des dossiers parents, limité par les droits d'accès de l'utilisateur.
content
Lecture seule
Mode complet uniquement
ObjectContient 2 entrées, "files" et "folders", contenant les listes de fichiers et dossiers contenu dans le dossier courant.
Ne sera retourné que si le listing récursif est demandé et que le niveau de profondeur indiqué n'a pas été atteint.
{
    "files": [
        // Objets Fichier
        {
            "id": 1,
            "name": "MonFichier.txt",
            ...
        },
        ...
    ],
    "folders": [
        // Objets Dossier
        {
            "id": 1,
            "name": "Sous-dossier",
            ...
        },
        ...
    ]
}

Exemple d'objet JSON


{
    "id": 1,
    "name": "Documents",
    "parent_id": 0,
    "can_read": true,
    "can_download": true,
    "can_write": false,
    "can_edit": false,
    "can_delete": false,
    "can_share": true,
    "content": {
        "files": [
            {
                "id": 1,
                "name": "Fichier",
                ...
            },
            ...
        ],
        "folders": [
            {
                "id": 2,
                "name": "Sous-dossier",
                ...
            },
            ...
        ]
    },
    
    // Les paramètres suivants ne sont pas disponibles en mode light
    "creation": "2015-08-01T02:00:00+02:00",
    "modification": "2015-08-01T02:00:00+02:00",
    "owner": "Jean DUPOND",
    "owner_id": "4",
    
    // Les paramètres suivants ne sont disponibles qu'en mode complet
    "can_dlink": true,
    "can_ulink": true,
    "can_admin_rights": false,
    "can_admin_alerts": false,
    "self_alert": true,
    "nb_participants": 0,
    "nb_annotations": 4,
    "nb_unread_annotations": 1,
    "size": 1128963,
    "nb_d_folders": 1,
    "nb_d_files": 5,
    "nb_folders": 1,
    "nb_files": 14,
    "quota": -1,
    "purge_frequency": 0,
    "path": "/"
}

Structure d'un fichier


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique du fichier.
namestringNom du fichier.
parent_idintIdentifiant numérique unique du dossier parent.
creation
Lecture seule
Indisponible en mode light
dateDate de création de la version courante du fichier.
modification
Lecture seule
dateDate de dernière modification de la version la plus récente du fichier.
can_download
Lecture seule
boolIndique si l'utilisateur courant peut télécharger le fichier.
can_write
Lecture seule
boolIndique si l'utilisateur courant peut créer de nouvelles versions du fichier.
can_edit
Lecture seule
boolIndique si l'utilisateur courant peut modifier une version existante du fichier.
can_delete
Lecture seule
boolIndique si l'utilisateur courant peut supprimer le fichier.
can_share
Lecture seule
boolIndique si l'utilisateur courant peut partager le fichier vers l'exterieur.
owner
Lecture seule
Indisponible en mode light
stringNom complet de l'utilisateur propriétaire du fichier.
owner_id
Lecture seule
Indisponible en mode light
stringIdentifiant unique de l'utilisateur propriétaire du fichier.
hash
Lecture seule
string[32]Hash MD5 du fichier.
lock
Lecture seule
Verrou ou nullContient les informations sur le verrou actuellement en place, s'il y en a un.
Sinon, vaut null.
nb_versions
Lecture seule
Mode complet uniquement
Optionnel
int ou non définiNombre de versions existantes pour ce fichier.
Valeur présente uniquement si > 1.
nb_annotations
Lecture seule
Mode complet uniquement
Optionnel
int ou non définiNombre d'annotations sur le fichier.
Valeur présente uniquement si > 0.
nb_unread_annotations
Lecture seule
Mode complet uniquement
Optionnel
int ou non définiNombre d'annotations non-lues sur le fichier.
Valeur présente uniquement si > 0
meta
Lecture seule
Mode complet uniquement
Optionnel
Object ou non défini

Contient les méta-données du document.
Le tableau a le format suivant:

"author": "Luc MARCHAND",  // Auteur du document
"creator": "LibreOffice",  // Logiciel de traitement de texte utilisé
"date": "Sun Sep  1 00:00:00 2013",  // Date de dernière édition du document
"keywords": "mots clés document",  // Mots clés
"pages": 10,  // Nombre de pages
"producer": "GhostScript",  // Logiciel ayant produit le fichier
"subject": "Détail des ventes pour l'année 2013",  // Sujet détaillé du document
"title": "Rapport ventes 2013"  // Titre du document
thumb_token
Lecture seule
Mode complet uniquement
Optionnel
string ou non définiToken d'accès aux miniatures de ce fichier si le format est supporté.
file_type
Lecture seule
Mode complet uniquement
Optionnel
string ou non définiType d'aperçu du fichier. Peut valoir image, document ou video si l'aperçu est disponible pour ce fichier.
download_token
Lecture seule
Mode complet uniquement
stringToken d'accès pour le téléchargement du fichier.
path
Lecture seule
Mode complet uniquement
stringChemin d'accès au fichier, composé des identifiants uniques des dossiers parents.

Exemple d'objet JSON


{
    "id": 458,
    "name": "MonImage.jpg",
    "parent_id": 1,
    "creation": "2015-08-01T02:00:00+02:00",
    "modification": "2015-08-01T02:00:00+02:00",
    "can_download": true,
    "can_write": false,
    "can_edit": false,
    "can_delete": false,
    "can_share": true,
    "owner": "Jean DUPOND",
    "owner_id": "4",
    "hash": "d41d8cd98f00b204e9800998ecf8427e",
    "lock": null,
    
    // Les paramètres suivants ne sont disponibles qu'en mode complet
    "nb_versions": 7,
    "nb_annotations": 4,
    "nb_unread_annotations": 1,
    "meta": {
        "author": "Luc MARCHAND",
        "creator": "LibreOffice",
        "date": "Sun Sep  1 00:00:00 2013",
        "keywords": "mots clés document",
        "pages": 10,
        "producer": "GhostScript",
        "subject": "Détail des ventes pour l'année 2013",
        "title": "Rapport ventes 2013"
    },
    "thumbs_token": "2uYPfBWitiof...",
    "file_type": "image",
    "download_token": "RQ2gNV8XFOenlJkCRE0ZC8Sw1b...",
    "path": "/1/"
}

Structure d'un élément de la corbeille


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique de l'élément de la corbeille.
name
Lecture seule
stringNom de l'élément de la corbeille.
is_file
Lecture seule
boolIndique s'il s'agit d'un fichier ou d'un dossier.
deletion
Lecture seule
dateDate de suppression du fichier.
modification
Lecture seule
dateDate de dernière modification du fichier avant suppression.
owner
Lecture seule
stringNom complet de l'utilisateur propriétaire du fichier supprimé.
owner_id
Lecture seule
stringIdentifiant unique de l'utilisateur propriétaire du fichier supprimé.
size
Lecture seule
intTaille de l'élément de la corbeille.
nb_folders
Lecture seule
Optionnel
int ou non définiNombre de sous-dossiers présents dans le dossier.
Ne s'applique pas aux fichiers
nb_files
Lecture seule
Optionnel
int ou non définiNombre de fichiers présents dans le dossier.
Ne s'applique pas aux fichiers

Exemple d'objet JSON


{
    "id": 11567,
    "name": "MonFichier.txt",
    "is_file": true,
    "deletion": "2015-07-18T20:59:00+0200",
    "modification": "2015-06-24T15:45:28+0200",
    "owner": "Bob Jensen",
    "owner_id": "22",
    "size": 15632
}

Structure d'une annotation


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique de l'annotation.
target_idintIdentifiant numérique unique du fichier ou du dossier.
target_typestringType d'objet rattaché. Vaut "file" ou "folder".
owner
Lecture seule
stringNom complet de l'auteur de l'annotation.
owner_id
Lecture seule
stringIdentifiant unique de l'auteur de l'annotation.
date
Lecture seule
dateDate à laquelle l'annotation a été créé.
textstringContenu textuel de l'annotation
conversationint ou nullIdentifiant unique de l'annotation dont ce message est la réponse.

Exemple d'objet JSON


{
    "id": 24,
    "target_id": 11567,
    "target_type": "file",
    "owner": "Jack JAUFFRE",
    "owner_id": "4558",
    "date": "2015-07-28T12:58:26+02:00",
    "text": "Voici le contenu de mon annotation",
    "conversation": null
}

Structure d'un verrou


NomTypeDescription
file
Lecture seule
intIdentifiant numérique unique du fichier auquel ce verrou est rattaché.
owner
Lecture seule
stringNom complet du propriétaire du verrou.
owner_id
Lecture seule
stringIdentifiant unique du propriétaire du verrou.
locked
Lecture seule
boolIndique si le fichier est actuellement verrouillé, quelque soit l'utilisateur l'ayant verrouillé.
writeable
Lecture seule
boolIndique si le fichier est accessible en écriture.
Peut être à true même si locked = true, notamment si le fichier est verrouillé par l'utilisateur courant.
readable
Lecture seule
boolIndique si le fichier est accessible en lecture, notamment si le fichier n'est verrouillé qu'en écriture.
date
Lecture seule
dateDate à laquelle le verrouillage a été créé.

Exemple d'objet JSON


{
    "file": 11567,
    "owner": "Edouard DESPEREAUX",
    "owner_id": "125696",
    "locked": true,
    "writeable": false,
    "readable": true
}

Structure d'un droit


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique du droit.
folder_id
Lecture seule
intIdentifiant numérique unique du dossier.
target_idintIdentifiant unique de l'utilisateur auquel est accordé le droit.
target
Lecture seule
stringNom complet de l'utilisateur cible.
browseboolIndique si l'utilisateur a le droit de naviguer dans le dossier.
Si ce champ vaut false, l'utilisateur n'aura plus accès au dossier courant.
readboolIndique si l'utilisateur peut voir la liste des fichiers du dossier courant, et en avoir un aperçu.
downloadboolIndique si l'utilisateur peut télécharger les fichiers présents dans le dossier.
writeboolIndique si l'utilisateur peut ajouter de nouveaux fichiers.
editboolIndique si l'utilisateur peur modifier un fichier existant.
deleteboolIndique si l'utilisateur peut supprimer un fichier de ce dossier.
shareboolIndique si l'utilisateur peut inviter des participants à collaborer sur le dossier, et créer des liens de téléchargement/dépôt.

Exemple d'objet JSON


{
    "id": 56629,
    "folder_id": 36948,
    "target_id": "4673",
    "target": "albert.dupond",
    
    "browse": true,
    "read": true,
    "download": true,
    "write": false,
    "edit": false,
    "delete": false,
    "share": false
}

Structure d'une alerte email


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique de l'alerte.
folder_id
Lecture seule
intIdentifiant numérique unique du dossier.
target_idintIdentifiant unique de l'utilisateur ou du groupe alerté.
target
Lecture seule
stringNom complet de l'utilisateur cible, ou nom du groupe.
target_isgroup
Lecture seule
boolIndique si la cible est un utilisateur (true) ou un groupe (false).
emailintIdentifiant numérique unique de l'objet Email utilisé pour l'envoi de l'alerte.
expiration_datedate ou nullDate d'expiration de l'alerte.
Après cette date, l'alerte existera toujours, mais sera considérée comme inactive.
Le champs vaut null si aucune date d'expiration n'a été définie.
owner
Lecture seule
stringNom complet de l'utilisateur ayant créé l'alerte.
owner_id
Lecture seule
stringIdentifiant unique de l'utilisateur ayant créé l'alerte.

Exemple d'objet JSON


{
    "id": 104,
    "folder_id": 1,
    "target_id": 3,
    "target": "José SANCHEZ",
    "target_isgroup": false,
    "active": true,
    "email": -1,
    "expiration_date": null,
    "owner": "Hervé FIGIS",
    "owner_id": 14
}

Structure d'un utilisateur


NomTypeDescription
id
Lecture seule
stringIdentifiant unique de l'utilisateur.
lastnamestringPrénom de l'utilisateur.
firstnamestringNom de l'utilisateur.
loginstringIdentifiant de l'utilisateur.
emailstringAdresses emails de l'utilisateur, séparées par des virgules.
roots
Lecture seule
int[]Liste des identifiants numériques uniques des dossiers racines de l'utilisateur.
Utilisé pour constituer son arborescence de base.
organizationstringNom de la société dont fait partie l'utilisateur.
Attention En fonction de la configuration de la plateforme, un groupe sera créé et portera ce nom.
L'utilisateur y sera ensuite automatiquement ajouté.
phonestringListe des numéros de téléphones de l'utilisateur, séparés par des virgules.
Ce champs n'a aucune utilité au sein de NetExplorer, mais peut être utilisé par des applicatifs tiers via l'API.
activeboolIndique si le compte de l'utilisateur est actif ou non.
languagestringLangue utilisée par la plateforme web pour traduire les labels de langue.
Par défaut, la valeur auto permet de choisir la langue en fonction de celle du navigateur.

Sinon, 6 langues sont disponibles :
Code langueLangue
frFrançais
enAnglais
esEspagnol
ptPortugais
cnChinois
deAllemand
itItalien
current_language
Lecture seule
stringLangue actuellement utilisée pour l'utilisateur courant. Permet de connaitre la langue utilisée lorsque language vaut auto.
Attention Ce champ n'est visible que dans les informations personnelles retournées par la méthode GET /account.
quotaint ou nullQuota en octets appliqué au contenu créé par l'utilisateur.
expiredate ou nullDate d'expiration du compte.
Arrivé à échéance, le compte apparait comme désactivé mais n'est pas supprimé.
creation_datedate ou nullDate de création du compte.
Peut être null pour les comptes créés avant l'ajout de cette propriété.
last_logindate ou nullDate de dernière connexion du compte.
Peut être null pour les comptes qui ne se sont jamais connectés.
plugin_outlook
Optionnel
int ou non définiSi le plugin Outlook est autorisé sur la plateforme, ce champs indique quel est l'identifiant numérique unique du dossier où sont stockées les pièces jointes de l'utilisateur.
ldap
Lecture seule
boolIndique si le compte provient d'un annuaire externe.
Attention Si ce champs vaut true, le seul champ modifiable est le champ "groups".
can_edit_optionsboolIndique si l'utilisateur peut modifier lui même les informations de son compte via la méthode PUT /account
can_admin
Lecture seule
boolIndique si l'utilisateur est administrateur de la plateforme.
can_admin_users
Lecture seule
boolIndique si l'utilisateur peut gérer les comptes utilisateurs.
Vaudra true si l'utilisateur est administrateur de la plateforme ou délégué d'un groupe avec l'option users active.
groupsGroupe[]Liste des groupes dont l'utilisateur est membre.
Il est possible de rajouter des entrées ne contenant que l'id du groupe pour qu'il y soit ajouté automatiquement.
delegate_ofGroupe[]Liste des groupes dont l'utilisateur est délégué.
has_mfa_yubikeyboolIndique si l'utilisateur a configuré une double authentification Yubikey.
has_mfa_otpboolIndique si l'utilisateur a configuré une double authentification OTP.
has_mfa_smsboolIndique si l'utilisateur a configuré une double authentification SMS.
can_mfa_yubikeyboolIndique si l'utilisateur peut configurer une double authentification Yubikey.
can_mfa_otpboolIndique si l'utilisateur peut configurer une double authentification OTP.
can_mfa_smsboolIndique si l'utilisateur peut configurer une double authentification SMS.
mfa_requiredboolIndique si l'utilisateur est obligé de configurer une double authentification.

Exemple d'objet JSON


{
    "id": "15",
    "firstname": "Noël",
    "lastname": "FLANTIER",
    "login": "n.flantier",
    "email": "nfl@oss.gouv.fr",
    
    "roots": [
        14,
        18,
        24
    ],
    
    "organization": "OSS",
    "phone": "",
    "active": true,
    "language": "fr",
    "quota": null,
    "expire": null,
    "creation_date": null,
    "last_login": "2020-06-16T13:14:08+00:00",
    "plugin_outlook": 128,
    "ldap": false,
    "can_edit_options": true,
    "can_admin": false,
    "can_admin_users": false,
    "groups": [
        {
            "id": 4,
            "login": "Agents opérationnels",
            "ldap": false
        },
        {
            "id": 14,
            "login": "Top Secret",
            "ldap": false
        }
    ],
    "has_mfa_yubikey": false,
    "has_mfa_otp": false,
    "has_mfa_sms": true,
    "can_mfa_yubikey": false,
    "can_mfa_otp": false,
    "can_mfa_sms": true,
    "mfa_required": false
}

Structure d'une invitation


NomTypeDescription
id
Lecture seule
stringIdentifiant unique de l'invitation.
keystringClé de l'invitation qui va permettre à l'utilisateur de procéder à la création de son compte.
source
Lecture seule
stringIdentifiant de l'utilisateur ayant procédé à l'invitation.
source_name
Lecture seule
stringNom de l'utilisateur ayant procédé à l'invitation.
targetstringAdresse email de l'utilisateur invité.
expirationdate ou nullDate d'expiration de l'invitation.
Arrivé à échéance, l'utilisateur invité ne pourra pas créer de compte avec cette invitation.
folderintIdentifiant du dossier auquel l'utilisateur aura accès une fois son compte crée.
rights
Lecture seule
intCorrespondance des droits à appliquer à la création du compte.
ValeurDroits
1Lecture
2Téléchargement
4Écriture
8Édition
16Suppression
32Partage

Exemple d'objet JSON


{
    "id": 9,
    "key": "3Rjy060qP5rrJx4qRz5KdcTS",
    "source": 5,
    "source_name": "Bob Herry",
    "target": "bob.herry@oss.gouv.fr",
    "expiration": null,
    "folder": 64,
    "rights": 3
}

Structure d'un groupe


NomTypeDescription
id
Lecture seule
stringIdentifiant unique du groupe.
loginstringNom du groupe.
ldap
Lecture seule
boolIndique si le groupe provient d'un annuaire externe.
Attention Si ce champs vaut true, l'objet sera alors en lecture seule.
membersUtilisateur[]Liste des membres du groupe.

Exemple d'objet JSON


{
    "id": "78",
    "login": "Marketing",
    "ldap": false,
    "members": [
        {
            "id": "14",
            "firstname": "Jacques",
            "lastname": "JOBERT",
            "login": "jjobert",
            ...
        },
        {
            "id": "145",
            "firstname": "Elodie",
            "lastname": "CARNERA",
            "login": "ecarnera",
            ...
        },
        ...
    ]
}

Structure des options de connexions


NomTypeDescription
target_idstringIdentifiant unique de l'utilisateur ou du groupe auquel s'applique les options.
target
Lecture seule
stringNom complet de l'utilisateur ou du groupe auquel s'applique les options.
target_isgroup
Lecture seule
boolIndique si la cible est un utilisateur ou un groupe.
ipsstring[] ou nullListe blanche des IPs autorisées à se connecter à la plateforme.
Attention Si un tableau vide est fourni au lieu de null, cet utilisateur ou ce groupe ne pourra pas se connecter.
Cela peut être utilisé par exemple pour bloquer l'accès à un groupe complet.
daysintMasque numérique des jours de connexion autorisés.
Il suffit d'additionner les valeurs, le résultat correspond au masque.
Ex: Mardi + Jeudi = 4 + 16 = 20.
ValeurJour
1Dimanche
2Lundi
4Mardi
8Mercredi
16Jeudi
32Vendredi
64Samedi
128Dimanche
hour_starttime ou nullHeure GMT à partir de laquelle les utilisateurs peuvent se connecter.
hour_endtime ou nullHeure GMT à partir de laquelle les utilisateurs ne peuvent plus se connecter.
can_netsyncboolIndique si l'utilisateur a le droit d'utiliser la synchronisation ou non.
inherited
Lecture seule
boolUtilisateurs Indique si les options de connexions sont hérités d'un groupe ou définies explicitement sur l'utilisateur.
Groupes Pour les groupe, ce champ vaut toujours false.

Exemple d'objet JSON


{
    "target_id": "1",
    "target": "Administrateurs NetExplorer",
    "target_isgroup": true,
    "ips": null,
    "days": 62,  // Lundi => Vendredi
    "hour_start": "07:00:00",  // 7h GMT
    "hour_end": "16:00:00",  // 16h GMT
    "can_netsync": true,
    "inherited": false
}

Structure d'un délégué de groupe


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique de l'entrée de délégation.
user
Lecture seule
stringNom complet de l'utilisateur délégué.
user_idstringIdentifiant unique de l'utilisateur délégué.
group_idstringIdentifiant unique du groupe dont l'utilisateur sera le délégué.
usersboolIndique si le délégué pourra gérer les utilisateurs au sein du groupe.
securityboolIndique si le délégué pourra gérer les droits d'accès pour le groupe et ses utilisateurs.
Le délégué ne pourra jamais accorder plus de droit qu'il n'en possède.
alertsboolIndique si le délégué pourra mettre en place des alertes emails pour les utilisateurs de son groupe.

Exemple d'objet JSON


{
    "id": 60,
    "user": "Jennifer BRANT",
    "user_id": 186,
    "group_id": 17,
    "users": true,
    "security": false,
    "alerts": true
}

Structure d'un email


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique de l'email.
objectstringObjet de l'email.
contentstringContenu de l'email. Texte ou HTML accepté.
typestringEnumération pouvant prendre les valeurs suivantes:
ValeurUtilisation
EM_TE_DEFAUTUtilisation interne Email par défaut de NetExplorer.
EM_TE_ALERTAlerte email personnalisée.
EM_TE_SENDEDEmail envoyé par le système (ex: identifiants d'accès).
EM_TE_TOSENDPermet de stocker un email dans la base.
owner
Lecture seule
stringNom complet du propriétaire de l'email.
owner_idstringIdentifiant unique de l'utilisateur propriétaire de l'email.
fromstringAdresse email de l'expéditeur de l'email.
Attention Seuls les emails de type EM_TE_SENDED et EM_TE_TOSEND sont concernés.
Pour les emails de type EM_TE_SENDED, ce champ est en lecture seule.
tostringAdresses emails des destinataires de l'email, séparées par des virgules.
Attention Seuls les emails de type EM_TE_SENDED et EM_TE_TOSEND sont concernés.
Pour les emails de type EM_TE_SENDED, ce champ est en lecture seule.
bcc
Obsolète
stringAdresses emails des destinataires des copies cachées de l'email, séparées par des virgules.
Attention Seuls les emails de type EM_TE_SENDED et EM_TE_TOSEND sont concernés.
Pour les emails de type EM_TE_SENDED, ce champ est en lecture seule.
last_send
Lecture seule
date ou nullDate du dernier envoi de cet email. Vaudra null si le mail n'a jamais été expédié.


Structure d'un lien de partage


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique du lien de partage.
keystringClé de téléchargement du lien de partage.
Il est possible de réutiliser la même clé pour plusieurs fichiers.
Les différents fichiers seront alors listés ensemble lorsque le destinataire ouvrira le lien.
files
Lecture seule
arrayListe d'objets Fichier contenu dans le lien de partage.
is_valid
Lecture seule
boolIndique si le fichier est téléchargeable via ce lien ou non.
expiration_datedate ou nullDate d'expiration du lien. Lorsque le lien expire, le lien n'est pas supprimé mais le fichier n'est plus téléchargeable par celui-ci.
password_protected
Lecture seule
string ou nullClé unique indiquant si le fichier est protégé par mot de passe ou non.
Si la même clé est utilisée pour 2 liens différents, le mot de passe est alors le même.
Vaut null si le lien est n'est pas protégé par mot de passe.
remaining_downloadsint ou nullNombre de téléchargements restants.
thumb_token
Lecture seule
Optionnel
string ou non définiClé de téléchargement de la miniature du fichier.
A utiliser avec le générateur de miniatures rattaché à la plateforme.
Attention Ce champ n'est renseigné que si le générateur de miniatures gère ce format de fichiers.
file_type
Lecture seule
Optionnel
string ou non définiType de fichier. Peut valoir image ou document.
Attention Ce champ n'est renseigné que si le générateur de miniatures gère ce format de fichiers.
owner
Lecture seule
stringNom complet de l'utilisateur ayant généré le lien de partage.
owner_idstringIdentifiant unique de l'utilisateur.
nb_downloads
Lecture seule
Propriétaire de l'objet uniquement
intNombre de téléchargements effectués sur ce lien.
max_downloads
Propriétaire de l'objet uniquement
intNombre de téléchargements maximum avant désactivation du lien.
notify
Propriétaire de l'objet uniquement
boolNotifier l'utilisateur ayant généré le lien de partage lors du téléchargement du fichier par le destinataire.
autoupdateboolIndique si le lien pointe toujours vers la dernière version du fichier cible ou non.
only_previewboolIndique si le lien donne le droit uniquement à l'aperçu des fichiers.
force_dlboolIndique si le lien déclenchera un téléchargement forcé.
stats
Propriétaire de l'objet uniquement
Object

Retourne un ensemble d'informations sur les téléchargements du liens.
On y retrouve 2 champs :

downloadsInformations détaillées sur les téléchargements qui ont eu lieu.
usersNombre d'utilisateurs différents ayant téléchargé un ou plusieurs fichiers attachés au lien.

"downloads": [
    {
        "id": 124589,
        "date": "2016-01-25T19:58:56Z",
        "user": null,
        "user_id": null,
        "geo": {
            "city": "Lyon",
            "country": "France",
            "loc": "Lyon, France"
        },
        "env": {
            "browser": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36",
            "os": "Mac OS X",
            "os_type": 2
        }
    }
],
"users": 2

Exemple d'objet JSON


{
    "id": 4559,
    "key": "258fqwu987y57D",
    "file_id": 1,
    "file": "Guide de prise en main.pdf",
    "file_size": 455663,
    "is_valid": true,
    "expiration_date": null,
    "password_protected": "5e3db300c59409695d5e3943e5f2532486e7b8dd",
    "remaining_downloads": null,
    "thumb_token": "JB%252F3j3r7Q%25[...]z2MXMloxO3kcAw%253D%253D",
    "file_type": "document",
    "owner": "Amir BEN OUALI",
    "owner_id": 55,
    "nb_downloads": 45,
    "max_downloads": null,
    "notify": true,
    "autoupdate": false,
    "stats": {
        "downloads": [
            {
                "id": 124589,
                "date": "2016-01-25T19:58:56Z",
                "user": null,
                "user_id": null,
                "geo": {
                    "city": "Lyon",
                    "country": "France",
                    "loc": "Lyon, France"
                },
                "env": {
                    "browser": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36",
                    "os": "Mac OS X",
                    "os_type": 2
                }
            }
        ],
        "users": 2
    }
}

Structure d'un lien de dépôt


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique du lien de dépôt.
keystringClé d'accès au lien de dépôt.
folder
Propriétaire de l'objet uniquement
stringNom du dossier de destination.
folder_idint ou nullIdentifiant numérique unique du dossier dans lequel déposer les documents.
Peut être défini à null si le dossier de destination n'existe plus.
is_valid
Lecture seule
boolIndique si le lien de dépôt est toujours accessible.
Pour cela, il ne doit pas être expiré et le dossier de destination doit être toujours présent.
owner
Lecture seule
stringNom complet de l'utilisateur propriétaire du lien de dépôt.
owner_idstringIdentifiant unique de propriétaire.

Exemple d'objet JSON


{
    "id": 4456,
    "key": "258fqwu987y57D",
    "folder": "Dépôt externe",
    "folder_id": 4,
    "is_valid": true,
    "expiration_date": "2018-01-01T12:00:00+00:00",
    "owner": "Erica JONES",
    "owner_id": "3"
}

Structure d'une entrée des journaux d'évènements


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique de l'entrée des journaux.
user_id
Lecture seule
stringIdentifiant unique de l'utilisateur à l'origine de l'action.
Toute action de la part d'un utilisateur non connecté sera affichée comme provenant du compte Invité.
user
Lecture seule
stringNom complet de l'utilisateur.
date
Lecture seule
dateDate à laquelle l'évènement s'est produit.
message
Lecture seule
stringInformations complétaires spécifiques à l'évènement.
ip
Lecture seule
stringAdresse IP de connexion de l'utilisateur.
user_agent
Lecture seule
stringChaine d'identification du navigateur internet ou de l'outil utilisé pour la connexion.
type
Lecture seule
stringType d'évènement enregistré.
statut
Lecture seule
stringIndique si l'évènement est un succès (ADMLLOG_OK) ou un échec (ADMLLOG_ERROR).
object_id
Lecture seule
stringIdentifiant unique de l'élément affecté par la requête.
object_type
Lecture seule
stringType de l'objet affecté par la requête.
object
Lecture seule
stringNom représentatif de l'objet affecté.

Exemple d'objet JSON


{
    "id": 33837,
    "user_id": 2,
    "user": "Bob Jensen",
    "date": "2013-09-17T11:31:28+00:00",
    "message": "",
    "ip": "8.5.2.1",
    "user_agent": "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0",
    "type": "ADMLLOG_INSERT",
    "statut": "ADMLLOG_OK",
    "object_id": 11007,
    "object_type": "Dossier",
    "object": "Documents/Comptabilité/2015"
}

Informations sur l'environnement utilisateur


NomTypeDescription
browserstringNom du navigateur/logiciel utilisé (avec sa version, si détecté)
osstringNom et version du système d'exploitation.
os_typestring

Identifiant numérique de l'OS utilisé.
Il existe une liste prédéfinie de types:

ValeurUtilisation
0Système non reconnu
1Système Windows
2Système Apple (Mac OS X / iOS)
3Linux
4Android


Exemple d'objet JSON


{
    "browser": "CCBot/2.0 (https://commoncrawl.org/faq/)",
    "os": "Windows 10",
    "os_type": 1
}

Informations de géolocalisations


NomTypeDescription
citystringVille la plus proche de la position de l'IP géolocalisée.
countrystringPays de l'IP géolocalisée.
locstringChaîne de localisation complète (ville + pays) de l'IP géolocalisée.

Exemple d'objet JSON


{
    "city": "Colomiers",
    "country": "France",
    "loc": "Colomiers, France"
}

https://plateforme.netexplorer.pro/api/auth

Connecter un utilisateur et récupérer son token d'authentification.
Requête

Permet d'authentifier un utilisation et récupérer un token d'authentification a utiliser avec l'API pour utiliser les méthodes sécurisée.

userstring correspondant au nom d'utilisateur.
passwordstring correspondant au mot de passe.

Corps de la requête

{
    "user": "smithj",
    "password": "monsupermotdepasse"
}
Réponse

Codes de retour HTTP

200 OKLa connexion a réussi, un token est retourné.
401 UnauthorizedLa connexion a échoué. Les identifiants renseignés ne permettent pas la connexion.

Corps de la réponse

{
    "token": "0123456789ABCDEFFEDCBA9876543210"  // Token de connexion
}

A savoir La durée de vie du token est limitée par les paramètres session_limit et session_idle de la configuration de la plateforme. Même s'il n'y a aucune indication concernant la durée de vie du token, il ne faut pas considérer sa validité comme étant infinie.


https://plateforme.netexplorer.pro/api/auth

Déconnecte un utilisateur et invalide son token.
Requête

Cette méthode ne gère aucun paramètre ou contenu en entrée.

Réponse

Cette méthode ne génère aucun paramètre ou contenu en sortie.


https://plateforme.netexplorer.pro/api/account

Récupère les informations du compte de l'utilisateur connecté.
Requête

Cette méthode ne gère aucun paramètre ou contenu en entrée.

Réponse

Codes de retour HTTP

200 OKL'utilisateur courant est bien connecté, et les informations du compte ont bien pû être récupérées.
401 UnauthorizedL'utilisateur n'est actuellement pas connecté. Il faut d'abord passer par

Corps de la réponse

Retourne un objet Utilisateur représentant l'utilisateur cible.

https://plateforme.netexplorer.pro/api/account/picture

Récupère l'image de profil de l'utilisateur connecté.
Requête

Cette méthode ne gère aucun paramètre ou contenu en entrée.

Réponse

Codes de retour HTTP

200 OKL'image de profil a été trouvée et a pu être renvoyée.
404 Not FoundL'utilisateur ou son image n'ont pas pu être trouvés.

Corps de la réponse

Retourne l'image de profil.

https://plateforme.netexplorer.pro/api/reset_password

Réinitialise le mot de passe d'un utilisateur et envoie le nouveau mot de passe par email (fonction "mot de passe oublié").

Note Si une adresse email est partagée entre plusieurs comptes, elle ne peut être utilisée pour réinitialiser le mot de passe.
Info Cette fonction ne nécéssite pas de token.
Requête

Corps de la requête

{
    "login_or_email": "smithj"  // Identifiant ou adresse email du compte
}
Réponse

Codes de retour HTTP

204 No ContentModification appliquée avec succès.
404 Not FoundImpossible de trouver un utilisateur avec cet identifiant ou adresse email.
500 Internal Server ErrorImpossible de regénérer un mot de passe pour cet utilisateur.

https://plateforme.netexplorer.pro/api/account/picture

Met à jour l'image de profil de l'utilisateur connecté.
Requête

En-têtes HTTP

multipart/form-dataCette méthode attend un contenu ayant pour type MIME multipart/form-data.
  Attention Sans cet en-tête, le serveur ne traitera pas la requête et le résultat sera imprévisible.

Corps de la requête

targetFileContient les informations et le contenu du fichier.
Info La taille maximum est de 16Mo.
Réponse

Codes de retour HTTP

200 OKL'image a bien été ajouté.
500 Internal Server ErrorAucune image n'a été envoyée, ou sa taille dépasse celle autorisés.

Corps de la réponse

En cas de succès, le mot OK est retourné.Sinon, ce sont les messages d'erreurs correspondants qui sont retournés.

https://plateforme.netexplorer.pro/api/account

Modifie les informations du compte de l'utilisateur connecté.
Attention Méthode non disponible pour un compte externe à NetExplorer (ex : compte Active Directory).
Requête

Corps de la requête

Afin d'alléger le traitement et réduire les risques d'erreurs, vous pouvez ne préciser que les propriétés qui vous interesse.
Les propriétés non renseignées ne seront pas modifiées.

{
    // Pour changer le mot de passe, l'utilisateur doit fournir l'ancien mot de passe
    "old_password": "0123456789ABCDEFFEDCBA98765432100123456789",
    "new_password": "0123456789ABCDEFFEDCBA98765432100123456789",
    
    "lastname": "Smith",
    "firstname": "John",
    "email": "smithj@domain.com",
    "phone": "+33 5.01.02.03.04",
    "organization": "NetExplorer",
    "language": "en"
}
Réponse

Codes de retour HTTP

200 OKLes modifications ont bien été enregistrées.
403 ForbiddenDans le cas d'un changement de mot de passe, l'ancien mot de passe doit être invalide, ou le nouveau mot de passe ne respecte pas les exigeances de sécurité minimales.
Il est aussi possible que l'administrateur n'ai pas autorisé la modification des informations personnelles.

Corps de la réponse

Retourne un objet Utilisateur représentant l'utilisateur courant.


https://plateforme.netexplorer.pro/api/account/picture

Supprimer l'image de profil de l'utilisateur connecté.
Requête

Cette méthode ne gère aucun paramètre ou contenu en entrée.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.

https://plateforme.netexplorer.pro/api/folder/(folderId)

Récupère les informations d'un dossier et ses sous éléments.
Cette méthode permet aussi de lancer une recherche sur la plateforme.
Requête

Le champs folderId de l'url est à remplacer par l'identifiant numérique unique du dossier à récupérer.

Paramètres GET

depthProfondeur d'exploration du dossier.
Par défaut, vaut 0 et ne renvoie que les informations du dossier cible.
Définir à -1 pour explorer toute l'arborescence à partir de ce dossier (vivement déconseillé).
fullPermet d'obtenir toutes les informations sur le dossier.
Inactif par défaut, il suffit de renseigner le paramètre pour obtenir plus d'informations.
Celà ajoute notamment les champs suivants :
can_dlink, can_ulink, can_admin_rights, can_admin_alerts, nb_participants, self_alert, nb_annotations, nb_unread_annotations, size, nb_d_folders, nb_d_files, nb_folders, nb_files, quota, purge_frequency, path, path_name.
lightPermet de retirer certaines infos de l'objet Dossier retourné pour alléger les transferts.
Sont notamment retirés les champs creation, modification, owner et owner_id.
filter

Permet de filtrer les informations reçues lors des listings récursifs pour accélérer le traitement et alléger le contenu reçu.
Les types disponibles sont les suivants :

ValeurDescription
1Lors du parcours de l'arborescence, ne liste exclusivement que les dossiers. Les fichiers sont ignorés.
2Lors du parcours de l'arborescence, ne liste exclusivement que les fichiers. Les dossiers sont ignorés, ce qui empêche le parcours de dossiers au delà du premier niveau (depth >= 1).
3Lors du parcours de l'arborescence, liste tous les éléments (fichiers et dossiers). Ceci est le comportement par défaut.
recursiveLa présence de ce paramètre permet de lancer un recherche au sein du dossier.
Tous les éléments correspondants à la recherche seront retournés sur un seul niveau. Le paramètre depth est alors ignoré.
search_labelLe paramètre recursive doit être activé.
Mots clés utilisés pour la recherche.
in_nameLe paramètre recursive doit être activé.
Le champs peut valoir 1 pour activer la recherche dans le nom des fichiers/dossiers ou 0 (par défaut) pour la désactiver.
in_annotationsLe paramètre recursive doit être activé.
Le champs peut valoir 1 pour activer la recherche dans le contenu des annotations ou 0 (par défaut) pour la désactiver.
in_contentLe paramètre recursive doit être activé.
Le champs peut valoir 1 pour activer la recherche dans le contenu indexé des fichiers ou 0 (par défaut) pour la désactiver.
globalLe paramètre recursive doit être activé.
Le champs peut valoir 1 pour activer la recherche dans la totalité de la plateforme ou 0 (par défaut) pour la désactiver.
Pour de meilleurs performances soyez précis sur votre recherche en utilisant ce paramètre.
creation_startLe paramètre recursive doit être activé.
Limiter la recherche aux éléments crées depuis cette date.
La date doit être soit au format ISO 8601 (ex: 2020-10-27T09:54:43+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1603792483).
creation_endLe paramètre recursive doit être activé.
Limiter la recherche aux éléments crées jusqu'à cette date.
La date doit être soit au format ISO 8601 (ex: 2020-10-27T09:54:43+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1603792483).
modification_startLe paramètre recursive doit être activé.
Limiter la recherche aux éléments modifiés depuis cette date.
La date doit être soit au format ISO 8601 (ex: 2020-10-27T09:54:43+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1603792483).
modification_endLe paramètre recursive doit être activé.
Limiter la recherche aux éléments modifiés jusqu'à cette date.
La date doit être soit au format ISO 8601 (ex: 2020-10-27T09:54:43+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1603792483).
size_startLe paramètre recursive doit être activé.
Limiter la recherche aux éléments dont la taille est au moins égale à cette valeur (en octets).
size_endLe paramètre recursive doit être activé.
Limiter la recherche aux éléments dont la taille ne dépasse pas cette valeur (en octets).
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Dossier représentant le dossier recherché.
Dans le cas d'une recherche, les éléments sont retournés sous cette forme :

{
    "folders": [
        {
            "id": 128,
            "nom": "Dossier 1",
            ...
        },
        {
            "id": 1885,
            "nom": "Dossier 2",
            ...
        }
    ],
    "files": [
        {
            "id": 4788,
            "nom": "MonFichier.docx",
            ...
        },
        {
            "id": 96332,
            "nom": "photo_128_78.png",
            ...
        }
    ]
}

https://plateforme.netexplorer.pro/api/folder/(folderId)/timeline

Récupère la timeline du dossier
Requête

Le champs folderId de l'url est à remplacer par l'identifiant numérique unique du dossier à récupérer.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Dossier représentant le dossier cible, avec en plus les informations de la timeline comme présenté ci-dessous :

{
    "id": 128,
    "nom": "Dossier 1",
    ...
    "events": [
        {
            "id": 1,
            "type": 4,
            "date": "2020-10-27T09:54:43+00:00",
            "geo": {
                "city": "Paris",
                "country": "France",
                "loc": "Paris, France"
            },
            "env": {
                "browser": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537 (KHTML, like Gecko) Chrome/50.0 Safari/537.0",
                "os": "Windows",
                "os_type": 1
            },
            "owner": "Simon BERGES",
            "owner_id": 54,
            "data": null
        }
    ]
}

https://plateforme.netexplorer.pro/api/folders

Liste les dossiers racines de l'utilisateur.
Requête

Paramètres GET

depthProfondeur d'exploration du dossier.
Par défaut, vaut 0 et ne renvoie que les informations du dossier cible.
Définir à -1 pour explorer toute l'arborescence à partir de ce dossier (vivement déconseillé).
fullPermet d'obtenir toutes les informations sur le dossier.
Inactif par défaut, il suffit de renseigner le paramètre pour obtenir plus d'informations.
Celà ajoute notamment les champs suivants :
can_dlink, can_ulink, can_admin_rights, can_admin_alerts, nb_participants, self_alert, nb_annotations, nb_unread_annotations, size, nb_d_folders, nb_d_files, nb_folders, nb_files, quota, purge_frequency, path, path_name.
lightPermet de retirer certaines infos de l'objet Dossier retourné pour alléger les transferts.
Sont notamment retirés les champs creation, modification, owner et owner_id.
filter

Permet de filtrer les informations reçues lors des listings récursifs pour accélérer le traitement et alléger le contenu reçu.
Les types disponibles sont les suivants :

ValeurDescription
1Lors du parcours de l'arborescence, ne liste exclusivement que les dossiers. Les fichiers sont ignorés.
2Lors du parcours de l'arborescence, ne liste exclusivement que les fichiers. Les dossiers sont ignorés, ce qui empêche le parcours de dossiers au delà du premier niveau (depth >= 1).
3Lors du parcours de l'arborescence, liste tous les éléments (fichiers et dossiers). Ceci est le comportement par défaut.
recursiveLa présence de ce paramètre permet de lancer un recherche au sein du dossier.
Tous les éléments correspondants à la recherche seront retournés sur un seul niveau. Le paramètre depth est alors ignoré.
search_labelLe paramètre recursive doit être activé.
Mots clés utilisés pour la recherche.
in_nameLe paramètre recursive doit être activé.
Le champs peut valoir 1 pour activer la recherche dans le nom des fichiers/dossiers ou 0 (par défaut) pour la désactiver.
in_annotationsLe paramètre recursive doit être activé.
Le champs peut valoir 1 pour activer la recherche dans le contenu des annotations ou 0 (par défaut) pour la désactiver.
in_contentLe paramètre recursive doit être activé.
Le champs peut valoir 1 pour activer la recherche dans le contenu indexé des fichiers ou 0 (par défaut) pour la désactiver.
creation_startLe paramètre recursive doit être activé.
Limiter la recherche aux éléments crées depuis cette date.
La date doit être soit au format ISO 8601 (ex: 2020-10-27T09:54:43+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1603792483).
creation_endLe paramètre recursive doit être activé.
Limiter la recherche aux éléments crées jusqu'à cette date.
La date doit être soit au format ISO 8601 (ex: 2020-10-27T09:54:43+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1603792483).
modification_startLe paramètre recursive doit être activé.
Limiter la recherche aux éléments modifiés depuis cette date.
La date doit être soit au format ISO 8601 (ex: 2020-10-27T09:54:43+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1603792483).
modification_endLe paramètre recursive doit être activé.
Limiter la recherche aux éléments modifiés jusqu'à cette date.
La date doit être soit au format ISO 8601 (ex: 2020-10-27T09:54:43+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1603792483).
size_startLe paramètre recursive doit être activé.
Limiter la recherche aux éléments dont la taille est au moins égale à cette valeur (en octets).
size_endLe paramètre recursive doit être activé.
Limiter la recherche aux éléments dont la taille ne dépasse pas cette valeur (en octets).
Réponse

Codes de retour HTTP

200 OKLes différentes racines de l'utilisateur sont listées.

Corps de la réponse

Retourne un tableau de Dossier représentant les différents dossiers racines de l'utilisateur.


https://plateforme.netexplorer.pro/api/folder

Crée un nouveau dossier.
Requête

Paramètres GET

copyIl est possible de spécifier l'identifiant numérique d'un dossier existant comme valeur de ce champs.
Cela lancera alors une copie de ce dossier vers le répertoire spécifié dans le corps dans le champs "parent_id".
A noter que seul le champs "parent_id" sera utilisé ; les autres champs seront ignorés.
fullPermet d'obtenir toutes les informations sur le dossier.
Inactif par défaut, il suffit de renseigner le paramètre pour obtenir plus d'informations.
Celà ajoute notamment les champs suivants :
can_dlink, can_ulink, can_admin_rights, can_admin_alerts, nb_participants, self_alert, nb_annotations, nb_unread_annotations, size, nb_d_folders, nb_d_files, nb_folders, nb_files, quota, purge_frequency, path, path_name.
lightPermet de retirer certaines infos de l'objet Dossier retourné pour alléger les transferts.
Sont notamment retirés les champs creation, modification, owner et owner_id.

Corps de la requête

Les informations concernant le dossier doivent être passées dans le corps de la requête et au format JSON.

nameNom du dossier à créer.
parent_idIdentifiant numérique du dossier parent.
quotaQuota en octets à appliquer au dossier. Les administrateurs pourront toujours déposer des fichiers même si la limite est atteinte.
  Attention Cet attribut ne peut être défini que par un administrateur.
purge_frequencyFréquence de purge en jours.
  Attention Cet attribut ne peut être défini que par un administrateur.


Exemple :

{
    "name": "Mon nouveau dossier",
    "parent_id": 1,
    "quota": -1,
    "purge_frequency": 0
}
Réponse

Codes de retour HTTP

200 OKLe dossier n'a pas été créé car il existe déjà. Les informations du répertoire existant sont alors retournées.
201 CreatedLe dossier a été créé avec succès.
403 ForbiddenL'utilisateur n'a pas le droit de créer de nouveaux dossiers dans le répertoire parent, ou un dossier inaccessible existe déjà à cet emplacement et avec le même nom.
404 Not FoundLe répertoire parent est introuvable.
409 ConflictUtilisé uniquement dans le cas de la copie, indique qu'un dossier portant le même nom existe déjà à l'emplacement de destination.

Corps de la réponse

Retourne un objet Dossier représentant le dossier créé.


https://plateforme.netexplorer.pro/api/folder/(folderId)

Modifie les informations d'un dossier.
Requête

Paramètres GET

fullPermet d'obtenir toutes les informations sur le dossier.
Inactif par défaut, il suffit de renseigner le paramètre pour obtenir plus d'informations.
Celà ajoute notamment les champs suivants :
can_dlink, can_ulink, can_admin_rights, can_admin_alerts, nb_participants, self_alert, nb_annotations, nb_unread_annotations, size, nb_d_folders, nb_d_files, nb_folders, nb_files, quota, purge_frequency, path, path_name.
lightPermet de retirer certaines infos de l'objet Dossier retourné pour alléger les transferts.
Sont notamment retirés les champs creation, modification, owner et owner_id.
recursiveLa présence de ce paramètre permet d'appliquer la modification de la fréquence de purge des fichiers aux sous-dossiers.

Corps de la requête

Les informations concernant le dossier doivent être passées dans le corps de la requête et au format JSON.

nameNouveau nom du dossier.
parent_idIdentifiant numérique du nouveau dossier parent.
quotaQuota en octets à appliquer au dossier. Les administrateurs pourront toujours déposer des fichiers même si la limite est atteinte.
  Attention Cet attribut ne peut être défini que par un administrateur.
purge_frequencyFréquence de purge en jours.
  Attention Cet attribut ne peut être défini que par un administrateur.


Exemple :

{
    "name": "Finances 2017",
    "parent_id": 1,
    "quota": -1,
    "purge_frequency": 0
}
Réponse

Codes de retour HTTP

200 OKLe dossier n'a pas été créé car il existe déjà. Les informations du répertoire existant sont alors retournées.
403 ForbiddenL'utilisateur n'a pas le droit de créer de nouveaux dossiers dans le répertoire parent, ou un dossier inaccessible existe déjà à cet emplacement et avec le même nom.
404 Not FoundLe répertoire parent est introuvable.
409 ConflictUtilisé uniquement dans le cas de la copie, indique qu'un dossier portant le même nom existe déjà à l'emplacement de destination.

Corps de la réponse

Retourne un objet Dossier représentant le dossier créé.


https://plateforme.netexplorer.pro/api/folder/(folderId)

Supprime un dossier de la plateforme.
Requête

Le champs folderId de l'url est à remplacer par l'identifiant numérique unique du dossier à récupérer.

Paramètres GET

trashIndique si le dossier doit être placé dans la corbeille (valeur à 1, par défaut) ou être supprimé définitivement (valeur à 0).
Par défaut, le dossier est placé dans la corbeille.
Réponse

Codes de retour HTTP

200 OKSi le dossier a été placé dans la corbeille, ce code est retourné avec l'objet Corbeille correspondant dans le corps de la réponse.
204 No ContentLe dossier a bien été supprimé.
403 ForbiddenL'utilisateur n'a pas le droit de supprimer ce dossier.
404 Not FoundLe dossier est introuvable.

https://plateforme.netexplorer.pro/api/file/(fileId)

Récupère les informations sur un fichier de la plateforme.
Requête

Paramètres GET

metaPermet d'obtenir les méta-données du document.
latestSi l'identifiant unique du fichier ne correspond pas à sa dernière version, cette dernière sera alors chargée à la place de la version demandée.
Le retour JSON contiendra l'ID unique de la version en question.
fullPermet d'obtenir toutes les informations sur le fichier.
Inactif par défaut, il suffit de renseigner le paramètre pour obtenir plus d'informations.
Celà ajoute notamment les champs suivants :
nb_versions, nb_annotations, nb_unread_annotations, path, thumb_token, file_type, meta, download_token.
lightPermet de retirer certaines infos de l'objet Fichier retourné pour alléger les transferts.
Sont notamment retirés les champs creation, owner et owner_id.
Réponse

Codes de retour HTTP

200 OKLe fichier a été trouvé et les informations sur la version ciblée sont retournées.
403 ForbiddenL'utilisateur n'a pas accès au fichier car il n'a pas d'accès en navigation au dossier parent.
404 Not FoundLe fichier n'existe pas ou a été supprimé.

Corps de la réponse

Retourne un objet Fichier représentant la version recherchée du fichier.


https://plateforme.netexplorer.pro/api/file/activity

Récupère l'activité récente des fichiers.
Requête

Paramètres GET

allSi ce paramètre est défini, l'activité récente de tous les fichiers de la plateforme sera retournée.
Dans la limite des 200 derniers changements, à condition d'en détenir les droits.
Réponse

Codes de retour HTTP

200 OKLa liste des fichiers récents.

Corps de la réponse

Retourne une liste d'objets Fichier.

{
    "offset_start": 0,
    "nb_objets": 30,
    "nb_total_objects": 50,
    "objects": [
        {
            "id": 20,
            "parent_id": 1,
            "name": "test.docx",
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/file/download

Télécharge un fichier via un token de téléchargement.
Requête

En-têtes HTTP

RangeCet en-tête permet de demander le téléchargement partiel d'un fichier.
Le fonctionnement du téléchargement partiel est régi par la RFC7233.

Paramètres GET

latestSi l'identifiant unique du fichier ne correspond pas à sa dernière version, cette dernière sera alors chargée à la place de la version demandée.
Le retour JSON contiendra l'ID unique de la version en question.
tokendownload_token du fichier à télécharger. S'obtient via la méthode GET /file/(fileId)
Réponse

Codes de retour HTTP

200 OKLe fichier est retourné complet.
206 Partial ContentLe fichier est retourné partiellement, conformément aux plages passées dans la requête.
403 ForbiddenL'utilisateur n'a pas accès au fichier.
404 Not FoundLe fichier n'existe pas ou a été supprimé.
423 LockedLe fichier est verrouillé et la plateforme est configurée pour ne pas autoriser l'accès en lecture.

En-têtes HTTP

Content-TypeType MIME du fichier téléchargé
Content-DispositionVaut attachment; filename=<Nom du fichier>
Content-RangeSi un range spécifique a été demandé, cet en-tête donnera les informations sur le bloc retourné.

Corps de la réponse

Le contenu binaire du fichier retourné, en totalité ou partiellement (HTTP Range).


https://plateforme.netexplorer.pro/api/file/(fileId)/download

Télécharge un fichier via son identifiant unique.
Requête

En-têtes HTTP

RangeCet en-tête permet de demander le téléchargement partiel d'un fichier.
Le fonctionnement du téléchargement partiel est régi par la RFC7233.

Paramètres GET

latestSi l'identifiant unique du fichier ne correspond pas à sa dernière version, cette dernière sera alors chargée à la place de la version demandée.
Le retour JSON contiendra l'ID unique de la version en question.
Réponse

Codes de retour HTTP

200 OKLe fichier est retourné complet.
206 Partial ContentLe fichier est retourné partiellement, conformément aux plages passées dans la requête.
403 ForbiddenL'utilisateur n'a pas accès au fichier.
404 Not FoundLe fichier n'existe pas ou a été supprimé.
423 LockedLe fichier est verrouillé et la plateforme est configurée pour ne pas autoriser l'accès en lecture.

En-têtes HTTP

Content-TypeType MIME du fichier téléchargé
Content-DispositionVaut attachment; filename=<Nom du fichier>
Content-RangeSi un range spécifique a été demandé, cet en-tête donnera les informations sur le bloc retourné.

Corps de la réponse

Le contenu binaire du fichier retourné, en totalité ou partiellement (HTTP Range).


https://plateforme.netexplorer.pro/api/file/(fileId)/infos

Récupère les informations sur le document.
Ces informations sont issues du service d'indexation et n'est donc disponible que pour les documents de type Office et les PDF.
Requête

Cette méthode ne gère aucun paramètre ou contenu en entrée.

Réponse

Codes de retour HTTP

200 OKLes informations sur le document sont retournées.
403 ForbiddenL'utilisateur n'a pas accès au fichier.
404 Not FoundLe fichier est introuvable ou n'existe plus.

Corps de la réponse

Un objet est retourné contenant les différents champs retournés par le service d'indexation.
Pour le moment, seul le champ length est géré.
Exemple:

{
    "length": "2"  // Nombre de pages dans le document
}

https://plateforme.netexplorer.pro/api/file/(fileId)/timeline

Récupère la timeline du fichier avec la liste des versions.
Requête

Cette méthode ne gère aucun paramètre ou contenu en entrée.

Réponse

Corps de la réponse

Le contenu est composé de la liste des versions du fichiers avec des champs supplémentaires.
On retrouve notamment le champ events contenant la liste des évènements, ainsi que les champs total_annotations, total_downloads, total_dlinks et total_previews représentant respectivement les nombres d'annotations, de téléchargements, de liens de partages et de prévisualisations.
Chaque évènement embarque un champs type correspondant au type d'évènement généré dont la liste des correspondances figure ci-dessous :

IDEvènement
1Ajout d'une annotation
Dans ce cas, le champs data de l'évènement contiendra un objet Annotation.
Celui-ci pourra lui aussi contenir d'autres évènements (contenant là aussi à leur tour un objet Annotation) correspondants aux réponses apportées à l'annotation dans la propriété responses.
2Création d'un lien de partage
Le champ data embarque les informations du lien de partage sous la forme d'un objet Lien de partage avec en plus 2 champs : downloads représentant le nombre de téléchargements du lien, et users pour le nombre d'utilisateurs identifiés comme étant différents et ayant téléchargé le lien.
3Téléchargement
Le champ data est toujours vide pour ce type d'évènement.
Un champ extended peut cependant être ajouté et contient des évènements de téléchargements récents originaires du même utilisateur.
4Aperçu / Prévisualisation
Le champ data est toujours vide pour ce type d'évènement.
6Verrou actif
Le champ data contient un objet de type Verrou.
9Agregation d'évènements
L'agrégation d'évènements se produit sur les téléchargements afin de réduire la quantité d'informations redondantes au sein de la timeline.
Lors plusieurs téléchargements sont agrégés, ceux-ci sont rassemblés dans un faux évènement parent, dans la propriété extended.
Exemple:
{
    "id": 1255447,
    "type": 9,
    "subtype": 3,
    "date": "2020-10-27T09:54:43+00:00",
    "geo": null,
    "env": null,
    "owner": "Fabrice GERARD",
    "owner_id": 77855,
    "data": {
        "users": [
            "Boris"
        ],
        "users_count": 1
    },
    "extended": [
        {
            "id": 44558,
            "type": 3,
            "date": "2020-10-27T09:54:43+00:00",
            "geo": null,
            "env": null,
            "owner": "Melanie BOLIVET",
            "owner_id": 774,
            "data": null
        }
    ]
}

Exemple succinct d'une timeline de fichier:

[
    {
        // Champs liés à l'objet Dossier
        "id": 74885,
        "name": "bilan_final.docx",
        "size": 896652,
        ...
        // Champs complémentaires liés à la timeline
        "total_annotations": 0,
        "total_download": 4,
        "total_dlinks": 1,
        "total_previews": 7,
        "events": [
            {
                "id": 4588,
                "type": 0,
                "date": "2020-10-27T09:54:43+00:00",
                "geo": {  // Objet de type Géolocalisation
                    "city": "Toulouse",
                    ...
                },
                "env": {  // Objet de type Environnement utilisateur
                    "os": "Windows",
                    ...
                },
                "owner": "Paul GILIER",
                "owner_id": 4788,
                "data": null
            }
        ]
    },
    {  // Version précédente
        "id": 74810,
        ...
    },
    ...
]

https://plateforme.netexplorer.pro/api/file/(fileId)/versions

Récupère la liste des versions du fichier.
Requête

Paramètres GET

fullPermet de régler le niveau de détails retournés pour chaque version du fichier.
Se référer à la méthode GET /file/(fileId).
Réponse

Codes de retour HTTP

200 OKLa liste des versions est retournée.
403 ForbiddenL'utilisateur n'a pas accès au fichier.
404 Not FoundLe fichier est introuvable ou n'existe plus.

Corps de la réponse

Retourne la liste des versions d'un fichier sous la forme d'un tableau de Fichier, incluant la version cible, de la plus récente à la plus ancienne.
Exemple:

[
    {
        "id": 5,
        "name": "rapport2016.docx",
        ...
    },
    {
        "id": 4,
        "name": "rapport2016.docx",
        ...
    }
]

https://plateforme.netexplorer.pro/api/file

Créé un nouveau fichier vide.
Requête

Paramètres GET

copyCe paramètre doit contenir l'ID du fichier à copier.
Son contenu et ses méta-données seront alors copiées à l'emplacement de destination.
fullPermet d'obtenir toutes les informations sur le fichier.
Inactif par défaut, il suffit de renseigner le paramètre pour obtenir plus d'informations.
Celà ajoute notamment les champs suivants :
nb_versions, nb_annotations, nb_unread_annotations, path, thumb_token, file_type, meta, download_token.
lightPermet de retirer certaines infos de l'objet Fichier retourné pour alléger les transferts.
Sont notamment retirés les champs creation, owner et owner_id.

Corps de la requête

Le corps de la requête doit contenir plusieurs informations:

nameNom du fichier à créer.
Dans le cas de la copie, le nom doit tout de même être précisé et représente le nom du fichier de destination.
Celui-ci peut être identique au nom du fichier source.
parent_idIdentifiant numérique du dossier dans lequel créer le fichier.
Dans le cas de la copie, spécifie le dossier dans lequel la copie sera placée.
hashSignature MD5 du contenu du fichier à créer, au format hexadécimal (32 caractères).
Si une version précédente du fichier possède cette signature, cette version est clonée et le clone devient alors la version la plus récente du fichier.
Sinon un fichier vide est créé ; cela est aussi le cas si le fichier n'a pas de version plus ancienne.

Voici un exemple de corps valide :

{
    "name": "rapport_2016.docx",
    "parent_id": 445
}
Réponse

Codes de retour HTTP

200 OKUne ancienne version a été clonée et a été remontée. Un code 200 est retourné car même si une nouvelle version est créée, il n'y a pas eu de création de contenu.
201 CreatedUn nouveau fichier ou une nouvelle version de celui-ci a été créé, qu'il s'agisse d'une copie ou non.
403 ForbiddenL'utilisateur n'a pas les droits nécessaires à la création du fichier.
S'il s'agit d'un nouveau fichier, il faut avoir le droit de créer (write).
S'il s'agit d'une nouvelle version sur un fichier existant, il faut avoir le droit de modifier (edit).
Dans le cas de la copie, il faut aussi le droit de lire (read) et de télécharger (download) dans le dossier d'origine.
404 Not FoundImpossible de trouver le dossier de destination.
Dans le cas de la copie, cela peut aussi vouloir dire que le fichier d'origine n'existe pas.
423 LockedSi le fichier de destination existe, celui-ci est verrouillé en écriture par un autre utilisateur.
507 Insufficient Storage  Espace disque épuisé (Quota utilisateur, quota dossier, quota plateforme ou quota archivage).

Corps de la réponse

En cas de succès, retourne un objet Fichier.

https://plateforme.netexplorer.pro/api/file/upload

Dépose un nouveau fichier sur la plateforme.
Si le fichier existe, une version est créée.
Requête

En-têtes HTTP

multipart/form-dataCette méthode un peu spéciale attend un contenu ayant pour type MIME multipart/form-data.
  Attention Sans cet en-tête, le serveur ne traitera pas la requête et le résultat sera imprévisible.

Paramètres GET

metaPermet d'obtenir les méta-données du document.
fullPermet d'obtenir toutes les informations sur le fichier.
Se référer à la méthode GET /file/(fileId).

Corps de la requête

folderIdPrécise l'identifiant de dossier de destination.
targetFileContient les informations et le contenu du fichier.
targetPathContient les informations et le contenu du fichier.

Il est possible de procéder à un dépôt de fichier découpé en ajoutant les propriétés suivantes:

chunkReprésente l'index du bloc courant (en partant de 0).
chunksNombre total de blocs.
chunksSizeTaille du bloc. Doit être la même pour tous les blocs du fichiers (sauf pour le dernier qui peut être plus petit).
fileSizeTaille du fichier final. Permet de préallouer l'espace côté serveur et de faire un vérification rapide de la quantité de données reçues.
fileHashHash du fichier.
reportA la fin de l'envoi de chaque partie, cela permet d'obtenir l'index de la prochaine partie à envoyer, s'il en manque.

Dans ce cas, le targetFile ne contiendra que la portion du fichier.

Réponse

Codes de retour HTTP

201 CreatedUn nouveau fichier ou une nouvelle version de celui-ci a été créé, qu'il s'agisse d'une copie ou non.

Corps de la réponse

En cas de succès, retourne un objet Fichier.
Dans le cas d'un envoi découpé:
Les requêtes intermédiaires ne renvoient que le texte "OK" pour valider la réception du bloc.
Dans ce mode, les erreurs > 500 ne sont pas récupérables, alors que les erreurs > 400 peuvent être récupérées et sont probablement dûe à un bug côté client.
Un rapport indiquant la prochaine partie manquante à envoyer peut être récupéré en ajoutant la propriété report. Le json transmit aura la forme suivante:

[
    {
        "missing": 14
    }
]

Ce rapport sera automatiquement transmit si la requête courante concerne le dernier bloc mais que le fichier s'avère incomplet.


https://plateforme.netexplorer.pro/api/file/(fileId)

Met à jour les informations d'un fichier (méta-données).
Cela permet entre autre de déplacer ou de renommer un fichier.
Requête

Corps de la requête

La modification des méta-données ne concerne que 2 champs :

nameSi spécifié, permet de renommer le document.
parent_idSi spécifié, permet de déplacer le document dans un autre dossier.


Par exemple, ce JSON déplace le fichier dans le dossier #85 en le renommant :

{
    "name": "presentation_2016.docx",
    "parent_id": 85
}
Réponse

Codes de retour HTTP

200 OKLe fichier a bien été déplacé/renommé.
403 Forbidden

L'utilisateur n'a pas le droit de modifier (edit) dans le dossier parent.
Si le fichier est déplacé, l'utilisateur doit alors avoir :

  • Le droit de lire (read), télécharger (download), modifier (edit) et supprimer (delete) dans le dossier parent.
  • Le droit d'ajouter (write) dans le dossier de destination.
404 Not FoundLe fichier est introuvable.
En cas de déplacement, cela peut aussi vouloir dire que le dossier de destination n'existe pas.
423 LockedLe fichier est actuellement verrouillé par un autre utilisateur et ne peut pas être renommé/déplacé.
507 Insufficient Storage  Espace disque épuisé (Quota utilisateur, quota dossier, quota plateforme ou quota archivage).

Corps de la réponse

Renvoie les informations de l'objet Fichier à jour.

https://plateforme.netexplorer.pro/api/file/(fileid)/upload

Met à jour le contenu binaire du fichier.
Cette méthode ne créé pas de nouvelle version.
Il faut pour cela se référer à la méthode POST /file/upload
Requête

En-têtes HTTP

Content-TypeDoit toujours valoir application/octet-stream.
Content-LengthValeur optionnelle permettant à la plateforme de préallouer l'espace disque et de vérifier que la quantité de données reçues est bien égale à ce qui est attendu.
Réponse

Codes de retour HTTP

403 ForbiddenL'utilisateur n'a pas le droit d'éditer (edit) le fichier.
404 Not FoundLe fichier est introuvable.
423 LockedLe fichier est actuellement verrouillé et ne peut être modifié.
507 Insufficient StorageL'espace disque est insuffisant pour pouvoir mettre à jour le fichier.
Il est aussi possible qu'un quota en place soit atteint.

https://plateforme.netexplorer.pro/api/file/(fileId)

Supprime un fichier de la plateforme.
Requête

Paramètres GET

trashPermet de placer le fichier supprimé dans la corbeille de l'utilisateur (comportement par défaut).
Peut valoir 1 pour l'activer ou 0 pour supprimer définitivement le fichier.
versions

Permet d'indiquer si les versions précédentes du fichiers sont impactées par la suppression.
Par défaut, le champ vaut all pour indiquer que le fichier et toutes ses versions sont affectés par la suppression.
Il est aussi possible d'utiliser les valeurs suivantes :

  • none pour supprimer uniquement la version en cours
  • previous pour ne supprimer que la version courante et les plus ancienne, concervant ainsi les plus récentes s'il y en a.
Réponse

Codes de retour HTTP

200 OKLe fichier a été supprimé et placé dans la corbeille.
Un objet de type Corbeille est retourné.
204 No ContentLe fichier a été supprimé définitivement.
403 ForbiddenL'utilisateur n'a pas accès au fichier.
404 Not FoundLe fichier est introuvable.
423 LockedLe fichier est verrouillé par un autre utilisateur et ne peut être supprimé.

https://plateforme.netexplorer.pro/api/file/cancel

Annule l'upload d'un fichier sur la plateforme.
Requête

Corps de la requête

folderIdIdentifiant du dossier sur lequel on est en cours d'upload.
filenameNom du fichier à annuler.
Réponse

Codes de retour HTTP

200 OKRetourne le code OK si tout s'est bien passé.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/trash/(trashId)

Récupère les informations d'un élément de la corbeille.
Requête

Le paramètre trashId est obligatoire et représente l'identifiant de l'élément à récupérer.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Corbeille représentant l'élément de la corbeille.

https://plateforme.netexplorer.pro/api/trashes

Lister les éléments de la corbeille.
Requête

Paramètres GET

user_idCe paramètre n'est utilisable que par les administrateurs de la plateforme et leur permet de charger la corbeille d'un autre utilisateur.
La valeur correspond à l'identifiant unique de celui-ci.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.

Corps de la réponse

Retourne la liste d'objets Corbeille représentant les éléments présents dans la corbeille, séparés en fichiers/dossiers.

{
    "folders": [
        {
            "id": 11568,
            ...
        },
        ...
    ],
    "files": [
        {
            "id": 958,
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/trash/(trashId)

Restaure un élément de la corbeille.
Requête

Le paramètre trashId est obligatoire et représente l'identifiant de l'élément à restaurer.

Corps de la requête

folder_idIdentifiant du dossier de destination où restaurer l'élément. Par défaut l'élément est restauré à l'emplacement d'origine.


Exemple :

{
    "folder_id": 15
}
Réponse

Codes de retour HTTP

200 OKL'élément a été restauré avec succès.
403 ForbiddenImpossible de restaurer l'élément dans le dossier sélectionné en raison des droits d'accès qui y sont appliqués.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Fichier ou Dossier en fonction du type d'objet restauré.

{
    "id": 29753,
    "parent_id": "29628,",
    "name": "Nouveau dossier",
    "creation": "2017-08-08T14:55:00+00:00",
    "modification": "2017-09-04T18:30:00+00:00",
    "can_read": true,
    "can_download": true,
    "can_write": true,
    "can_edit": true,
    "owner": "Jean Edouard",
    "owner_id": 2
}

https://plateforme.netexplorer.pro/api/trash/(trashId)

Supprime définitivement un élément de la corbeille.
Requête

Le paramètre trashId est obligatoire et représente l'identifiant de l'élément à restaurer.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/trashes

Supprime définitivement tous les éléments de la corbeille.
Requête

Paramètres GET

user_idIdentifiant uniquement de l'utilisateur dont on veut vider la corbeille.
Il est possible d'utiliser la valeur all pour purger l'ensemble des corbeilles de tous les utilisateurs.
Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.

https://plateforme.netexplorer.pro/api/annotation/(annotationId)

Récupère les informations d'une annotation.
Requête

Le paramètre annotationId est obligatoire et représente l'identifiant de l'annotation à récupérer.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.

Corps de la réponse

Retourne l'annotation sous forme d'un objet Annotation.

https://plateforme.netexplorer.pro/api/annotations/(targetId)/(type)

Liste les annotations apposées sur un fichier ou un dossier.
Requête

L'URL d'accès est composée de 2 éléments obligatoire :

targetIdIdentifiant de l'élement cible sur lequel rattacher l'annotation.
typeType de l'élément cible. Peut valoir "folder" si c'est un dossier, ou "file" si c'est un fichier.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne une liste d'objets Annotation relatifs à l'élément concerné.
Exemple :
{
    "offset_start": 0,
    "nb_objets": 30,
    "nb_total_objects": 50,
    "objects": [
        {
            "id": 30,
            "target_id": 28,
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/annotations/all

Liste toutes les annotations non lues (7 derniers jours) de l'utilisateur courant.
Requête

offset_startIndex de départ (par défaut, 0).
nb_objectsNombre d'objets maximal à retourner (par défaut 30).

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.

Corps de la réponse

Retourne une liste d'objets Annotation.
Exemple :
{
    "offset_start": 0,
    "nb_objets": 30,
    "nb_total_objects": 50,
    "objects": [
        {
            "id": 30,
            "target_id": 28,
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/annotation

Publie une nouvelle annotation sur l'élement cible (fichier ou dossier).
Requête

Corps de la requête

target_idIdentifiant de l'élement cible sur lequel rattacher l'annotation.
target_typeType de l'élément cible. Peut valoir "folder si c'est un dossier, ou "file" si c'est un fichier.
textContenu de l'annotation.
conversationIdentifiant d'une autre annotation. Si spécifiée, l'annotation sera considérée comme la réponse à cette autre annotation.


Exemple :

{
    "target_id": 20,
    "target_type": "file",
    "text": "Ceci est le contenu de mon annotation !"
}
Réponse

Codes de retour HTTP

201 Created  La ressource a été crée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.

Corps de la réponse

Retourne un objet Annotation représentant l'annotation publiée.

https://plateforme.netexplorer.pro/api/annotation/(annotationId)

Modifie le texte d'une annotation.
Requête

Le paramètre annotationId est obligatoire et correspond à l'identifiant de l'annotation.

Corps de la requête

{
    "text": "Ceci est le texte modifié de mon annotation !"
}
Réponse

Codes de retour HTTP

200 OKL'annotation a été modifiée avec succès.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Annotation représentant l'annotation après que les modifications aient été enregistrées.

https://plateforme.netexplorer.pro/api/annotations/all

Marque comme lue toutes les annotations non lues de l'utilisateur courant.
Requête

Cette méthode ne gère aucun paramètre ou contenu en entrée.

Réponse

Cette méthode ne génère aucun paramètre ou contenu en sortie.


https://plateforme.netexplorer.pro/api/annotation/(annotationId)

Supprime une annotation.
Requête

Le paramètre annotationId est obligatoire et correspond à l'identifiant de l'annotation.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/lock/(fileId)

Récupère les informations sur le verrouillage d'un fichier.
Requête

Le paramètre fileId est obligatoire et représente l'identifiant du fichier associé.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Verrou représentant l'état de verrouillage du fichier associé.

https://plateforme.netexplorer.pro/api/locks/(folderId)

Récupère les informations de tous les verrouillages des fichiers dont l'utilisateur a accès.
Requête

Le paramètre folderId est facultatif et représente l'identifiant du dossier à partir duquel rechercher la liste.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne une liste d'objets Verrou.
Exemple :
{
    "offset_start": 0,
    "nb_objets": 30,
    "nb_total_objects": 50,
    "objects": [
        {
            "file": 147,
            "owner": "Edouard DESPEREAUX",
            "owner_id": 19,
            "locked": true,
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/lock/(fileId)

Verrouille un fichier.
Requête

Le paramètre fileId est obligatoire et représente l'identifiant du fichier associé.

Réponse

Codes de retour HTTP

200 OKLe fichier a été vérouillé avec succès.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Verrou représentant l'état de verrouillage du fichier associé.

https://plateforme.netexplorer.pro/api/lock/(fileId)

Déverrouille un fichier.
Requête

Le paramètre fileId est obligatoire et représente l'identifiant du fichier associé.

Paramètres GET

allSi ce paramètre est précisé, toutes les versions du fichier seront déverrouillées.
Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/right/(rightId)

Récupère les informations sur un droit.
Requête

Le paramètre rightId représente l'identifiant du droit à récupérer.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Droit représentant le droit demandé.

https://plateforme.netexplorer.pro/api/rights/(folderId)

Récupère les droits d'un dossier.
Requête

Le paramètre folderId représente le dossier dont les droits doivent être lus.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne une liste d'objets Droit représentant les droits du dossier.
Exemple :
[
    {
        "id": 78,
        "folder_id": 21,
        "target_id": 6,
        ...
    },
    ...
]

https://plateforme.netexplorer.pro/api/right

Ajoute un nouveau droit sur un dossier.
Requête

Paramètres GET

recursiveSi ce paramètre est précisé, le droit est appliqué de manière récursive aux dossiers enfants.

Corps de la requête

folder_idIdentifiant du dossier sur lequel appliquer le nouveau droit
target_idIdentifiant de l'utilisateur ou du groupe pour qui le droit doit s'appliquer
browseDonne le droit de naviguer
readDonne le droit de voir la liste des fichiers du dossier
downloadDonne le droit de télécharger les fichiers du dossier
writeDonne le droit d'ajouter des fichiers au dossier
editDonne le droit d'éditer un fichier du dossier
deleteDonne le droit de supprimer un fichier du dossier
shareDonne le droit d'inviter à collaborer sur le dossier, et créer des liens de partages/dépôt

Il est possible de n'envoyer que les propriétés à accorder. Les propriétés non précisées auront la valeur false par defaut.

Exemple :

{
    "folder_id": 4,
    "target_id": "14",
    "browse": true,
    "read": true,
    "download": true,
    "write": false,
    "edit": false,
    "delete": false,
    "share": false
}
Réponse

Codes de retour HTTP

201 Created  La ressource a été crée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Droit représentant le droit ajouté.
Note même si la récursivité a été demandée, les droits sous-jacents ne seront pas retournés.

https://plateforme.netexplorer.pro/api/right/(rightId)

Modifie les propriétés d'un droit.
Requête

Le paramètre rightId représente l'identifiant du droit à modifier.

Paramètres GET

recursiveSi ce paramètre est précisé, le droit est appliqué de manière récursive aux dossiers enfants.

Corps de la requête

browseDonne le droit de naviguer
readDonne le droit de voir la liste des fichiers du dossier
downloadDonne le droit de télécharger les fichiers du dossier
writeDonne le droit d'ajouter des fichiers au dossier
editDonne le droit d'éditer un fichier du dossier
deleteDonne le droit de supprimer un fichier du dossier
shareDonne le droit d'inviter à collaborer sur le dossier, et créer des liens de partages/dépôt
Afin d'alléger le traitement et réduire les risques d'erreurs, il est possible de n'envoyer que les propriétés modifiées.Les propriétés non précisées ne seront pas modifiées.

{
    "browse": true,
    "read": true,
    "download": true,
    "write": false,
    "edit": false
}
Réponse

Codes de retour HTTP

200 OKLe droit a été modifié avec succès.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Droit représentant le droit après que les modifications aient été enregistrées.
Si la récursivité a été demandée, les droits sous-jacents ne seront pas retournés.

https://plateforme.netexplorer.pro/api/right/(rightId)

Supprime un droit.
Requête

Le paramètre rightId représente l'identifiant du droit à supprimer.

Paramètres GET

recursiveSi ce paramètre est précisé, la suppression est appliquée de manière récursive aux dossiers enfants.
Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/alert/(alertId)

Récupère les informations sur une alerte.
Requête

Le paramètre alertId est obligatoire et représente l'identifiant de l'alerte.

Réponse

Retourne un objet Alerte représentant l'alerte demandée.

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/alerts/(folderId)

Récupère les alertes d'un dossier.
Requête

Le paramètre folderId est obligatoire et représente l'identifiant du dossier dont il faut lister les alertes.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne une liste d'objets Alerte représentant les alertes du dossier.
Exemple :
[
    {
        "id": 104,
        "folder_id": 21,
        "target_id": 6,
        ...
    },
    ...
]

https://plateforme.netexplorer.pro/api/alert

Crée une alerte email.
Requête

Corps de la requête

folder_idIdentifiant du dossier sur lequel appliquer l'alerte.
target_idIdentifiant de l'utilisateur ou du groupe pour qui l'alerte doit s'appliquer.
emailIdentifiant de l'email. L'email par défaut est utilisé si aucun email n'est spécifié.

Exemple :
{
    "folder_id": 3,
    "target_id": 14,
    "email": 10
}
Réponse

Codes de retour HTTP

201 Created  La ressource a été crée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Alerte représentant l'alerte précedemment créée.

https://plateforme.netexplorer.pro/api/alert/(alertId)

Modifie une alerte email.
Requête

Le paramètre alertId est obligatoire et représente l'identifiant de l'alerte.

Paramètres GET

recursiveSi ce paramètre est précisé, l'alerte est appliquée de manière récursive.

Corps de la requête

folder_idIdentifiant du dossier sur lequel appliquer l'alerte
target_idIdentifiant de l'utilisateur ou du groupe pour qui l'alerte doit s'appliquer
emailIdentifiant de l'email. L'email par défaut est utilisé si aucun email n'est spécifié
Afin d'alléger le traitement et réduire les risques d'erreurs, vous pouvez ne préciser que les propriétés qui vous interesse.Les propriétés non précisées ne seront pas modifiées.

Exemple :
{
    "email": 5
}
Réponse

Codes de retour HTTP

200 OKL'alerte a été modifiée avec succès.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Alerte représentant l'alerte modifiée.

https://plateforme.netexplorer.pro/api/alert/(alertId)

Supprime une alerte.
Requête

Le paramètre alertId est obligatoire et représente l'identifiant de l'alerte.

Paramètres GET

recursiveSi ce paramètre est précisé, la suppression est appliquée de manière récursive.
Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/user/(userId)

Récupère les informations d'un utilisateur.
Requête

Le paramètre userId est obligatoire et représente l'identifiant de l'utilisateur.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Utilisateur représentant l'utilisateur cible.

https://plateforme.netexplorer.pro/api/user/(userId)/quota

Récupère le quota d'un utilisateur (quota et espace disque utilisé).
Requête

Le paramètre userId est obligatoire et représente l'identifiant de l'utilisateur.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

quotaQuota en otcets, ou null si aucun.
usedEspace disque utilisé par l'utilisateur, en octets.
{
    "quota": 100000000,
    "user": 3892501810
}

https://plateforme.netexplorer.pro/api/users

Récupère la liste des utilisateurs.
Requête

Paramètres GET

offset_startIndex de départ (par défaut, 0)
nb_objectsNombre d'objets maximal à retourner (par défaut 30).
keywordMot clé pour rechercher un utilisateur.
member_ofRetourne uniquement les utilisateurs membres du groupe indiqué.
Il s'agit d'une chaine ; ce champ doit correspondre au "login" du groupe.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne une liste d'utilisateurs représentés par des objets Utilisateur et des informations sur la collection.
Exemple :
{
    "offset_start": 0,
    "nb_objets": 30,
    "nb_total_objects": 500,
    "objects": [
        {
            "id": 7,
            "lastname": "Smith",
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/user/(userId)/picture

Récupère l'image de profil d'un utilisateur.
Requête

Le paramètre userId est obligatoire et représente l'identifiant de l'utilisateur.

Réponse

Codes de retour HTTP

200 OKL'image de profil a été trouvée et a pu être renvoyée.
404 Not FoundL'utilisateur ou son image n'ont pas pu être trouvés.

Corps de la réponse

Retourne l'image de profil.

https://plateforme.netexplorer.pro/api/user

Crée un utilisateur.
Requête

Paramètres GET

alertSi true, notifie l'utilisateur par email de la création de son compte en lui indiquant son indentifiant et mot de passe.

Corps de la requête

Info Seuls les champs login et password sont obligatoires pour la création d'un utilisateur.
Cependant nous vous recommandons de toujours définir un email afin de faciliter la récupération du mot de passe si celui ci venait à être oubliée.

loginIdentifiant de l'utilisateur.
passwordMot de passe de l'utilisateur.
firstnamePrénom de l'utilisateur.
lastnameNom de l'utilisateur.
emailEmail de l'utilisateur.
organizationNom de la société dont fait partie l'utilisateur.
phoneListe des numéros de téléphones de l'utilisateur, séparés par des virgules.
activeIndique si le compte est actif ou non.
languageLangue utilisé pour l'utilisateur.
quotaQuota en octets appliqué au contenu créé par l'utilisateur.
expireDate d'expiration du compte.
groupsTableau des identifiants des groupes dont l'utilisateur est membre.
can_edit_optionsIndique si l'utilisateur peut éditer ses options ou non.
Réponse

Codes de retour HTTP

201 Created  La ressource a été crée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.

Corps de la réponse

Retourne un objet Utilisateur représentant l'utilisateur précédemment créé.

https://plateforme.netexplorer.pro/api/user/picture/(userId)

Met à jour l'image de profil d'un l'utilisateur.
Requête

Le paramètre userId est obligatoire et représente l'identifiant de l'utilisateur.

En-têtes HTTP

multipart/form-dataCette méthode attend un contenu ayant pour type MIME multipart/form-data.
  Attention Sans cet en-tête, le serveur ne traitera pas la requête et le résultat sera imprévisible.

Corps de la requête

targetFileContient les informations et le contenu du fichier.
Info La taille maximum est de 16Mo.
Réponse

Codes de retour HTTP

200 OKL'image a bien été ajouté.
500 Internal Server ErrorAucune image n'a été envoyée, ou sa taille dépasse celle autorisés.

Corps de la réponse

En cas de succès, le mot OK est retourné.Sinon, ce sont les messages d'erreurs correspondants qui sont retournés.

https://plateforme.netexplorer.pro/api/user/(userId)

Modifie l'utilisateur cible.
Requête

Le paramètre userId est obligatoire et représente l'identifiant de l'utilisateur.

Paramètres GET

alertSi true, NetExplorer envoie les identifiants d'accès à l'utilisateur par email (possible uniquement si le mot de passe a été changé lors de la requête).

Corps de la requête

Afin d'alléger le traitement et réduire les risques d'erreurs, vous pouvez ne préciser que les propriétés qui vous interesse.

Les propriétés non précisées ne seront pas modifiées.

loginIdentifiant de l'utilisateur.
passwordMot de passe de l'utilisateur.
firstnamePrénom de l'utilisateur.
lastnameNom de l'utilisateur.
emailEmail de l'utilisateur.
organizationNom de la société dont fait partie l'utilisateur.
phoneListe des numéros de téléphones de l'utilisateur, séparés par des virgules.
activeIndique si le compte est actif ou non.
languageLangue utilisé pour l'utilisateur.
quotaQuota en octets appliqué au contenu créé par l'utilisateur.
expiredate d'expiration du compte.
groupsTableau des identifiants des groupes dont l'utilisateur est membre.
Info Si groups contient un tableau vide, l'utilisateur ne sera plus membre d'aucun groupe.
can_edit_optionsIndique si l'utilisateur peut éditer ses options ou non.
Réponse

Codes de retour HTTP

200 OKL'utilisateur a été modifié avec succès.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Utilisateur représentant l'utilisateur précédemment créé ou modifié.

https://plateforme.netexplorer.pro/api/user/(userId)

Supprime un utilisateur.
Requête

Le paramètre userId est obligatoire et représente l'identifiant de l'utilisateur.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/user/picture/(userId)

Supprimer l'image de profil de l'utilisateur.
Requête

Le paramètre userId est obligatoire et représente l'identifiant de l'utilisateur.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/invites/(folderId)

Récupère une liste d'invitations.
Requête

Le paramètre folderId est facultatif et représente l'identifiant du dossier dans lequel rechercher les invitations.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
401 Unauthorized  Authentification requise. Le token n'a pas été spécifié ou celui-ci n'est pas/plus valide.

Corps de la réponse

Retourne une liste d'objets Invitation.

https://plateforme.netexplorer.pro/api/invite/users/(folderId)

Récupère une liste d'utilisateurs pouvant être invités.
Requête

Le paramètre folderId est obligatoire et représente l'identifiant du dossier sur lequel appliquer l'invitation.

Paramètres GET

searchMots clés correspondant à la recherche d'un utilisateur présent sur la plateforme.
Attention doit contenir au minimum 3 caractères.
offset_startIndex de départ (par défaut, 0)
nb_objectsNombre d'objets maximal à retourner (par défaut 30).
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
401 Unauthorized  Authentification requise. Le token n'a pas été spécifié ou celui-ci n'est pas/plus valide.

Corps de la réponse

idIdentifiant de l'utilisateur trouvé.
nameNom de l'utilisateur trouvé.
emailsListe des emails de l'utilisateur trouvé, séparé par des virgules.
{
    "offset_start": 0,
    "nb_objects": 16,
    "nb_total_objects": 16,
    "objects": [
        {
            "id": 321,
            "name": "Marjorie Balcera",
            "emails": "marjorie@avocats.com"
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/invite

Crée une invitation.
Requête

Corps de la requête

targetEmail de l'utilisateur à inviter.
folderIdentifiant du dossier auquel l'utilisateur aura accès une fois son compte crée.
rightsDroits à appliquer à la création du compte.
expirationDate d'expiration de l'invitation.
Réponse

Codes de retour HTTP

201 Created  La ressource a été crée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne l'objet Invitation crée.
Exemple :
{
    "target": "franck@solution.fr",
    "folder": 14,
    "rights": 3  // Lecture et Téléchargement
}

https://plateforme.netexplorer.pro/api/invite/(invitationId)

Modifie une invitation.
Requête

Le paramètre invitationId est obligatoire et représente l'identifiant de l'invitation à modifier.

Corps de la requête

rightsDroits à appliquer à la création du compte.
expirationDate d'expiration de l'invitation.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne l'objet Invitation modifié.

https://plateforme.netexplorer.pro/api/invite/(inviteId)

Supprime une invitation.
Requête

Le paramètre inviteId est obligatoire et représente l'identifiant de l'invitation à supprimer.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/group/(groupId)

Récupère les informations d'un groupe.
Requête

Le paramètre groupId est obligatoire et représente l'identifiant du groupe.

Paramètres GET

fullPermet de récupérer la liste des membres du groupe.
Réponse

Retourne un objet Groupe représentant le groupe cible.

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/groups

Récupère la liste des groupes.
Requête

Paramètres GET

offset_startIndex de départ (par défaut, 0)
nb_objectsNombre d'objets maximal à retourner (par défaut 30).
keywordMot clé pour rechercher un groupe.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne une liste d'objets Groupe représentant les groupes et des informations sur la collection.
Exemple :
{
    "offset_start": 0,
    "nb_objets": 30,
    "nb_total_objects": 500,
    "objects": [
        {
            "id": 18,
            "login": "Comptabilité"
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/group

Crée un groupe.
Requête

Corps de la requête

loginIdentifiant du groupe.
membersListe d'identifiants d'utilisateurs à rajouter au groupe.
Réponse

Codes de retour HTTP

201 Created  La ressource a été crée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
500 Internal Server Error  Erreur générique.

Corps de la réponse

Retourne un objet Groupe représentant le groupe précédemment créé.

https://plateforme.netexplorer.pro/api/group/(groupId)

Modifie le groupe cible.
Requête

Le paramètre groupId est obligatoire et représente l'identifiant du groupe.

Corps de la requête

loginIdentifiant du groupe.
membersListe d'identifiants d'utilisateurs à rajouter au groupe.
Réponse

Codes de retour HTTP

200 OKLe groupe a été modifié avec succès.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
500 Internal Server Error  Erreur générique.

Corps de la réponse

Retourne un objet Groupe représentant le groupe précédemment créé ou modifié.

https://plateforme.netexplorer.pro/api/group/(groupId)

Supprime un groupe.
Requête

Le paramètre groupId est obligatoire et représente l'identifiant du groupe.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/option/(userId)

Récupère les options d'un utilisateur ou d'un groupe.
Requête

Le paramètre userId est obligatoire et représente l'id d'un utilisateur ou d'un groupe.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Options représentant les options de l'utilisateur ou du groupe.

https://plateforme.netexplorer.pro/api/option/(userId)

Modifie les options d'un utilisateur ou d'un groupe.
Requête

Le paramètre userId est obligatoire et représente l'id d'un utilisateur ou d'un groupe.

Corps de la requête

target_idIdentifiant de l'utilisateur à qui appliquer les options.
ipsListe des IPs autorisées ou null si aucun filtrage n'a lieu sur les IPs.
Attention Un tableau vide interdit toutes les IPs. Il n'est donc plus possible à l'utilisateur de se connecter.
daysListe des jours de la semaine autorisés. Parmis la liste : monday, tuesday, webdnesday, thursday, friday, saturday, sunday
hour_startHeure de début de connexion (au format hh:mm:ss)
Attention L'heure doit être au format GMT.
hour_endHeure de fin de connexion (au format hh:mm:ss)
Attention L'heure doit être au format GMT.
can_netsyncAutorise ou non l'utilisation de l'application NetSync.
Réponse

Codes de retour HTTP

200 OKL'option a bien été ajoutée ou modifiée.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Options représentant l'option modifiée.
Note Dès qu'une option est appliquée à un utilisateur, elle rompt l'héritage précédent provenant des groupes de l'utilisateur.

https://plateforme.netexplorer.pro/api/option/(userId)

Supprime les options d'un utilisateur ou d'un groupe.
Dès lors qu'un utilisateur ne dispose plus d'options expressément définies, il retrouve les options appliquées par héritage.
Requête

Le paramètre userId est obligatoire et représente l'id d'un utilisateur ou d'un groupe.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/delegate/(delegateId)

Récupère les informations d'un délégué.
Requête

Le paramètre delegateId est obligatoire et représente l'id d'un utilisateur délégué.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Délégué le délégué cible.

https://plateforme.netexplorer.pro/api/delegates/(groupId)

Récupère la liste des délégués.
Requête

Le paramètre delegateId est obligatoire et représente l'id d'un utilisateur délégué.

Corps de la requête

offset_startIndex de départ (par défaut 0).
nb_objectsNombre d'objets maximal à retourner (par défaut 30).
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne une liste d'objets Délégué représentant les délégués et des informations sur la collection.
Exemple :
{
    "offset_start": 0,
    "nb_objects": 30,
    "nb_total_objects": 5,
    "objects": [
        {
            "id": 7,
            "user_id": "2",
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/delegate

Crée un délégué.
Requête

Corps de la requête

user_idIdentifiant de l'utilisateur qui se voit attribuer des droits de délégués.
group_idIdentifiant du groupe sur lequel la délégation va s'appliquer.
usersIndique si le délégué pourra gérer les utilisateurs au sein du groupe.
securityIndique si le délégué pourra gérer les droits d'accès pour le groupe et ses utilisateurs.
Le délégué ne pourra jamais accorder plus de droit qu'il n'en possède.
alertsIndique si le délégué pourra mettre en place des alertes emails pour les utilisateurs de son groupe.
Réponse

Codes de retour HTTP

201 Created  La ressource a été crée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Délégué représentant le délégué précédemment créé.

https://plateforme.netexplorer.pro/api/delegate/(delegateId)

Modifie le délégué cible.
Requête

Le paramètre delegateId est obligatoire et représente l'id d'un utilisateur délégué.

Corps de la requête

Afin d'alléger le traitement et réduire les risques d'erreurs, vous pouvez ne préciser que les propriétés qui vous interesse.
Les propriétés non précisées ne seront pas modifiées.

user_idIdentifiant de l'utilisateur qui se voit attribuer des droits de délégués.
group_idIdentifiant du groupe sur lequel la délégation va s'appliquer.
usersIndique si le délégué pourra gérer les utilisateurs au sein du groupe.
securityIndique si le délégué pourra gérer les droits d'accès pour le groupe et ses utilisateurs.
Le délégué ne pourra jamais accorder plus de droit qu'il n'en possède.
alertsIndique si le délégué pourra mettre en place des alertes emails pour les utilisateurs de son groupe.
Réponse

Codes de retour HTTP

200 OKLe délégué a été modifié avec succès.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Délégué représentant le délégué précédemment modifié.

https://plateforme.netexplorer.pro/api/delegate/(delegateId)

Supprime un délégué.
Requête

Le paramètre delegateId est obligatoire et représente l'id d'un utilisateur délégué.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/email/(emailId)

Récupère les détails d'un email.
Requête

Le paramètre emailId est obligatoire et représente l'id de l'email à récupérer.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Email représentant l'email demandé.

https://plateforme.netexplorer.pro/api/emails

Récupère la liste des emails disponibles.
Requête

Paramètres GET

offset_startIndex de départ (par défaut : 0).
nb_objectsNombre d'objets maximal à retourner (par défaut : 30).
keywordMot clé pour rechercher un email.
typePermet de filtrer par type d'email.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne une liste d'objets Email représentant les emails et des informations sur la collection.
Exemple :
{
    "offset_start": 0,
    "nb_objects": 30,
    "nb_total_objects": 500,
    "objects": [
        {
            "id": 7,
            "object": "Mail subject",
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/email

Crée un nouvel email.
Seuls les administrateurs et délégués peuvent créer des emails de type EM_TE_ALERT.
Le type EM_TE_DEFAUT est un type système ne pouvant être créé.
Requête

Corps de la requête

objectSujet de l'email.
contentContenu de l'email.
typeType d'email. Seul EM_TE_ALERT est disponible à la création.
Réponse

Codes de retour HTTP

201 Created  La ressource a été crée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Email représentant l'email précédemment créé.

https://plateforme.netexplorer.pro/api/email/(emailId)

Modifie l'email cible.
Requête

Le paramètre emailId est obligatoire et représente l'ID de l'email à mettre à jour.

Paramètres GET

sendPermet de préciser que l'email doit être envoyé.

Corps de la requête

objectSujet de l'email.
contentContenu de l'email.
Réponse

Codes de retour HTTP

200 OKL'email a été modifié avec succès.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Email représentant l'email précédemment modifié.

https://plateforme.netexplorer.pro/api/email/(emailId)

Supprime un email.
Requête

Le paramètre emailId est obligatoire et représente l'ID de l'email à mettre à jour.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/publicconfig

Récupère la liste des paramètres de configuration publics sous la forme section/clé/valeur.
Méthode accessible pour tous les utilisateurs.


Info Cette fonctionne ne nécessite pas de token.
Requête

Paramètres GET

flatAplati le tableau des configurations.
Exemple : features.lock_read : false
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.

Corps de la réponse

Retourne un tableau représentant les éléments de configuration publics.
Exemple :
{
    "features": {
        "lock_read": true,
        "lock": true,
        "edit": true,
        "trash": true,
        "versioning": true,
        ...
    },
    ...
}

https://plateforme.netexplorer.pro/api/config

Récupère la liste des paramètres de configuration sous la forme section/clé/valeur.
Requête

Cette méthode ne gère aucun paramètre ou contenu en entrée.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.

Corps de la réponse

Retourne un tableau représentant les éléments de configuration.
Exemple :
{
    "config": {
        "defaut_language": "fr",
        "allow_guest": false,
        ...
    },
    ...
}

https://plateforme.netexplorer.pro/api/config

Modifie uniquement les paramètres de configuration passés en paramètre.
Requête

Corps de la requête

{
    "config": {
        "default_language": "fr",
        ...
    },
    ...
}
Réponse

Retourne l'ensemble des paramètres de configuration.

Codes de retour HTTP

200 OKLa configuration a été modifié avec succès et retourné.

Corps de la réponse

[
    {
        "default_language": "fr",
        ...
    },
    ...
]

https://thumbs.netexplorer.pro/(token)

Récupère la miniature d'un fichier.
Requête

Le paramètre token est obligatoire et correspond à la clé d'accès à la miniature.

Paramètres GET

sTaille en pixels de l'image au format WxHf où W est la largeur, H la hauteur, et f le flag optionnel indiquant que l'image doit garder les proportions d'origine.
Il est aussi possible de ne spécifier qu'une seule des dimensions, l'autre étant alors automatiquement calculée de manière à préserver le ratio initial. Exemple: 800x600 - Image en 800x600 forcée, 1920x1080f - Image en 1920x1080 maximum, mais la dimension finale dépend de l'image d'origine.

Il existe plusieurs configuration "par défaut", il suffit de remplacer la taille par un flag:
t - Mode spécial pour les miniatures de la partie navigation
s - Petite taille: 180x
n - Taille par défaut: 700x
l - Grande taille: 1000x

Valeur par défaut: t
fFormat de l'image retournée. jpg, png ou gif.
oUniquement pour les documents (pas les images), définit si l'overlay relatif au format de fichier doit être ajouté à l'image.
Peut valoir 1 ou 0.
pUniquement pour les documents, indique pour quelle page du document la miniature doit être générée.
fitIndique si l'image produite doit respecter les proportions d'origine.
Equivalent du flag f spécifiable dans les dimensions de l'image (paramètre s).
nuPermet d'interdire l'upscaling.
L'image ne pourra jamais être plus grande que sa taille d'origine (sauf si l'option fit est activée).
Réponse

Le contenu retourné est une image binaire de type image/png, image/gif ou image/jpg (par défaut).
Si une image identique est déjà en cours de génération, le serveur attend 30 secondes que le processus se termine.
S'il ne se termine pas dans ce laps de temps, un code 423 Locked est retourné.


https://plateforme.netexplorer.pro/api/log/(logId)

Récupère les informations d'un évènement du journal.
Requête

Le paramètre logId est obligatoire et correspond à l'ID de l'entrée du journal que vous souhaitez récupérer.

Réponse

Retourne un objet Entrée de journal représentant l'évènement cible.

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/logs

Récupère la liste des évènements présents dans les journaux d'évènements.
Requête

Paramètres GET

offset_startIndex de départ (par défaut : 0).
nb_objectsNombre d'objets maximal à retourner (par défaut : 30).
keywordMots clés
typeType de l'évènement : CONNECT, INSERT, UPDATE, DELETE, DOWNLOAD, SEND
statutStatut de l'évènement : OK ou ERROR
object_idIdentifiant de l'objet
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne une liste d'objets Entrée de journal
Exemple :
{
    "offset_start": 0,
    "nb_objects": 30,
    "nb_total_objects": 10,
    "objects": [
        {
            "id": 987,
            "user_id": 5,
            "user_agent": "Mozilla/5.0...",
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/archive/folder/(folderId)

Récupère les informations d'un dossier archivé et ses sous éléments.
Requête

Le paramètre folderId est obligatoire et correspond à l'ID du dossier archivé que vous souhaitez récupérer.

Paramètres GET

Se référer à la méthode GET /folder/(folderId).
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Dossier représentant le dossier recherché.

https://plateforme.netexplorer.pro/api/archive/file/(fileId)

Récupère les informations d'un fichier archivé.
Requête

Le paramètre fileId est obligatoire et correspond à l'ID du fichier archivé que vous souhaitez récupérer.

Paramètres GET

metaPermet d'obtenir les méta-données du document.
fullPermet d'obtenir toutes les informations sur le fichier.
Se référer à la méthode GET /file/(fileId).
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Fichier représentant le fichier archivé recherché.

https://plateforme.netexplorer.pro/api/archive/folder

Crée un dossier d'archive.
Requête

Paramètres GET

fullPermet d'obtenir toutes les informations sur le dossier.
Se référer à la méthode GET /folder/(folderId).
lightPermet de retirer certaines infos de l'objet.
Se référer à la méthode GET /folder/(folderId).

Corps de la requête

parent_idIdentifiant du dossier archivé vers lequel créer le dossier.
nameNom à appliquer au nouveau dossier archivé.
Réponse

Codes de retour HTTP

201 Created  La ressource a été crée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Dossier représentant le dossier désarchivé crée.

https://plateforme.netexplorer.pro/api/folder/(folderId)/archive

Archive un dossier.
Requête

Le paramètre folderId est obligatoire et correspond à l'ID du dossier à archiver.

Paramètres GET

fullPermet d'obtenir toutes les informations sur le dossier.
Se référer à la méthode GET /folder/(folderId).
lightPermet de retirer certaines infos de l'objet.
Se référer à la méthode GET /folder/(folderId).

Corps de la requête

targetIdentifiant du dossier d'archive vers lequel archiver le dossier.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Dossier représentant le dossier nouvellement archivé.

https://plateforme.netexplorer.pro/api/archive/folder/(folderId)/unarchive

Désarchive un dossier archivé.
Requête

Le paramètre folderId est obligatoire et correspond à l'ID du dossier archivé que vous souhaitez désarchiver.

Paramètres GET

fullPermet d'obtenir toutes les informations sur le dossier.
Se référer à la méthode GET /folder/(folderId).
lightPermet de retirer certaines infos de l'objet.
Se référer à la méthode GET /folder/(folderId).
target_idDéfinit le dossier parent vers lequel désarchiver le dossier.
Info par défaut, si ce paramètre est manquant, le dossier parent sera le dossier racine 1.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Dossier représentant le dossier désarchivé.

https://plateforme.netexplorer.pro/api/file/(fileId)/archive

Archive un fichier.
Requête

Le paramètre fileId est obligatoire et correspond à l'ID du fichier à archiver.

Paramètres GET

fullPermet d'obtenir toutes les informations sur le dossier.
Se référer à la méthode GET /file/(fileId).

Corps de la requête

targetIdentifiant du dossier d'archive vers lequel archiver le dossier.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Dossier représentant le dossier nouvellement archivé.

https://plateforme.netexplorer.pro/api/archive/file/(fileId)/unarchive

Désarchive un fichier archivé.
Requête

Le paramètre fileId est obligatoire et correspond à l'ID du fichier archivé que vous souhaitez désarchiver.

Paramètres GET

fullPermet d'obtenir toutes les informations sur le dossier.
Se référer à la méthode GET /file/(fileId).
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Fichier représentant le dossier désarchivé.

https://plateforme.netexplorer.pro/api/archive/folder/(folderId)

Modifie un dossier archivé.
Requête

Le paramètre folderId est obligatoire et correspond à l'ID du dossier archivé que vous souhaitez éditer.

Paramètres GET

fullPermet d'obtenir toutes les informations sur le dossier.
Se référer à la méthode GET /folder/(folderId).
lightPermet de retirer certaines infos de l'objet.
Se référer à la méthode GET /folder/(folderId).

Corps de la requête

parent_idIdentifiant du dossier archivé vers lequel déplacer le dossier.
nameNom à appliquer au dossier archivé.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Dossier représentant le dossier archivé modifié.

https://plateforme.netexplorer.pro/api/archive/file/(fileId)

Modifie un fichier archivé.
Requête

Le paramètre fileId est obligatoire et correspond à l'ID du fichier archivé que vous souhaitez éditer.

Paramètres GET

fullPermet d'obtenir toutes les informations sur le dossier.
Se référer à la méthode GET /file/(fileId).

Corps de la requête

parent_idIdentifiant du dossier archivé vers lequel déplacer le dossier.
nameNom à appliquer au dossier archivé.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un objet Dossier représentant le dossier archivé modifié.

https://plateforme.netexplorer.pro/api/archive/folder/(folderId)

Supprime un dossier archivé.
Requête

Le paramètre folderId est obligatoire et représente l'ID du dossier archivé à supprimer.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/archive/file/(fileId)

Supprime un fichier archivé.
Requête

Le paramètre fileId est obligatoire et représente l'ID du fichier archivé à supprimer.

Réponse

Codes de retour HTTP

204 No Content  La requête a été traitée avec succès mais aucun contenu n'a été retourné.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.
404 Not Found  La ressource est introuvable.

https://plateforme.netexplorer.pro/api/fzen

Récupère les informations sur l'état de la plateforme.
(Occupation de l'espace disque, suivi utilisateurs simultanés, date d'expiration...)
Requête

Paramètres GET

infosDéfinit les informations à retourner. Valeurs :
ValeurDroits
1Donne des informations basics sur storage
2Rajoute des informations sur trashes.users
4Rajoute les informations de slots
8Rajoute les informations de visits
16Compte le nombre de versions
32Rajoute les informations de stats
64Rajoute les informations de private.users

Info pour combiner plusieurs infos, additionner les valeurs entre elles, et renvoyez le résultat.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 Forbidden  Accès interdit. La ressource n'est pas accessible car l'utilisateur n'y a pas accès.

Corps de la réponse

{
    "expire": 1515166838,  // Date d'expiration de la plateforme (Timestamp Unix)
    "storage": {
        "main": {
            "used": 10000000000,  // 10Go, espace disque utilisé, en incluant les archives
            "free": 90000000000,  // 90Go
            "quota": 100000000000,  // 100Go
            "percent": 10  // 10%
        },
        "archive": {  // Cette section est obsolète et ne dois plus être utilisée
            "used": 10000000000,  // Obsolète
            "free": 90000000000,  // Obsolète
            "quota": 100000000000,  // Obsolète
            "percent": 10  // Obsolète
        },
        "trashes": {
            "total": 452632,
            "users": [
                {
                    "id": 3,
                    "user": "Louis BRETEL",
                    "login": "louis.bretel",
                    "size": 452632
                }
            ]
        },
        "private": {
            "total": 246895,
            "users": [
                {
                    "id": 5,
                    "user": "Jérôme Acantil",
                    "login": "jereom.acantil",
                    "size": 14000
                }
            ]
        },
        "outlook": 0,  // Espace disque utilisé par les pièces jointes déposés par le plugin Outlook
        "versions": 452664  // Espace disque utilisé par les versions
    },
    "visits": [
        {
            "id": 3,
            "user": "Louis BRETEL",
            "login": "louis.bretel",
            "last_seen": "1603792483",
            "actions": 184,
            "external": false
        }
    ],
    "slots": {
        "allowed": 5,
        "used": 2,
        "billable": 2,  // Nombre de connexions facturées
        "recents": [
            {
                "id": 3,
                "user": "Louis BRETEL",
                "login": "louis.bretel",
                "ip": "1.1.1.1",
                "user_agent": "NetSync/1.2.69 (macOS High Sierra 10.13)",
                "computer": "PC01",
                "date": null,
                "state": "online",
                "type": "client",
                "env": {
                    "os": "Mac OS",
                    "os_type": 2,
                    "browser": "NetSync 1.2.69"
                },
                "geo": {
                    "city": "Nice",
                    "country": "France",
                    "loc": "Nice, France"
                }
            },
            {
                "id": 4,
                "user": "Marc KELSEN",
                "login": "marc.kelsen",
                "ip": "1.1.2.2",
                "user_agent": "NetSync/1.2.72 (Windows 10)",
                "computer": "PC11",
                "date": null,
                "state": "online",
                "type": "client",
                "env": {
                    "os": "Windows",
                    "os_type": 1,
                    "browser": "NetSync 1.2.72"
                },
                "geo": {
                    "city": "Colomiers",
                    "country": "France",
                    "loc": "Colomiers, France"
                }
            },
            {
                "id": 5,
                "user": "Elise ORGANA",
                "login": "elise.organa",
                "ip": "1.1.1.1",
                "user_agent": "NetSync/1.2.72 (Windows 10)",
                "computer": "PC02",
                "date": 1514761200,  // Date de dernière connexion
                "state": "offline",
                "type": "client",
                "env": {
                    "os": "Windows",
                    "os_type": 1,
                    "browser": "NetSync 1.2.72"
                },
                "geo": {
                    "city": "Colomiers",
                    "country": "France",
                    "loc": "Colomiers, France"
                }
            }
        ]
    },
    // Signature de documents
    "docsigning": {
        "sign": 0,  // Nombre de signatures restantes
        "sign_personal": 0,
        "timestamp": 0
    }
}

Pour toute question relative à l'API REST, vous pouvez nous contacter :

Par email

Si vous souhaitez rester informé des modifications de la documentation API, vous pouvez vous inscrire à notre liste de diffusion dédiée en cliquant ici : Rester informé