Getting Started

5-Minute Quickstart with curl

Run the same Datafuse v1 flow from the terminal with raw HTTP calls.

This path uses curl plus a user access token. It is useful for smoke tests, shell scripts, and quick debugging without installing the SDKs.


Step 1: Set Your Environment

export DATAFUSE_API_KEY="unused_for_app_routes"
export DATAFUSE_API_URL="https://api.datafuse.xyz"
export DF_TOKEN="your_user_access_token"

!TIP If you run Datafuse in a private VPC, point DATAFUSE_API_URL at your internal gateway instead of the public host.


Step 2: List Integrations

Use the integrations endpoint to discover the integration you want to use.

curl -sS "$DATAFUSE_API_URL/api/v1/integrations" \
  -H "Authorization: Bearer $DF_TOKEN"

Pick an integration id from the response and export it for the next step.

export INTEGRATION_ID="your_integration_id"

Step 3: Resolve Tools

The resolve step returns the available tool slugs for the selected integration.

curl -sS -X POST "$DATAFUSE_API_URL/api/v1/integrations/$INTEGRATION_ID/resolve-tools" \
  -H "Authorization: Bearer $DF_TOKEN"

If you have jq installed, capture the first tool automatically:

TOOL_KEY=$(curl -sS -X POST "$DATAFUSE_API_URL/api/v1/integrations/$INTEGRATION_ID/resolve-tools" \
  -H "Authorization: Bearer $DF_TOKEN" | jq -r '.[0].slug')

Step 4: Invoke the Tool

Feed the selected tool_key and a JSON arguments object into the invoke endpoint. Swap the payload to match the selected tool's schema.

curl -sS -X POST "$DATAFUSE_API_URL/api/v1/integrations/$INTEGRATION_ID/invoke" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $DF_TOKEN" \
  -d '{
    "tool_key": "'"$TOOL_KEY"'",
    "arguments": {
      "channel": "#engineering",
      "text": "Deployment is complete and staging is ready for validation."
    }
  }'

If you want to skip jq, paste the tool slug from the resolve response directly into tool_key.


Next Steps