npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@thierryteisseire/0crm-skill

v1.1.0

Published

Comprehensive Zero CRM API skill for managing contacts, deals, tasks and user profiles via REST API. Simple, fast, and powerful CRM automation with bulk operations and comprehensive documentation.

Downloads

354

Readme

Zero CRM API Skill

Simple, fast, and powerful CRM automation — Programmatically manage contacts, deals, and user profiles with the Zero CRM REST API.

License: MIT Version

Interact with the Zero CRM application to automate contact management, deal tracking, and bulk data operations. Perfect for sales automation, data migration, and CRM integrations.


🚀 Quick Start

1. Installation

# Install Python dependencies
pip install -r requirements.txt

# Or install globally via npm
npm install -g @thierryteisseire/0crm-skill

2. Get Your API Key

  1. Log in to Zero CRM
  2. Navigate to SettingsAPI Keys
  3. Copy your API key (format: zero_<hash>)

3. Set Up Environment

# Create .env file
echo "ZERO_CRM_API_KEY=zero_your_api_key_here" > .env

4. Test Connection

# Using Python
python3 scripts/test_api.py $ZERO_CRM_API_KEY

# Using CLI (after npm install)
0crm test

📦 Features

  • Contact Management — Create, read, update, delete contacts
  • Deal Tracking — Manage sales pipeline with stages and priorities
  • Bulk Operations — Import hundreds of contacts/deals in one request
  • User Profile — Retrieve and manage user settings
  • API Key Management — Generate and rotate keys programmatically
  • Simple Authentication — Single header (x-api-key) authentication
  • RESTful Design — Standard HTTP methods and status codes

📚 Usage Examples

Python SDK

import requests
import os

API_KEY = os.getenv("ZERO_CRM_API_KEY")
BASE_URL = "https://vbrsrhfxfv6qk2jbrraym2a2du0qlazt.lambda-url.us-east-1.on.aws"

headers = {"x-api-key": API_KEY}

# List all contacts
response = requests.get(f"{BASE_URL}/api/contacts", headers=headers)
contacts = response.json()

# Create a contact
new_contact = {
    "name": "Jane Doe",
    "email": "[email protected]",
    "company": "Acme Corp",
    "role": "VP Sales"
}
response = requests.post(f"{BASE_URL}/api/contacts", headers=headers, json=new_contact)
created = response.json()

print(f"Created contact: {created['id']}")

Bulk Import from CSV

import csv
import requests
import os

API_KEY = os.getenv("ZERO_CRM_API_KEY")
BASE_URL = "https://vbrsrhfxfv6qk2jbrraym2a2du0qlazt.lambda-url.us-east-1.on.aws"
headers = {"x-api-key": API_KEY}

# Read CSV
contacts = []
with open('contacts.csv', 'r') as f:
    reader = csv.DictReader(f)
    for row in reader:
        contacts.append({
            "name": row["name"],
            "email": row["email"],
            "company": row.get("company", ""),
            "role": row.get("role", "")
        })

# Bulk import (API accepts arrays)
response = requests.post(f"{BASE_URL}/api/contacts", headers=headers, json=contacts)
result = response.json()

print(f"Imported {len(result['created'])} contacts")

CLI Usage

# List contacts
0crm contacts list

# Create contact
0crm contacts create --name "John Doe" --email "[email protected]"

# Bulk import
0crm contacts import contacts.csv

# List deals
0crm deals list --stage "Negotiation"

# Get user profile
0crm profile

🛠️ API Endpoints

| Endpoint | Method | Description | |----------|--------|-------------| | /api/health | GET | Health check | | /api/contacts | GET | List all contacts | | /api/contacts | POST | Create contact(s) | | /api/contacts/:id | PATCH | Update contact | | /api/contacts/:id | DELETE | Delete contact | | /api/deals | GET | List all deals | | /api/deals | POST | Create deal(s) | | /api/deals/:id | PATCH | Update deal | | /api/deals/:id | DELETE | Delete deal | | /api/user/profile | GET | Get user profile | | /api/user/generate-api-key | POST | Regenerate API key |


📖 Documentation


🔐 Security Best Practices

  1. Never commit API keys to version control
  2. Use environment variables for API keys (.env file)
  3. Rotate keys regularly via /api/user/generate-api-key
  4. Use HTTPS only (enforced by default)
  5. Monitor API usage for unusual patterns

🧪 Testing

# Run basic tests
python3 scripts/test_api.py $ZERO_CRM_API_KEY

# Run comprehensive tests
python3 scripts/test_comprehensive.py

# Verify skill configuration
npm run verify

📊 Use Cases

1. Sales Automation

Automatically create contacts from form submissions, web scraping, or enrichment services.

2. Data Migration

Bulk import contacts and deals from spreadsheets, legacy CRMs, or databases.

3. Reporting & Analytics

Export deals and contacts for external dashboards, BI tools, or custom reports.

4. Integration Workflows

Connect Zero CRM with Zapier, Make.com, or custom webhooks for automation.


🤝 Contributing

Contributions are welcome! Please open an issue or pull request on GitHub.


📄 License

MIT License - see LICENSE for details.


🔗 Links

  • GitHub Repository: https://github.com/thierryteisseire/0crm-skill
  • Zero CRM Application: https://vbrsrhfxfv6qk2jbrraym2a2du0qlazt.lambda-url.us-east-1.on.aws/
  • Issue Tracker: https://github.com/thierryteisseire/0crm-skill/issues

Questions? Check the API Reference or open an issue on GitHub.