SalesOS.

A P I Keys

API key management

Get all API keys for current user

GET
/api/api-keys

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Query Parameters

statusstring
Value in: "ACTIVE" | "REVOKED" | "EXPIRED"
curl -X GET "https://www.salesos.org/api/api/api-keys?status=ACTIVE" \
  -H "Authorization: Bearer <token>"

Create a new API key

POST
/api/api-keys

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Request Body

application/jsonRequired
nameRequiredstring

API key name

descriptionstring

API key description

scopesarray<string>

Scopes/permissions for the key

Default: ["read"]
rateLimitnumber

Rate limit (requests per window)

Default: 1000
rateLimitWindownumber

Rate limit window in seconds

Default: 3600
allowedIpsarray<string>

Allowed IP addresses (empty for all)

expiresAtstring

Expiration date

curl -X POST "https://www.salesos.org/api/api/api-keys" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "description": "string",
    "scopes": [
      "read",
      "write",
      "delete"
    ],
    "rateLimit": 1000,
    "rateLimitWindow": 3600,
    "allowedIps": [
      "string"
    ],
    "expiresAt": "string"
  }'

Get an API key by ID

GET
/api/api-keys/{id}

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Path Parameters

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

Update an API key

PATCH
/api/api-keys/{id}

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Request Body

application/jsonRequired
namestring

API key name

descriptionstring

API key description

scopesarray<string>

Scopes/permissions for the key

rateLimitnumber

Rate limit (requests per window)

rateLimitWindownumber

Rate limit window in seconds

allowedIpsarray<string>

Allowed IP addresses

expiresAtstring

Expiration date

statusstring

API key status

Value in: "ACTIVE" | "REVOKED" | "EXPIRED"

Path Parameters

idRequiredstring
curl -X PATCH "https://www.salesos.org/api/api/api-keys/<string>" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "description": "string",
    "scopes": [
      "string"
    ],
    "rateLimit": 0,
    "rateLimitWindow": 0,
    "allowedIps": [
      "string"
    ],
    "expiresAt": "string",
    "status": "ACTIVE"
  }'

Delete an API key

DELETE
/api/api-keys/{id}

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Path Parameters

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

Revoke an API key

POST
/api/api-keys/{id}/revoke

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Path Parameters

idRequiredstring
curl -X POST "https://www.salesos.org/api/api/api-keys/<string>/revoke" \
  -H "Authorization: Bearer <token>"

Regenerate an API key (creates new key value)

POST
/api/api-keys/{id}/regenerate

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Path Parameters

idRequiredstring
curl -X POST "https://www.salesos.org/api/api/api-keys/<string>/regenerate" \
  -H "Authorization: Bearer <token>"

Get API key usage logs

GET
/api/api-keys/{id}/usage

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Path Parameters

idRequiredstring

Query Parameters

pagenumber
limitnumber
curl -X GET "https://www.salesos.org/api/api/api-keys/<string>/usage?page=0&limit=0" \
  -H "Authorization: Bearer <token>"

Get API key usage statistics

GET
/api/api-keys/{id}/stats

Authorization

AuthorizationRequiredBearer <token>

Enter your JWT token

In: header

Path Parameters

idRequiredstring
curl -X GET "https://www.salesos.org/api/api/api-keys/<string>/stats" \
  -H "Authorization: Bearer <token>"