SalesOS.

A I

AI assistant and natural language queries

Get AI service status

Returns the status of all configured AI providers and which one is active

GET
/v1/ai/status

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

curl -X GET "https://api.salesos.org/v1/ai/status" \
  -H "Authorization: Bearer <token>"

AI service status

{
  "available": true,
  "primaryProvider": {},
  "fallbackProvider": {},
  "openaiStatus": {},
  "anthropicStatus": {}
}

Test AI connection

Tests the connection to AI providers by sending a simple prompt

POST
/v1/ai/test

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Request Body

application/jsonRequired
providerstring

Provider to test

Value in: "openai" | "anthropic" | "auto"
curl -X POST "https://api.salesos.org/v1/ai/test" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "openai"
  }'

Connection test successful

Test specific AI provider connection

Tests the connection to a specific AI provider

POST
/v1/ai/test/{provider}

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Path Parameters

providerRequiredstring

Provider to test

Value in: "openai" | "anthropic"
curl -X POST "https://api.salesos.org/v1/ai/test/openai" \
  -H "Authorization: Bearer <token>"

Connection test successful

Generate email draft

Generate a professional sales email draft using AI with subject line and body

POST
/v1/ai/email/draft

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Request Body

application/jsonRequired
recipientNameRequiredstring

Name of the email recipient

recipientCompanyRequiredstring

Company name of the recipient

purposeRequiredstring

Purpose of the email (e.g., follow-up, introduction, proposal)

tonestring

Tone of the email

Default: "professional and friendly"
additionalContextstring

Additional context or information to include

recipientTitlestring

Recipient job title

dealStagestring

Current deal stage

dealValuenumber

Deal value in dollars

painPointsarray<string>

Known pain points of the prospect

lastInteractionstring

Summary of last interaction

competitorsarray<string>

Competitors being considered

providerstring

Preferred AI provider

Value in: "openai" | "anthropic" | "auto"
curl -X POST "https://api.salesos.org/v1/ai/email/draft" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "recipientName": "string",
    "recipientCompany": "string",
    "purpose": "string",
    "tone": "professional and friendly",
    "additionalContext": "string",
    "recipientTitle": "string",
    "dealStage": "string",
    "dealValue": 0,
    "painPoints": [
      "string"
    ],
    "lastInteraction": "string",
    "competitors": [
      "string"
    ],
    "provider": "openai"
  }'

Email draft generated successfully

Analyze deal

Get AI-powered insights and recommendations for a sales deal

POST
/v1/ai/deal/analyze

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Request Body

application/jsonRequired
nameRequiredstring

Name of the deal

valueRequirednumber

Value of the deal in dollars

stageRequiredstring

Current stage of the deal (e.g., Prospecting, Negotiation, Closing)

notesstring

Notes about the deal

activitiesarray<string>

List of recent activities

daysInStagenumber

Number of days in current stage

providerstring

Preferred AI provider

Value in: "openai" | "anthropic" | "auto"
curl -X POST "https://api.salesos.org/v1/ai/deal/analyze" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "value": 0,
    "stage": "string",
    "notes": "string",
    "activities": [
      "string"
    ],
    "daysInStage": 0,
    "provider": "openai"
  }'

Deal analysis completed

Score lead

Get an AI-powered lead score (0-100) with detailed reasoning

POST
/v1/ai/lead/score

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Request Body

application/jsonRequired
nameRequiredstring

Name of the lead

companystring

Company name

titlestring

Job title

sourcestring

Lead source (e.g., Website, Referral, Event)

emailstring

Email address

phonestring

Phone number

activitiesarray<string>

Recent activities

notesstring

Additional notes

websitestring

Company website

industrystring

Industry

companySizestring

Company size (e.g., 1-10, 11-50, 51-200)

engagementLevelstring

Engagement level

providerstring

Preferred AI provider

Value in: "openai" | "anthropic" | "auto"
curl -X POST "https://api.salesos.org/v1/ai/lead/score" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "company": "string",
    "title": "string",
    "source": "string",
    "email": "string",
    "phone": "string",
    "activities": [
      "string"
    ],
    "notes": "string",
    "website": "string",
    "industry": "string",
    "companySize": "string",
    "engagementLevel": "string",
    "provider": "openai"
  }'

Lead scored successfully

Summarize meeting

Summarize a meeting transcript and extract key points, action items, and next steps

POST
/v1/ai/meeting/summarize

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Request Body

application/jsonRequired
transcriptRequiredstring

Meeting transcript or notes to summarize

providerstring

Preferred AI provider

Value in: "openai" | "anthropic" | "auto"
curl -X POST "https://api.salesos.org/v1/ai/meeting/summarize" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "transcript": "string",
    "provider": "openai"
  }'

Meeting summarized successfully

Suggest follow-up

Get AI-powered suggestions for follow-up actions, including email drafts and call scripts

POST
/v1/ai/followup/suggest

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Request Body

application/jsonRequired
lastInteractionstring

Description of the last interaction

lastInteractionDatestring

Date of the last interaction

dealStagestring

Current deal stage

objectionsarray<string>

List of objections raised

dealValuenumber

Value of the deal

contactNamestring

Contact name

companyNamestring

Company name

previousActionsarray<string>

List of previous actions taken

dealNotesstring

Additional deal notes

providerstring

Preferred AI provider

Value in: "openai" | "anthropic" | "auto"
curl -X POST "https://api.salesos.org/v1/ai/followup/suggest" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "lastInteraction": "string",
    "lastInteractionDate": "string",
    "dealStage": "string",
    "objections": [
      "string"
    ],
    "dealValue": 0,
    "contactName": "string",
    "companyName": "string",
    "previousActions": [
      "string"
    ],
    "dealNotes": "string",
    "provider": "openai"
  }'

Follow-up suggestions generated

Generate completion

Generate a custom AI completion with your own prompt

POST
/v1/ai/completion

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Request Body

application/jsonRequired
promptRequiredstring

The prompt to send to the AI

systemPromptstring

System prompt to guide AI behavior

maxTokensnumber

Maximum tokens in response

Default: 1000
temperaturenumber

Temperature for response creativity (0-1)

Default: 0.7
providerstring

Preferred AI provider

Value in: "openai" | "anthropic" | "auto"
curl -X POST "https://api.salesos.org/v1/ai/completion" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "string",
    "systemPrompt": "string",
    "maxTokens": 1000,
    "temperature": 0.7,
    "provider": "openai"
  }'

Completion generated successfully

A I Controller_get Insights

GET
/v1/ai/insights

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

curl -X GET "https://api.salesos.org/v1/ai/insights" \
  -H "Authorization: Bearer <token>"

A I Controller_get Deal Insights

GET
/v1/ai/insights/deals/{id}

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Path Parameters

idRequiredstring
curl -X GET "https://api.salesos.org/v1/ai/insights/deals/<string>" \
  -H "Authorization: Bearer <token>"

A I Controller_get Lead Insights

GET
/v1/ai/insights/leads

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

curl -X GET "https://api.salesos.org/v1/ai/insights/leads" \
  -H "Authorization: Bearer <token>"

A I Controller_dismiss Insight

POST
/v1/ai/insights/{id}/dismiss

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Path Parameters

idRequiredstring
curl -X POST "https://api.salesos.org/v1/ai/insights/<string>/dismiss" \
  -H "Authorization: Bearer <token>"