nodestash

Quickstart

Make your first API call in under 5 minutes

Get Your API Key

Create an Account

Sign up at app.nodestash.io to create your workspace.

Generate an API Key

Go to Settings → API Keys and create a new key. Copy the key — it's only shown once.

Your key looks like this: nds_live_aBcDeFgHiJkLmNoPqRs

Set Your Environment Variable

export NODESTASH_API_KEY="nds_live_your_key_here"

Create Your First Contact

curl -X POST https://api.nodestash.io/v1/contacts \
  -H "Authorization: Bearer $NODESTASH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "jane@acme.com",
    "first_name": "Jane",
    "last_name": "Doe",
    "title": "VP of Engineering",
    "tags": ["prospect"]
  }'
import { NodeStash } from '@nodestash/sdk'

const client = new NodeStash({
  apiKey: process.env.NODESTASH_API_KEY!,
})

const contact = await client.contacts.create({
  email: 'jane@acme.com',
  first_name: 'Jane',
  last_name: 'Doe',
  title: 'VP of Engineering',
  tags: ['prospect'],
})

console.log(contact.id) // ct_5hJ3kM9pQrVwXyZaB2cD4

Response:

{
  "data": {
    "id": "ct_5hJ3kM9pQrVwXyZaB2cD4",
    "type": "contact",
    "attributes": {
      "email": "jane@acme.com",
      "first_name": "Jane",
      "last_name": "Doe",
      "phone": null,
      "company_id": null,
      "title": "VP of Engineering",
      "source": null,
      "custom_fields": {},
      "tags": ["prospect"],
      "created_at": "2026-01-15T10:30:00Z",
      "updated_at": "2026-01-15T10:30:00Z"
    }
  },
  "meta": {
    "request_id": "req_abc123def456ghi789jkl012"
  }
}

List Your Contacts

curl https://api.nodestash.io/v1/contacts \
  -H "Authorization: Bearer $NODESTASH_API_KEY"
const { data: contacts, pagination } = await client.contacts.list({
  limit: 25,
  sort: '-created_at',
})

for (const contact of contacts) {
  console.log(`${contact.first_name} ${contact.last_name} <${contact.email}>`)
}

Create a Deal

curl -X POST https://api.nodestash.io/v1/deals \
  -H "Authorization: Bearer $NODESTASH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Acme Corp Enterprise License",
    "value": 50000,
    "currency": "EUR",
    "contact_id": "ct_5hJ3kM9pQrVwXyZaB2cD4",
    "tags": ["enterprise"]
  }'
const deal = await client.deals.create({
  title: 'Acme Corp Enterprise License',
  value: 50000,
  currency: 'EUR',
  contact_id: contact.id,
  tags: ['enterprise'],
})

console.log(`Deal created: ${deal.title} (${deal.value} ${deal.currency})`)

Next Steps

On this page