SalesOS

N P S Surveys

Net Promoter Score surveys

List all NPS surveys

GET
/v1/nps-surveys

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

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

List of NPS surveys

Create a new NPS survey

POST
/v1/nps-surveys

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Request Body

application/jsonRequired

Header Parameters

Idempotency-Keystring

Unique key (a UUID is ideal) that makes this write safe to retry for 24 hours: a retry with the same body replays the original response (Idempotent-Replayed: true); the same key with a different body is a 409.

Maximum length: 255
curl -X POST "https://api.salesos.org/v1/nps-surveys" \
  -H "Idempotency-Key: <string>" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{}'

NPS survey created

Get NPS metrics across all surveys (frontend path)

GET
/v1/nps-surveys/metrics/nps

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

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

NPS metrics overview

Get NPS metrics across all surveys

GET
/v1/nps-surveys/nps-metrics

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

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

NPS metrics overview

Get NPS survey statistics

GET
/v1/nps-surveys/stats

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

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

Survey statistics

Get NPS trend over time

GET
/v1/nps-surveys/trend

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Query Parameters

periodstring
curl -X GET "https://api.salesos.org/v1/nps-surveys/trend?period=%3Cstring%3E" \
  -H "Authorization: Bearer <token>"

NPS trend data points

Get NPS breakdown by segment (account tier, industry)

GET
/v1/nps-surveys/by-segment

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Query Parameters

segmentBystring
curl -X GET "https://api.salesos.org/v1/nps-surveys/by-segment?segmentBy=%3Cstring%3E" \
  -H "Authorization: Bearer <token>"

NPS by segment

Get a specific NPS survey

GET
/v1/nps-surveys/{id}

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Path Parameters

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

NPS survey details

Update an NPS survey

PATCH
/v1/nps-surveys/{id}

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Request Body

application/jsonRequired

Path Parameters

idRequiredstring

Header Parameters

Idempotency-Keystring

Unique key (a UUID is ideal) that makes this write safe to retry for 24 hours: a retry with the same body replays the original response (Idempotent-Replayed: true); the same key with a different body is a 409.

Maximum length: 255
curl -X PATCH "https://api.salesos.org/v1/nps-surveys/<string>" \
  -H "Idempotency-Key: <string>" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{}'

NPS survey updated

Delete an NPS survey

DELETE
/v1/nps-surveys/{id}

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Path Parameters

idRequiredstring
curl -X DELETE "https://api.salesos.org/v1/nps-surveys/<string>" \
  -H "Authorization: Bearer <token>"

NPS survey deleted

Update an NPS survey (PUT)

PUT
/v1/nps-surveys/{id}

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Request Body

application/jsonRequired

Path Parameters

idRequiredstring
curl -X PUT "https://api.salesos.org/v1/nps-surveys/<string>" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{}'

NPS survey updated

Toggle survey active/paused state

POST
/v1/nps-surveys/{id}/toggle

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Path Parameters

idRequiredstring

Header Parameters

Idempotency-Keystring

Unique key (a UUID is ideal) that makes this write safe to retry for 24 hours: a retry with the same body replays the original response (Idempotent-Replayed: true); the same key with a different body is a 409.

Maximum length: 255
curl -X POST "https://api.salesos.org/v1/nps-surveys/<string>/toggle" \
  -H "Idempotency-Key: <string>" \
  -H "Authorization: Bearer <token>"

Survey toggled

Email the survey to its audience now

POST
/v1/nps-surveys/{id}/send

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Path Parameters

idRequiredstring

Header Parameters

Idempotency-Keystring

Unique key (a UUID is ideal) that makes this write safe to retry for 24 hours: a retry with the same body replays the original response (Idempotent-Replayed: true); the same key with a different body is a 409.

Maximum length: 255
curl -X POST "https://api.salesos.org/v1/nps-surveys/<string>/send" \
  -H "Idempotency-Key: <string>" \
  -H "Authorization: Bearer <token>"

Send counts

Get survey responses

GET
/v1/nps-surveys/{id}/responses

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Path Parameters

idRequiredstring

Query Parameters

pagestring
limitstring
categorystring
curl -X GET "https://api.salesos.org/v1/nps-surveys/<string>/responses?page=%3Cstring%3E&limit=%3Cstring%3E&category=%3Cstring%3E" \
  -H "Authorization: Bearer <token>"

Survey responses with NPS breakdown

Submit a response to a survey

POST
/v1/nps-surveys/{id}/responses

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Request Body

application/jsonRequired

Path Parameters

idRequiredstring

Header Parameters

Idempotency-Keystring

Unique key (a UUID is ideal) that makes this write safe to retry for 24 hours: a retry with the same body replays the original response (Idempotent-Replayed: true); the same key with a different body is a 409.

Maximum length: 255
curl -X POST "https://api.salesos.org/v1/nps-surveys/<string>/responses" \
  -H "Idempotency-Key: <string>" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{}'

Response recorded

Export survey responses

GET
/v1/nps-surveys/{id}/responses/export

Authorization

AuthorizationRequiredBearer <token>

Session token from the SalesOS web app.

In: header

X-API-Key<token>

API key from Settings → API Keys. Authorization: ApiKey <key> is also accepted. Each operation lists the scope it needs under x-api-key-scopes.

In: header

Path Parameters

idRequiredstring

Query Parameters

formatRequiredstring
curl -X GET "https://api.salesos.org/v1/nps-surveys/<string>/responses/export?format=%3Cstring%3E" \
  -H "Authorization: Bearer <token>"

Exported survey responses

GET
/v1/public/nps-surveys/{token}

Path Parameters

tokenRequiredstring
curl -X GET "https://api.salesos.org/v1/public/nps-surveys/<string>"
POST
/v1/public/nps-surveys/{token}

Request Body

application/jsonRequired

Path Parameters

tokenRequiredstring

Header Parameters

Idempotency-Keystring

Unique key (a UUID is ideal) that makes this write safe to retry for 24 hours: a retry with the same body replays the original response (Idempotent-Replayed: true); the same key with a different body is a 409.

Maximum length: 255
curl -X POST "https://api.salesos.org/v1/public/nps-surveys/<string>" \
  -H "Idempotency-Key: <string>" \
  -H "Content-Type: application/json" \
  -d '{}'