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": [
                ...
            ]
        },
        ...
    ],
    "folders": [
        // Objets Dossier
        {
            "id": 1,
            "name": [
                ...
            ]
        },
        ...
    ]
}

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": [
                    ...
                ]
            },
            ...
        ],
        "folders": [
            {
                "id": 2,
                "name": [
                    ...
                ]
            },
            ...
        ],
        
        // 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": [
        
        // 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 (version).
guid
Lecture seule
stringIdentifiant global unique du fichier (GUID) 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
Attention Cette propriété est obsolète.
Utilisez plutôt POST /token/file/(fileId)/(type)
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": [
        
        // 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",
    "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
stringIdentifiant global unique du fichier (GUID) 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": "00000000-0000-0000-0000-000000000000",
    "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": [
        
    ],
    "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 connecteur 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.
roleintRôle de l'utilisateur. Le rôle défini aussi le groupe système dans lequel appartient l'utilisateur.
IdentifiantRole
1Utilisateurs externe
2Utilisateurs
3Administrateur
4Manager

Exemple d'objet JSON


{
    "id": "15",
    "firstname": "Noël",
    "lastname": "FLANTIER",
    "login": "n.flantier",
    "email": [
        
    ],
    "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,
    "role": 3
}

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 modification 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.
targetintIdentifiant de l'utilisateur crée suite à l'invitation.
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": [
                ...
            ]
        },
        {
            "id": "145",
            "firstname": "Elodie",
            "lastname": "CARNERA",
            "login": [
                ...
            ]
        },
        ...
    ]
}

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.
oauth_blockedintMasque numérique des applications dont la connexion sera bloquée.
Il suffit d'additionner les valeurs, le résultat correspond au masque.
ValeurApplication
1Application Web
2Application Mobile
4Connecteur Outlook
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 OBSOLÈTE

Remplacé par le rôle utilisateur Manager.

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
Attention Cette propriété est 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 partage par lien


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique du partage par lien.
keystringClé de téléchargement du partage par lien.
rootsarrayListe d'objets Contenu de partage.
flagsintMasque numérique des droits appliqués au lien.
Valeur numériqueDroit
1Téléchargement uniquement
2Aperçu uniquement
4Aperçu et téléchargement
8Aperçu, téléchargement et modification
16Protégé par mot de passe
32Protégé par code sms
64Accusé de téléchargement
128Téléchargement unique
expiration_datedate ou nullDate d'expiration du partage. Lorsque le partage expire, le lien n'est pas supprimé mais le fichier n'est plus téléchargeable par celui-ci.
creation_date
Lecture seule
dateDate de création du partage par lien
name
Optionnel
string ou non définiNom du partage
owner
Lecture seule
stringNom complet de l'utilisateur ayant généré le partage par lien.
owner_idintIdentifiant unique de l'utilisateur.
access_token
Lecture seule
stringSi le lien est protégé par mot de passe ce token permettra la récupération du contenu du lien (expire au bout de 2h).

Exemple d'objet JSON


{
    "id": 4559,
    "key": "258fqwu987y57D",
    "roots": [
        {
            "id": 1,
            "entity_type": 0,
            "share_id": 4559,
            "name": "Fichier de test.pdf",
            "can_download": true,
            "can_preview": true,
            "can_edit": false,
            "size": 311111,
            "is_file": false,
            "parent_id": 23,
            "file_type": "document",
            "guid": "00000-0000-00000-00000",
            "extension": "pdf"
        },
        {
            "id": 2,
            "entity_type": 1,
            "share_id": 4559,
            "name": "Dossier partagé",
            "can_download": true,
            "can_preview": true,
            "can_edit": false,
            "size": 311111,
            "is_file": false,
            "parent_id": 23
        }
    ],
    "flags": 4,  // Aperçu et téléchargement
    "expiration_date": null,
    "creation_date": "14/02/2024",
    "owner": "Amir BEN OUALI",
    "owner_id": 55
}

Structure d'un contenu de partage


