Public API
Neptune CRM Location: Profile > Authentication
NeptuneCRM provides a Public API endpoint for Zapier-style integrations so you can pull task updates for the currently authenticated user.
Overview
- API access uses an API key in the
x-api-keyheader - API keys are generated per user from that user’s profile
- The current public endpoint is
getTasks - The endpoint returns tasks for the user who owns the API key
- Tasks are sorted by
updated_atin descending order (newest first)
Generate Your API Key
To generate (or rotate) your API key:
- Go to Profile > Authentication
- Find Zapier API Key
- Click Generate new key
- Copy the key immediately and store it securely
Important:
- Neptune only shows the raw key once at generation time
- Generating a new key replaces your previous key
getTasks Endpoint
Endpoint details
- URL:
https://<your-region>-<your-project-id>.cloudfunctions.net/getTasks - Method:
GET - Auth header:
x-api-key: <your-api-key> - Query params: None
What it returns
The response is a JSON array of tasks assigned to the user who owns the API key. Each object includes:
| Field | Type | Description |
|---|---|---|
original_id | string | Task ID in NeptuneCRM |
id | string | Change-aware ID (<taskId>-<updatedAtMillis>) for polling |
title | string | Task title |
description | string | Task description, with Neptune task ID appended |
start | string | Task start timestamp (ISO 8601) |
end | string | Task end timestamp (ISO 8601) |
all_day | boolean | Whether task is all-day |
created_at | string | Created timestamp (ISO 8601) |
updated_at | string | Last updated timestamp (ISO 8601) |
deleted_at | string | null | Deletion timestamp, or null if active |
Example request
curl -X GET "https://<your-region>-<your-project-id>.cloudfunctions.net/getTasks" \
-H "x-api-key: <your-api-key>"
Example response
[
{
"original_id": "task123",
"id": "task123-1735653600000",
"title": "Install Pool",
"description": "Install a new pool for John Doe. (NeptuneCRM Task ID: task123)",
"start": "2025-01-01T09:00:00.000Z",
"end": "2025-01-01T11:00:00.000Z",
"all_day": false,
"created_at": "2024-12-30T02:15:00.000Z",
"updated_at": "2025-01-01T03:20:00.000Z",
"deleted_at": null
}
]
Error responses
401ifx-api-keyis missing or invalid500for unexpected server errors
Integration notes
- Use
idas your polling identifier. It changes when a task is updated. - Keep your API key in your integration’s secret store.
- If your key is exposed, rotate it from your profile and update downstream integrations.