Skip to content
Skillv1.0.0

salesloft-hello-world

Create a minimal working SalesLoft example — list people and create a person. Use when starting a new SalesLoft integration, testing your setup, or learning the People and Cadences API patterns. Trigg

by jeremylongshore(0) 0 installs
Free
Sign in to install

Free account. Installing gives you the manifest plus copy-paste snippets.

See reviews

About

Imported from jeremylongshore/tons-of-skills-marketplace (skills/.curated/salesloft-hello-world/SKILL.md). Install upstream with npx skills add jeremylongshore/tons-of-skills-marketplace --skill salesloft-hello-world. Copyright stays with the author (MIT).

SalesLoft Hello World

Overview

List people and create a new person — the two fundamental SalesLoft API operations. Uses the REST API v2 at https://api.salesloft.com/v2/. All endpoints return JSON with a data wrapper and support pagination via page and per_page params.

Prerequisites

  • Valid OAuth token or API key (see salesloft-install-auth)
  • SALESLOFT_API_KEY environment variable set

Instructions

Step 1: List People

import axios from 'axios';

const api = axios.create({
  baseURL: 'https://api.salesloft.com/v2',
  headers: { Authorization: `Bearer ${process.env.SALESLOFT_API_KEY}` },
});

// List people — returns paginated results
const { data } = await api.get('/people.json', {
  params: { per_page: 25, page: 1 },
});

console.log(`Total people: ${data.metadata.paging.total_count}`);
data.data.forEach((person: any) => {
  console.log(`  ${person.display_name} <${person.email_address}>`);
});

Step 2: Create a Person

// Create a new person record
const { data: created } = await api.post('/people.json', {
  email_address: 'prospect@example.com',
  first_name: 'Alex',
  last_name: 'Johnson',
  title: 'VP Engineering',
  company_name: 'Acme Corp',
  phone: '+1-555-0100',
  city: 'Austin',
  state: 'TX',
  custom_fields: {
    lead_source: 'website',
  },
});

console.log(`Created person: ${created.data.id} — ${created.data.display_name}`);

Step 3: Add Person to a Cadence

// First, list available cadences
const { data: cadences } = await api.get('/cadences.json', {
  params: { per_page: 10 },
});
const cadenceId = cadences.data[0].id;

// Add person to cadence
const { data: membership } = await api.post('/cadence_memberships.json', {
  person_id: created.data.id,
  cadence_id: cadenceId,
});
console.log(`Added to cadence: ${membership.data.cadence.name}`);

Output

Total people: 1,247
  Alex Johnson <prospect@example.com>
Created person: 98765 — Alex Johnson
Added to cadence: Q1 Outbound Sequence

Error Handling

Error Cause Solution
422 Unprocessable Entity Missing required field (email) Ensure email_address is provided
409 Conflict Duplicate email address Search existing people first with ?email_addresses[]=
401 Unauthorized Invalid/expired token Refresh OAuth token
429 Too Many Requests Rate limit exceeded (600 cost/min) Back off and retry after Retry-After header

Examples

Search People by Email

const { data } = await api.get('/people.json', {
  params: { email_addresses: ['prospect@example.com'] },
});

Update a Person

await api.put(`/people/${personId}.json`, {
  title: 'CTO',
  company_name: 'New Corp',
});

List Activities for a Person

const { data: activities } = await api.get('/activities/emails.json', {
  params: { person_id: personId, per_page: 50 },
});

Resources

Next Steps

Proceed to salesloft-local-dev-loop for development workflow setup.

Use it

Copy one of these into your project. Installing also returns the manifest and these snippets.

yaml
targets:
  - https://api.opensmartroute.ai/api/v1/registry/jeremylongshore-tons-of-skills-marketplace-salesloft-hel-acf5a2/manifest   # or paste the manifest below

Manifest

An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.

jeremylongshore-tons-of-skills-marketplace-salesloft-hel-acf5a2.ocm.jsonjson
{
  "ocm": "1",
  "id": "jeremylongshore-tons-of-skills-marketplace-salesloft-hel-acf5a2",
  "kind": "skill",
  "name": "salesloft-hello-world",
  "description": "Create a minimal working SalesLoft example — list people and create a person. Use when starting a new SalesLoft integration, testing your setup, or learning the People and Cadences API patterns. Trigger: \"salesloft hello world\", \"salesloft example\", \"salesloft quick start\".",
  "publisher": "jeremylongshore",
  "version": "1.0.0",
  "capabilities": {
    "domains": [
      "general_chat",
      "coding"
    ],
    "tags": [
      "skill-md",
      "saas",
      "sales",
      "outreach",
      "salesloft",
      "skills-sh"
    ],
    "languages": [
      "en"
    ]
  },
  "quality_prior": 0.6,
  "examples": [
    "Create a minimal working SalesLoft example — list people and create a person. Use when starting a new SalesLoft integration, testing your setup, or learning the People and Cadences API patterns. Trigger: \"salesloft hello world\", \"salesloft example\", \"salesloft quick start\"."
  ],
  "primary": false,
  "metadata": {
    "source": {
      "provider": "skills.sh",
      "repository": "https://github.com/jeremylongshore/tons-of-skills-marketplace",
      "path": "skills/.curated/salesloft-hello-world/SKILL.md",
      "ref": "HEAD",
      "url": "https://github.com/jeremylongshore/tons-of-skills-marketplace/blob/HEAD/skills/.curated/salesloft-hello-world/SKILL.md",
      "key": "jeremylongshore/tons-of-skills-marketplace/skills/.curated/salesloft-hello-world/SKILL.md"
    },
    "compatibility": "Designed for Claude Code",
    "allowed_tools": [
      "Read,",
      "Write,",
      "Edit,",
      "Bash(npm:*),",
      "Bash(node:*)"
    ],
    "license": "MIT"
  },
  "instructions": "# SalesLoft Hello World\n\n## Overview\n\nList people and create a new person — the two fundamental SalesLoft API operations. Uses the REST API v2 at `https://api.salesloft.com/v2/`. All endpoints return JSON with a `data` wrapper and support pagination via `page` and `per_page` params.\n\n## Prerequisites\n\n- Valid OAuth token or API key (see `salesloft-install-auth`)\n- `SALESLOFT_API_KEY` environment variable set\n\n## Instructions\n\n### Step 1: List People\n\n```typescript\nimport axios from 'axios';\n\nconst api = axios.create({\n  baseURL: 'https://api.salesloft.com/v2',\n  headers: { Authorization: `Bear",
  "cost": {
    "context_tokens": 830
  }
}

Fetch it by URL: GET /api/v1/registry/jeremylongshore-tons-of-skills-marketplace-salesloft-hel-acf5a2/manifest?version=1.0.0

Reviews

Star ratings from people who tried it. One review per account; edit yours any time.

No reviews yet. Install it, try it, and be the first to rate it.