NomTypeDescription
guidstringLe guid du fichier (Si l'entité est un fichier)
idintL'identifiant unique de l'entité
entity_typeintType d'entité
ValeurType associé
0Dossier
1Fichier
share_id
Lecture seule
intIdentifiant numérique unique du partage par lien.
name
Lecture seule
stringNom de l'élément
extension
Lecture seule
stringNom de l'extension (Si l'entité est un fichier)
lock
Lecture seule
objectObjet Verrou (Si l'entité est un fichier)
can_download
Lecture seule
boolL'élément peut être télécharger
can_preview
Lecture seule
boolL'élément peut être ouvert en aperçu
can_edit
Lecture seule
boolL'élément peut être modifié
file_type
Lecture seule
stringLe type de fichier (Si l'entité est un fichier)
size
Lecture seule
intLa taille de l'entité

Exemple d'objet JSON


[
    {
        "id": 1,
        "entity_type": 0,
        "share_id": 4559,
        "name": "Fichier de test.pdf",
        "can_download": true,
        "can_preview": true,
        "can_edit": false,
        "size": 311111,
        "parent_id": 23,
        "file_type": "document",
        "guid": "00000-0000-00000-00000",
        "extension": "pdf"
    },
    {
        "id": 2,
        "entity_type": 1,
        "share_id": 4559,
        "name": "Dossier partagé",
        "can_download": true,
        "can_preview": true,
        "can_edit": false,
        "size": 311111,
        "parent_id": 23
    }
]

Structure d'un partage par lien (ancien) OBSOLÈTE


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique du partage par lien.
keystringClé de téléchargement du partage par lien.
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 partage par lien.
is_valid
Lecture seule
boolIndique si le fichier est téléchargeable via ce lien ou non.
expiration_datedate ou nullDate d'expiration du partage. Lorsque le partage 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 partage par lien.
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 partage.
max_downloads
Propriétaire de l'objet uniquement
intNombre de téléchargements maximum avant désactivation du partage.
notify
Propriétaire de l'objet uniquement
boolNotifier l'utilisateur ayant généré le partage par lien lors du téléchargement du fichier par le destinataire.
autoupdateboolIndique si le partage pointe toujours vers la dernière version du fichier cible ou non.
only_previewboolIndique si le partage donne le droit uniquement à l'aperçu des fichiers.
typeint ou videIndique si le lien est d'un certain type.
ValeurApplication
1Protégé par mot de passe envoyé par sms
force_dlboolIndique si le partage déclenchera un téléchargement forcé.
access_token
Lecture seule
stringSi le lien est protégé par mot de passe ce token permettra la récupération du contenu du lien (expire au bout de 2h).
download_token
Attention Cette propriété est obsolète.
Utilisez plutôt POST /token/sharelink/(key)/download
Lecture seule
stringSi le lien est protégé par mot de passe et qu'il n'est pas en "Aperçu uniquement" ce token permettra le téléchargement des fichiers (expire au bout de 2h).
stats
Propriétaire de l'objet uniquement
Object

Retourne un ensemble d'informations sur les téléchargements du partage.
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 partage.

"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 partage par email


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique du partage par email.
objectstringObjet envoyé lors de la création du partage par email.
contentstringContenu de l'email envoyé lors de la création du partage par email.
owner_id
Lecture seule
intIdentifiant numérique du créateur du partage par email.
share_id
Lecture seule
intIdentifiant du partage par lien rattaché.
creation_date
Lecture seule
dateDate à laquelle le partage par email a été crée.
recipients
Lecture seule
arrayTableau contenant les différents destinataires. Chaque entrées contient l'email du destinataire

Exemple d'objet JSON


{
    "id": 12,
    "object": "Objet de l'email",
    "content": "Bonjour, ci joint un partage par email.",
    "owner_id": 1,
    "share_id": 13,
    "creation_date": "2021-04-21T10:04:20+00:00",
    "recipients": [
        {
            "email": "email@netexplorer.fr"
        }
    ]
}

Structure d'un partage par email (ancien) OBSOLÈTE


NomTypeDescription
id
Lecture seule
intIdentifiant numérique unique du partage par email.
objectstringObjet envoyé lors de la création du partage par email.
contentstringContenu de l'email envoyé lors de la création du partage par email.
owner
Lecture seule
intIdentifiant numérique du créateur du partage par email.
stats
Lecture seule
jsonStatistiques des téléchargements et des aperçus du partage par email.
sending_date
Lecture seule
dateDate à laquelle l'email a été envoyé.
recipients
Lecture seule
arrayTableau contenant les différents destinataires. Chaque entrées contient email name du destinataire
Si le destinataire est une persone interne la propriété id sera rajouté.
La propriété dlink correspondra au partage par lien (unique) du destinataire.

Exemple d'objet JSON


{
    "id": "12",
    "object": "Objet de l'email",
    "content": "Bonjour, ci joint un partage par email.",
    "owner": 1,
    "stats": {
        "nb_download": 1,
        "nb_preview": 1
    },
    "sendind_date": "2021-04-21T10:04:20+00:00",
    "recipients": [
        {
            "email": "email@netexplorer.fr",
            "name": "Bob Bob",
            "id": "123",
            "dlink": [  // Objet partage par lien
                {
                    "id": 14,
                    ...
                }
            ]
        }
    ]
}

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'un template de fichier


NomTypeDescription
id
Lecture seule
intIdentifiant du template.
namestringNom du template.
descriptionstringDescription du template.
date
Lecture seule
stringDate de modification du template.
guid
Lecture seule
stringguid du template.
parent_id
Lecture seule
intId du dossier parent du template.
file_type
Lecture seule
stringType d'aperçu du fichier. Peut valoir image, document ou video si l'aperçu est disponible pour ce fichier.
thumb_token
Lecture seule
stringToken d'accès aux miniatures de ce fichier si le format est supporté.


Structure d'un flux de travail


NomTypeDescription
id
Lecture seule
intIdentifiant de l'instance du flux.
object_typestring ou nullType d'objet sur lequel l'instance du flux est rattaché.
object_idint ou nullIdentifiant de l'objet sur lequel l'instance du flux est rattaché.
fluxstringClé de traduction du nom du flux.
fluxobjectObjet contenu l'identifiant, le nom, la description du type de flux.
state
Lecture seule
objectObjet contenu l'identifiant et le nom de l'état du flux.
owner_id
Lecture seule
intIdentifiant du créateur de l'instance du flux.
propertiesstringTableau json des propriétés du flux.
creation
Lecture seule
stringDate de création du flux
is_closed
Lecture seule
boolInforme si l'instance du flux est dans un état ne pouvant évoluer vers un autre état.
transitions_available
Lecture seule
arrayTableau listant les transitions disponible pour l'état actuel de l'instance du flux.
data_objects
Lecture seule
arrayTableau d'objets rattachés au flux

Exemple d'objet JSON


{
    "id": 12,
    "object_type": null,
    "object_id": null,
    "properties": [
        {
            "signatures": [
                {
                    "email": "email@netexplorer.fr"
                },
                ...
            ]
        },
        {
            "signature_fields": [
                {
                    "x": 123,
                    "y": 321,
                    "page": 1,
                    "signerIndex": 0,
                    "document": 0
                },
                ...
            ]
        },
        {
            "objects": [
                {
                    "type": "file",
                    "id": 1
                },
                ...
            ]
        },
        ...
    ],
    "owner_id": 2,
    "creation": "2024-01-01 00:00:00",
    "edit": "2024-01-01 00:00:00",
    "is_closed": false,
    "state": {
        "id": 3,
        "name": "FLOW_STATES_NAME_WAITINGSIGNATURE"
    },
    "flux": {
        "id": 2,
        "name": "FLOW_NAME_DOCSIGNATURE",
        "description": "FLOW_DESC_DOCSIGNATURE"
    },
    "data_objects": [
        {
            "type": "file",
            "id": 1
        },
        ...
    ],
    "transitions_available": {
        "DocumentHandwrittenSignedTransition": [
            {
                "name": "FLOW_STATES_NAME_SIGNED",
                "id": 4
            },
            ...
        ]
    }
}

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": [
        
    ],
    "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: 2024-12-05T16:37:32+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1733416652).
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: 2024-12-05T16:37:32+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1733416652).
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: 2024-12-05T16:37:32+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1733416652).
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: 2024-12-05T16:37:32+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1733416652).
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": "2024-12-05T16:37:32+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: 2024-12-05T16:37:32+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1733416652).
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: 2024-12-05T16:37:32+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1733416652).
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: 2024-12-05T16:37:32+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1733416652).
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: 2024-12-05T16:37:32+00:00), soit au format timestamp unix en secondes préfixé par un @ (ex: @1733416652).
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.
  Attention La création d'un dossier racine parent_id: 0 n'est possible que si l'utilisateur est administrateur.
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.
  Attention Il n'est pas possible de déplacer un dossier à la racine (parent_id: 0).
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, workflow.
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 POST /token/file/(fileId)/(type)
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 partage par lien
Le champ data embarque les informations du partage par lien sous la forme d'un objet Partage par lien 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": "2024-12-05T16:37:32+00:00",
    "geo": null,
    "env": null,
    "owner": "Fabrice GERARD",
    "owner_id": 77855,
    "data": {
        "users": [
            "Boris"
        ],
        "users_count": 1
    },
    "extended": [
        {
            "id": 44558,
            "type": 3,
            "date": "2024-12-05T16:37:32+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": "2024-12-05T16:37:32+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, workflow.
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.
  Attention Il n'est pas possible de créer de fichier à la racine (parent_id: 0).
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.
  Attention Il n'est pas possible de créer de fichier à la racine (parent_id: 0).
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.
  Attention Il n'est pas possible de déplacer un fichier à la racine (parent_id: 0).


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/template/folder

Récupère l'identifiant du dossier contenant les templates personnels 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 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

{
    "folder": 123  // Identifiant du dossier
}

https://plateforme.netexplorer.pro/api/template/files/(folderId)

Récupère la liste des templates contenus dans le dossier.
Requête

Le paramètre folderId est obligatoire et représente l'ID du dossier dans lequel récupérer les templates.

Réponse

Codes de retour HTTP

200 OKLa liste des templates Template de fichier.

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

Crée un nouveau fichier à partir d'un template.
Requête

Corps de la requête

fileCe paramètre doit contenir l'ID du template à utiliser.
folderCe paramètre doit contenir l'ID du dossier de destination.
Réponse

Codes de retour HTTP

201 CreatedUn nouveau fichier a été créé à partir du template.
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

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

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

Crée un nouveau template.
Requête

Corps de la requête

nameLe nom du template.
folderCe paramètre doit contenir l'ID du dossier de destination. Doit correspondre à un dossier template.
Si non fourni, le dossier de l'utilisateur connecté sera utilisé.
fileCe paramètre doit contenir l'ID du fichier de la plateforme à dupliquer en template.
Réponse

Codes de retour HTTP

201 CreatedUn nouveau template a été créé.
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

En cas de succès, retourne un objet Template de fichier.

https://plateforme.netexplorer.pro/api/template/file/(templateId)

Met à jour les informations d'un template.
Requête

Le paramètre templateId est obligatoire et représente l'ID template à modifier.

Corps de la requête

nameSi spécifié, permet de renommer le template.
Réponse

Codes de retour HTTP

200 OKLe template a bien été renommé.
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

Renvoie les informations de l'objet Template de fichier à jour.

https://plateforme.netexplorer.pro/api/template/file/(templateId)

Supprime un template de la plateforme.
Requête

Le paramètre templateId est obligatoire et représente l'ID template à supprimer.

Réponse

Codes de retour HTTP

204 No ContentLe template a été supprimé définitivement.
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 les annotations des 7 derniers jours que l'utilisateur courant peut consulter.
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
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

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é.
expiration_dateDate d'expiration de l'alerte.

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é
expiration_dateDate d'expiration de l'alerte.
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.
roleIndique le rôle de l'utilisateur. Par défaut vaut 1 (utilisateur externe).
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/(userId)/picture

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.
roleIndique le rôle de l'utilisateur. Par défaut vaut 1 (utilisateur externe).
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/(userId)/picture

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

loginNom du groupe.
membersListe d'identifiants d'utilisateurs du 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 du 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.
oauth_blockedMasque numérique des applications dont la connexion sera bloquée.
ValeurApplication
1Application Web
2Application Mobile
4Connecteur Outlook
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 d'un groupe.
Requête

Le paramètre groupId est obligatoire et représente l'id du groupe où récupérer les délégués.

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/share/(shareId)

Récupère les détails d'un partage par lien.
Requête

Le paramètre shareId est obligatoire et représente l'ID du partage par lien à 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 Partage par lien.

https://plateforme.netexplorer.pro/api/share/key/(shareKey)

Récupère les détails d'un partage par lien par sa clé.
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 ForbiddenAccès refusé, le lien est peut être protégé par un mot de passe ou un code sms. La présence d'un access_token est peut être requis.
404 Not Found  La ressource est introuvable.
410 GoneLe partage par lien a expiré.

Corps de la réponse

Retourne un objet Partage par lien.

https://plateforme.netexplorer.pro/api/share/content/(shareKey)/(folderId)?

Récupère le contenu d'un partage par lien.
Requête

Le paramètre shareKey est obligatoire et représente la clé du partage par lien à récupérer.
Le paramètre folderId est facultatif et représente l'identifiant d'un sous dossier dans lequel aller récupérer le contenu.

Paramètres GET

access_tokenToken d'accès permettant d'accéder au lien si un mot de passe est configuré sur le partage par lien.
Le token d'accès peut être obtenu via la méthode : POST /share/key/(shareKey)/passcheck.
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 ForbiddenAccès refusé, le lien est peut être protégé par un mot de passe ou un code sms. La présence d'un access_token est peut être requis.
Ou le dossier sur lequel vous tentez d'accéder n'est pas disponible pour ce partage
404 Not FoundLe partage n'existe pas ou plus ou le dossier sur lequel vous tentez d'accéder n'est plus disponible
410 GoneLe partage par lien a expiré.

Corps de la réponse

Retourne les informations sur le dossier courant du partage par lien ainsi qu'une liste de contenu Contenu de partage
{
    "id": 0,  // L'id 0 correspond au dossier racine du partage
    "name": "Racine",
    "parent_id": 0,
    "path_name": "",
    "files": [
        {
            "id": 3785,
            "name": "Document.pdf",
            "can_download": true,
            "can_preview": true,
            ...
        }
    ],
    "folders": [
        {
            "id": 5,
            "name": "Dossier",
            "can_download": true,
            "can_preview": true,
            ...
        }
    ]
}

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

Télécharge un fichier contenu dans le partage par lien.
Requête

Paramètres GET

download_tokenToken de téléchargement généré avec POST /token/share/(guid)/(type)/(key)
Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 ForbiddenLe download_token est requis, et celui envoyé est manquant ou eronné.
404 Not Found  La ressource est introuvable.

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

Récupère la liste des partages par lien propre à l'utilisateur.
Requête

Paramètres GET

offset_startIndex de départ (par défaut, 0).
nb_objectsNombre d'objets maximal à retourner (par défaut 30).
searchMots clés correspondant à la recherche d'un partage par lien.
Réponse

Corps de la réponse

Retourne une liste d'objets Partage par lien.
Exemple :
{
    "offset_start": 0,
    "nb_objects": 30,
    "nb_total_objects": 87,
    "objects": [
        {
            "id": 12,
            "key": "0VP5YMQcqjj5",
            ...
        },
        ...
    ]
}

https://plateforme.netexplorer.pro/api/zip/share/(shareKey)

Télécharge tout le contenu d'un partage par lien.
Requête

Paramètres GET

access_tokenToken d'accès permettant d'accéder au lien si un mot de passe est configuré sur le partage par lien.
Le token d'accès peut être obtenu via la méthode : POST /share/key/(shareKey)/passcheck.
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 fichier zip qui contient le contenu du partage par lien.

https://plateforme.netexplorer.pro/api/share/(shareId)/activity

Liste les activités sur les fichiers du partage par lien
Requête

Le paramètre shareId est obligatoire et représente l'id du partage par lien

Paramètres GET

filterPermet de choisir le type d'activité à récupérer parmi preview, download ou edit.
Ce paramètre est optionnel. Par défaut les 3 types d'activités seront remontés.
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'activités.
Exemple :
{
    "offset_start": 0,
    "nb_objects": 30,
    "nb_total_objects": 87,
    "objects": [
        {
            "name": "Mon fichier partagé.docx",
            "guid": "00000-00000-00000-00000",
            "stats": [
                {
                    "date": "2024-01-01 00:00:00",
                    "action": "preview",
                    "loc": "France"
                },
                {
                    "date": "2024-01-02 07:00:00",
                    "action": "download",
                    "loc": "France"
                },
                ...
            ]
        }
    ]
}

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

Crée un partage par lien.
Requête

Corps de la requête

keyDéfinit une clé pour le partage par lien. Si ce champ est manquant, la clé sera générée automatiquement.
nameNom du partage.
expiration_dateDate d'expiration du lien.
passwordMot de passe à définir si le flags contient le masque numérique 16.
flagsMasque numérique des droits appliqués au lien. Voir les droits disponibles Partage par lien.
rootsTableau de contenu à rajouter au partage par lien Contenu de partage.
[
    {
        "id": 12,
        "guid": "00000-00000-00000-00000",
        "type": 1  // type 1 correspond aux fichiers
    },
    {
        "id": 130,
        "type": 0  // type 0 correspond aux dossiers
    }
]
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 Partage par lien représentant le partage par lien précédemment crée.

https://plateforme.netexplorer.pro/api/share/key/(shareKey)/passcheck

Vérifie la correspondance du mot de passe.
Requête

Le paramètre shareKey est obligatoire et représente la clé du partage par lien à qui vérifier le mot de passe.
Si le partage est protégé par un code SMS, le code sera envoyé après l'appel à POST /share/key/(shareKey)/sms.

Corps de la requête

passwordMot de passe à vérifier ou code SMS à vérifier.
Réponse

Codes de retour HTTP

200 OKRetourne un access_token si le mot de passe est bon.
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 access_token permettant de récupérer le contenu du lien. Ce token n'est valable que 4h.

https://plateforme.netexplorer.pro/api/share/key/(shareKey)/sms

Procède à l'envoi du code SMS si le partage est protégé par un code SMS.
Requête

Le paramètre shareKey est obligatoire et représente la clé du partage par lien à qui vérifier le mot de passe.

Réponse

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


https://plateforme.netexplorer.pro/api/zip/token/share

Génère un token de téléchargement zip.
Requête

Le token généré par ce endpoint sera à consommer avec GET /zip.

Paramètres GET

download_tokenle download_token généré par POST /token/share/download/(key).
idsUn tableau d'identifiants de fichiers/dossiers à télécharger dans le zip. L'identifiant devra être précédé de f pour les fichiers et de d pour les dossiers.
{
    "ids": [
        "f12",  // fichier ayant l'id 12
        "d122"  // dossier ayant l'id 122
    ]
}
Réponse

Codes de retour HTTP

201 CreatedLe token a bien été généré.
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.
500 Internal Server ErrorImpossible de générer le token.

Corps de la réponse

{
    "token": "eyJhbGciOiJBMjU2S1ciLCJlbm..."
}

https://plateforme.netexplorer.pro/api/share/(shareId)

Édite un partage par lien.
Requête

Le paramètre shareId est obligatoire et représente l'ID du partage par lien à modifier.

Corps de la requête

nameNom du partage.
expiration_dateDate d'expiration du lien.
passwordMot de passe à définir si le flags contient le masque numérique 16.
flagsMasque numérique des droits appliqués au lien. Voir les droits disponibles Partage par lien.
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 Partage par lien représentant le partage par lien précédemment édité.

https://plateforme.netexplorer.pro/api/share/(shareId)

Supprime un partage par lien.
Requête

Le paramètre shareId est obligatoire et représente l'ID du partage par lien à 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/share/email/(shareEmailId)

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

Le paramètre shareEmailId est obligatoire et représente l'ID du partage par 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 Partage par email.

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

Récupère la liste des partages par emails propre à l'utilisateur.
Requête

Paramètres GET

offset_startIndex de départ (par défaut, 0).
nb_objectsNombre d'objets maximal à retourner (par défaut 30).
searchMots clés correspondant à la recherche d'un partage par lien.
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 une liste d'objets Partage par email.

https://plateforme.netexplorer.pro/api/share/email/(shareEmailId)/activity

Liste les activités sur les fichiers du partage par email
Requête

Le paramètre shareEmailId est obligatoire et représente l'id du partage par email

Paramètres GET

filterPermet de choisir le type d'activité à récupérer parmi preview, download ou edit.
Ce paramètre est optionnel. Par défaut les 3 types d'activités seront remontés.
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'activités.
Exemple :
{
    "offset_start": 0,
    "nb_objects": 30,
    "nb_total_objects": 87,
    "objects": [
        {
            "name": "Mon fichier partagé.docx",
            "guid": "00000-00000-00000-00000",
            "stats": [
                {
                    "email": "patrick@test.fr",
                    "date": "2024-01-01 00:00:00",
                    "action": "preview",
                    "loc": "France"
                },
                {
                    "email": "maxime@test.fr",
                    "date": "2024-01-02 07:00:00",
                    "action": "download",
                    "loc": "France"
                },
                ...
            ]
        }
    ]
}

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

Crée un partage par lien.
Requête

Chaque destinataires recevra un email avec une clé unique pour accéder au partage par lien associé.
L'usage de l'API utilisera ensuite les endpoints suivant Gestion des partages par lien avec la clé reçu par email.

Corps de la requête

keyDéfinit une clé pour le partage par lien. Si ce champ est manquant, la clé sera générée automatiquement.
nameNom du partage.
expiration_dateDate d'expiration du lien.
passwordMot de passe à définir si le flags contient le masque numérique 16.
flagsMasque numérique des droits appliqués au lien. Voir les droits disponibles Partage par lien.
rootsTableau de contenu à rajouter au partage par lien Contenu de partage.
[
    {
        "id": 12,
        "guid": "00000-00000-00000-00000",
        "type": 1  // type 1 correspond aux fichiers
    }
]
objectObjet de l'email qui sera envoyé.
contentContenu de l'email qui sera envoyé.
recipientsTableau d'emails de destinataires.
[
    {
        "email": "email@netexplorer.fr",
        "phone": "0102030405"  // phone est requis si le partage est protégé par un code SMS
    }
]
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 Partage par email représentant le partage par email précédemment crée.

https://plateforme.netexplorer.pro/api/share/email/(shareEmailId)

Édite un partage par email.
Requête

Le paramètre shareEmailId est obligatoire et représente l'ID du partage par email à modifier.
L'édition d'un partage par email ira modifier les paramètres du partage par lien associé.

Corps de la requête

nameNom du partage.
expiration_dateDate d'expiration du lien.
passwordMot de passe à définir si le flags contient le masque numérique 16.
flagsMasque numérique des droits appliqués au lien. Voir les droits disponibles Partage par lien.
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 Partage par email représentant le partage par email précédemment édité.

https://plateforme.netexplorer.pro/api/share/email/(shareEmailId)

Révoque l'accès au partage par lien associé au partage par email.
Requête

Le paramètre shareEmailId est obligatoire et représente l'ID du partage par 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 un objet Partage par email.

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/smtp/test

Teste la configuration SMTP envoyé dans le corps.
Requête

Corps de la requête

{
    "smtp_host": "",
    "smtp_port": "",
    "smtp_auth": "",
    "smtp_secure": "",
    "smtp_username": "",
    "smtp_password": "",
    // Affiche des informations supplémentaires en cas d'erreur
    "smtp_debug": ""
}
Réponse

Codes de retour HTTP

200 OKLa configuration est valide.
406 Not AcceptableLa configuration présente des erreurs.

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

{
    "0": "config",
    "default_language": "fr",
    ...
    ...
}

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

Affiche la prévisualisation d'un fichier. A inclure dans une iframe.
Requête

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

Paramètres GET

tokenToken d'authentification pour l'accès à la prévisualisation.
Réponse

Ce endpoint doit appelé comme source d'une iframe ou dans un nouvel onglet/fenêtre pour afficher la prévisualisation du fichier.
Pour un document ouvert avec OnlyOffice / Office pour le web, la page redirige vers la plateforme d'édition choisie.
Pour un fichier audio/vidéo, le lecteur sera chargé et affiché.
Pour les fichiers PDF, l'aperçu PDF standard sera affiché.


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

Récupère l'état de génération de 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

tokenToken d'authentification pour l'accès à la miniature.
Réponse

Le contenu retourné est un objet JSON contenant les informations sur l'état de génération de la miniature.
Si la miniature est 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é.

Corps de la réponse

statusÉtat de la génération de la miniature. Peut valoir pending, preparing, streamable, available ou failed.
L'état streamable n'est disponible que pour les fichiers audio/vidéo, l'aperçu peut alors être lu pendant que la génération est toujours en cours.
targetPour les fichiers audio/vidéo, retourne la playlist HLS pour la lecture du flux vidéo. Pour les autres formats, retourne la miniature.
previewDéfini uniquement pour les fichiers de bureautique, retourne l'URL du PDF généré pour la prévisualisation.

https://plateforme.netexplorer.pro/api/workflow/instances

Récupère toutes les instances de flux de travail de l'utilisateur courant.
Requête

Paramètres GET

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.

Corps de la réponse

Retourne une liste d'objets Flux de travail.

https://plateforme.netexplorer.pro/api/workflow/instance/(token)

Récupère une instance de flux de travail par son token.
Requête

Le paramètre token est obligatoire et représente le token qui a été généré à la création de l'instance puis envoyé par email.

Réponse

Codes de retour HTTP

200 OK  La ressource a été trouvée et est retournée par l'API.
403 ForbiddenL'instance de flux de travail est désactivé
404 Not Found  La ressource est introuvable.
412 Precondition FailedLe token ne contient pas toutes les données nécéssaires

Corps de la réponse

Retourne un objet Flux de travail.

https://plateforme.netexplorer.pro/api/workflow/instance

Crée une instance de flux.
Requête

Corps de la requête

fluxObjet flux où vous devez définir l'identifiant du type de flux Flux actuellement disponible :
ValeurApplication
1Validation de document
2Signature manuscrite numérisée
3Signature électronique via tiers de confiance (eIDAS simple)
4Validation de plusieurs documents
5Signature électronique via tiers de confiance (eIDAS avancée)
{
    "flux": {
        "id": 2  // Flux de signature manuscrite numérisée
    }
}
object_idIdentifiant de l'objet sur lequel sera rattaché l'instance de flux de travail. Selon le type de flux, ce champ peut être obligatoire. Peut être remplacé par la propriété objects dans le champ properties Tableau de concordance :
Flux IDRequis
1Oui
2Oui
3Oui
4Non
5Oui
typeType d'objet sur lequel sera rattaché l'instance de flux de travail. Selon le type de flux, ce champ peut être obligatoire. Actuellement seul le type 'file' est utilisé. Peut être remplacé par la propriété objects dans le champ properties
Flux IDType possibleRequis
1fileOui
2fileOui
3fileOui
4AucunNon
5fileOui
propertiesChaque type de flux va avoir différentes propriétés à envoyer. La propriété objects est requise si vous souhaitez envoyer plusieurs documents en validation ou en signature.
{
    "objects": [
        {
            "id": 12,
            "type": "file"
        },
        {
            "id": 34,
            "type": "file"
        }
    ]
}

validation de document

{
    "validation": {
        "externe": [  // Tableau d'emails externes
            {
                "email": "person@externe.fr"
            }
        ],
        "interne": [  // Tableau d'utilisateurs internes
            {
                "name": "Mark Dupont",  // Ce champ est facultatif et permet d'afficher un nom
                "email": "mark.dupont@netexplorer.fr",
                "id": 12
            }
        ]
    },
    "comment": "Merci de valider ce document."  // Ce champ est facultatif et permet d'afficher un commentaire sur l'email et la page de validation
}

signature manuscrite numérisée signature électronique via tiers de confiance (eIDAS simple) et signature électronique via tiers de confiance (eIDAS avancée)

{
    "signatures": [  // Tableau d'utilisateurs
        {
            "firstname": "Mark",  // Obligatoire sur la signature électronique via tiers de confiance (eIDAS avancée)
            "lastname": "Dupont",  // Obligatoire sur la signature électronique via tiers de confiance (eIDAS avancée)
            "email": "mark.dupont@netexplorer.fr",
            "id": 13  // Identifiant de l'utilisateur. Permet de différencier si l'utilisateur est interne ou externe à la plateforme
        },
        {
            "firstname": "Edouard",
            "lastname": "Vicheli",
            "email": "edouard.vicheli@netexplorer.fr"
        }
    ],
    "signature_fields": [  // Tableau de positions des cachets de signatures
        {
            "x": 604,  // Le repère des coordonnées x,y démarre en bas à gauche de la page 
            "y": 49,
            "page": 1,
            "signerIndex": 0,  // Index correspondant à un utilisateur dans le tableau signatures 
            "document": 0  // Index du document concerné 
        },
        {
            "x": 304,  // La taille du cartouche est de 200px(l) sur 70px(h) 
            "y": 49,
            "page": 1,
            "signerIndex": 1,
            "document": 0
        }
    ],
    "objects": [
        {
            "type": "file",
            "id": 32  // Id du fichier concerné
        },
        {
            "type": "file",
            "id": 67
        }
    ],
    "comment": "Merci de signer ce document."  // Ce champ est facultatif et permet d'afficher un commentaire sur l'email et la page de signature
}

validation de plusieurs documents

{
    "objects": [
        {
            "type": "file",
            "id": 32  // Id du fichier concerné
        },
        {
            "type": "file",
            "id": 67
        }
    ],
    "validation": {
        "externe": [  // Tableau d'emails externes
            {
                "email": "person@externe.fr"
            }
        ],
        "interne": [  // Tableau d'utilisateurs internes
            {
                "name": "Mark Dupont",  // Ce champ est facultatif et permet d'afficher un nom
                "email": "mark.dupont@netexplorer.fr",
                "id": 12
            }
        ]
    },
    "comment": "Merci de valider ce document."  // Ce champ est facultatif et permet d'afficher un commentaire sur l'email et la page de validation
}

Exemple de body à envoyer pour une demande de signature manuscrite numérisée :
{
    "flux": {
        "id": 2
    },
    "properties": {
        "signatures": [
            {
                "firstname": "Mark",
                "lastname": "Dupont",
                "email": "mark.dupont@netexplorer.fr"
            },
            {
                "firstname": "Edouard",
                "lastname": "Vicheli",
                "email": "edouard@vicheli@netexplorer.fr"
            }
        ],
        "signature_fields": [
            {
                "x": 373,
                "y": 40,
                "page": 1,
                "signerIndex": 0,  // L'index du signataire
                "document": 0  // L'index du document
            },
            {
                "x": 160,
                "y": 41,
                "page": 1,
                "signerIndex": 1,
                "document": 0
            },
            {
                "x": 384,
                "y": 46,
                "page": 1,
                "signerIndex": 0,
                "document": 1
            },
            {
                "x": 164,
                "y": 44,
                "page": 1,
                "signerIndex": 1,
                "document": 1
            }
        ],
        "send_copy": true,  // Active l'envoi d'une copie des documents signées aux destinataires
        "objects": [
            {
                "type": "file",
                "id": 4918
            },
            {
                "type": "file",
                "id": 4917
            }
        ]
    }
}
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 Flux de travail représentant l'instance du flux créé.

https://plateforme.netexplorer.pro/api/workflow/instance/(instanceId)

Supprime une instance de flux de travail.
Requête

Le paramètre instanceId est obligatoire et représente l'ID de l'instance de flux de travail à 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/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 archivé 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 Fichier représentant le fichier 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 fichier 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 fichier.
nameNom à appliquer au fichier 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 Fichier représentant le fichier 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 connecteur Outlook
        "versions": 452664  // Espace disque utilisé par les versions
    },
    "visits": [
        {
            "id": 3,
            "user": "Louis BRETEL",
            "login": "louis.bretel",
            "last_seen": "1733416652",
            "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
    }
}

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

Génère un token pour un fichier
Les tokens sont utilisés pour des actions spécifiques (aperçu de document, téléchargement etc)
Cette requête permet de générer un token pour le fichier fileId selon le type d'action voulu.
Requête

Le champs fileId de l'url est à remplacer par l'identifiant numérique unique du fichier à récupérer.
Le champs type de l'url est à remplacer par le type de token voulu (preview, edit ou download)

Réponse

Codes de retour HTTP

201 CreatedLe token a bien été généré
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.
500 Internal Server ErrorImpossible de générer le token

Corps de la réponse

{
    "token": "eyJhbGciOiJBMjU2S1ciLCJlbm..."
}

https://plateforme.netexplorer.pro/api/token/share/download/(key)

Génère un token de téléchargement pour un partage par lien
Requête

Le champs key de l'url est à remplacer par la clé du partage par lien.

Corps de la requête

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

access_tokenL'access token du partage par lien.
Attention Ce champ est requis si le partage par lien est protégé par un mot de passe ou un code par sms.
Réponse

Codes de retour HTTP

201 CreatedLe token a bien été généré
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.
500 Internal Server ErrorImpossible de générer le token

Corps de la réponse

{
    "token": "eyJhbGciOiJBMjU2S1ciLCJlbm..."
}

https://plateforme.netexplorer.pro/api/token/share/(guid)/(type)/(key)

Génère un token pour un contenu de partage par lien
Les tokens sont utilisés pour des actions spécifiques (aperçu de document, téléchargement, édition)
Cette requête permet de générer un token pour le fichier guid selon le type d'action voulu.
Requête

Le champs key de l'url est à remplacer par la clé du partage par lien.
Le champs guid de l'url est à remplacer par le guid du fichier contenu dans le partage par lien à utiliser.
Le champs type de l'url est à remplacer par le type de token voulu (preview, edit ou download)

Corps de la requête

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

access_tokenL'access token du partage par lien.
Attention Ce champ est requis si le partage par lien est protégé par un mot de passe ou un code par sms.
Réponse

Codes de retour HTTP

201 CreatedLe token a bien été généré
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.
500 Internal Server ErrorImpossible de générer le token

Corps de la réponse

{
    "token": "eyJhbGciOiJBMjU2S1ciLCJlbm..."
}

https://plateforme.netexplorer.pro/api/token/sharelink/(key)/(dataId)/(type)

Attention Cette méthode est obsolète.

Génère un token pour un contenu de partage par lien
Les tokens sont utilisés pour des actions spécifiques (aperçu de document, téléchargement etc)
Cette requête permet de générer un token pour le fichier dataId selon le type d'action voulu.
Requête

Le champs key de l'url est à remplacer par la clé du partage par lien.
Le champs dataId de l'url est à remplacer par l'identifiant numérique unique du fichier contenu dans le partage par lien à récupérer.
Le champs type de l'url est à remplacer par le type de token voulu (preview ou video)

Corps de la requête

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

access_tokenL'access token du partage par lien.
Attention Ce champ est requis si le partage par lien est protégé par un mot de passe ou un code par sms.
Réponse

Codes de retour HTTP

201 CreatedLe token a bien été généré
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.
500 Internal Server ErrorImpossible de générer le token

Corps de la réponse

{
    "token": "eyJhbGciOiJBMjU2S1ciLCJlbm..."
}

https://plateforme.netexplorer.pro/api/token/sharelink/(key)/download

Attention Cette méthode est obsolète.

Génère un token de téléchargement pour un partage par lien
Requête

Le champs key de l'url est à remplacer par la clé du partage par lien.

Corps de la requête

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

access_tokenL'access token du partage par lien.
Attention Ce champ est requis si le partage par lien est protégé par un mot de passe ou un code par sms.
Réponse

Codes de retour HTTP

201 CreatedLe token a bien été généré
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.
500 Internal Server ErrorImpossible de générer le token

Corps de la réponse

{
    "token": "eyJhbGciOiJBMjU2S1ciLCJlbm..."
}

https://plateforme.netexplorer.pro/api/token/template/(id)/(type)

Génère un token pour un template de fichier
Les tokens sont utilisés pour des actions spécifiques (aperçu de document, téléchargement, édition)
Cette requête permet de générer un token pour le template id selon le type d'action voulu.
Requête

Le champs id de l'url est à remplacer par l'id du template de fichier à utiliser.
Le champs type de l'url est à remplacer par le type de token voulu (preview, edit ou download)

Réponse

Codes de retour HTTP

201 CreatedLe token a bien été généré
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.
500 Internal Server ErrorImpossible de générer le token

Corps de la réponse

{
    "token": "eyJhbGciOiJBMjU2S1ciLCJlbm..."
}

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

Récupère le chemin d'un élément à partir de son id et jusqu'à la racine.
Requête

Paramètres GET

rootIdentifiant du dossier racine juqu'auquel on doit remonter.
object_typeType d'objet recherché (Fichier ou Dossier).
object_idID de l'objet recherché.
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

{
    "object": "Documents/Partagé/informations_diverses.docx"
}

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

Récupère un élément à partir de son chemin d'accès.
Requête

Si le chemin d'accès se termine par un /, alors celui-ci pointe vers un dossier.
Dans le cas contraire, il s'agit d'un fichier.

Paramètres GET

rootIdentifiant du dossier racine à partir duquel il faut lancer la recherche.
pathChemin recherché.
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

L'objet retourné peut représenter soit un Fichier, soit un Dossier.

{
    "object": {  // Fichier ou Dossier
        "id": 1458,
        "name": "MonObjet",
        ...
    }
}

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

Détermine si un dossier et un enfant du dossier racine spécifié.

Info Cette méthode est exécutée en mode system et ne tient pas compte des droits des utilisateurs.
Requête

Paramètres GET

rootIdentifiant du dossier racine.
folderIdentifiant du dossier dont on veut déterminer l'appartenance.
Réponse

Codes de retour HTTP

200 OKLe dossier est bien un enfant du dossier racine spécifié et l'utilisateur y a bien accès.
403 ForbiddenLe dossier est bien un enfant du dossier racine spécifié mais l'utilisateur n'a pas les droits d'accès requis pour y avoir accès.
404 Not FoundLe dossier n'est pas un enfant du dossier racine spécifié.

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/quotas

Récupère les informations globales sur les quotas appliqués.
Requête

Sont retournés les quotas globaux de la plateforme, le quota en place pour l'utilisateur courant, et si demandé, le quota appliqué sur le dossier recherché.

Paramètres GET

folderIdentifiant du dossier dont il faut récupérer le quota appliqué.
Réponse

Corps de la réponse

Si l'un des quotas vaut null, c'est qu'aucun quota n'est appliqué.
Les champs used seront cependant renseignés dans tous les cas.
Le champ folder.folder indique l'ID du dossier sur lequel est appliqué le quota dans le cas ou cette limitation est héritée.
Si la limitation n'est pas héritée ou si le dossier n'est pas acessible par l'utilisateur, cette valeur vaudra null.

{
    "platform": {
        "quota": 10000000000,
        "used": 2048000000
    },
    "user": {
        "quota": null,
        "used": 589412556
    },
    "folder": {
        "quota": null,
        "used": 5682555,
        "folder": 142
    }
}

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

Télécharge un zip.
Requête

Paramètres GET

tokenToken de téléchargement du zip.
nameDéfinit un nom au zip à télécharger.
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.

https://plateforme.netexplorer.pro/oauth2/authorize

Lance une demande d'autorisation d'accès au compte d'un utilisateur.
Requête

Cette fonction n'est pas une méthode d'API directe : l'application doit mettre à la disposition de l'utilisateur une vue Web lui permettant d'avoir accès à la page renvoyée.
L'utilisateur devra alors au préalable s'authentifier, puis autoriser l'application à accéder à ses informations.
En fin de processus, la vue Web sera dirigée vers l'adresse de retour indiquée dans le profil de l'application.
Le navigateur pourra alors soit renvoyer vers l'application, soit celle-ci peut détecter la redirection et récupérer les informations dans l'URL.

Paramètres GET

client_idIdentifiant public de l'application fourni par NetExplorer.
response_typeIndique le type de réponse attendu par l'application. Seul le type code est supporté.
scopePérimètre d'accès demandé par l'application. Le seul scope actuellement disponible est all. D'autres scopes seront disponibles lors de l'ouverture de l'API aux clients.
stateCe champ sera retourné tel quel vers l'url de retour. Peut être utilisé pour sécuriser la demande d'autorisation au niveau de votre application.
redirect_uriAdresse de redirection vers laquelle le processus d'autorisation doit rediriger l'utilisateur.

Afin de renforcer la sécurité des échanges sur ce point de terminaison, l'utilisation du mécanisme PKCE est obligatoire dans les cas où la confidentialité du client_secret ne peut être assurée.
Pour plus d'informations sur le fonctionnement de ce mécanisme et son implémentation, vous pouvez consulter la RFC 7636.
Cela requiert l'utilisation de 2 en-têtes complémentaires :

code_challengeChallenge transmis au serveur qui sera sauvegardé et comparé au token qui sera reçu lors de la récupération de l'access_token.
code_challenge_methodActuellement, il n'existe qu'une seule valeur possible pour ce champ : S256.
Réponse

Corps de la réponse

Les informations retournées par cette méthode dépend du response_type spécifié lors de la requête.
Dans le cas d'une réponse de type code, lors de la redirection vers l'adresse de retour certaines informations seront passés en query string :

codeContient le code de validation généré suite à l'acceptation par l'utilisateur de la demande d'autorisation.
stateContient le state envoyé par l'application lors de l'ouverture de la vue Web.

L'utilisateur sera alors redirigé une url de retour de ce type : https://mon-adresse.fr/de-redirection?code=<code>&state=<state>


https://plateforme.netexplorer.pro/oauth2/token

Permet de récupérer un access_token depuis un code ou des identifiants d'accès.
Requête

Corps de la requête

client_idIdentifiant public de l'application fourni par NetExplorer.
grant_type

Il existe 3 valeurs possible pour ce paramètre :

TypeDescription
authorization_codePermet de récupérer un access_token depuis un code reçu lors de la phase d'autorisation.
refresh_tokenPermet de regénérer un access_token grâce à un refresh_token.
client_credentialsPermet de générer un access_token d'application.
Dans le cas où grant_type = authorization_code
codeCorrespond au code reçu lors de la première phase lors de l'appel à /authorize.
client_secretClé secrète de l'application. Non applicable pour un grant de type authorization_code si le mode PKCE a été utilisé.
code_verifierDans le cadre d'une authentification de l'application en mode PKCE, contient le challenge en clair généré lors de l'appel à /authorize.
redirect_uriAdresse de redirection vers laquelle l'utilisateur a été redirigé en phase 1 lors de l'appel à /authorize.
Dans le cas où grant_type = refresh_token
refresh_tokenrefresh_token obtenu lors d'une précédent appel au processus d'authorization via le grant_type authorization_code.
Dans le cas où grant_type = client_credentials
client_secretclient_secret obtenu lors de la création de l'application.
Réponse

Corps de la réponse

access_tokenContient le token d'accès de l'utilisateur. Ce token donne accès aux méthodes de l'API nécessitant une authentification.
refresh_tokenPermet la reconnexion de l'utilisateur si l'access_token venait à expirer. Il faut alors relancer une appel à l'API sur cette méthode mais en utilisant un grant_type de type refresh_token.
Vaut null lorsque l'access_token est issu du grant_type client_credentials.
scopePérimètre d'accès du token généré.
token_typeVaut toujours Bearer.
expires_inDurée restante de validité du token en secondes.
Le token peut ne pas expirer si le scope offline est défini dans les scopes de l'application

https://plateforme.netexplorer.pro/api/oauth2/apps

Récupère la liste des applications OAuth2.
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.
404 Not Found  La ressource est introuvable.

Corps de la réponse

Retourne un tableau d'objets Application OAuth2.

https://plateforme.netexplorer.pro/api/oauth2/app/(clientId)

Récupère les informations d'une application OAuth2 par son identifiant `client_id`.
Requête

Le paramètre clientId est obligatoire et représente l'identifiant public de l'application fourni par NetExplorer.

Réponse

Codes de retour HTTP

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

Corps de la réponse

Retourne un objet Application OAuth2.

https://plateforme.netexplorer.pro/api/oauth2/app/(clientId)/icon

Récupère l'image d'une application OAuth2.
Requête

Le paramètre clientId est obligatoire et représente l'identifiant public de l'application fourni par NetExplorer.

Réponse

Codes de retour HTTP

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

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

Récupère la liste des tokens actifs pour l'utilisateur connecté.
Requête

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

Réponse

Corps de la réponse

Retourne un tableau de tokens.

https://plateforme.netexplorer.pro/api/oauth2/app/(clientId)/tokens

Récupère la liste des tokens actifs pour une application OAuth2 donnée.
Requête

Le paramètre clientId est obligatoire et représente l'identifiant public de l'application fourni par NetExplorer.

Réponse

Corps de la réponse

Retourne un tableau de tokens.

https://plateforme.netexplorer.pro/api/oauth2/app

Créer une application OAuth2.
Requête

Corps de la requête

type

Type d'application OAuth2

TypeDescription
0Application Client <-> Serveur
1Application Serveur <-> Serveur
nameNom de l'application
descriptionDescription de l'application
editorÉditeur de l'application
editor_urlUrl de l'éditeur de l'application
scopesScopes autorisés pour l'applications. Le scope all active tout. Il est possible d'avoir plus de granularité par fonctionnalités. Les scopes finissant par .read donne l'accès en lecture et ceux finissant en .readwrite donne l'accès complet. Si le scope offline est défini. Le token généré par la suite n'aura pas de date d'expiration.
TypeValeur disponible
Administration admin.read admin.readwrite
Account Security (Double Authentification) accountsec.read accountsec.readwrite
Account account.read account.readwrite
Annotations annotations.read annotations.readwrite
Archives archives.read archives.readwrite
Configuration config.read config.readwrite
Fichiers files.read files.readwrite
Groupes groups.read groups.readwrite
Partages sharelinks.read sharelinks.readwrite
Lien de dépôt uploadlinks.read uploadlinks.readwrite
Corbeille trashes.read trashes.readwrite
Utilisateurs users.read users.readwrite
Dossiers folders.read folders.readwrite
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 Application OAuth2.

https://plateforme.netexplorer.pro/api/oauth2/app/(clientId)/reset

Re génère un nouveau client_secret
Requête

Le paramètre clientId est obligatoire et représente l'identifiant public de l'application fourni par NetExplorer.
Cette action entrainera l'invalidation des tous les tokens actifs pour cette application.

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 objet Application OAuth2.

https://plateforme.netexplorer.pro/api/oauth2/app/(clientId)

Modifie une application OAuth2
Requête

Le paramètre clientId est obligatoire et représente l'identifiant public de l'application fourni par NetExplorer.

Corps de la requête

nameNom de l'application
descriptionDescription de l'application
editorÉditeur de l'application
editor_urlUrl de l'éditeur de l'application
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 objet Application OAuth2.

https://plateforme.netexplorer.pro/api/oauth2/app/(clientId)

Supprime une application OAuth2
Requête

Le paramètre clientId est obligatoire et représente l'identifiant public de l'application fourni par NetExplorer.
La suppression entraine une invalidation des tous les tokens associés à l'application.

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/oauth2/user/(token)/revoke

Supprime un token utilisateur
Requête

Le paramètre token est obligatoire et représente le token à 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é.

https://plateforme.netexplorer.pro/api/oauth2/app/(token)/revoke

Supprime un token d'application
Requête

Le paramètre token est obligatoire et représente le token à 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.

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é