Api ReferenceAPI Overview

API Overview

The Bullseye REST API provides programmatic access to visitor identification data, companies, organizations, lists, ICP configurations, integrations, and billing. Use the API to build custom workflows, sync data with internal tools, or automate common operations.

Plan Requirement

Direct API access is available on Scale plans and above. If you are on Starter, Growth, or Free Trial, upgrade to Scale to use the API.

Base URL

All API requests use the following base URL:

https://api.app.bullseye.so/api/v1

Authentication

Authenticate API requests using an Organization API Key. Include your key in the X-API-Key header:

X-API-Key: bsk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Create API keys in the Bullseye dashboard under Organization Settings > API Keys. See Authentication for full details on scopes, rate limiting, and security best practices.

Response Format

All responses are returned as JSON. Successful responses use standard HTTP status codes (200, 201, 202, 204). Error responses include a structured body with the following shape:

FieldTypeDescription
codestringMachine-readable error code (e.g., organization_not_found)
messagestringHuman-readable error description
detailsobjectOptional additional context

Error Handling

StatusDescription
400Bad Request – Invalid request parameters or body
401Unauthorized – Missing or invalid API key
404Not Found – Resource does not exist
422Unprocessable Entity – Validation failed or business rule violated
500Internal Server Error – Server-side error

Pagination

Endpoints that return paginated data use the following query parameters:

ParameterTypeDescription
pageintegerPage number (1-based). Default: 1
limitintegerNumber of items per page. Default varies by endpoint

Paginated responses typically include a data array and metadata such as total or page for constructing navigation.

Rate Limits

API key-authenticated requests are limited to 1,000 requests per minute per key. Rate limit information is included in response headers:

HeaderDescription
X-RateLimit-LimitMaximum requests per window
X-RateLimit-RemainingRemaining requests in the current window
X-RateLimit-ResetUnix timestamp when the window resets

When the limit is exceeded, the API returns 429 Too Many Requests with a Retry-After header. Implement exponential backoff when handling rate limit errors.

Endpoint Groups

SectionDescription
AuthenticationAPI key authentication, scopes, and rate limiting
API KeysCreate, list, and revoke Organization API keys
VisitorsVisitor tracking config, individual visitor details, installation scripts, phone number search, contact count
CompaniesCompany statistics, company visitors, chart data, CSV download
OrganizationsCreate, list, get, update organizations; team members; max overages
ListsCreate, list, get, refresh, and delete saved lists
ICP ConfigsIdeal Customer Profile configuration management
IntegrationsIntegration flows, token management, account selection
PaymentsSubscription plans, checkout, update, cancel, customer portal
WebhooksEvent payloads, signature verification, retry behavior