Guide d`utilisation-API - API Data RTE

Transcription

Guide d`utilisation-API - API Data RTE
Guide d’Utilisation API referential_data
Version 1.0
GUIDE D’UTILISATION
API REFERENTIAL_DATA
Version 1
Date d’entrée en vigueur : 15 Septembre 2016
SOMMAIRE
1
Guide d’Utilisation API referential_data en version 01.00 de RTE
1
INTRODUCTION ________________________________________ 3
1.1
1.2
2
Version 1.0
Définitions ........................................................................................... 3
Assistance technique ............................................................................ 4
DESCRIPTION FONCTIONNELLE DE L’API REFERENTIAL_DATA __________ 5
2.1
2.2
Description générale ............................................................................. 5
Pré-requis à l’utilisation des API ............................................................. 5
2.2.1 Confidentialité des données ...................................................................... 5
2.2.2 Résiliation ................................................................................................ 5
2.3
Ressource « service_points/transcodifications» ....................................... 5
3
ACCES A L’API ________________________________________ 6
4
RESSOURCE EXPOSEE PAR L’API « REFERENTIAL_DATA » _____________ 7
4.1
Ressource /service_points/transcodifications ........................................... 7
4.1.1 GET /service_points/transcodifications....................................................... 7
4.1.1.1 Modalités d’appel ............................................................................ 7
5
4.1.1.2
Entrées .......................................................................................... 7
4.1.1.3
Sorties ........................................................................................... 8
4.1.1.4
Codes erreurs ............................................................................... 10
DETAILS DES ERREURS __________________________________ 11
5.1
Erreurs fonctionnelles ..........................................................................13
5.1.1 service_points/transcodifications ............................................................. 13
5.2
Erreurs techniques...............................................................................13
5.2.2 Codes erreurs transverses VESPA ............................................................ 13
2
Guide d’Utilisation API referential_data en version 01.00 de RTE
Version 1.0
1 Introduction
Ce document décrit la version 1 l’API « referential_data ».
Cette API permet de mettre à disposition des sociétés ayant souscrits à des services de données la
correspondance entre les codes EIC et les codes Décomptes (PPE) / Points De Comptage / Points de
Livraisons et d’Injection Contractuels
Documents de référence
Référence
courte
[R1]
1.1
Titre du document
Référence complète
CGU des API RTE
Sera complété ultérieurement
Définitions
Les termes utilisés dans le Guide d’Utilisation et dont la première lettre est une majuscule sont définis
ci-dessous ou, à défaut, dans les Conditions Générales d’Utilisation [R1] :
Terme
Description
API
Application Programming Interface (Interface de programmation applicative)
Authentification
Mode de Protection permettant de s’assurer que l’identité de l’Émetteur ou
du Récepteur a été vérifiée par RTE et qu’il est donc autorisé à accéder au
SI et à utiliser les Applications.
Émetteur
Partie qui émet un Message.
EIC
« Energy Identification Code », système d’identification unique des acteurs
et des objets du marché de l’énergie (ex : entités, zones, points de mesures,
liaisons électriques d’interconnexion), défini par l’ENTSO-E.
Message
Ensemble de données informatiques destiné à véhiculer des informations et
structuré selon un ordre spécifié dans le Guide d’Utilisation. Un Message
peut être émis par l’Utilisateur ou RTE.
Opération
Une opération est la manière dont le client interagit avec la ressource de
l’API. Il s’agit d’un verbe http (par exemple : GET pour lecture)
Partie ou Parties
Dans le cadre du Guide d’Utilisation, il s’agit, individuellement, soit de RTE
soit de l’Utilisateur et, conjointement, de RTE et de l’Utilisateur.
Récepteur
Partie qui reçoit le Message de l’Émetteur.
Ressource
Une ressource représente la donnée sur laquelle l’application cliente
interagit.
3
Guide d’Utilisation API referential_data en version 01.00 de RTE
Terme
Description
URL
Uniform Resource Locator : chaîne de caractères suivant un format
spécifique permettant de localiser une ressource sur un réseau et d’identifier
un moyen d’agir (protocole) sur cette ressource.
Utilisateur(s)
Personne morale ayant validé les Conditions Générales d’Utilisation des API
de RTE et accédant au SI de RTE afin d’utiliser les API mises à dispositions
par RTE.
PPE
Dans le cadre de la contractualisation du droit d’usage du réseau de
transport, le PPE est la maille élémentaire de décompte des flux d’énergie
selon les règles du mécanisme de RE (Responsable d’Equilibre). C’est un
regroupement de points de comptage de même classe de tension tarifaire
(1/40 kV, 41/130 kV, 131/350 kV, 400 kV), de même utilisation électrique
(alimentation principale, alimentation secours-substitution), de même durée
d’utilisation auquel s’applique un type de barème et un ensemble de
conditions contractuelles. Un seul contrat peut “ générer ” plusieurs PPE. Un
Equipement peut être relié à (0,n) PPE.
PDC
Le Point De Comptage est le point physique où sont placés les
transformateurs de mesure de courant et de tension destinés au comptage
des flux d’énergie.
PLIC
Point de Livraison et d’Injection Contractuel
OAuth 2
1.2
Version 1.0
OAuth 2.0 (Open Authorization) est un framework de délégation
d’autorisation qui permet à une application d’obtenir un jeton d’accès à des
données hébergées par un tiers.
Assistance technique
En cas de difficulté pour l’accès ou l’utilisation d’une API, l’Utilisateur peut faire appel aux services
d’assistance téléphonique mis en place par RTE dans les conditions techniques prévues dans les
Conditions Générales d’Utilisation.
4
Guide d’Utilisation API referential_data en version 01.00 de RTE
Version 1.0
2 Description fonctionnelle de l’API referential_data
2.1
Description générale
Ce document décrit l’API referential_data en version 1 proposée par RTE à ses Clients dans le but de
mettre à disposition la correspondance entre les codes EIC et les codes internes RTE des points de
services.
2.2
Pré-requis à l’utilisation des API
L’API referential_data est destinée aux Clients titulaires d’un Contrat d’Accès au Réseau Public de
Transport (CART), d’un contrat de service de décompte ou à tous tiers mandatés par un Client titulaire
d’un contrat via une autorisation de transmission de données (ATD).
2.2.1 Confidentialité des données
Les informations contenues dans les Messages ne pourront être utilisées à d’autres fins que celles
prévues dans les Conditions Générales d’Utilisation [R1].
2.2.2 Résiliation
L’abonnement à une API est automatiquement résilié lorsque le Contrat ou l’ATD donnant droit à
l’utilisation de l’API est résilié ou arrive à expiration.
Si l’Utilisateur souhaite ne plus utiliser une API sans résilier son Contrat ou son ATD, il suffit de cesser
l’émission des appels à l’API.
2.3
Ressource « service_points/transcodifications»
Ce Service permet de fournir la correspondance entre les codes EIC et les codes internes RTE des points
de services.
5
Guide d’Utilisation API referential_data en version 01.00 de RTE
3
Version 1.0
Accès à l’API
L’accès à l’API décrite dans ce document se fait via le protocole REST.
Comme pour toutes les API mises à disposition par RTE, l’accès et l’utilisation de ces API sont soumis
aux termes des Conditions Générales d’Utilisation [R1].
La méthode d’autorisation d’accès aux API est OAuth, dont les usages sont décrits dans la FAQ.
6
Guide d’Utilisation API referential_data en version 01.00 de RTE
Version 1.0
4 Ressource exposée par l’API « referential_data »
4.1
Ressource /service_points/transcodifications
4.1.1 GET /service_points/transcodifications
4.1.1.1 Modalités d’appel
La ressource est exposée de la manière suivante :
Exposition
REST / JSON
Méthode
GET
http://digital.iservices.rte-france.com/private_api/referential_data/v1/service_points
/transcodifications?category_type=PLIC&range=0-999
Où les paramètres category_type et range sont les mêmes que ceux transmis à la
ressource par l’appelant.
http://digital.iservices.rte-france.com/private_api/referential_data/v1/sandbox/
service_points /transcodifications
URL ressource
URL sandbox
(1)
(1)
La sandbox ne prend pas en compte les paramètres d’entrées
4.1.1.2 Entrées
CHAMP
TYPE
CARD.
category_type
string
0..1
Type de
demandé.
0..1
Plage de points
demandés.
range
string
DESCRIPTION
point
VALEURS / FORMAT
de
service Valeurs possibles : {PLIC, PPE,
PDC}
de
service « X-Y » ou X représente le
numéro du premier élément
demandé, Y le numéro du dernier.
Exemples d’appel :
Sans paramètre
URL:
GET /private_api/referential_data/v1/service_points/transcodifications
Headers:
Host: digital.iservices.rte-france.com
Authorization: Bearer CNAPbfmg7GjvtqTTlKqPm8ykP6R8YJFfJPnyjqW8p1v2PW2UX6bF8z
Body:
Avec tous les paramètres
7
Guide d’Utilisation API referential_data en version 01.00 de RTE
Version 1.0
URL:
GET /private_api/referential_data/v1/service_points/transcodifications?category_type=PLIC&range=0999
HTTP/1.1
Headers:
Host: digital.iservices.rte-france.com
Authorization: Bearer CNAPbfmg7GjvtqTTlKqPm8ykP6R8YJFfJPnyjqW8p1v2PW2UX6bF8z
Body:
4.1.1.3 Sorties en succès
Entêtes http en réponse :
CHAMP
TYPE
CARD.
Accept-Range
string
0..1
Response-Date
string
0..1
Content-Range
string
0..1
VALEURS / FORMAT
Description
Nombre maximal de points de
services pouvant être renvoyés
par appel à l’API
Date au format ISO 8601 Date de la réponse
yyyy-mm-jjThh:mm:sszzzzz
X-Y/Z ou X représente le
numéro du premier point
retourné, Y le dernier, Z le
total de points existants
Plage de ponts de services
renvoyés.
Corps de la réponse :
NOM
trans codifications
0..1
NOM
0..1
CARD.
DESCRIPTION
Structure {JSON} détaillée ci-dessous :
CARD.
DESCRIPTION
TYPE
VALEURS /
FORMAT
company_eic_code
0..1
Code EIC de la
société
string
category_type
0..1
Type de catégorie
du point de
service
string
Valeurs possibles
{PLIC, PPE, PDC}
string
Valeurs possibles si
category_type=PLIC:
{ PLIC HTA5, PLIC
CONCAVE, PLIC
HTB5}
service_point_category
Catégorie du point
de servie
0..1
8
:
Guide d’Utilisation API referential_data en version 01.00 de RTE
Version 1.0
Sinon,
service_point_categor
y=category_type
service_point_eic_code
0..1
Code EIC du point
de service
string
service_point_external_code
0..1
Code Rte du point
de service
string
Format JSON du retour:
GET /private_api/referential_data/v1/service_points/transcodifications
HTTP/1.1 200 OK
Accept-Range: 1000
Response-Date: 2016-09-09T17:59:16Z
Content-Range: 0-5/6
{
"transcodifications":
[{
"company_eic_code": "SOC_1",
"category_type": "PDC",
"service_point_category": "PDC",
"service_point_eic_code": "XXX",
"service_point_external_code": "XXX"
},
{
"company_eic_code": "SOC_1",
"category_type": "PDC",
"service_point_category": "PDC",
"service_point_eic_code": "XXX",
"service_point_external_code": "XXX"
}]
}
9
Guide d’Utilisation API referential_data en version 01.00 de RTE
Version 1.0
4.1.1.4 Codes erreurs
Le tableau suivant liste les codes erreurs pouvant être retournés lors de l'appel à la ressource.
Le détail de ces erreurs est décrit au chapitre 5 Détails des erreurs.
Type d’erreur
Code erreur
Détails
Fonctionnelle
REFEDATA_SEPOTR_F01
§5.1.1
Fonctionnelle
REFEDATA_SEPOTR_F03
§5.1.1
Technique
403
§5.2.2
Technique
404
§5.2.2
Technique
408
§5.2.2
Technique
413
§5.2.2
Technique
414
§5.2.2
Technique
429
§5.2.2
Technique
500
§5.2.2
Technique
503
§5.2.2
10
Guide d’Utilisation API referential_data en version 01.00 de RTE
5
Version 1.0
Détails des erreurs
Le schéma ci-dessous présente les codes retournés à l’Utilisateur de l’API en fonction du séquencement
des appels.
Ce paragraphe concerne les erreurs communes à toutes les ressources de l’API et à ce titre il ne décrit
pas les erreurs de requêtes (code http 400). Ces erreurs sont décrites ressource par ressource dans le
paragraphe correspondant.
En cas d’erreur lors de la phase d’authentification (validation du login et du mot de passe) un code HTTP 401 «
unauthorized » est retourné à l’appelant.
La seconde étape est de vérifier que l’Utilisateur ne dépasse pas le nombre maximal d’appels autorisés pour
l’opération. En cas de dépassement, l’appelant en est informé par un code HTTP 429. La réponse du serveur
contient dans ce cas un entête "Retry-After:" indiquant le temps d'attente (en secondes) que le client doit attendre
avant de renvoyer sa demande.
La troisième étape est de vérifier que l’application est bien créée/habilitée à accéder à la plateforme technique
VESPA. Si ce n’est pas le cas l’appelant en est informé par un code HTTP 403 « forbidden ».
La quatrième étape consiste à vérifier que l’application a bien souscrit à un abonnement à l’API. Si ce n’est pas le
cas, l’appelant en est informé par un code HTTP 403 « forbidden ».
La cinquième étape consiste à accéder aux ressources de RTE. Diverses erreurs fonctionnelles peuvent se produire.
Celles-ci sont communiquées à l’Utilisateur en tant qu’erreur JSON. Les erreurs décrites dans ce document sont les
erreurs fonctionnelles retournées avec le code retour http 500.
11
Guide d’Utilisation API referential_data en version 01.00 de RTE
Version 1.0
Structure JSON :
{
"error": "libelle_court, codification explicite de l’erreur",
"error_description": "libellé long, lisible par un utilisateur",
"error_uri": "URI vers le guide d’utilisation présent sur la plateforme technique VESPA ou la
FAQ/documentation sur le portail web de VESPA"
"error_details" : {
"transaction_id" : "identifiant unique d’appel, utile en cas d’incident"
}
}

