Verify API Key
curl --request GET \
--url https://api.nolano.ai/verify \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.nolano.ai/verify"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.nolano.ai/verify', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.nolano.ai/verify",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.nolano.ai/verify"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.nolano.ai/verify")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nolano.ai/verify")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "API key is valid and working correctly",
"timestamp": "2025-01-17T00:20:24.435Z",
"apiKey": {
"permissions": [
"read"
]
},
"rateLimit": {
"limit": "1000",
"remaining": "999",
"resetTime": "1755044460000"
}
}{
"error": {
"code": "INVALID_REQUEST",
"message": "Validation failed for one or more fields",
"details": {
"field": "forecast_horizon",
"issue": "Must be between 1 and 100",
"provided": 150
}
}
}Authentication
Verify API Key
Verify that your API key is valid and check rate limit status
GET
/
verify
Verify API Key
curl --request GET \
--url https://api.nolano.ai/verify \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.nolano.ai/verify"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.nolano.ai/verify', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.nolano.ai/verify",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.nolano.ai/verify"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.nolano.ai/verify")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nolano.ai/verify")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "API key is valid and working correctly",
"timestamp": "2025-01-17T00:20:24.435Z",
"apiKey": {
"permissions": [
"read"
]
},
"rateLimit": {
"limit": "1000",
"remaining": "999",
"resetTime": "1755044460000"
}
}{
"error": {
"code": "INVALID_REQUEST",
"message": "Validation failed for one or more fields",
"details": {
"field": "forecast_horizon",
"issue": "Must be between 1 and 100",
"provided": 150
}
}
}Use this endpoint to verify that your API key is valid and check your current rate limit status. This is useful for debugging authentication issues and monitoring your API usage.
Use this information to avoid hitting rate limits in your applications.
Quick Test
The verify endpoint is perfect for:- Testing new API keys
- Checking rate limit status
- Debugging authentication issues
- Monitoring API permissions
Example Usage
curl -X GET "https://api.nolano.ai/verify" \
-H "Authorization: Bearer ak_your_api_key_here" \
-H "Content-Type: application/json"
import requests
response = requests.get(
"https://api.nolano.ai/verify",
headers={
"Authorization": "Bearer ak_your_api_key_here",
"Content-Type": "application/json"
}
)
if response.status_code == 200:
data = response.json()
print(f"✅ API key is valid")
print(f"Permissions: {data['apiKey']['permissions']}")
print(f"Rate limit: {data['rateLimit']['remaining']}/{data['rateLimit']['limit']}")
else:
print(f"❌ Authentication failed: {response.status_code}")
print(response.json())
const response = await fetch('https://api.nolano.ai/verify', {
headers: {
'Authorization': 'Bearer ak_your_api_key_here',
'Content-Type': 'application/json'
}
});
const data = await response.json();
if (response.ok) {
console.log('✅ API key is valid');
console.log('Permissions:', data.apiKey.permissions);
console.log(`Rate limit: ${data.rateLimit.remaining}/${data.rateLimit.limit}`);
} else {
console.log('❌ Authentication failed:', response.status);
console.log(data);
}
Response Fields
The verify endpoint returns detailed information about your API key:- success: Boolean indicating if the key is valid
- message: Human-readable status message
- timestamp: Server timestamp of the verification
- apiKey.permissions: Array of permissions for your key
- rateLimit: Current rate limit status including remaining requests
Rate Limit Information
The response includes your current rate limit status:Example Rate Limit Response
{
"rateLimit": {
"limit": "1000",
"remaining": "999",
"resetTime": "1755044460000"
}
}
Authorizations
API key authentication. Include your API key with 'Bearer' prefix.
Response
API key is valid
Whether the API key is valid
Example:
true
Human-readable status message
Example:
"API key is valid and working correctly"
Server timestamp
Example:
"2025-01-17T00:20:24.435Z"
Show child attributes
Show child attributes
Show child attributes
Show child attributes

