Authentication
Every authenticated FindIP API request requires your API key in the X-API-Key header.
API key format
API keys follow the format psk_live_xxxxxxxxxxxxxxxx. API keys are issued on request — contact us to get one.
Important
Keep your API key secure. Don't expose it in client-side code, public repositories, or browser requests. Use server-side env vars or a server-side proxy.
Sending authenticated requests
Include your API key in the X-API-Key header (no Bearer prefix):
curl -X POST https://api.findip.ai/api/v1/search/semantic \
-H "X-API-Key: psk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{"query": "semiconductor etching process", "top_k": 5}'import requests
response = requests.post(
"https://api.findip.ai/api/v1/search/semantic",
headers={
"X-API-Key": "psk_live_your_api_key",
"Content-Type": "application/json",
},
json={
"query": "semiconductor etching process",
"top_k": 5,
},
)
data = response.json()const response = await fetch("https://api.findip.ai/api/v1/search/semantic", {
method: "POST",
headers: {
"X-API-Key": "psk_live_your_api_key",
"Content-Type": "application/json",
},
body: JSON.stringify({
query: "semiconductor etching process",
top_k: 5,
}),
});
const data = await response.json();Public endpoints
GET /api/v1/drawings/..., GET /api/v1/stats/coverage, and the health checks do not require the X-API-Key header.
Rate limiting
Search calls deduct from your monthly subscription quota. Detail / drawings / document fetches are not counted. When the quota is exceeded, the API returns 429 Too Many Requests. A 60-requests-per-minute rate limit applies separately to all calls.
| Plan | Monthly search quota |
|---|---|
| Free | 30 / month |
| Basic | 300 / month |
| Pro | 1,000 / month |
| Enterprise | Custom |
Key management
You can manage API keys easily from the dashboard:
- Issue multiple keys per environment (dev, production)
- Immediately revoke leaked keys
- Monitor per-key usage and request logs