1.36 – juin 2022

Lire et écrire dans le suivi enquêtes

Les enquêtes n’étaient jusque là consultable et modifiables que par IHM : désormais ces informations seront accessibles dans les API de lecture (dans un nouveau noeud enquete) et en écriture (en réutilisant le format de la lecture).

{
    "type": "COMMERCE_ET_SERVICE",
    "enquete": {
        "enquetes": [
            {
                "identifiant": 1659476,
                "annee": 2022,
                "retour": false,
                "titre": {
                    "elementReferenceType": "EnqueteTitre",
                    "id": 3934,
                    "libelleFr": "Enquête annuelle",
                    "libelleEn": "Annual survey",
                    "ordre": 1
                }
            },
            ...
        ]
    }
}

Ajout des tarifs sur les types objets Commerces et Services

Par défaut, sur les commerces et services, les champs suivants possédaient jusqu’à présent toujours la même valeur :

descriptionTarif.gratuit=false
descriptionTarif.indicationTarif=PAYANT

Par ailleurs, le champ descriptionTarif.tarifsEnClair n’était pas présent sur ce type objet. Il n’était d’ailleurs pas possible de renseigner de tarifs sur les commerces et services en IHM.

Les tarifs ont désormais été ajoutés sur le type objet, et les 3 champs ci-dessous prendront les valeurs fournies par l’utilisateur. Ces champs sont accessibles également en API d’écriture, comme sur les autres types objets.

Ajout des libellés des natures de liens

Jusqu’ici, seuls les noms techniques des natures des liens étaient présents dans l’API, les libellés (exemple : Est une étape de…) ont été ajoutés.

Avant
"type": "ETAPE_PARCOURS",
"objetTouristique": {    
"type": "PATRIMOINE_CULTUREL",
"id": 869653,
Après
"type": "ETAPE_PARCOURS",
"libelleFr": "Est une étape de ...",
"libelleEn": "Follows a section of...",
"objetTouristique": {    
"type": "PATRIMOINE_CULTUREL",
"id": 869653,

Suppression d’un champ obsolète dureeSejourMinimum

Ce champ était resté visible dans les API, bien qu’inaccessible en saisie. Il restait présent dans certains offres très anciennes, il a désormais été retiré.

API écriture

Validation des saisies de dates

Des erreurs de saisie pouvaient entrainer des dates incohérentes, qui étaient jusqu’ici acceptées par les API (20200-01-01, 0001-01-01, 9999-01-01…) : les dates seront désormais contrôlées au moment de l’écriture.

Seules les dates au format YYYY-MM-DD seront désormais acceptées, et seulement si elles sont dans une plage de 2 ans avant / 10 ans après la date de l’écriture.

Consulter la documentation sur les API d’écriture

Renvoi des critères interdits ignorés à l’écriture

Même lorsqu’une écriture est acceptée, certains critères ne sont pas pris en compte parce qu’interdits.
L’API retournera désormais la liste des critères interdits qui ont été retirés au moment de l’écriture, dans un nouveau noeud informations de la réponse.

Consulter la documentation sur les API d’écriture

Demande de dépublication (masquage) d’offres

L’API d’écriture permet désormais de demander le masquage d’une offre.

Consulter la documentation sur les API d’écriture

Annulation de brouillons invalides

Jusqu’ici, si une écriture comportait une erreur bloquante, l’offre se retrouvait quand même en attente de validation (malgré le skipValidation) : elle se retrouvait donc verrouillée, en attendant une intervention de son propriétaire sur l’IHM.

Désormais, les développeurs pourront demander à ce qu’une écriture avec skipValidation, mais qui comporte une erreur bloquante, soit annulée automatiquement au lieu de rester en brouillon, grâce à une nouvelle option onValidationFail=CANCEL.

Consulter la documentation sur les API d’écriture

Dates et actions d’expiration

L’API d’écriture permet désormais d’intervenir sur les dates et actions d’expiration, qui n’étaient jusqu’ici accessible que par IHM.

Comme pour les autres types de champs, l’écriture se fait en réutilisant le format de l’API de lecture.

Pensez à ajouter les fieldList correspondants :

expiration.dateExpiration, expiration.expirationAction
{
    "type": "HOTELLERIE",
    "id": 5901975,
    "expiration": {
        "dateExpiration": "2022-05-31",
        "expirationAction": "MASQUER_AUTOMATIQUEMENT"
    }
}

Les valeurs possibles pour expirationAction sont disponibles sur les schemas :
https://github.com/apidae-tourisme/apidae-sit-schemas/blob/main/v002/api/full/misc/expiration.schema

Consulter la documentation sur les dates et actions d’expiration

Consulter la documentation sur les API d’écriture