Skip to content
Who Sees What

‹ Developers

Who Sees What REST API preview

REST API access is in development for Who Sees What Enterprise and Lynceon, but it is not included in the product today because customer-facing token issuance is not available yet. This page previews the direction rather than documenting a provisioned entitlement.

The same planned capabilities are also expected over MCP for AI agents.

Access tiers

API and MCP access are planned for Who Sees What Enterprise and Lynceon, but are not included yet. The Enterprise floor is the intended entitlement boundary once customer-facing token issuance exists.

  • A Who Sees What token can call the /v1/whoseeswhat/* endpoints.
  • A Lynceon token can call those plus the /v1/lynceon/* endpoints (the superset).
  • A call to an endpoint your token is not entitled to returns 403.

Planned base URL and authentication

Production base URLs and tokens are not issued yet. The examples below use placeholders so you can see the intended shape.

Every endpoint except /health requires a bearer token:

Authorization: Bearer <your-token>

Planned first call

List the audit templates your token can run:

curl -s https://<your-endpoint>/v1/whoseeswhat/templates \
  -H 'authorization: Bearer <your-token>'

Then run one against a connected org and read the report:

curl -s -X POST https://<your-endpoint>/v1/whoseeswhat/templates/permission-audit/runs \
  -H 'authorization: Bearer <your-token>' -H 'content-type: application/json' \
  -d '{"orgId":"org_42"}'

Errors

Failures return a JSON envelope with a stable code:

{ "error": { "code": "forbidden", "message": "not entitled to ..." } }
StatuscodeMeaning
400invalid_inputThe request body or params failed the endpoint schema.
401unauthorizedMissing or invalid token.
403forbiddenAuthenticated, but not entitled to this endpoint.
404not_foundNo such route.
405method_not_allowedThe path exists under a different method.
502upstream_errorThe backend call failed.

Safety

  • Who Sees What scoping is enforced by the backend, so a script never exceeds the human caller’s own Salesforce access.
  • Every call is audited; every call that reaches the backend is metered. Reads are read-only; running a template, running a scan, and creating a monitor are writes.

Preview reference

The preview endpoint-by-endpoint reference is on the API reference page.