1 |
60402
|
katerina.i
|
|
2 |
|
|
|
3 |
|
|
<!DOCTYPE html>
|
4 |
|
|
<html lang="en-gb">
|
5 |
|
|
<head>
|
6 |
|
|
<!--link href="http://demo.openaire.eu" rel="canonical" /-->
|
7 |
|
|
<meta charset="utf-8">
|
8 |
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
9 |
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
10 |
|
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
11 |
|
|
<meta name="description" content="OpenAIRE API documentation, open access, research, scientific publication, European Commission, EC, FP7, ERC,
|
12 |
|
|
Horizon 2020, H2020, search, projects, publications, research data, datasets, HTTP, funders "/>
|
13 |
|
|
<link href="./assets/favicon.ico" rel="shortcut icon" />
|
14 |
|
|
<title>OpenAIRE API documentation - Authentication Registered Services (Advanced)</title>
|
15 |
|
|
<script src="./assets/jquery.js"></script>
|
16 |
|
|
<script src="./assets/uikit.js"></script>
|
17 |
|
|
<script src="./assets/uikit-icon-max.js"></script>
|
18 |
|
|
<link rel="stylesheet" type="text/css" href="./assets/theme.css">
|
19 |
|
|
<link rel="stylesheet" type="text/css" href="./assets/custom.css">
|
20 |
|
|
<link rel="stylesheet" type="text/css" href="./assets/develop-custom.css">
|
21 |
|
|
|
22 |
|
|
</head>
|
23 |
|
|
<body>
|
24 |
|
|
<div class="uk-offcanvas-content uk-height-viewport">
|
25 |
|
|
<div class="tm-header-mobile uk-hidden@m">
|
26 |
|
|
<div animation="uk-animation-slide-top" class="uk-navbar-container uk-sticky uk-navbar-transparent" cls-active="uk-active uk-navbar-sticky" cls-inactive="uk-navbar-transparent" uk-sticky="">
|
27 |
|
|
<nav class="uk-navbar-container uk-navbar" uk-navbar="">
|
28 |
|
|
<div class="uk-navbar-left">
|
29 |
|
|
<a class="uk-navbar-toggle" href="#tm-mobile" uk-toggle="">
|
30 |
|
|
<div uk-navbar-toggle-icon="" class="uk-navbar-toggle-icon uk-icon">
|
31 |
|
|
|
32 |
|
|
</div>
|
33 |
|
|
</a>
|
34 |
|
|
</div>
|
35 |
|
|
<div class="uk-navbar-center">
|
36 |
|
|
<a class="uk-navbar-item uk-logo" href="overview.html">
|
37 |
|
|
<img src="assets/OA DEVELOP_A.png" class="uk-responsive-height" alt="OpenAIRE"> </a>
|
38 |
|
|
</div>
|
39 |
|
|
</nav>
|
40 |
|
|
<div id="tm-mobile" uk-offcanvas="" mode="slide" overlay="" class="uk-offcanvas">
|
41 |
|
|
<div class="uk-offcanvas-bar">
|
42 |
|
|
<button class="uk-offcanvas-close uk-close uk-icon" type="button" uk-close="">
|
43 |
|
|
</button>
|
44 |
|
|
<div class="uk-child-width-1-1 uk-grid" uk-grid="">
|
45 |
|
|
<div>
|
46 |
|
|
<div class="uk-panel" id="module-0">
|
47 |
|
|
<ul class="uk-nav uk-nav-default">
|
48 |
|
|
<li class="uk-nav-header uk-parent" >
|
49 |
|
|
Dashboards
|
50 |
|
|
<ul class="uk-nav-sub">
|
51 |
|
|
<li><a href="https://explore.openaire.eu" target="_blank" class="uk-heading-bullet explore-heading-bullet">EXPLORE</a></li>
|
52 |
|
|
<li><a href="https://provide.openaire.eu" target="_blank" class="uk-heading-bullet provide-heading-bullet">PROVIDE</a></li>
|
53 |
|
|
<li><a href="https://connect.openaire.eu" target="_blank" class="uk-heading-bullet connect-heading-bullet">CONNECT</a></li>
|
54 |
|
|
<li><a href="https://monitor.openaire.eu" target="_blank" class="uk-heading-bullet monitor-heading-bullet">MONITOR</a></li>
|
55 |
|
|
</ul>
|
56 |
|
|
</li>
|
57 |
|
|
<li class="uk-nav-header uk-parent">
|
58 |
|
|
<a href="./overview.html"> Overview </a>
|
59 |
|
|
|
60 |
|
|
</li>
|
61 |
|
|
<li class="uk-nav-header uk-parent uk-active">
|
62 |
|
|
Authentication
|
63 |
|
|
<ul class="uk-nav-sub">
|
64 |
|
|
<li><a routerLinkActive="uk-link" href="./authentication.html" >General Information</a></li>
|
65 |
|
|
<li><a routerLinkActive="uk-link" href="./personalToken.html" >Personal Token</a></li>
|
66 |
|
|
<li><a routerLinkActive="uk-link" href="./registeredService.html">Registered Services</a>
|
67 |
|
|
<ul class="uk-nav-sub">
|
68 |
|
|
<li><a routerLinkActive="uk-link" href="./basic.html">Basic</a></li>
|
69 |
|
|
<li><a routerLinkActive="uk-link" href="./advanced.html">Advanced</a></li>
|
70 |
|
|
</ul>
|
71 |
|
|
</li>
|
72 |
|
|
</ul>
|
73 |
|
|
</li>
|
74 |
|
|
<li class="uk-nav-header uk-parent">
|
75 |
|
|
Bulk access
|
76 |
|
|
<ul class="uk-nav-sub">
|
77 |
|
|
<li><a routerLinkActive="uk-link" href="./graph-dumps.html" >OpenAIRE Research Graph Dumps</a></li>
|
78 |
|
|
<li><a routerLinkActive="uk-link" href="./oai-pmh.html" >OAI-PMH (discontinued)</a></li>
|
79 |
|
|
<li><a routerLinkActive="uk-link" href="./bulk-projects.html" >Bulk access to projects</a></li>
|
80 |
|
|
</ul>
|
81 |
|
|
</li>
|
82 |
|
|
<li class="uk-nav-header uk-parent">
|
83 |
|
|
<a href="./api.html">Selective access</a>
|
84 |
|
|
<ul class="uk-nav-sub">
|
85 |
|
|
<li><a href="./api.html#pubs" >Publications</a></li>
|
86 |
|
|
<li><a href="./api.html#datasets" >Research Data</a></li>
|
87 |
|
|
<li><a href="./api.html#software" >Software</a></li>
|
88 |
|
|
<li><a href="./api.html#other" >Other Research Products</a></li>
|
89 |
|
|
<li><a href="./api.html#projects" >Projects</a></li>
|
90 |
|
|
</ul>
|
91 |
|
|
</li>
|
92 |
|
|
</ul>
|
93 |
|
|
</div>
|
94 |
|
|
</div>
|
95 |
|
|
</div>
|
96 |
|
|
</div>
|
97 |
|
|
</div>
|
98 |
|
|
</div>
|
99 |
|
|
</div>
|
100 |
|
|
<!--Mobile ENDS here -->
|
101 |
|
|
<div class="tm-toolbar custom-develop-toolbar uk-visible@m">
|
102 |
|
|
<div class="uk-container uk-flex uk-flex-middle uk-container-expand ">
|
103 |
|
|
<div class="uk-margin-auto-left">
|
104 |
|
|
<div class="uk-grid-medium uk-child-width-auto uk-flex-middle uk-grid uk-grid-stack" uk-grid="margin: uk-margin-small-top">
|
105 |
|
|
<div class="uk-first-column">
|
106 |
|
|
<div class="uk-panel inner" id="module-119">
|
107 |
|
|
<ul class="uk-subnav">
|
108 |
|
|
<li class="line"><a href="https://www.openaire.eu"><img class="uk-responsive-height" src="assets/Home_24white.svg" alt="home"/></a></li>
|
109 |
|
|
<li class="line"><a href="https://explore.openaire.eu" title="Search in OA. Link your research">Explore</a></li>
|
110 |
|
|
<li class="line"><a href="https://provide.openaire.eu" title="Content Provider Dashboard">Provide</a></li>
|
111 |
|
|
<li class="line"><a href="https://connect.openaire.eu" title="Research Community Dashboard">Connect</a></li>
|
112 |
|
|
<li class="line"><a href="https://monitor.openaire.eu" title="Monitoring Dashboard">Monitor</a></li>
|
113 |
|
|
<li class="line custom-develop-li "><a href="overview.html" title="APIs">Develop</a></li>
|
114 |
|
|
</ul>
|
115 |
|
|
</div>
|
116 |
|
|
</div>
|
117 |
|
|
</div>
|
118 |
|
|
</div>
|
119 |
|
|
</div>
|
120 |
|
|
</div>
|
121 |
|
|
<div class="tm-header uk-visible@m tm-header-transparent" uk-header="">
|
122 |
|
|
<div animation="uk-animation-slide-top" class="uk-navbar-container uk-sticky uk-navbar-transparent" cls-active="uk-active uk-navbar-sticky" cls-inactive="uk-navbar-transparent" top=".tm-header + [class*="uk-section"]" uk-sticky="">
|
123 |
|
|
<div class="uk-navbar-container uk-navbar-transparent">
|
124 |
|
|
<div class="uk-container uk-container-expand">
|
125 |
|
|
<nav class="uk-navbar" uk-navbar="{"align":"left"}">
|
126 |
|
|
<div class="uk-navbar-left">
|
127 |
|
|
<a href="overview.html" class="uk-navbar-item uk-logo">
|
128 |
|
|
<img src="assets/OA DEVELOP_B.png" class="uk-responsive-height" alt="OpenAIRE"></a>
|
129 |
|
|
</div>
|
130 |
|
|
<div class="uk-navbar-right">
|
131 |
|
|
<ul class="uk-navbar-nav">
|
132 |
|
|
<li class="uk-parent">
|
133 |
|
|
<a href="overview.html" class="" aria-expanded="false">Overview</a>
|
134 |
|
|
</li>
|
135 |
|
|
|
136 |
|
|
<li class="uk-parent uk-active">
|
137 |
|
|
<a href="#" class="" aria-expanded="false">Authentication</a>
|
138 |
|
|
<div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left" style="left: 116px; top: 80px;">
|
139 |
|
|
<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
|
140 |
|
|
<div class="uk-first-column">
|
141 |
|
|
<ul class="uk-nav uk-navbar-dropdown-nav">
|
142 |
|
|
<li><a routerLinkActive="uk-link" href="./authentication.html" >General Information</a></li>
|
143 |
|
|
<li><a routerLinkActive="uk-link" href="./personalToken.html" >Personal Token</a></li>
|
144 |
|
|
<li><a routerLinkActive="uk-link" href="./registeredService.html">Registered Services</a></li>
|
145 |
|
|
</ul>
|
146 |
|
|
</div>
|
147 |
|
|
</div>
|
148 |
|
|
</div>
|
149 |
|
|
</li>
|
150 |
|
|
<li class="uk-parent">
|
151 |
|
|
<a href="#" class="" aria-expanded="false">Bulk access</a>
|
152 |
|
|
<div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left" style="left: 116px; top: 80px;">
|
153 |
|
|
<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
|
154 |
|
|
<div class="uk-first-column">
|
155 |
|
|
<ul class="uk-nav uk-navbar-dropdown-nav">
|
156 |
|
|
<li><a routerLinkActive="uk-link" href="./graph-dumps.html" >OpenAIRE Research Graph Dumps</a></li>
|
157 |
|
|
<li><a routerLinkActive="uk-link" href="./oai-pmh.html" >OAI-PMH (discontinued)</a></li>
|
158 |
|
|
<li><a routerLinkActive="uk-link" href="./bulk-projects.html" >Bulk access to projects</a></li>
|
159 |
|
|
</ul>
|
160 |
|
|
</div>
|
161 |
|
|
</div>
|
162 |
|
|
</div>
|
163 |
|
|
</li>
|
164 |
|
|
<li class="uk-parent">
|
165 |
|
|
<a href="#" class="" aria-expanded="false">Selective access</a>
|
166 |
|
|
<div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left" style="left: 228px; top: 80px;">
|
167 |
|
|
<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid="">
|
168 |
|
|
<div class="uk-first-column">
|
169 |
|
|
<ul class="uk-nav uk-navbar-dropdown-nav">
|
170 |
|
|
<li><a href="./api.html#pubs" >Publications</a></li>
|
171 |
|
|
<li><a href="./api.html#datasets" >Research Data</a></li>
|
172 |
|
|
<li><a href="./api.html#software" >Software</a></li>
|
173 |
|
|
<li><a href="./api.html#other" >Other Research Products</a></li>
|
174 |
|
|
<li><a href="./api.html#projects" >Projects</a></li>
|
175 |
|
|
</ul>
|
176 |
|
|
</div>
|
177 |
|
|
</div>
|
178 |
|
|
</div>
|
179 |
|
|
</li>
|
180 |
|
|
|
181 |
|
|
</ul>
|
182 |
|
|
</div>
|
183 |
|
|
|
184 |
|
|
</nav>
|
185 |
|
|
</div>
|
186 |
|
|
</div>
|
187 |
|
|
</div>
|
188 |
|
|
</div>
|
189 |
|
|
|
190 |
|
|
<div class=" first_page_section uk-section-default uk-section uk-padding-remove-vertical">
|
191 |
|
|
<div class="first_page_banner_headline uk-grid-collapse uk-flex-middle uk-margin-remove-vertical uk-grid" uk-grid="">
|
192 |
|
|
</div>
|
193 |
|
|
</div>
|
194 |
|
|
|
195 |
|
|
<div class=" uk-section uk-margin-large-top tm-middle custom-main-content" id="tm-main">
|
196 |
|
|
<div class="uk-container">
|
197 |
|
|
<div class="uk-grid">
|
198 |
|
|
<div class="uk-width-1-3@s uk-width-1-4@m uk-width-1-4@l uk-visible@m" >
|
199 |
|
|
<ul class="uk-nav-default uk-nav-parent-icon" uk-nav="multiple: false" uk-sticky="offset: 100; media:@s" >
|
200 |
|
|
<li class="uk-parent uk-open">
|
201 |
|
|
<a href="#">Authentication</a>
|
202 |
|
|
<ul class="uk-nav-sub">
|
203 |
|
|
<li><a href="./authentication.html">General Information</a></li>
|
204 |
|
|
<li><a href="./personalToken.html">Personal Token</a></li>
|
205 |
|
|
<li><a href="./registeredService.html">Registered Services</a>
|
206 |
|
|
<ul class="uk-nav-sub">
|
207 |
|
|
<li><a href="./basic.html">Basic</a></li>
|
208 |
|
|
<li class="uk-active"><b><a href="./advanced.html">Advanced</a></b></li>
|
209 |
|
|
</ul>
|
210 |
|
|
</li>
|
211 |
|
|
</ul>
|
212 |
|
|
</li>
|
213 |
|
|
</ul>
|
214 |
|
|
</div>
|
215 |
|
|
|
216 |
|
|
|
217 |
|
|
<div class="tm-main uk-width-expand uk-row-first uk-first-column">
|
218 |
|
|
|
219 |
|
|
<h2 id="service">Advanced service authentication and registration</h2>
|
220 |
|
|
|
221 |
|
|
<p>For the <b>Advanced Authentication</b> method your service does not send a client secret but it uses a <em>self signed
|
222 |
|
|
client assertion</em> to obtain the access token for the OpenAIRE APIs. The client assertion is a JWT that must be
|
223 |
|
|
signed with RSASSA using SHA-256 hash algorithm. The OpenAIRE AAI server validates the client assertion using the public
|
224 |
|
|
key that you have provided upon the service registration.
|
225 |
|
|
</p>
|
226 |
|
|
|
227 |
|
|
<h4>Prepare to register your service</h4>
|
228 |
|
|
<p>Before you register your service you need to prepare a pair of a private key and a public key on your side.
|
229 |
|
|
<div class="uk-alert-primary" uk-alert>
|
230 |
|
|
We accept keys signed with RSASSA using SHA-256 hash algorithm.
|
231 |
|
|
</div>
|
232 |
|
|
To create the key pair you have the following options:
|
233 |
|
|
<ul>
|
234 |
|
|
<li>Use OpenAIRE authorization server built in tool. You can access the service here:
|
235 |
|
|
<a href="https://aai.openaire.eu/oidc/generate-oidc-keystore" target="_blank">https://aai.openaire.eu/oidc/generate-oidc-keystore</a>.
|
236 |
|
|
<br>
|
237 |
|
|
The response is your <span class="uk-text-primary"><b>Public and Private Keypair</b></span> and has the following format:
|
238 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
239 |
|
|
{ "p" : ...,
|
240 |
|
|
"kty" : "RSA",
|
241 |
|
|
"q" : ...,
|
242 |
|
|
"d" : ...,
|
243 |
|
|
"e" : "AQAB",
|
244 |
|
|
"kid" : ...,
|
245 |
|
|
"qi" : ...,
|
246 |
|
|
"dp" : ...,
|
247 |
|
|
"alg" : "RS256",
|
248 |
|
|
"dq" : ...,
|
249 |
|
|
"n" : ....
|
250 |
|
|
}</pre>
|
251 |
60402
|
katerina.i
|
|
252 |
|
|
Use the public key parameters (kty, e, kid, alg, n) to create your <span class="uk-text-primary"><b>Public Key</b></span>
|
253 |
61661
|
katerina.i
|
in the following format:
|
254 |
|
|
<pre class="uk-text-left">
|
255 |
|
|
{
|
256 |
|
|
"kty": "RSA",
|
257 |
|
|
"e": "AQAB",
|
258 |
|
|
"kid": ...,
|
259 |
|
|
"alg": "RS256",
|
260 |
|
|
"n": ...
|
261 |
|
|
}</pre>
|
262 |
60402
|
katerina.i
|
|
263 |
|
|
<div class="uk-alert-primary" uk-alert>
|
264 |
|
|
Store both the <span class="uk-text-primary"><b>Public and Private keypair</b></span> and the <span class="uk-text-primary"><b>Public key</b></span>. You will need them to register your service.
|
265 |
|
|
</div>
|
266 |
|
|
<div class="uk-alert-danger" uk-alert>
|
267 |
|
|
Store the <span class="uk-text-primary"><b>Public and Private keypair</b></span> confidentially on the service side.
|
268 |
|
|
</div>
|
269 |
|
|
|
270 |
|
|
</li>
|
271 |
|
|
<li>
|
272 |
|
|
Use openssl and then convert the keys to jwk format using PEM to JWK scripts, such as <a href="https://github.com/danedmunds/pem-to-jwk" target="_blank">https://github.com/danedmunds/pem-to-jwk</a>.
|
273 |
|
|
Alternatively, the client application can read the key pair in PEM format and then convert them, using JWK libraries.
|
274 |
|
|
Use the public key parameters (kty, e, kid, alg, n) to the service registration.
|
275 |
|
|
</li>
|
276 |
|
|
</ul>
|
277 |
|
|
|
278 |
|
|
<div class="uk-alert-primary" uk-alert>
|
279 |
|
|
You can also provide a public key in JWK format that can be accessed using a link.
|
280 |
|
|
</div>
|
281 |
|
|
|
282 |
|
|
</p>
|
283 |
|
|
|
284 |
|
|
<h4>How to register your service</h4>
|
285 |
|
|
<p>To register your service you need to:</p>
|
286 |
|
|
<ol>
|
287 |
|
|
<li>Login to OpenAIRE. In case you are not already a member you will need to register first.</li>
|
288 |
61661
|
katerina.i
|
<li>Go to your <a href="https://services.openaire.eu/uoa-user-management/registeredServices" target="_blank">Registered Services</a> page and click the New Service button.</li>
|
289 |
60402
|
katerina.i
|
<li>Provide the <span class="uk-text-primary"><b>"Νame"</b></span> (mandatory) of your service.</li>
|
290 |
|
|
<li>Select the Advanced <span class="uk-text-primary"><b>"Security level"</b></span></li>
|
291 |
|
|
<li>Use the public key parameters (kty, e, kid, alg, n) you previously produced to
|
292 |
|
|
declare your <span class="uk-text-primary"><b>"Public Key"</b></span> <span class="uk-text-primary"><b>"By value"</b></span>
|
293 |
|
|
in the following format:
|
294 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
295 |
|
|
{
|
296 |
|
|
"kty": "RSA",
|
297 |
|
|
"e": "AQAB",
|
298 |
|
|
"kid": ...,
|
299 |
|
|
"alg": "RS256",
|
300 |
|
|
"n": ...
|
301 |
|
|
}</pre>
|
302 |
60402
|
katerina.i
|
<b>- OR -</b>
|
303 |
|
|
<p>If your service has a public key in JWK format that can be accessed using a link, you can set <span class="uk-text-primary"><b>“Public Key”</b></span> to <span class="uk-text-primary"><b>“By URL”</b></span>.</p>
|
304 |
|
|
</b>
|
305 |
|
|
<li>Click the <span class="uk-text-primary"><b>Add New Service</b></span> button.</li>
|
306 |
|
|
</ol>
|
307 |
61661
|
katerina.i
|
<p>Once your service is created it will appear in the list of your <a href="https://services.openaire.eu/uoa-user-management/registeredServices" target="_blank">Registered Services</a> page, with
|
308 |
60402
|
katerina.i
|
the <b>Service Id</b> that was automatically assigned to it by the AAI OpenAIRE service.</p>
|
309 |
|
|
|
310 |
|
|
<h4>How to make a request</h4>
|
311 |
|
|
<h5>Step 1. Create and sign a JWT</h5>
|
312 |
|
|
<p>Your service must create and sign a JWT and include it in the request to token endpoint as
|
313 |
|
|
described in the <a href="https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication" target="_blank">OpenID Connect Core 1.0, 9. Client Authentication</a>.
|
314 |
|
|
</p>
|
315 |
|
|
<p>
|
316 |
|
|
<p>To create a JWT you can use <a href="https://mkjose.org/" target="_blank">https://mkjose.org/</a>. To do so you need to create a <b>payload</b> that should contain the following claims:</p>
|
317 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
318 |
|
|
{
|
319 |
|
|
"iss": "{SERVICE_ID}",
|
320 |
|
|
"sub": "{SERVICE_ID}",
|
321 |
|
|
"aud": "https://aai.openaire.eu/oidc/token",
|
322 |
|
|
"jti": "{RANDOM_STRING}",
|
323 |
|
|
"exp": {EXPIRATION_TIME_OF_SIGNED_JWT}
|
324 |
|
|
}</pre>
|
325 |
60402
|
katerina.i
|
<ul>
|
326 |
|
|
<li><b>iss</b>, <em>(required)</em> the “issuer” claim identifies the principal that issued the JWT. The value is
|
327 |
|
|
the <b>Service Id</b> that was created when you registered your service.
|
328 |
|
|
</li>
|
329 |
|
|
<li><b>sub</b>, <em>(required)</em> the “subject” claim identifies the principal that is the subject of the JWT.
|
330 |
|
|
The value is the <b>Service Id</b> that was created when you registered your service.</li>
|
331 |
|
|
<li>aud, <em>(required)</em> the “audience” claim identifies the recipients that the JWT is intended for.
|
332 |
|
|
The value is <b>https://aai.openaire.eu/oidc/token</b>>.</li>
|
333 |
|
|
<li><b>jti</b>, <em>(required)</em> The “JWT ID” claim provides a unique identifier for the JWT.
|
334 |
|
|
The value is a random string.</li>
|
335 |
|
|
<li><b>exp</b>, <em>(required)</em> the “expiration time” claim identifies the expiration time on or after which the
|
336 |
|
|
JWT <b>MUST NOT</b> be accepted for processing.
|
337 |
|
|
The value is a timestamp in <b>epoch format</b>.</li>
|
338 |
|
|
</ul>
|
339 |
|
|
<p>
|
340 |
|
|
Fill in the payload in the form available at <a href="https://mkjose.org/" target="_blank">https://mkjose.org/</a>, select the
|
341 |
|
|
Signing Algorithm to be <b>RS256 using SHA-256</b> and paste the <span class="uk-text-primary"><b>Public and Private Keypair</b></span>
|
342 |
|
|
previously created.
|
343 |
|
|
</p>
|
344 |
|
|
<p>To check your JWT you can go to <a href="https://jwt.io/" target="_blank">https://jwt.io/</a>. The
|
345 |
|
|
<b>header</b> should contain the following claims:</p>
|
346 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
347 |
|
|
{
|
348 |
|
|
"alg": "RS256",
|
349 |
|
|
"kid": ...
|
350 |
|
|
}</pre>
|
351 |
60402
|
katerina.i
|
where <b>kid</b> is the one of your <span class="uk-text-primary"><b>Public and Private Keypair</b></span> you used to sign the JWT in <span class="uk-text-primary"><b>Step 1</b></span>.</li>
|
352 |
|
|
</ul>
|
353 |
|
|
</p>
|
354 |
|
|
</p>
|
355 |
|
|
|
356 |
|
|
<div class="uk-alert-danger" uk-alert>
|
357 |
|
|
Store the signed key confidentially on the service side. You will need it in Step 2.
|
358 |
|
|
</div>
|
359 |
|
|
|
360 |
|
|
<h5>Step 2. Request for an access token</h5>
|
361 |
|
|
<p>
|
362 |
|
|
To make an access token request use the <em>signed JWT</em> that you created in <span class="uk-text-primary"><b>Step 1</b></span>.
|
363 |
|
|
The OpenAIRE AAI server will check if the signed JWT is valid using the public key that you
|
364 |
|
|
declared in the <span class="uk-text-primary"><b>"How to register your service"</b></span>
|
365 |
|
|
process.
|
366 |
|
|
|
367 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
368 |
60402
|
katerina.i
|
curl -k -X POST "https://aai.openaire.eu/oidc/token" \
|
369 |
|
|
-d "grant_type=client_credentials" \
|
370 |
|
|
-d "client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer" \
|
371 |
|
|
-d "client_assertion={signedJWT}"
|
372 |
61661
|
katerina.i
|
|
373 |
60402
|
katerina.i
|
</pre>
|
374 |
|
|
<p>where <b>{signedJWT}</b> is the signed JWT created in <span class="uk-text-primary"><b>Step 1</b></span>.</p>
|
375 |
|
|
<p>
|
376 |
|
|
The response is:
|
377 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
378 |
|
|
{
|
379 |
|
|
"access_token": {ACCESS_TOKEN}
|
380 |
|
|
"token_type":"Bearer",
|
381 |
|
|
"expires_in": ...,
|
382 |
|
|
"scope":"openid"
|
383 |
|
|
}</pre>
|
384 |
60402
|
katerina.i
|
</p>
|
385 |
|
|
</p>
|
386 |
|
|
<div class="uk-alert-danger" uk-alert>
|
387 |
|
|
<p>Store the access token confidentially on the service side.</p>
|
388 |
|
|
</div>
|
389 |
|
|
|
390 |
|
|
<h5>Step 3. Make a request</h5>
|
391 |
|
|
<p>To access the OpenAIRE APIs send the access token returned in <span class="uk-text-primary"><b>Step 2</b></span>.</p>
|
392 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
393 |
|
|
GET https://api.openaire.eu/{resourceServicePath}
|
394 |
|
|
Authorization: Bearer {ACCESS_TOKEN}</pre>
|
395 |
60402
|
katerina.i
|
|
396 |
|
|
|
397 |
|
|
<h4>Error messages</h4>
|
398 |
|
|
<p>401 - Invalid client assertion</p>
|
399 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
400 |
|
|
{
|
401 |
|
|
"error":"invalid_client",
|
402 |
|
|
"error_description":"Bad client credentials"
|
403 |
|
|
}</pre>
|
404 |
60402
|
katerina.i
|
|
405 |
|
|
<p>401 - Client assertion for missing service</p>
|
406 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
407 |
|
|
{
|
408 |
|
|
"error":"invalid_client",
|
409 |
|
|
"error_description":"Could not find client {SERVICE_ID}"
|
410 |
|
|
}</pre>
|
411 |
60402
|
katerina.i
|
|
412 |
|
|
<p>401 - Expired signed jwt</p>
|
413 |
61661
|
katerina.i
|
<pre class="uk-text-left">
|
414 |
|
|
{
|
415 |
|
|
"error":"unauthorized",
|
416 |
|
|
"error_description":"Assertion Token in expired: {EXPIRATION_TIME}"
|
417 |
|
|
}</pre>
|
418 |
60402
|
katerina.i
|
</div> <DO NOT REMOVE>
|
419 |
|
|
</div>
|
420 |
|
|
</div>
|
421 |
|
|
</div>
|
422 |
|
|
<!-- FOOTER STARTS HERE-->
|
423 |
|
|
<!-- <div class="uk-section-primary uk-preserve-color uk-section uk-section-small uk-padding-remove-bottom">
|
424 |
|
|
<div class="uk-container uk-container-expand">
|
425 |
|
|
<div class="uk-grid-large uk-grid-margin-large uk-grid" uk-grid="">
|
426 |
|
|
<div class="uk-width-auto@m uk-light uk-first-column">
|
427 |
|
|
<div id="footer#4" class="newsletter uk-margin uk-margin-remove-bottom uk-text-left uk-panel">
|
428 |
|
|
<h6 class="el-title uk-margin uk-h2">
|
429 |
|
|
Newsletter
|
430 |
|
|
</h6>
|
431 |
|
|
<a target="_blank" href="https://www.openaire.eu/newsletter/view" class="el-link">
|
432 |
|
|
<span class="el-image uk-icon">
|
433 |
|
|
<svg width="30" height="30" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
434 |
|
|
<circle cx="3.12" cy="16.8" r="1.85"></circle>
|
435 |
|
|
<path fill="none" stroke="#000" stroke-width="1.1" d="M1.5,8.2 C1.78,8.18 2.06,8.16 2.35,8.16 C7.57,8.16 11.81,12.37 11.81,17.57 C11.81,17.89 11.79,18.19 11.76,18.5"></path>
|
436 |
|
|
<path fill="none" stroke="#000" stroke-width="1.1" d="M1.5,2.52 C1.78,2.51 2.06,2.5 2.35,2.5 C10.72,2.5 17.5,9.24 17.5,17.57 C17.5,17.89 17.49,18.19 17.47,18.5"></path>
|
437 |
|
|
</svg>
|
438 |
|
|
</span>
|
439 |
|
|
</a>
|
440 |
|
|
</div>
|
441 |
|
|
</div>
|
442 |
|
|
<div class="uk-width-expand@m uk-light">
|
443 |
|
|
<div id="footer#7" class="uk-text-right@m uk-text-center">
|
444 |
|
|
<ul class="uk-subnav uk-margin-remove-bottom uk-subnav-divider uk-flex-right@m uk-flex-center" uk-margin="">
|
445 |
|
|
<li class="el-item uk-first-column">
|
446 |
|
|
<a class="el-link" target="_blank" href="https://www.openaire.eu/about">About</a>
|
447 |
|
|
</li>
|
448 |
|
|
<li class="el-item">
|
449 |
|
|
<a class="el-link" href="http://catalogue.openaire.eu" target="_blank">Services</a>
|
450 |
|
|
</li>
|
451 |
|
|
<li class="el-item">
|
452 |
|
|
<a class="el-link" target="_blank" href="https://www.openaire.eu/support">Support</a>
|
453 |
|
|
</li>
|
454 |
|
|
<li class="el-item">
|
455 |
|
|
<a class="el-link" target="_blank" href="https://www.openaire.eu/news">News</a>
|
456 |
|
|
</li>
|
457 |
|
|
<li class="el-item">
|
458 |
|
|
<a class="el-link" target="_blank" href="https://www.openaire.eu/events">Events</a>
|
459 |
|
|
</li>
|
460 |
|
|
<li class="el-item">
|
461 |
|
|
<a class="el-link" target="_blank" href="https://www.openaire.eu/documents">Documents</a>
|
462 |
|
|
</li>
|
463 |
|
|
</ul>
|
464 |
|
|
</div>
|
465 |
|
|
</div>
|
466 |
|
|
<div class="uk-width-auto@m uk-grid-item-match">
|
467 |
|
|
<div class="uk-tile-primary uk-preserve-color uk-tile uk-padding-remove">
|
468 |
|
|
<div id="footer#9" class="uk-margin uk-text-right@m uk-text-center">
|
469 |
|
|
<a class="el-content uk-button uk-button-default uk-button-small" target="_blank" href="https://www.openaire.eu/contact-us" target="_blank">
|
470 |
|
|
Contact us
|
471 |
|
|
</a>
|
472 |
|
|
</div>
|
473 |
|
|
</div>
|
474 |
|
|
</div>
|
475 |
|
|
</div>
|
476 |
|
|
</div>
|
477 |
|
|
</div>
|
478 |
|
|
<div class="uk-section-primary uk-section uk-section-xsmall uk-padding-remove-bottom">
|
479 |
|
|
<div class="uk-container uk-container-expand">
|
480 |
|
|
<div class="uk-margin-small uk-grid uk-grid-stack" uk-grid="">
|
481 |
|
|
<div class="uk-width-1-1@m uk-first-column">
|
482 |
|
|
<div class="uk-margin-large uk-margin-remove-top uk-text-center@m uk-text-center">
|
483 |
|
|
<img src="assets/Logo_Horizontal_white_small.png" sizes="(min-width: 126px) 126px" data-width="126" data-height="30" class="el-image" alt="OpenAIRE">
|
484 |
|
|
</div>
|
485 |
|
|
</div>
|
486 |
|
|
</div>
|
487 |
|
|
<div class="uk-flex-middle uk-margin-remove-vertical uk-grid" uk-grid="">
|
488 |
|
|
<div class="uk-width-small@m uk-first-column">
|
489 |
|
|
<div id="footer#16" class="uk-margin-medium uk-text-left@m uk-text-center uk-margin-small-bottom">
|
490 |
|
|
<img src="assets/commission.jpg" sizes="(min-width: 50px) 50px" data-width="427" data-height="285" class="el-image" alt="European Commission">
|
491 |
|
|
</div>
|
492 |
|
|
</div>
|
493 |
|
|
<div class="uk-width-expand@m">
|
494 |
|
|
<div id="footer#18" class=" uk-text-small uk-margin uk-margin-remove-bottom uk-text-center uk-text-lead">
|
495 |
|
|
<a href="http://creativecommons.org/licenses/by/4.0/" rel="license">
|
496 |
|
|
<img src="/images/Icons/cc.svg" uk-svg="" hidden="true">
|
497 |
|
|
<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="24" height="24" class=" uk-svg">
|
498 |
|
|
<title></title>
|
499 |
|
|
<g data-name="Creative Commons" id="Creative_Commons">
|
500 |
|
|
<circle cx="12" cy="12" r="11.5" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></circle>
|
501 |
|
|
<path d="M10.87,10a3.5,3.5,0,1,0,0,4" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></path>
|
502 |
|
|
<path d="M18.87,10a3.5,3.5,0,1,0,0,4" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></path>
|
503 |
|
|
</g>
|
504 |
|
|
</svg>
|
505 |
|
|
<img src="/images/Icons/cc-by.svg" uk-svg="" hidden="true">
|
506 |
|
|
<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="24" height="24" class=" uk-svg">
|
507 |
|
|
<title></title>
|
508 |
|
|
<g id="Attribution">
|
509 |
|
|
<g data-name="<Group>" id="_Group_">
|
510 |
|
|
<circle cx="12" cy="5" data-name="<Path>" id="_Path_" r="1.5" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></circle>
|
511 |
|
|
<path d="M12,8a5,5,0,0,0-3.07.71,1,1,0,0,0-.43.83V15H10v5.5h4V15h1.5V9.54a1,1,0,0,0-.43-.83A5,5,0,0,0,12,8Z" data-name="<Path>" id="_Path_2" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></path>
|
512 |
|
|
</g>
|
513 |
|
|
<circle cx="12" cy="12" r="11.5" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></circle>
|
514 |
|
|
</g>
|
515 |
|
|
</svg>
|
516 |
|
|
</a>
|
517 |
|
|
Unless otherwise indicated, all materials created by OpenAIRE are licenced under <a href="http://creativecommons.org/licenses/by/4.0/" rel="license">CC ATTRIBUTION 4.0 INTERNATIONAL LICENSE</a>.
|
518 |
|
|
</div>
|
519 |
|
|
</div>
|
520 |
|
|
<div class="uk-width-small@m">
|
521 |
|
|
<div class="uk-margin uk-margin-remove-top uk-margin-remove-bottom uk-text-right@m uk-text-center">
|
522 |
|
|
<a href="#" uk-totop="" uk-scroll="" class="uk-totop uk-icon">
|
523 |
|
|
</a>
|
524 |
|
|
</div>
|
525 |
|
|
</div>
|
526 |
|
|
</div>
|
527 |
|
|
</div>
|
528 |
|
|
</div> -->
|
529 |
|
|
<div class="uk-section-primary uk-section uk-section-small uk-padding-remove-bottom">
|
530 |
|
|
<div class="uk-container uk-container-expand">
|
531 |
|
|
<div class="uk-container uk-container-expand uk-margin-small">
|
532 |
|
|
<div class="uk-grid-collapse uk-grid" uk-grid="">
|
533 |
|
|
<div id="footer#3" class="uk-width-expand@s uk-first-column">
|
534 |
|
|
<div class="uk-margin-small uk-margin-remove-top uk-text-left@s uk-text-center">
|
535 |
|
|
<img src="assets/Logo_Horizontal_white_small.png" data-width="126" data-height="30" class="el-image" alt="OpenAIRE">
|
536 |
|
|
</div>
|
537 |
|
|
<div id="footer#5" class="uk-margin uk-text-left@s uk-text-center">
|
538 |
|
|
<img src="assets/commission.jpg" sizes="(min-width: 50px) 50px" data-width="427" data-height="285" class="el-image" alt="European Commission">
|
539 |
|
|
</div>
|
540 |
|
|
<div id="footer#6" class="newsletter uk-margin uk-margin-remove-bottom uk-text-left@s uk-text-center uk-panel">
|
541 |
|
|
<h5 class="el-title uk-margin uk-h5">
|
542 |
|
|
Newsletter
|
543 |
|
|
</h5>
|
544 |
|
|
<a target="_blank" href="https://www.openaire.eu/newsletter/view" class="el-link">
|
545 |
|
|
<span class="el-image uk-icon">
|
546 |
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
547 |
|
|
<circle cx="3.12" cy="16.8" r="1.85"></circle>
|
548 |
|
|
<path fill="none" stroke="#000" stroke-width="1.1" d="M1.5,8.2 C1.78,8.18 2.06,8.16 2.35,8.16 C7.57,8.16 11.81,12.37 11.81,17.57 C11.81,17.89 11.79,18.19 11.76,18.5"></path>
|
549 |
|
|
<path fill="none" stroke="#000" stroke-width="1.1" d="M1.5,2.52 C1.78,2.51 2.06,2.5 2.35,2.5 C10.72,2.5 17.5,9.24 17.5,17.57 C17.5,17.89 17.49,18.19 17.47,18.5"></path>
|
550 |
|
|
</svg>
|
551 |
|
|
</span>
|
552 |
|
|
</a>
|
553 |
|
|
</div>
|
554 |
|
|
<div id="footer#7" class="newsletter uk-margin-small uk-margin-remove-top uk-text-left@s uk-text-center uk-panel">
|
555 |
|
|
|
556 |
|
|
<div class="acymailing_module" id="acymailing_module_formAcymailing60611">
|
557 |
|
|
<div class="acymailing_mootoolsbutton" id="acymailing_toggle_formAcymailing60611">
|
558 |
|
|
<p><a class="acymailing_togglemodule" id="acymailing_togglemodule_formAcymailing60611" target="_blank" href="https://www.openaire.eu/newsletter/view">Subscribe</a></p>
|
559 |
|
|
|
560 |
|
|
</div>
|
561 |
|
|
</div>
|
562 |
|
|
</div>
|
563 |
|
|
<div class="uk-margin-small uk-margin-remove-top uk-text-left@s uk-text-center">
|
564 |
|
|
<div class="uk-child-width-auto uk-grid-small uk-flex-left@s uk-flex-center uk-grid" uk-grid="">
|
565 |
|
|
<div class="uk-first-column">
|
566 |
|
|
<a href="http://www.facebook.com/groups/openaire/" target="_blank" class="el-link uk-icon-button uk-icon">
|
567 |
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
568 |
|
|
<path d="M11,10h2.6l0.4-3H11V5.3c0-0.9,0.2-1.5,1.5-1.5H14V1.1c-0.3,0-1-0.1-2.1-0.1C9.6,1,8,2.4,8,5v2H5.5v3H8v8h3V10z"></path>
|
569 |
|
|
</svg>
|
570 |
|
|
</a>
|
571 |
|
|
</div>
|
572 |
|
|
<div>
|
573 |
|
|
<a href="http://www.twitter.com/OpenAIRE_eu" target="_blank" class="el-link uk-icon-button uk-icon">
|
574 |
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
575 |
|
|
<path d="M19,4.74 C18.339,5.029 17.626,5.229 16.881,5.32 C17.644,4.86 18.227,4.139 18.503,3.28 C17.79,3.7 17.001,4.009 16.159,4.17 C15.485,3.45 14.526,3 13.464,3 C11.423,3 9.771,4.66 9.771,6.7 C9.771,6.99 9.804,7.269 9.868,7.539 C6.795,7.38 4.076,5.919 2.254,3.679 C1.936,4.219 1.754,4.86 1.754,5.539 C1.754,6.82 2.405,7.95 3.397,8.61 C2.79,8.589 2.22,8.429 1.723,8.149 L1.723,8.189 C1.723,9.978 2.997,11.478 4.686,11.82 C4.376,11.899 4.049,11.939 3.713,11.939 C3.475,11.939 3.245,11.919 3.018,11.88 C3.49,13.349 4.852,14.419 6.469,14.449 C5.205,15.429 3.612,16.019 1.882,16.019 C1.583,16.019 1.29,16.009 1,15.969 C2.635,17.019 4.576,17.629 6.662,17.629 C13.454,17.629 17.17,12 17.17,7.129 C17.17,6.969 17.166,6.809 17.157,6.649 C17.879,6.129 18.504,5.478 19,4.74"></path>
|
576 |
|
|
</svg>
|
577 |
|
|
</a>
|
578 |
|
|
</div>
|
579 |
|
|
<div>
|
580 |
|
|
<a href="http://www.linkedin.com/groups/OpenAIRE-3893548" target="_blank" class="el-link uk-icon-button uk-icon">
|
581 |
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
582 |
|
|
<path d="M5.77,17.89 L5.77,7.17 L2.21,7.17 L2.21,17.89 L5.77,17.89 L5.77,17.89 Z M3.99,5.71 C5.23,5.71 6.01,4.89 6.01,3.86 C5.99,2.8 5.24,2 4.02,2 C2.8,2 2,2.8 2,3.85 C2,4.88 2.77,5.7 3.97,5.7 L3.99,5.7 L3.99,5.71 L3.99,5.71 Z"></path>
|
583 |
|
|
<path d="M7.75,17.89 L11.31,17.89 L11.31,11.9 C11.31,11.58 11.33,11.26 11.43,11.03 C11.69,10.39 12.27,9.73 13.26,9.73 C14.55,9.73 15.06,10.71 15.06,12.15 L15.06,17.89 L18.62,17.89 L18.62,11.74 C18.62,8.45 16.86,6.92 14.52,6.92 C12.6,6.92 11.75,7.99 11.28,8.73 L11.3,8.73 L11.3,7.17 L7.75,7.17 C7.79,8.17 7.75,17.89 7.75,17.89 L7.75,17.89 L7.75,17.89 Z"></path>
|
584 |
|
|
</svg>
|
585 |
|
|
</a>
|
586 |
|
|
</div>
|
587 |
|
|
<div>
|
588 |
|
|
<a href="http://www.slideshare.net/OpenAIRE_eu" target="_blank" class="el-link uk-icon-button uk-icon">
|
589 |
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
590 |
|
|
<line fill="none" stroke="#000" stroke-width="1.1" x1="13.4" y1="14" x2="6.3" y2="10.7"></line>
|
591 |
|
|
<line fill="none" stroke="#000" stroke-width="1.1" x1="13.5" y1="5.5" x2="6.5" y2="8.8"></line>
|
592 |
|
|
<circle fill="none" stroke="#000" stroke-width="1.1" cx="15.5" cy="4.6" r="2.3"></circle>
|
593 |
|
|
<circle fill="none" stroke="#000" stroke-width="1.1" cx="15.5" cy="14.8" r="2.3"></circle>
|
594 |
|
|
<circle fill="none" stroke="#000" stroke-width="1.1" cx="4.5" cy="9.8" r="2.3"></circle>
|
595 |
|
|
</svg>
|
596 |
|
|
</a>
|
597 |
|
|
</div>
|
598 |
|
|
<div>
|
599 |
|
|
<a href="https://www.youtube.com/channel/UChFYqizc-S6asNjQSoWuwjw" target="_blank" class="el-link uk-icon-button uk-icon">
|
600 |
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
601 |
|
|
<path d="M15,4.1c1,0.1,2.3,0,3,0.8c0.8,0.8,0.9,2.1,0.9,3.1C19,9.2,19,10.9,19,12c-0.1,1.1,0,2.4-0.5,3.4c-0.5,1.1-1.4,1.5-2.5,1.6 c-1.2,0.1-8.6,0.1-11,0c-1.1-0.1-2.4-0.1-3.2-1c-0.7-0.8-0.7-2-0.8-3C1,11.8,1,10.1,1,8.9c0-1.1,0-2.4,0.5-3.4C2,4.5,3,4.3,4.1,4.2 C5.3,4.1,12.6,4,15,4.1z M8,7.5v6l5.5-3L8,7.5z"></path>
|
602 |
|
|
</svg>
|
603 |
|
|
</a>
|
604 |
|
|
</div>
|
605 |
|
|
</div>
|
606 |
|
|
</div>
|
607 |
|
|
</div>
|
608 |
|
|
<div id="footer#9" class="uk-width-expand@s">
|
609 |
|
|
<div id="footer#10" class="uk-width-medium uk-text-left@s uk-text-center uk-panel">
|
610 |
|
|
<h3 class="el-title uk-h6">Dashboards</h3>
|
611 |
|
|
<ul class="uk-nav uk-nav-default uk-nav-parent-icon uk-nav-accordion" uk-nav="">
|
612 |
|
|
<li><a href="https://explore.openaire.eu" target="_blank">Explore</a></li>
|
613 |
|
|
<li><a href="https://provide.openaire.eu" target="_blank">Provide</a></li>
|
614 |
|
|
<li><a href="https://connect.openaire.eu/" target="_blank">Connect</a></li>
|
615 |
|
|
<li><a href="https://monitor.openaire.eu" target="_blank">Monitor</a></li>
|
616 |
|
|
<li><a href="https://develop.openaire.eu" target="_blank">Develop</a></li>
|
617 |
|
|
</ul>
|
618 |
|
|
</div>
|
619 |
|
|
</div>
|
620 |
|
|
<div id="footer#11" class="uk-width-expand@s">
|
621 |
|
|
<div id="footer#12" class="uk-width-medium uk-text-left@s uk-text-center uk-panel">
|
622 |
|
|
<h3 class="el-title uk-h6">Support</h3>
|
623 |
|
|
<ul class="uk-nav uk-nav-default uk-nav-parent-icon uk-nav-accordion" uk-nav="">
|
624 |
|
|
<li><a target="_blank" href="https://www.openaire.eu/guides">Guides</a></li>
|
625 |
|
|
<li><a target="_blank" href="https://www.openaire.eu/faqs">FAQs</a></li>
|
626 |
|
|
<li><a target="_blank" href="https://www.openaire.eu/frontpage/webinars">Webinars</a></li>
|
627 |
|
|
<li><a target="_blank" href="https://www.openaire.eu/support/helpdesk">Ask a question</a></li>
|
628 |
|
|
</ul>
|
629 |
|
|
</div>
|
630 |
|
|
</div>
|
631 |
|
|
<div id="footer#13" class="uk-width-expand@s">
|
632 |
|
|
<div id="footer#14" class="uk-width-medium uk-text-left@s uk-text-center uk-panel">
|
633 |
|
|
<h3 class="el-title uk-h6">Updates</h3>
|
634 |
|
|
<ul class="uk-nav uk-nav-default uk-nav-parent-icon uk-nav-accordion" uk-nav="">
|
635 |
|
|
<li><a target="_blank" href="https://www.openaire.eu/news/">News</a></li>
|
636 |
|
|
<li><a target="_blank" href="https://www.openaire.eu/events">Events</a></li>
|
637 |
|
|
<li><a target="_blank" href="https://www.openaire.eu/blogs/magazine">Blogs</a></li>
|
638 |
|
|
<li><a target="_blank" href="https://www.openaire.eu/documents">Documents</a></li>
|
639 |
|
|
</ul>
|
640 |
|
|
</div>
|
641 |
|
|
</div>
|
642 |
|
|
</div>
|
643 |
|
|
</div>
|
644 |
|
|
</div>
|
645 |
|
|
</div>
|
646 |
|
|
<div class="uk-section-primary uk-section uk-section-xsmall">
|
647 |
|
|
<div class="uk-container">
|
648 |
|
|
<div class="uk-grid-margin uk-grid uk-grid-stack" uk-grid="">
|
649 |
|
|
<div class="uk-width-expand@m">
|
650 |
|
|
</div>
|
651 |
|
|
</div>
|
652 |
|
|
</div>
|
653 |
|
|
</div>
|
654 |
|
|
<div class="uk-section-primary uk-section uk-section-xsmall">
|
655 |
|
|
<div class="uk-container uk-container-expand">
|
656 |
|
|
<div class="uk-grid-margin uk-grid" uk-grid="">
|
657 |
|
|
<div class="uk-width-small@m uk-first-column">
|
658 |
|
|
</div>
|
659 |
|
|
<div class="uk-width-expand@m">
|
660 |
|
|
<div id="footer#22" class=" uk-text-small uk-margin uk-margin-remove-bottom uk-text-center@m uk-text-center uk-text-lead">
|
661 |
|
|
<a href="http://creativecommons.org/licenses/by/4.0/" rel="license">
|
662 |
|
|
<img src="/images/Icons/cc.svg" uk-svg="" hidden="true">
|
663 |
|
|
<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="24" height="24" class=" uk-svg">
|
664 |
|
|
<title></title>
|
665 |
|
|
<g data-name="Creative Commons" id="Creative_Commons">
|
666 |
|
|
<circle cx="12" cy="12" r="11.5" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></circle>
|
667 |
|
|
<path d="M10.87,10a3.5,3.5,0,1,0,0,4" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></path>
|
668 |
|
|
<path d="M18.87,10a3.5,3.5,0,1,0,0,4" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></path>
|
669 |
|
|
</g>
|
670 |
|
|
</svg>
|
671 |
|
|
<img src="/images/Icons/cc-by.svg" uk-svg="" hidden="true">
|
672 |
|
|
<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="24" height="24" class=" uk-svg">
|
673 |
|
|
<title></title>
|
674 |
|
|
<g id="Attribution">
|
675 |
|
|
<g data-name="<Group>" id="_Group_">
|
676 |
|
|
<circle cx="12" cy="5" data-name="<Path>" id="_Path_" r="1.5" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></circle>
|
677 |
|
|
<path d="M12,8a5,5,0,0,0-3.07.71,1,1,0,0,0-.43.83V15H10v5.5h4V15h1.5V9.54a1,1,0,0,0-.43-.83A5,5,0,0,0,12,8Z" data-name="<Path>" id="_Path_2" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></path>
|
678 |
|
|
</g>
|
679 |
|
|
<circle cx="12" cy="12" r="11.5" style="fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round"></circle>
|
680 |
|
|
</g>
|
681 |
|
|
</svg>
|
682 |
|
|
</a>
|
683 |
|
|
Unless otherwise indicated, all materials created by OpenAIRE are licenced under <a href="http://creativecommons.org/licenses/by/4.0/" rel="license">CC ATTRIBUTION 4.0 INTERNATIONAL LICENSE</a>.
|
684 |
|
|
</div>
|
685 |
|
|
</div>
|
686 |
|
|
<div class="uk-width-small@m">
|
687 |
|
|
<div class="uk-margin uk-margin-remove-top uk-margin-remove-bottom uk-text-right@m uk-text-center">
|
688 |
|
|
<a href="#" uk-totop="" uk-scroll="" class="uk-totop uk-icon">
|
689 |
|
|
|
690 |
|
|
</a>
|
691 |
|
|
</div>
|
692 |
|
|
</div>
|
693 |
|
|
</div>
|
694 |
|
|
</div>
|
695 |
|
|
</div>
|
696 |
|
|
<!--/div-->
|
697 |
|
|
</div>
|
698 |
|
|
</body>
|
699 |
|
|
</html>
|