API Reference
CSV Getter provides a RESTful API for accessing your export endpoints and programmatically creating new ones.
Authentication
CSV Getter uses two authentication mechanisms depending on the context:
1. Endpoint Auth (Bearer Token)
For endpoints with authentication enabled, include the token you set in the dashboard:
Authorization: Bearer your-endpoint-tokenThis protects individual endpoint URLs from unauthorized access.
2. API Key
For programmatic endpoint creation (via POST /urls/create), use your API key. Find it in your dashboard under account settings.
Authorization: Bearer your-api-keyEndpoints
GET / — Health Check
Returns server status.
Request:
curl https://api.csvgetter.com/Response (200):
GET /<endpoint_id> — Fetch Export Data
The primary endpoint. Returns your data in the configured (or overridden) format.
Request:
With URL parameters:
With Bearer auth (if enabled on the endpoint):
Response varies by format. Default is CSV:
JSON example (?type=json_records):
Supported URL parameters: See URL Parameters.
GET /files/<endpoint_id> — Fetch Export Data (Alternate Path)
Identical behavior to GET /<endpoint_id>. Provided for backward compatibility.
GET /proxy/<proxy_id> — Proxy Endpoint
Accesses an endpoint through a proxy configuration. Useful for advanced routing setups.
Request:
Error Responses:
404
URL not found in database.
401
Auth-related errors (see below)
URL Parameters Reference
All GET export endpoints support these query parameters:
type
string
Output format override (json_records, xml, html_table, etc.)
sql
string
SQL query to filter/transform data
nest_json
string
Wrap JSON output in a named key
filename_timestamp
string
Add timestamp to filename (true/end/start)
extract_json_property
string
Extract a specific property from linked records
all_fields
string
Include all fields (true) — requires custom parameter setup
show_wait_page
string
Show a loading page before redirecting (true)
save_to_gdrive
string
Save output to Google Drive (true)
save_to_gsheets
string
Save output to Google Sheets (true)
Response Formats
CSV (Default)
JSON (all json_* types)
XML
HTML (html_table, dynamic_table, excel_web_query)
Error Codes
All errors return a JSON body with an error or message field:
400
Could not validate sql.
Invalid SQL query syntax
400
Custom parameter 'X' is not enabled for this object.
Using a custom parameter not enabled for this endpoint
401
Authorization header is required
Auth-enabled endpoint, no header provided
401
Invalid Authorization header format
Header doesn't start with Bearer
401
Invalid Authorization header
Wrong Bearer token
401
AUTH_HEADER_MISSING
Missing auth header (proxy route)
401
INVALID_AUTH_HEADER
Wrong auth header (proxy route)
403
Not enough credits. Login at csvgetter.com to purchase.
Credit balance is zero
403
User ID not found
User account issue
403
USER_BLOCKED
Account has been blocked
404
Object not found
Endpoint ID doesn't exist
404
URL not found in database.
Proxy ID doesn't exist
409
...Airtable data structure may have changed...
Airtable field structure changed since endpoint was created
423
Failed to authenticate with export platform.
Airtable/Notion token expired or revoked
429
(varies)
Airtable's own API rate limit exceeded
500
Dataframe could not be retrieved
Server error fetching data
Rate Guidance
CSV Getter does not impose its own rate limits, but:
Airtable limits API requests to 5 requests per second per base. If your endpoint hits this, you'll get a 429 error.
Notion has its own rate limits.
Each successful, non-sample export uses 1 credit.
For high-frequency use cases, consider caching the response on your end or using scheduled jobs instead.
Code Examples
JavaScript (Node.js / Browser)
Python
cURL
Next Steps
URL Parameters — Detailed reference for every parameter.
The SQL Parameter — Full SQL query guide with examples.
Troubleshooting — Solutions for every error code.
Last updated