Le libellé court (« error ») est un code permettant à l’application appelante de traiter
automatiquement les messages des erreurs. Il est représenté par une suite de mots séparés
par des « _ ».

Le libellé long (« error_description ») est une description permettant aux utilisateurs de
comprendre de façon plus précise l’origine de l’erreur. Ce libellé doit être validé par le métier
afin de s’assurer qu’il est suffisamment explicite.

L’URI vers le guide d’utilisation est présent pour donner plus d’explications en fonction de l’Api
appelée.

Le champ transaction_id : fournit un identifiant unique d’appel. Cet identifiant peut être utilisé
pour dialoguer avec la hotline Rte.
12
Guide d’Utilisation API referential_data en version 01.00 de RTE
5.1
Version 1.0
Erreurs fonctionnelles
5.1.1 service_points/transcodifications
Ce tableau récapitule les erreurs fonctionnelles retournées par la ressource correspondant à une erreur
dans la requête :
REFEDATA_SEPOTR_F01
Code http
400
Message
Au moins une des valeurs du champ category_type n'est pas reconnue.
Si au moins une des valeurs du champ category_type n'est pas reconnue.
Description
REFEDATA_SEPOTR_F03
Code http
404
Message
Le code EIC de la société n’est pas reconnu.
Description
Si le code EIC de la société n’est pas reconnu.
REFEDATA_SEPOTR_F04
Code http
400
Message
Le seuil maximal de pagination est dépassé
Description
5.2
Un appel est fait avec un paramètre range représentant une plage de plus de
1000 éléments.
Erreurs techniques
5.2.2 Codes erreurs transverses VESPA
403
Code http 403
Message
Exemple
d'appel
Forbidden
L'application authentifiée n’est pas autorisée à exécuter l'opération demandée
404
Code http 404
Message
Not Found
Exemple
d'appel
La ressource appelée n’existe pas ou aucune donnée n’a été trouvée
408
13
Guide d’Utilisation API referential_data en version 01.00 de RTE
Version 1.0
Code http 408
Message
Request Time-out
Exemple
d'appel
Erreur générée sur non réponse du service appelé ou retour en timeout (http 408) du
service appelé.
413
Code http 413
Message
Request Entity Too Large
Exemple
d'appel
La taille de la requête dépasse 5Mo
414
Code http 414
Message
Request-URI Too Long
Exemple
d'appel
L’URI transmise par l’appelant dépasse 512 caractères.
429
Code http 429
Message
Too Many Requests
Exemple
d'appel
Le nombre d’appel maximum dans un certain laps de temps est dépassé.
500
Code http 500
Message
Exemple
d'appel
Internal Server Error
Toute autre erreur technique.
(Cette erreur est accompagnée d’un message JSON avec un champ error_code et
error_description)
503
Code http 503
Message
Service Unavailable
Exemple
d'appel
Erreur générée sur maintenance (http 503).
FIN DU DOCUMENT
14