+
+function getInfo($baseUrl, $secret) {
+ $token = generateToken($secret);
+ $endpoint = rtrim($baseUrl, '/') . '/api/v1/info';
+
+ $headers = [
+ 'Content-Type: text/plain; charset=UTF-8',
+ 'Authorization: Bearer ' . $token,
+ ];
+
+ $ch = curl_init($endpoint);
+ curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
+ curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
+ curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
+ curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
+
+ $result = curl_exec($ch);
+ curl_close($ch);
+
+ return $result;
+}
+
+var_dump(getInfo($baseUrl, $secret));
+```
+
+## Implementation
+
+### Authentication
+
+- All requests to Shaarli's API must include a **JWT token** to verify their authenticity.
+- This token must be included as an HTTP header called `Authentication: Bearer <jwt token>`.
+- JWT tokens are composed by three parts, separated by a dot `.` and encoded in base64: