1. Introduction
  2. Avant d'utiliser SOAP sur HAL
  3. Méthodes SOAP
    1. Structures du WS
    2. Dépôt
    3. Correction
    4. Nouvelle version
    5. Modification des métadonnées
    6. Ajout d'une collection
    7. Statut d'un dépôt
  4. Gestion des erreurs
  5. Réponse SOAP
  6. Questions

1. Introduction

L'API propriétaire de dépôt SOAP permet l'import automatique de documents dans l'archive ouverte HAL (hal.archives-ouvertes.fr).

HAL défini ainsi un certain nombre de méthodes qui vont permettre à un système informatique local de réaliser des opérations d'import similaires à celles que fait un contributeur lorsqu'il utilise l'application HAL au travers de son portail Web.

2. Avant d'utiliser SOAP sur HAL

Le dépôt via le protocols SWORD nécessite l'utilisation d'un compte déposant valide.

L'authentification s'effectue à chaque appel d'une méthode SOAP via la structure UserStruct.

Les métadonnées transmises via ce protocole sont celles généralement utilisées dans HAL. Il est donc nécessaire d'être familier avec un dépôt dans HAL. En particulier, chaque dépôt devra être catégorisé suivant les disciplines scientifiques de HAL et rangé suivant un des types de document, etc. L'accès aux référentiels utilisés dans HAL est disponible ici.

En cas d'erreurs, : entêtes non compréhensibles ou contenus incorrects, l'API utilise les erreurs SOAP standards.

3. Méthodes SOAP

Le WS permettant de déposer, compléter, modifier des dépôts est accessible à l'URL : https://api.archives-ouvertes.fr/ws/?wsdl

3.1 Structures du WS

3.2 Dépôt

        upload(string instance, UserStruct identification, ContributorStruct contributor [non utilisé sur HALv3], MetasStruct metadatas, [FullTextStruct fullText])
    

3.3 Correction

        modify(ArticleIdentStruct article, UserStruct identification, ContributorStruct contributor [non utilisé sur HALv3], MetasStruct metadatas, [FullTextStruct fullText])
    

3.4 Nouvelle version

        replace(ArticleIdentStruct article, UserStruct identification, ContributorStruct contributor [non utilisé sur HALv3], MetasStruct metadatas, FullTextStruct fullText)
    

3.5 Modification des métadonnées

        update(ArticleIdentStruct article, UserStruct identification, MetasStruct metadatas)
    

3.6 Ajout d'une collection

        addCollection(ArticleIdentStruct article, UserStruct identification, string collection)
    

3.7 Statut d'un dépôt

        status(ArticleIdentStruct article, UserStruct identification)
    

4. Gestion des erreurs

Les erreurs sont remontées du serveur via une enveloppe SoapFault

Le statut HTTP pour toutes les erreurs est "400 Bad Request".

5. Réponse SOAP

En cas de succès le serveur retourne un ArticleIdentStruct ou PendingArticleStruct si une validation a lieu avant mise en ligne.

6. Questions

Merci de contacter le support HAL pour toutes questions ou remarques