Quickstart

A first call in Python, TypeScript, or cURL
View as Markdown

Grab your API key first. Every request authenticates with it as a bearer token against https://api.nativeport.ai, and each provider is addressed through its own native API.

1

Get your key

Create an account at accounts.nativeport.ai/sign-up; the dashboard mints a Default key automatically — copy it from there.

Your first request

The example below runs a Google search via Serper. Swap YOUR_API_KEY for your key:

import requests
response = requests.post(
"https://api.nativeport.ai/serper",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={"q": "apple inc"},
)
print(response.json())

What comes back is Serper’s own JSON — including the organic results array — byte-for-byte as the provider produced it.

Prefer an environment variable to a hardcoded key. A 401 means the token was absent or not recognized — Authentication has the details.

Calling a model? Consider the unified endpoint

If you’re after chat inference specifically, /inference/v1/chat/completions gives you one OpenAI Chat Completions-shaped contract over OpenAI, Anthropic, Grok, and Hugging Face at once — swap a model string instead of rewriting the call per provider. The individual routes below remain the way to reach each provider’s full native surface.

Every other provider works the same way

Same base URL, same bearer header; only the path and payload change. One representative call for each:

ToolExample call
ApifyPOST /apify/v2/acts/{actorId}/run-sync-get-dataset-items — run an actor
Brave SearchGET /brave/web/search?q=coffee — Brave web results
Bright DataPOST /brightdata — Web Unlocker / SERP request
BrowserbasePOST /browserbase/v1/sessions — create a browser session
BrowserlessPOST /browserless/screenshot — screenshot a page
CrawlbaseGET /crawlbase?url=https://example.com — crawl a page
DataForSEOPOST /dataforseo/v3/serp/google/organic/live/advanced — live SERP
ElevenLabsPOST /elevenlabs/v1/text-to-speech/{voice_id} — text to speech
ExaPOST /exa/search — neural search
FirecrawlPOST /firecrawl/v2/scrape — scrape a URL to markdown
Fish AudioPOST /fishaudio/v1/tts — text to speech
JinaGET /jina/reader/https://example.com — read a URL as markdown
LinkupPOST /linkup/search — AI search
LlamaParsePOST /llamaparse/v2/parse — start a document parse, then poll it
MistralPOST /mistral/v1/ocr — read selected PDF pages as markdown
OxylabsPOST /oxylabs — Web Scraper API (realtime)
ParallelPOST /parallel/search — AI search
ScraperAPIGET /scraperapi?url=https://example.com — scrape a page
ScrapflyGET /scrapfly?url=https://example.com — scrape a page
ScrapingBeeGET /scrapingbee?url=https://example.com — scrape a page
SearchAPI.ioGET /searchapi?engine=google&q=coffee — search results
SerpApiGET /serpapi?engine=google&q=coffee — search results
SerperPOST /serper — Google search, images, news, and more
SpiderPOST /spider/scrape — scrape a URL
SteelPOST /steel/scrape — scrape a page
TavilyPOST /tavily/search — AI web search
You.comGET /youcom/search?query=coffee — search results
ZenRowsGET /zenrows?url=https://example.com — scrape a page
ZytePOST /zyte — scrape / extract

Full endpoint lists and parameters live on each provider’s page.