Endpoints disponibles

FranceConnect et FranceConnect+

L'ensemble des endpoints décrit dans cette page est valable pour FranceConnect et FranceConnect+. Si des distrinctions sont à faire, elles sont indiquées au niveau de la documentation du endpoint concerné.


FranceConnect et FranceConnect+ mettent en oeuvre le protocole OpenID Connect pour permettre à un Fournisseur de Services de déléguer l'identification et l'authentification des usagers. Pour connaitre l'enchainement des endpoints à utiliser au cours d'une cinématique, nous vous invitons à consulter les diagrammes de séquences de FranceConnect et de FranceConnect+

OpenID Configuration Endpoints #

Description

Implémente la requête de Provider Configuration

https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfigurationRequest

Paramètres

Aucun

Réponses
code http content-type réponse
200 application/json;charset=utf-8 Document JSON décrivant la configuration de FranceConnect/FranceConnect+
Exemple d'appel
GET /api/v2/.well-known/openid-configuration HTTP/1.1
Host: auth.integ01.dev-franceconnect.fr

Configuration sur l'environnement d'intégration:

  • FranceConnect+ : https://auth.integ01.dev-franceconnect.fr/api/v2/.well-known/openid-configuration
  • FranceConnect : https://fcp-low.integ01.dev-franceconnect.fr/api/v2/.well-known/openid-configuration

Description

Liste les clés de signature utilisées par FranceConnect/FranceConnect+

Paramètres

Aucun

code http content-type réponse
200 application/json;charset=utf-8 Document JSON décrivant les clés de signature de FranceConnect/FranceConnect+
Exemple d'appel
GET /api/v2/jwks HTTP/1.1
Host: auth.integ01.dev-franceconnect.fr

Clés sur l'environnement d'intégration:

  • FranceConnect+ : https://auth.integ01.dev-franceconnect.fr/api/v2/jwks

  • FranceConnect : https://fcp-low.integ01.dev-franceconnect.fr/api/v2/jwks


Authorization Endpoint #

Description

Implémente le Authorization Endpoint de OpenID Connect:

https://openid.net/specs/openid-connect-core-1_0.html#AuthorizationEndpoint

