Account
Account
Your plan, its daily allowance and what is left of it today
GET
/
api
/
user
curl "https://www.osintcat.net/api/user" \
-H "X-API-KEY: YOUR_API_KEY"
import requests
url = "https://www.osintcat.net/api/user"
headers = {"X-API-KEY": "YOUR_API_KEY"}
response = requests.get(url, headers=headers, timeout=60)
print(response.status_code, response.json())
const response = await fetch("https://www.osintcat.net/api/user", {
headers: { "X-API-KEY": "YOUR_API_KEY" },
});
console.log(response.status, await response.json());
<?php
$curl = curl_init("https://www.osintcat.net/api/user");
curl_setopt_array($curl, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["X-API-KEY: YOUR_API_KEY"],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_RESPONSE_CODE);
curl_close($curl);
echo $status . " " . $response;
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://www.osintcat.net/api/user", nil)
req.Header.Set("X-API-KEY", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(resp.StatusCode, string(body))
}
{
"account_info": {
"username": "analyst",
"email": "analyst@example.com",
"plan": "Investigator",
"plan_expires": "2026-11-05T09:12:44"
},
"usage": {
"request_limit_daily": 750,
"requests_remaining_today": 742,
"api_access": true
}
}
Returns the account the API key belongs to: plan, plan expiry, and how many lookups are left today.
See Errors for the responses every endpoint can return.
Headers
string
required
Your API key.
Usage
Does not count as a lookup. Needs theaccount:read scope (keys with all scopes have it).
Example request
curl "https://www.osintcat.net/api/user" \
-H "X-API-KEY: YOUR_API_KEY"
import requests
url = "https://www.osintcat.net/api/user"
headers = {"X-API-KEY": "YOUR_API_KEY"}
response = requests.get(url, headers=headers, timeout=60)
print(response.status_code, response.json())
const response = await fetch("https://www.osintcat.net/api/user", {
headers: { "X-API-KEY": "YOUR_API_KEY" },
});
console.log(response.status, await response.json());
<?php
$curl = curl_init("https://www.osintcat.net/api/user");
curl_setopt_array($curl, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["X-API-KEY: YOUR_API_KEY"],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_RESPONSE_CODE);
curl_close($curl);
echo $status . " " . $response;
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://www.osintcat.net/api/user", nil)
req.Header.Set("X-API-KEY", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(resp.StatusCode, string(body))
}
SDK example
The same request with the official SDKs. Each one reads your key fromOSINTCAT_API_KEY.
import { OsintCatClient } from "osintcat";
const client = new OsintCatClient(); // reads OSINTCAT_API_KEY
const result = await client.account.get();
console.log(result);
from osintcat import OsintCat
client = OsintCat() # reads OSINTCAT_API_KEY
result = client.account.get()
print(result)
package main
import (
"context"
"fmt"
osintcatclient "github.com/OsintCatHQ/osintcat-go/client"
)
func main() {
client := osintcatclient.NewClient() // reads OSINTCAT_API_KEY
result, err := client.Account.Get(context.Background())
if err != nil {
panic(err)
}
fmt.Printf("%+v\n", result)
}
<?php
require __DIR__ . '/vendor/autoload.php';
use OsintCat\OsintCatClient;
$client = new OsintCatClient(); // reads OSINTCAT_API_KEY
$result = $client->account->get();
echo json_encode($result, JSON_PRETTY_PRINT), PHP_EOL;
Response
object
object
{
"account_info": {
"username": "analyst",
"email": "analyst@example.com",
"plan": "Investigator",
"plan_expires": "2026-11-05T09:12:44"
},
"usage": {
"request_limit_daily": 750,
"requests_remaining_today": 742,
"api_access": true
}
}
Errors
| Status | Error | When |
|---|---|---|
| 401 | API key required | No X-API-KEY header. |
| 403 | Invalid API key | The key does not exist or was revoked. |
| 403 | insufficient_scope | The key lacks the account:read scope. |
Was this page helpful?
⌘I
curl "https://www.osintcat.net/api/user" \
-H "X-API-KEY: YOUR_API_KEY"
import requests
url = "https://www.osintcat.net/api/user"
headers = {"X-API-KEY": "YOUR_API_KEY"}
response = requests.get(url, headers=headers, timeout=60)
print(response.status_code, response.json())
const response = await fetch("https://www.osintcat.net/api/user", {
headers: { "X-API-KEY": "YOUR_API_KEY" },
});
console.log(response.status, await response.json());
<?php
$curl = curl_init("https://www.osintcat.net/api/user");
curl_setopt_array($curl, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["X-API-KEY: YOUR_API_KEY"],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_RESPONSE_CODE);
curl_close($curl);
echo $status . " " . $response;
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://www.osintcat.net/api/user", nil)
req.Header.Set("X-API-KEY", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(resp.StatusCode, string(body))
}
{
"account_info": {
"username": "analyst",
"email": "analyst@example.com",
"plan": "Investigator",
"plan_expires": "2026-11-05T09:12:44"
},
"usage": {
"request_limit_daily": 750,
"requests_remaining_today": 742,
"api_access": true
}
}
