| name | salesloft-performance-tuning |
| description | Optimize SalesLoft API performance with caching, pagination strategies, and connection pooling.
Use when experiencing slow API responses, reducing latency for bulk operations,
or optimizing cadence sync throughput.
Trigger: "salesloft performance", "optimize salesloft", "salesloft slow", "salesloft caching".
|
| allowed-tools | Read, Write, Edit |
| version | 1.6.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","sales","outreach","salesloft"] |
| compatibility | Designed for Claude Code |
SalesLoft Performance Tuning
Overview
Optimize SalesLoft REST API v2 performance. Key bottlenecks: deep pagination (cost multiplier), no batch endpoints, and per-minute rate limits. Solutions: caching, incremental sync, and pagination-aware request planning.
Latency Benchmarks
| Operation | Typical | With Caching |
|---|
| GET /me.json | 80ms | N/A (auth) |
| GET /people.json (page 1) | 120ms | 1ms (cached) |
| POST /people.json | 200ms | N/A (write) |
| GET /activities/emails.json | 150ms | 1ms (cached) |
| Full sync (10k people) | ~20min | ~5min (incremental) |
Instructions
Step 1: Response Caching
import { LRUCache } from 'lru-cache';
const cache = new LRUCache<string, any>({ max: 5000, ttl: 60_000 });
async function cachedGet<T>(endpoint: string, params?: Record<string, any>): Promise<T> {
const key = `${endpoint}:${JSON.stringify(params || {})}`;
const hit = cache.get(key);
if (hit) return hit as T;
const { data } = api.(endpoint, { params });
cache.(key, data);
data;
}
person = (, { : [] });