Skip to main content

Overview

The Nomic API lets you upload files, parse documents, search an index of international codes and standards, and manage your organization programmatically. All endpoints are available under a single versioned base path.

Base URL

https://<your-domain>.nomic.ai/api/v0

Replace <your-domain> with your organization's Nomic domain.

Authentication

Authenticate every request with an API key in the Authorization header:

Authorization: Bearer npk_...

Create and manage API keys in the Developer Console at /developer on your Nomic instance. Each key is scoped to a specific user, and usage is attributed to that user's account.

Scopes

API keys are granted a set of scopes that control which endpoints they can access. When creating a key you choose which scopes to include.

Developer scopes

ScopeGrants access to
developer:filesUpload files
developer:parseSubmit and poll parse jobs
developer:agentSearch codes and standards

Admin scopes

Admin scopes require the key's owner to be an organization admin.

ScopeGrants access to
admin:users:readList and get user details
admin:users:writeDisable and enable user accounts
admin:api-keys:readList API keys across the organization
admin:api-keys:writeRevoke API keys
admin:audit:readQuery audit logs

Errors

All error responses return a JSON body with an error field:

{
"error": "File version not found"
}

Status codes

CodeMeaning
400Bad request — invalid or missing parameters
401Missing or invalid API key
403API key lacks the required scope
404Resource not found or not accessible
413Payload too large (file upload exceeds 500 MB)
422Schema validation failed
429Rate limit exceeded — see Rate limits
500Internal server error
501Feature unavailable on this instance
503Dependent service not configured

Pagination

List endpoints use cursor-based pagination. Pass limit to control page size and cursor to fetch the next page.

curl "https://<your-domain>.nomic.ai/api/v0/users?limit=25" \
-H "Authorization: Bearer $NOMIC_API_KEY"

The response includes:

FieldTypeDescription
dataarrayItems for the current page
nextCursorstring or absentPass as cursor to fetch the next page. Absent when there are no more results.
totalCountnumberTotal matching items across all pages

Stability

All v0 endpoints are currently experimental. Request and response shapes may change between releases. We recommend testing against your integration when upgrading.