Paramètres
nom requis/optionnel type de données description
response_type requis string code
client_id requis string <CLIENT_ID> Identifiant du fournisseur de service, communiqué lors de son inscription auprès de FranceConnect / FranceConnect+
redirect_uri requis string <FS_URL>/<URL_CALLBACK> Url de retour vers le fournisseur de service (encodée), communiquée lors de son inscription auprès de FranceConnect / FranceConnect+
acr_values requis string - eidas2, eidas3 : FranceConnect+ supporte les niveaux eIDAS substantiel et élevé
- eidas1 : FranceConnect supporte uniquement le niveaux eIDAS faible
scope requis string <SCOPES> Liste des scopes demandés séparés par des espaces (%20 au format unicode dans l'URL) ou des '+'
claims optionnel string <CLAIMS> Objet JSON encodé décrivant les claims demandés (Voir spécification Openid Connect)
state requis string (minimum 22 caractères) <STATE> Champ obligatoire, généré aléatoirement par le fournisseur de service, que FranceConnect / FranceConnect+ renvoie tel quel dans la redirection qui suit l'authentification, pour être ensuite vérifié par le fournisseur de service. Il est utilisé afin d’empêcher l’exploitation de failles CSRF
nonce requis string (minimum 22 caractères) <NONCE> Champ obligatoire, généré aléatoirement par le fournisseur de service que FranceConnect / FranceConnect+ renvoie tel quel dans la réponse à l'appel au Token Endpoint, pour être ensuite vérifié par le fournisseur de service. Il est utilisé pour empêcher les attaques par rejeu
prompt optionnel string login force une demande de réauthentification avec le fournisseur d'identité à chaque connexion
Réponses
code http content-type réponse
303 (succès) text/html;charset=UTF-8 Redirection vers la page de sélection du fournisseur d'identité /api/v2/interaction/{interactionHash} où {interactionHash} est un hash lié à la session de l'usager
303 (erreur) `text/html;charset=UTF-8 Redirection vers le fournisseur de service après erreur de connexion
400(mauvais format) text/html;charset=UTF-8 La page d'erreur avec codeY000400 est affichée en cas de mauvais format
Exemple d'appel
GET /api/v2/authorize?response_type=code&prompt=login&acr_values=eidas2&
scope=openid+gender+given_name+family_name+email+preferred_username&
claims=%7B%22id_token%22%3A%7B%22amr%22%3A%7B%22essential%22%3Atrue%7D%7D%7D&
client_id=6925fb8143c76eded44d32b40c0cb1006065f7f003de52712b78985704f39950&
redirect_uri=https%3A%2F%2Ffsp1v2.integ01.fcp.fournisseur-de-service.fr%2Foidc-callback&
state=9ed67ae42fdc5d0a6867a5425a284745f4f73ce8b6edf76e453487aa1b73cc89&
nonce=7db9b35458f2288bade947791f1c8fa2d02954f8eb7d9909dc68784f7c4aea29 HTTP/1.1
Host: auth.integ01.dev-franceconnect.fr

Description

Implémente le Authorization Endpoint de Openid Connect:

https://openid.net/specs/openid-connect-core-1_0.html#AuthorizationEndpoint

Entête
nom requis/optionnel valeur
Content-Type requis application/x-www-form-urlencoded
Body
nom requis/optionnel type de données description
response_type requis string code
client_id requis string <CLIENT_ID> Identifiant du fournisseur de service, communiqué lors de son inscription auprès de FranceConnect/FranceConnectC+
redirect_uri requis string <FS_URL>%2F<URL_CALLBACK> Url de retour vers le fournisseur de service (encodée), communiquée lors de son inscription auprès de FranceConnect / FranceConnect+
acr_values requis string - eidas2, eidas3 : FranceConnect+ supporte les niveaux eIDAS substantiel et élevé
- eidas1 : FranceConnect supporte uniquement le niveaux eIDAS faible
scope requis string <SCOPES> Liste des scopes demandés séparés par des espaces (%20 au format unicode dans l'URL) ou des '+'
claims optionnel string <CLAIMS> Objet JSON encodé décrivant les claims demandés (Voir spécification Openid Connect)
state requis string (minimum 32 caractères) <STATE> Champ obligatoire, généré aléatoirement par le fournisseur de service, que FranceConnect/FranceConnect+ renvoie tel quel dans la redirection qui suit l'authentification, pour être ensuite vérifié par le fournisseur de service. Il est utilisé afin d’empêcher l’exploitation de failles CSRF
nonce requis string (minimum 32 caractères) <NONCE> Champ obligatoire, généré aléatoirement par le fournisseur de service que FC renvoie tel quel dans la réponse à l'appel au Token Endpoint, pour être ensuite vérifié par le fournisseur de service. Il est utilisé pour empêcher les attaques par rejeu
prompt optionnel string login force une demande de réauthentification avec le fournisseur d'identité à chaque connexion
Réponses
code http content-type réponse
303 (succès) text/html;charset=UTF-8 Redirection vers la page de recherche des fournisseur d'identité /api/v2/interaction/{interactionHash} où {interactionHash} est un hash lié à la session de l'usager
303 (erreur) text/html;charset=UTF-8 [Redirection vers le fournisseur de service après erreur de connexion](#redirection-vers-le-fournisseur de service-après-erreur-de-connexion)
400 (mauvais format) text/html;charset=UTF-8 La page d'erreur avec code Y000400 est affichée en cas de mauvais format
Exemple d'appel
POST /api/v2/authorize HTTP/1.1
Host: auth.integ01.dev-franceconnect.fr
Content-Type: application/x-www-form-urlencoded

response_type=code&prompt=login&acr_values=eidas2&
scope=openid+gender+given_name+family_name+email+preferred_username&
claims=%7B%22id_token%22%3A%7B%22amr%22%3A%7B%22essential%22%3Atrue%7D%7D%7D&
client_id=6925fb8143c76eded44d32b40c0cb1006065f7f003de52712b78985704f39950&
redirect_uri=https%3A%2F%2Ffsp1v2.integ01.fcp.fournisseur-de-service.fr%2Foidc-callback&
state=9ed67ae42fdc5d0a6867a5425a284745f4f73ce8b6edf76e453487aa1b73cc89&
nonce=7db9b35458f2288bade947791f1c8fa2d02954f8eb7d9909dc68784f7c4aea29

Redirection vers le fournisseur de service après erreur de connexion #

Description

Redirection vers le fournisseur de service après une erreur de connexion.

FranceConnect+ renvoie le code d'erreur, la description de l'erreur et le state.

Paramètres
nom requis/optionnel type de données description
error requis string code d'erreur
error_description requis string description de l'erreur
state requis string (minimum 32 caractères) <STATE> communiqué par par le fournisseur de service dans l'appel au Authorization Endpoint. Cette information est à vérifier par le fournisseur de service, afin d’empêcher l’exploitation de failles CSRF
Exemple d'appel

Exemple de retour vers le fournisseur de service de mock

GET /oidc-callback?state=9ed67ae42fdc5d0a6867a5425a284745f4f73ce8b6edf76e453487aa1b73cc89
error_description=User+auth+aborted&error=access_denied HTTP/1.1
Host: fsp1v2.integ01.fcp.fournisseur-de-service.fr

Redirection vers le fournisseur de service après connexion #

Description

Redirection vers le fournisseur de service après connexion chez le fournisseur d'identité.

FranceConnect / FranceConnect+ renvoie le code d'autorisation et le state.

Paramètres
nom requis/optionnel type de données description
code requis string <AUTHZ_CODE> code d'autorisation à transmettre au Token Endpoint
state requis string (minimum 32 caractères) <STATE> communiqué par par le fournisseur de service dans l'appel au Authorization Endpoint. Cette information est à vérifier par le fournisseur de service, afin d’empêcher l’exploitation de failles CSRF
Exemple d'appel

Exemple de retour vers le fournisseur de service de mock

GET /oidc-callback?code=_DOF10msXreojwyScrXmfqvwp8q3p1G7ZIzatMj60it&
state=9ed67ae42fdc5d0a6867a5425a284745f4f73ce8b6edf76e453487aa1b73cc89 HTTP/1.1
Host: fsp1v2.integ01.fcp.fournisseur-de-service.fr

Token Endpoint #

Description

Implémente le Token Endpoint de Openid Connect:

https://openid.net/specs/openid-connect-core-1_0.html#TokenEndpoint

Entête
nom requis/optionnel valeur
Content-Type requis application/x-www-form-urlencoded
Body
nom requis/optionnel type de données description
grant_type requis string authorization_code
client_id requis string <CLIENT_ID> Identifiant du fournisseur de service, communiqué lors de son inscription auprès de FranceConnect/FranceConnect+
client_secret requis string <CLIENT_SECRET> Le secret du fournisseur de service, communiqué lors de son inscription auprès de FranceConnect/FranceConnect+
redirect_uri requis string <FS_URL>%2F<URL_CALLBACK> Url de retour vers le fournisseur de service (encodée), communiqué lors de l'appel au Authorization Endpoint
code requis string <AUTHZ_CODE> code d'autorisation fourni après connexion de l'usager
Réponses
code http content-type réponse
200 application/json;charset=utf-8 La réponse contenant l'access token
400 application/json;charset=utf-8 JSON document décrivant l'origine de l'erreur de format
Format de la réponse en succès
{
  'access_token': <ACCESS_TOKEN>,
  'token_type': 'Bearer',
  'expires_in': 60,
  'id_token': <ID_TOKEN>
}

Voir le format de l'id_token.


UserInfo Endpoint #

Description

Implémente le UserInfo Endpoint de Openid Connect:

https://openid.net/specs/openid-connect-core-1_0.html#UserInfo

Entête
nom requis/optionnel valeur
Authorization requis Bearer <ACCESS_TOKEN><ACCESS_TOKEN> a été communiqué par le Token Endpoint
Paramètres

Aucun

Réponses
code http content-type réponse
200 application/jwt JSON Web Token contenant les claims transmis par le fournisseur d'identité
400 application/json;charset=utf-8 JSON document décrivant l'origine de l'erreur de format

Voir le format de userinfo.


Logout Endpoint #

Description

Implémente le Logout Endpoint de Openid Connect:

http://openid.net/specs/openid-connect-session-1_0.html#RPLogout

Attention : cet appel doit être réalisé via une redirection dans le navigateur de l'usager, afin d'expirer les cookies de session FranceConnect / FranceConnect+ et du fournisseur d'identité.

Paramètres
nom requis/optionnel type de données description
id_token_hint requis string JWT renvoyé par le endpoint Token Endpoint
state requis string <STATE> Champ obligatoire, généré aléatoirement par le fournisseur de service, que FC+ renvoie tel quel dans la redirection qui suit la déconnexion, pour être ensuite vérifié par le fournisseur de service. Il est utilisé afin d’empêcher l’exploitation de failles CSRF
post_logout_redirect_uri requis string <POST_LOGOUT_REDIRECT_URI> L'URL de redirection vers le fournisseur de service après la déconnexion
Réponses
code http content-type réponse
303 text/html;charset=UTF-8 Redirection vers le fournisseur d'identité pour déconnexion, puis redirection vers le fournisseur de service après déconnexion
Exemple d'appel
GET /api/v2/session/end?id_token_hint=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI3MDRlMDI0Mj
I5MDE1ZDJiZDQ3ZjdhNWU1YWIwNWIzNWM4MzM2YWI0MDNjMzgwMjI5ODVmOGNmYWRjODZmZTkxIiwiYW1yIjpbInB3ZCJdLCJ
hdXRoX3RpbWUiOjE2Njg1MzAzMjYsImFjciI6ImVpZGFzMSIsIm5vbmNlIjoiYWZjODFmZGExZmJiNmQzYzg3NmFmNzVjNzM3
YTEzMDdhMWIyOWJhMDg3M2VmYTA1OWU0NTM1ZDEyMmM5ZGI1YSIsImF0X2hhc2giOiJJVEJTV1J2NW1HRmxxTGQ0Sm5nbnRnI
iwiYXVkIjoiNjkyNWZiODE0M2M3NmVkZWQ0NGQzMmI0MGMwY2IxMDA2MDY1ZjdmMDAzZGU1MjcxMmI3ODk4NTcwNGYzOTk1MC
IsImV4cCI6MTY2ODUzMDM4NiwiaWF0IjoxNjY4NTMwMzI2LCJpc3MiOiJodHRwczovL2ZjYS5pbnRlZzAxLmRldi1hZ2VudGN
vbm5lY3QuZnIvYXBpL3YyIn0.hg1n4WJbzZECwz4VldAybXYreEXJ4fxpSWqDs9V4tTk&
state=3b7bd7fb38ccab89864563f17a89c4cb3bd400164ce828b4cfc2cb01ce8ed9da&
post_logout_redirect_uri=https%3A%2F%2Ffsa1v2.integ01.dev-agentconnect.fr%2Flogout-callback HTTP/1.1
Host: auth.integ01.dev-franceconnect.fr

Redirection vers le fournisseur de service après déconnexion #

Description

Redirection vers le fournisseur de service après déconnexion.

FranceConnect / FranceConnect+ renvoie le state communiqué par le fournisseur de service lors de la demande de déconnexion.

Paramètres
nom requis/optionnel type de données description
state requis string (minimum 32 caractères) <STATE> communiqué par par le fournisseur de service dans l'appel au Logout Endpoint. Cette information est à vérifier par le fournisseur de service, afin d’empêcher l’exploitation de failles CSRF
Exemple d'appel

Exemple de retour vers le fournisseur de service de mock à déconnexion

GET /logout-callback?state=3b7bd7fb38ccab89864563f17a89c4cb3bd400164ce828b4cfc2cb01ce8ed9da HTTP/1.1
Host: fsp1v2.integ01.fcp.fournisseur-de-service.fr

Paramètres d'affichage
Choississez un thème