Aller au contenu

Configuration de l'export SEDA

Ces routes administrent la configuration globale utilisée pour exporter les courriers vers un système d'archivage électronique (SAE), soit Maarch RM, soit un SAE externe.

Warning

La configuration Maarch RM peut contenir un jeton d'accès, une URL de service et un certificat. Utilisez HTTPS, limitez le privilège du compte technique et ne journalisez pas le body ni la réponse.

Lire la configuration de l'export SEDA

Route

GET /rest/seda/configuration

Authentification, privilège et périmètre

L'authentification REST et le privilège admin_parameters sont obligatoires. La configuration porte sur l'instance complète, sans restriction par entité.

Retour

Code HTTP Type Description Exemple
200 object Configuration enregistrée Voir l'exemple ci-dessous
200 object Aucune configuration SEDA n'existe encore {"configuration":null}
403 object Privilège absent {"errors":"Service forbidden"}
{
  "configuration": {
    "sae": "MaarchRM",
    "accessRuleCode": "AR039",
    "senderOrgRegNumber": "org_987654321_DGS_SA",
    "statusMailToPurge": "REPLY_SEDA",
    "statusReplyReceived": "REPLY_SEDA",
    "statusReplyRejected": "REPLY_SEDA",
    "M2M": {
      "gec": "maarch_courrier"
    },
    "token": "<jeton>",
    "userAgent": "service",
    "urlSAEService": "https://<nom-de-domaine>",
    "certificateSSL": null
  }
}

Modifier la configuration de l'export SEDA

Route

PUT /rest/seda/configuration

Authentification, privilège et périmètre

Les contrôles sont identiques à ceux de la lecture. La modification est globale à l'instance.

Body commun

Valeur Type Obligatoire Description
sae string Oui Type ou nom du SAE. La valeur MaarchRM, sans distinction de casse, active la configuration Maarch RM
accessRuleCode string Oui Code de la règle d'accès SEDA
senderOrgRegNumber string Oui Identifiant de l'organisation productrice
statusMailToPurge string Oui Identifiant existant du statut des courriers à purger
statusReplyReceived string Oui Identifiant existant du statut appliqué après une réponse reçue
statusReplyRejected string Oui Identifiant existant du statut appliqué après une réponse rejetée
M2M object Oui Paramètres Maarch2Maarch. L'objet doit être non vide
M2M.gec string Non Identifiant de la GEC transmis dans la configuration Maarch2Maarch

Les trois identifiants de statut sont contrôlés dans le référentiel des statuts de l'instance.

Body pour Maarch RM

Ces champs complètent le body commun lorsque sae vaut MaarchRM.

Valeur Type Obligatoire Description
token string Oui Jeton d'authentification du SAE
urlSAEService string Oui URL du service Maarch RM
userAgent string Non Agent utilisateur transmis au service
certificateSSL string Non Certificat SSL
{
  "sae": "MaarchRM",
  "accessRuleCode": "AR039",
  "senderOrgRegNumber": "org_987654321_DGS_SA",
  "statusMailToPurge": "REPLY_SEDA",
  "statusReplyReceived": "REPLY_SEDA",
  "statusReplyRejected": "REPLY_SEDA",
  "M2M": {
    "gec": "maarch_courrier"
  },
  "token": "<jeton>",
  "userAgent": "service",
  "urlSAEService": "https://<nom-de-domaine>",
  "certificateSSL": null
}

Body pour un SAE externe

Lorsque sae ne vaut pas MaarchRM, le body commun est complété par externalSAE.

Valeur Type Obligatoire Description
externalSAE object Oui Référentiels propres au SAE externe
externalSAE.retentionRules array Oui Règles de conservation. Le tableau doit être non vide
externalSAE.archiveEntities array Oui Entités d'archivage. Le tableau doit être non vide
externalSAE.archivalAgreements array Oui Accords de versement. Le tableau doit être non vide

Chaque élément des trois tableaux contient un id et un label, tous deux obligatoires et de type string.

{
  "sae": "SAE-externe",
  "accessRuleCode": "AR039",
  "senderOrgRegNumber": "org_987654321_DGS_SA",
  "statusMailToPurge": "REPLY_SEDA",
  "statusReplyReceived": "REPLY_SEDA",
  "statusReplyRejected": "REPLY_SEDA",
  "M2M": {
    "gec": "maarch_courrier"
  },
  "externalSAE": {
    "retentionRules": [{"id": "rule-1", "label": "Conservation principale"}],
    "archiveEntities": [{"id": "entity-1", "label": "Service d'archives"}],
    "archivalAgreements": [{"id": "agreement-1", "label": "Accord principal"}]
  }
}

Retour

Code HTTP Type Description Exemple
204 vide Configuration enregistrée Aucune réponse
400 object Body vide {"errors":"Body is empty"}
400 object Champ commun absent ou de type incorrect {"errors":"Body accessRuleCode is empty or not a string"}
400 object Identifiant de statut inexistant {"errors":"Body statusMailToPurge is not an existing status"}
400 object Configuration M2M absente ou invalide {"errors":"Body M2M is empty or not an array"}
400 object Champ Maarch RM absent ou de type incorrect {"errors":"Body token is empty, not a string"}
400 object Référentiel du SAE externe absent ou invalide {"errors":"Body externalSAE[retentionRules] is empty or not an array"}
400 object id ou label absent dans un élément de référentiel {"errors":"Body externalSAE[retentionRules][0][id] is empty or not a string"}
403 object Privilège absent {"errors":"Service forbidden"}