Claude-skill-registry dex-crm
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/dex-crm" ~/.claude/skills/majiayu000-claude-skill-registry-dex-crm && rm -rf "$T"
manifest:
skills/data/dex-crm/SKILL.mdsource content
Dex Personal CRM
Manage your Dex CRM directly from Clawdbot. Search contacts, add notes, manage reminders.
Authentication
Set
DEX_API_KEY in gateway config env vars.
API Base
- Base URL:
https://api.getdex.com/api/rest - Headers:
andContent-Type: application/jsonx-hasura-dex-api-key: $DEX_API_KEY
Quick Reference
Contacts
# List contacts (paginated) curl -s -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ "https://api.getdex.com/api/rest/contacts?limit=10&offset=0" # Get contact by ID curl -s -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ "https://api.getdex.com/api/rest/contacts/{contactId}" # Search contact by email curl -s -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ "https://api.getdex.com/api/rest/search/contacts?email=someone@example.com" # Create contact curl -s -X POST -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ -d '{"first_name":"John","last_name":"Doe","emails":["john@example.com"]}' \ "https://api.getdex.com/api/rest/contacts" # Update contact curl -s -X PUT -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ -d '{"job_title":"CEO"}' \ "https://api.getdex.com/api/rest/contacts/{contactId}" # Delete contact curl -s -X DELETE -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ "https://api.getdex.com/api/rest/contacts/{contactId}"
Notes (Timeline Items)
# List notes curl -s -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ "https://api.getdex.com/api/rest/timeline_items?limit=10&offset=0" # Notes for a contact curl -s -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ "https://api.getdex.com/api/rest/timeline_items/contacts/{contactId}" # Create note curl -s -X POST -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ -d '{"note":"Met for coffee, discussed project","contact_ids":["contact-uuid"],"event_time":"2026-01-27T12:00:00Z"}' \ "https://api.getdex.com/api/rest/timeline_items" # Update note curl -s -X PUT -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ -d '{"note":"Updated note text"}' \ "https://api.getdex.com/api/rest/timeline_items/{noteId}" # Delete note curl -s -X DELETE -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ "https://api.getdex.com/api/rest/timeline_items/{noteId}"
Reminders
# List reminders curl -s -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ "https://api.getdex.com/api/rest/reminders?limit=10&offset=0" # Create reminder curl -s -X POST -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ -d '{"body":"Follow up on proposal","due_at_date":"2026-02-01","contact_ids":["contact-uuid"]}' \ "https://api.getdex.com/api/rest/reminders" # Update reminder curl -s -X PUT -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ -d '{"is_complete":true}' \ "https://api.getdex.com/api/rest/reminders/{reminderId}" # Delete reminder curl -s -X DELETE -H "Content-Type: application/json" \ -H "x-hasura-dex-api-key: $DEX_API_KEY" \ "https://api.getdex.com/api/rest/reminders/{reminderId}"
Contact Fields
,first_name
,last_name
,job_titledescription
(array ofemails
){email}
(array ofphones
){phone_number}
,education
,website
,linkedin
,facebook
,twitter
,instagramtelegram
,birthdayimage_url
,last_seen_atnext_reminder_at
,is_archived
,created_atupdated_at
Searching Contacts
The API only supports search by email. For name-based search, fetch contacts in batches and filter locally. Use a reasonable limit (50-100) for browsing.
Notes
- Always confirm before creating, updating, or deleting contacts/notes/reminders
- Contact search by name requires local filtering (API only supports email search)
- Use pagination (limit/offset) for large result sets
- The
field on notes is when the interaction happened, not when the note was createdevent_time