Skip to main content

Platform Management

This page covers the dashboard-management surface — endpoints used primarily by the CronDB dashboard UI rather than by external API consumers. They're documented here as a reference; if you're building a third-party integration, the Search, Enrichment, Sequences, and Workflows endpoints are usually what you want.

tip

Every endpoint on this page requires Authorization: Bearer cdb_your_api_key and respects the standard plan-tier gating. CRM, teams, and reports are Pro+; analytics tracking is open to all plans.


CRM (/v1/crm/*)

Native pipeline management — kanban board with stages, deals, contacts, and activities. Used by the dashboard CRM page; can also be driven via API for custom rollups.

Stages

MethodPathDescription
GET/v1/crm/stagesList pipeline stages in order.
POST/v1/crm/stagesCreate a new stage. Body: {name, color, order}.
PATCH/v1/crm/stages/{stage_id}Rename / recolor / reorder one stage.
DELETE/v1/crm/stages/{stage_id}Delete. Deals in the stage move to the first remaining stage.
POST/v1/crm/stages/reorderBulk-reorder. Body: {stage_ids: [...]} in target order.

Deals

MethodPathDescription
POST/v1/crm/dealsCreate a deal. Body: {name, domain, value_usd, stage_id, owner_user_id}.
GET/v1/crm/dealsList deals; query params: stage_id, owner_user_id, min_value, q.
GET/v1/crm/deals/kanbanKanban view — stages with their deals nested.
GET/v1/crm/deals/{deal_id}Get one deal with contacts + activities.
PATCH/v1/crm/deals/{deal_id}Update fields.
PATCH/v1/crm/deals/{deal_id}/moveMove to a different stage. Body: {stage_id}. Stamps a stage_changed activity.
DELETE/v1/crm/deals/{deal_id}Delete.
GET/v1/crm/deals/exportCSV export of all deals with current stages.

Contacts on a deal

MethodPathDescription
GET/v1/crm/deals/{deal_id}/contactsList contacts attached to a deal.
POST/v1/crm/deals/{deal_id}/contactsAttach a contact.
PATCH/v1/crm/contacts/{contact_id}Update a contact.
DELETE/v1/crm/contacts/{contact_id}Delete.

Activities

MethodPathDescription
GET/v1/crm/deals/{deal_id}/activitiesActivity timeline — calls, emails, notes, stage changes.
POST/v1/crm/deals/{deal_id}/activitiesLog an activity. Body: {type, body, scheduled_for}.

Leaderboard

GET /v1/crm/leaderboard?days=30

Closed-won deal value per owner over the lookback. Pro+ only.


Teams (/v1/teams/*)

Multi-user accounts with role-based access. The "team" is the billable entity; members have roles owner, admin, member, or viewer. Sequences and watchlists can be shared at the team level.

MethodPathDescription
POST/v1/teamsCreate a team. The caller becomes owner.
GET/v1/teamsList teams the caller belongs to.
GET/v1/teams/{team_id}Team details + members.
PUT/v1/teams/{team_id}Update name/description (owner/admin).
DELETE/v1/teams/{team_id}Disband (owner only).
POST/v1/teams/{team_id}/inviteEmail-invite a new member. Body: {email, role}. Sends a token-link.
POST/v1/teams/accept-invite/{token}Accept an invite (auth required — caller's email is matched against the invite).
DELETE/v1/teams/{team_id}/invites/{invite_id}Revoke a pending invite.
PUT/v1/teams/{team_id}/members/{user_id}Change a member's role.
DELETE/v1/teams/{team_id}/members/{user_id}Remove member.
GET/v1/teams/{team_id}/activityAudit log: invites, role changes, removals.

Org-level (alternate naming, same concept)

MethodPathDescription
GET/v1/orgCaller's primary org/team.
POST/v1/orgCreate.
PUT/v1/orgUpdate.
GET/v1/org/membersList members.

Notifications (/v1/notifications/*)

In-app notification surface plus rule + channel management.

MethodPathDescription
GET/v1/notifications/rulesList notification rules (saved-search alerts, watchlist changes, sequence replies, etc.).
PUT/v1/notifications/rules/{rule_type}/{rule_id}/toggleToggle a rule on/off without deleting it.
GET/v1/notifications/channelsList channels (in-app, email, Slack, webhook).
GET/v1/notifications/historyRecent notification fires across all rules.
GET/v1/notifications/inboxThe caller's unread + recent in-app notifications.
GET/v1/notifications/unread-countLightweight badge count.
PUT/v1/notifications/read/{notification_id}Mark one read.
PUT/v1/notifications/read-allMark every notification read.
DELETE/v1/notifications/{notification_id}Delete one.

For real-time push, the WebSocket at /v1/ws/notifications streams incoming notifications as they fire.


Reports (/v1/reports/*)

Industry benchmark reports + scheduled-report management. Lightweight version of Intelligence reports — these are pre-computed industry rollups, not live queries.

MethodPathDescription
GET/v1/reports/industriesList industries with available reports.
GET/v1/reports/benchmark/{industry}JSON benchmark — average enrichment rate, email coverage, growth, top domains.
GET/v1/reports/benchmark/{industry}/pdfA4 PDF rendered version. Pro+ only.
GET/v1/reports/export-previewPreview the next scheduled-report payload before it fires.

Scheduled reports

MethodPathDescription
GET/v1/reports/schedulesList configured schedules.
POST/v1/reports/schedulesCreate a schedule. Body: {report_type, cron, recipients, format}.
PUT/v1/reports/schedules/{report_id}Update.
DELETE/v1/reports/schedules/{report_id}Cancel.

The scheduled_report_worker polls every 5 minutes and fires reports whose cron matches the current time bucket.


Analytics (/v1/analytics/*)

Frontend usage tracking + traffic stats. Useful for product analytics on what features your team actually uses.

MethodPathDescription
POST/v1/analytics/trackRecord a usage event. Body: {event_type, page, properties}. Fires from the dashboard.
GET/v1/analytics/traffic30-day rollup: page views, sessions, top pages, conversion events. Admin only.

Business Profile (/v1/business-profile/*)

The user's onboarding profile that drives ICP scoring and persona-aware enrichment defaults.

MethodPathDescription
GET/v1/business-profileGet the caller's profile.
POST/v1/business-profileCreate. Body covers industry, team_size, target_geos, target_industries, target_company_sizes, etc.
PUT/v1/business-profileUpdate.
DELETE/v1/business-profileReset.
POST/v1/business-profile/skipSkip onboarding without filling in.
POST/v1/business-profile/icp-scoreScore a domain against the profile. Body: {domain} returns {score, factors}.
GET/v1/business-profile/icp-leadsList domains in the user's pipeline ranked by ICP score.

Notes

  • These endpoints are stable, but documentation here is intentionally compact. Full per-endpoint detail isn't likely to be load-bearing for third-party integrations — most callers use the CronDB dashboard.
  • For programmatic access at scale, prefer the data-side endpoints (Search, Enrichment, Domain 360) plus the outreach stack (Sequences, Inbox, Workflows).
  • Auth: every endpoint requires Authorization: Bearer cdb_your_api_key unless explicitly noted.

Next Steps