RidgeCRM Developer Docs

API Reference

CRM records API

Work with accounts, contacts, leads, opportunities, cases, tasks, and comments.

Record pattern

Core CRM endpoints follow the same integration posture: authenticate with a JWT, choose an organization, and send JSON. List endpoints are the safest place to start; create/update endpoints should mirror the app's required fields and validation rules.

bash

List accounts

curl https://ridgecrm.com/api/v1/accounts \
  -H "Authorization: Bearer $RIDGECRM_TOKEN" \
  -H "X-Organization-ID: $RIDGECRM_ORG_ID"

bash

Create a lead

curl -X POST https://ridgecrm.com/api/v1/leads \
  -H "Authorization: Bearer $RIDGECRM_TOKEN" \
  -H "X-Organization-ID: $RIDGECRM_ORG_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "firstName": "Jamie",
    "lastName": "Nguyen",
    "email": "jamie@example.com",
    "company": "Northstar Labs",
    "leadStatus": "NEW",
    "leadSource": "WEBSITE"
  }'

Core endpoints

GET /api/v1/accounts Bearer JWT + org

List accounts visible inside the selected organization.

Request

GET /api/v1/accounts
Authorization: Bearer <jwt>
X-Organization-ID: <organization-id>
Content-Type: application/json

Response

{
  "accounts": [
    {
      "id": "acct_123",
      "name": "Northstar Labs",
      "industry": "Software",
      "phone": "+15551234567"
    }
  ]
}
POST /api/v1/leads Bearer JWT + org

Create a lead that can later be worked in list or workspace views.

Request

POST /api/v1/leads
Authorization: Bearer <jwt>
X-Organization-ID: <organization-id>
Content-Type: application/json

{
  "firstName": "Jamie",
  "lastName": "Nguyen",
  "email": "jamie@example.com",
  "company": "Northstar Labs",
  "leadStatus": "NEW",
  "leadSource": "WEBSITE"
}

Response

{
  "lead": {
    "id": "lead_123",
    "firstName": "Jamie",
    "lastName": "Nguyen",
    "company": "Northstar Labs",
    "leadStatus": "NEW"
  }
}
POST /api/v1/tasks/{id}/comments Bearer JWT + org

Add collaboration notes to task work without leaving CRM context.

Request

POST /api/v1/tasks/task_123/comments
Authorization: Bearer <jwt>
X-Organization-ID: <organization-id>
Content-Type: application/json

{
  "body": "Left voicemail and scheduled follow-up for Friday."
}

Response

{
  "comment": {
    "id": "comment_123",
    "body": "Left voicemail and scheduled follow-up for Friday."
  }
}