Exemple d'implémentation pour requeter l'API en étant authentifié
Avant de pouvoir envoyer des requêtes authentifiées, il vous faudra lesAccréditations nécessaire. Aussi pensez a consulter notre doc sur l'Jeton d'authentification.
Vous pouvez tester en executant le script suivant avec les variables d'environnement adaptées :
require'net/http'require'uri'require'json'ENDPOINT=URI('https://www.demarches-simplifiees.fr/api/v2/graphql')### that's the GraphQL part.defquery<<~GRAPHQL_QUERYquery getDemarche($demarcheNumber: Int!) { demarche(number: $demarcheNumber) { id dossiers { nodes { id demandeur { ... on PersonnePhysique { civilite nom prenom } ... on PersonneMorale { siret } } } } }}GRAPHQL_QUERYend### that's the HTTP part# open an http connexion to our GraphQL endpointdefopen_http_connection http =Net::HTTP.new(ENDPOINT.host,ENDPOINT.port)ifENDPOINT.scheme =='https' http.use_ssl =true http.verify_mode =OpenSSL::SSL::VERIFY_NONEend httpend# the headers of our http query, include authdefrequest_headers {"Content-Type"=>"application/json","Authorization"=>"Bearer #{ENV['API_TOKEN']}" }end# given an http connexion, request the APIdefrequest_page(http)# the data of our query data = {"query"=> query,"operationName"=>"getDemarche","variables"=> {"demarcheNumber":ENV['DEMARCHE_NUMBER'].to_i } }# the HTTP format req =Net::HTTP::Post.new(ENDPOINT, request_headers)# the request body format req.body = data.to_json response = http.request(req) data =JSON.parse(response.body) dataendhttp = open_http_connectiondata = request_page(http)puts"Info: fetched it should work: #{data}"