Key facts
| API compatibility | Drop-in /v1/chat/completions with streaming, JSON mode and function calling (live) |
| Structured output | JSON mode for CRM field suggestions and draft objects |
| Models | 30+ models behind one endpoint, route research and drafting separately |
| Migration | Base URL and model-name change; CRM integrations stay unchanged |
| Pricing | Flat monthly plans with unlimited fair-use usage on self-serve |
| Controls | Scoped keys per integration with RBAC and SSO/SCIM |
| Approvals | Drafts routed to reps; no autonomous sends |
| Free tier | plugsky-micro and plugsky-lite on the free plan, no card required |
TL;DR
- Keep the SDK and CRM integrations; change the base URL and model names.
- Use JSON mode to return CRM updates as typed fields your systems can validate.
- Wrap CRM lookups and suppression checks in function-call tools.
- Keep the send button with reps; the agent drafts and enriches only.
- Shadow-run drafts against rep-written messages before rollout.
How it works, step by step
- Centralise the model client so base URL, key and model names come from configuration.
- Define JSON schemas for each output: account brief, draft message, CRM field suggestions.
- Set the base URL to https://api.plugsky.com/v1 with scoped keys, mapping research and drafting to different models.
- Expose CRM reads, suppression checks and task creation as function-call tools with least-privilege scopes.
- Route drafts to reps for edit and approval, and log the facts and citations each draft used.
- Shadow-run against rep-written outreach and compare edit distance and reply outcomes.
- Cut over behind a flag, keep the previous provider path in configuration, and review traces weekly.
Try it yourself
Open the function calling schema generator →
What compatibility changes for sales tooling
Sales stacks are integration-heavy: CRM, sequencing, enrichment and analytics all have their own APIs. Adding an agent should not add another platform. An OpenAI-compatible endpoint slots in as a model provider: one client, one key, standard request shapes, and your existing integrations remain untouched.
Streaming, JSON mode and function calling are live on Plugsky. Managed conveniences such as batch and assistants-style endpoints are coming soon, so scheduling and sequence state stay in your tooling — where deliverability and suppression rules already live.
Structured CRM updates and drafting
Two output shapes matter. CRM updates should be typed: field, proposed value, confidence and the evidence behind it, validated before writing. Drafts should be objects too: subject, body, personalisation facts used and a suggested next step, so the rep interface can present and edit them consistently.
- Validation: reject CRM suggestions with missing evidence rather than writing guesses.
- Suppression: check opt-outs and do-not-contact rules in tools before drafting.
- Citations: drafts reference the content or CRM facts they used.
- Idempotency: key CRM writes so retries do not duplicate tasks or notes.
Approvals, keys and rollout
Keep the boundary crisp: the agent researches, summarises and drafts; reps approve and send. That protects compliance and keeps accountability with a person. Use scoped keys per integration so a drafting service cannot read the entire CRM, and log tool calls, drafts and approvals for review.
Measure rep time saved, edit distance between draft and sent message, reply and meeting rates, and CRM completeness. If edit distance stays high, improve retrieval and prompts before expanding scope. Because the API is OpenAI-compatible, changing providers or rolling back is a configuration deploy. For customer data restrictions, pin the workspace to a region-locked plane or run VPC, on-prem or air-gapped with the same code.
Honest comparison
| Aspect | Plugsky | Staying on OpenAI | Sales AI point tool |
|---|---|---|---|
| Client change | Base URL and model names | None | New vendor integration |
| Structured output | JSON mode for CRM and drafts | Available | Vendor schema |
| Tool calls | Function calling for CRM reads | Same pattern | Vendor connectors |
| Pricing | Flat monthly with unlimited fair use on self-serve | Per-token | Seat-based |
| Residency | Region choice, VPC, on-prem, air-gapped | Limited options | Usually cloud-only |
Frequently asked questions
Will our CRM integration change?
No. Your tools and integrations keep their existing APIs; only the model client configuration changes. Tool schemas and approval flows stay as they are.
Why JSON mode for CRM updates?
Typed field suggestions can be validated before writing, so bad data never reaches the CRM. Free-text suggestions would require parsing and guesswork.
Can the agent send sequences?
No. Keep sending in your sequencing tool with rep approval. The agent drafts and enriches; deliverability and compliance remain where they belong.
How do we prevent duplicates?
Key CRM write tools on a stable identifier and make them idempotent, so retries update rather than duplicate records.
Is function calling live?
Yes. Function calling and streaming are live on chat completions, which covers CRM lookups, suppression checks and task creation.
How do we evaluate quality?
Compare drafts against rep-written messages on edit distance and outcomes, and track time saved and CRM completeness. High edit distance means retrieval or prompts need work.
Can it run on-prem?
Yes. Plugsky supports region-locked cloud planes plus VPC, on-prem and air-gapped deployment, so customer data can remain inside your network.