Now in public beta

CRM infrastructure for developers

No UI. No bloat. Just API. Build your own CRM experience with a powerful, developer-first REST API. Contacts, deals, pipelines, custom fields — all accessible through clean, predictable endpoints.

Free tier available. No credit card required.

Built for developers, by developers

Clean REST API with predictable responses. Integrate in minutes, not weeks.

create-contact.ts
// Create a contact
const response = await fetch('https://api.nodestash.io/v1/contacts', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer nds_live_your_api_key',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    first_name: 'Jane',
    last_name: 'Smith',
    email: 'jane@example.com',
    company_name: 'Acme Inc',
    custom_fields: {
      lead_source: 'website',
      plan: 'enterprise',
    },
  }),
})
response.json
// Response
{
  "data": {
    "id": "ct_7nR4kXqB2vM9wYpT5sG",
    "type": "contact",
    "attributes": {
      "first_name": "Jane",
      "last_name": "Smith",
      "email": "jane@example.com",
      "company_name": "Acme Inc",
      "custom_fields": {
        "lead_source": "website",
        "plan": "enterprise"
      },
      "created_at": "2025-01-15T10:30:00Z",
      "updated_at": "2025-01-15T10:30:00Z"
    }
  },
  "meta": {
    "request_id": "req_8mK3jXpA1vN2wZqS6rH4tY"
  }
}

Everything you need to build a CRM

A complete CRM backend accessible through a clean REST API.

Contacts & Companies

Manage contacts and companies with custom fields, tags, and full relationship tracking. Search across all records instantly.

Deals & Pipelines

Create custom sales pipelines with multiple stages. Track deal values, probabilities, and expected close dates through the API.

Activities & Timeline

Log calls, emails, meetings, and custom activities. Build complete interaction timelines for every contact and deal.

Custom Fields

Define custom fields of any type — text, number, date, dropdown, multi-select. Validate and query them like first-class fields.

Webhooks & Events

Real-time notifications for every state change. Contact created, deal moved, field updated — never miss a beat.

Full-text Search

Lightning-fast search powered by Meilisearch. Search across contacts, companies, deals, and notes with typo tolerance.

Up and running in minutes

Three steps to a fully functional CRM backend.

01

Get your API key

Sign up and generate an API key in seconds. Choose between live and test environments.

02

Make API calls

Use our REST API with any language or framework. Create contacts, manage deals, track activities.

03

Build your CRM

Build exactly the CRM experience your users need. Your UI, your workflow, our infrastructure.

Simple, transparent pricing

Start free, scale as you grow. No hidden fees.

Free

€0/mo

For side projects and experiments.

  • 500 contacts
  • 1,000 API calls/day
  • Community support
Start Free

Starter

€49/mo

For small teams getting started.

  • 5,000 contacts
  • 25,000 API calls/day
  • Email support
  • Webhooks
Get Started
Most Popular

Pro

€149/mo

For growing businesses.

  • 50,000 contacts
  • 250,000 API calls/day
  • Priority support
  • Custom fields
  • Advanced search
Get Started

Scale

€399/mo

For high-volume applications.

  • 500,000 contacts
  • 2,000,000 API calls/day
  • Dedicated support
  • All features
  • Advanced analytics
Get Started

Enterprise

€999+/mo

For large organizations.

  • Unlimited contacts
  • Unlimited API calls
  • SLA guarantee
  • Dedicated support
  • Custom integration
Contact Sales

Developer experience, first

We obsess over the details that make integrating with nodestash a joy. Predictable responses, comprehensive documentation, and tools that work the way you expect.

OpenAPI 3.1 Spec

Auto-generate clients in any language. Full spec with examples and schemas.

TypeScript SDK

First-class TypeScript support with full type safety and autocompletion.

Webhooks

Reliable webhook delivery with retries, signatures, and event filtering.

Rate Limit Transparency

Clear rate limit headers on every response. Plan your integration with confidence.

// Every response includes helpful headers
HTTP/1.1 200 OK
Content-Type: application/json
X-Request-Id: req_8mK3jXpA1vN2wZqS6rH
X-RateLimit-Limit: 25000
X-RateLimit-Remaining: 24987
X-RateLimit-Reset: 1705363200

// Errors are predictable and actionable
{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Invalid email format",
    "details": [
      {
        "field": "email",
        "message": "Must be a valid email"
      }
    ]
  },
  "meta": {
    "request_id": "req_8mK3jXpA1vN2wZqS6rH"
  }
}

Loved by developers

See what developers are building with nodestash.

Testimonials coming soon. Be one of our first users!

Ready to build your CRM?

Get started with nodestash in minutes. No credit card required.