Documentation

Client Overview

Learn the shared v1 route surface used by the Python, TypeScript, and curl examples.

Datafuse keeps the public app contract simple: authenticate, list integrations, resolve tools, invoke a tool, and inspect audit logs. The same flow works from Python, TypeScript, or raw HTTP.

!IMPORTANT The integration routes below currently require a JWT bearer token (DF_TOKEN) obtained from the app's authentication flow. They do not accept an x-api-key / DATAFUSE_API_KEY. API keys (df_live_...) are accepted only by the /api/v1/connected_accounts routes; all other authenticated routes (including /api/v1/api-keys and /api/v1/audit/logs) require a JWT bearer token.


Shared Route Surface

RouteAuthPurpose
GET /api/v1/integrationsJWT bearerList the current user's integrations.
POST /api/v1/integrationsJWT bearerCreate an integration (provider_key, credentials, auth_scheme).
POST /api/v1/integrations/{id}/resolve-toolsJWT bearerDiscover the tool slugs available for an integration.
POST /api/v1/integrations/{id}/invokeJWT bearerExecute a selected tool with a JSON tool_key + arguments payload.
GET /api/v1/audit/logsJWT bearerRead the latest compliance audit events for your organization.

Common Configuration

Both client examples and the curl guide use the same environment variables:

  • DATAFUSE_API_URL: The gateway host, defaulting to https://api.datafuse.xyz.
  • DF_TOKEN: A user access token from the app's authentication flow.

Next Steps