After Save Triggers
Serverless functions that run synchronously after a record is saved (post-commit; failures are warnings)
List
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
AfterSaveTriggerArray
Run a function after every matching save
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/jsonRequirednameRequiredstring120descriptionstring1000objectTypeRequiredstringLEAD | CONTACT | ACCOUNT | OPPORTUNITY | TASK | CASE | custom:
operationsRequiredarray<array<string>>functionIdRequiredstringThe serverless function to run
timeoutMsnumber5000Minimum: 250Maximum: 10000positionnumberTriggers on the same object run in ascending order
0Maximum: 1000isActivebooleanAfterSaveTrigger
Get
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
idRequiredstringAfterSaveTrigger
Update
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/jsonRequirednamestring120descriptionstring1000objectTypestringLEAD | CONTACT | ACCOUNT | OPPORTUNITY | TASK | CASE | custom:
operationsarray<string>Items: at least 1.
functionIdstringThe serverless function to run
timeoutMsnumber5000Minimum: 250Maximum: 10000positionnumberTriggers on the same object run in ascending order
0Maximum: 1000isActivebooleanPath Parameters
idRequiredstringHeader Parameters
Idempotency-KeystringUnique 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.
255AfterSaveTrigger
Remove
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
idRequiredstringDeletedResponse
Run the function with a sample record (its own salesos.* writes are real)
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/jsonRequiredoperationstring"CREATE" | "UPDATE" | "DELETE"recordobjectSample saved record
previousobjectSample previous record (updates)
Path Parameters
idRequiredstringHeader Parameters
Idempotency-KeystringUnique 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.
255AfterSaveTestResult