What You Can Do
Track Credit Consumption
Monitor credit usage across teams and users over time
Compliance Reporting
Export data for audit trails and regulatory compliance
Usage Analytics
Analyze workflow execution patterns and user activity
Data Backup
Create backups of organizational workflow metadata
Billing Analysis
Understand cost allocation across teams and projects
Continuous Sync
Set up data drains to continuously push data to external destinations
Navigate to your organization’s data export settings at: gumloop.com/settings/organization/data_export
Data Types
Gumloop supports six types of data for both exports and drains:
One-Time Exports
One-time exports let you download a snapshot of your organization’s data for a specific date range as a CSV file.Export Process
Select Data Type
Choose what data you want to export from the six available types.
Select Date Range
Define the time period for your data extraction.
Features:

- Billing Period Presets: Quickly select a billing period from the dropdown
- Custom Date Range: Pick specific start and end dates with the calendar picker
- Timezone Support: Choose the timezone for date interpretation
Choose Teams
Select which teams to include in your export.

This step applies to Workflow Runs, Agents, and Agent Interactions exports only. Credit Logs, Audit Logs, and Gumstack exports are scoped to the entire organization.

Organization Teams
Organization Teams
- Searchable List: Find teams quickly using search functionality
- Individual Selection: Choose specific teams with checkboxes
- Select All Toggle: Bulk select all organization teams
Personal Spaces
Personal Spaces
- Optional Toggle: Include personal spaces of organization members
- Comprehensive Coverage: When enabled, includes all user personal spaces in the export

Managing Exports
Monitor and manage all your previous export requests from the Exports tab.
- Status Tracking: Real-time status updates with colored badges
- Date Range Display: Clear indication of exported data timeframes
- Creation Timestamps: When each export was requested
- Download Actions: Direct CSV file download capability
Downloaded Data Format
Exported data is provided as CSV files with:- Header Row: Column names matching selected fields
- Comma Separation: Standard CSV format for easy import into analysis tools
- Date Formatting: ISO 8601 timestamp format
Data Drains
Data Drains let you continuously push organization data to an external destination. Unlike one-time exports, drains run automatically in the background and sync new data as it becomes available.
How Drains Work
Once created, a drain continuously monitors your selected data type for new records. When new data appears, it is automatically batched and delivered to your configured destination. The drain keeps track of what has already been synced using an internal cursor, so you never receive duplicate data. Key behaviors:- Automatic syncing: New data is pushed to your destination without manual intervention
- Adaptive polling: Sync frequency adjusts based on data volume, from every 15 seconds during high activity to up to 10 minutes during quiet periods
- Crash-safe cursor: The sync cursor advances after each successfully delivered batch, so no data is lost if a delivery fails mid-cycle
- Automatic error handling: If a drain encounters 3 consecutive failures, it is automatically paused with an “Error” status
Creating a Drain
To create a new drain, switch to the Drains tab and click + Add Drain. The drain creation wizard walks you through the following steps:Select Data Type
Choose the type of data you want to continuously sync. Available types are: Workflow Runs, Agents, Agent Interactions, Credit Logs, Audit Logs, and Gumstack.
Configure Scope
Depending on the data type, configure filtering options for the drain:
- Workflow Runs, Agents, Agent Interactions: Select which teams to include and optionally include personal workspaces
- Credit Logs: Optionally filter by credit log category
- Audit Logs, Gumstack: No additional scope configuration needed (this step is skipped)
Unlike one-time exports, drains do not require a date range. They start syncing from the time the drain is created and continue forward.
Select Fields
Choose which fields to include in the synced data. The same field presets are available as for one-time exports: Minimal, Default, Full, or Custom.

Configure Destination
Set up where data should be delivered. You’ll need to provide a drain name and select a destination type.
Gumloop supports three destination types:

- Custom Endpoint
- Amazon S3
- Datadog
Push data to any HTTP endpoint you control.Configuration:See the Drain Payload Reference for the full record semantics.Headers included:
- Endpoint Authentication: Connect your HTTP credentials (URL, authorization header, and optional signing secret)
- Format: Choose between JSON (default) or OTLP (OpenTelemetry Log Protocol)
Content-Type: application/jsonX-Gumloop-Drain-Id: The drain’s unique identifierX-Gumloop-Data-Type: The data type being syncedAuthorization: Your configured authorization header (if set)X-Gumloop-Signature: HMAC-SHA256 signature of the request body (if a signing secret is configured)
Review
Review all your settings before creating the drain. When you click Create Drain, Gumloop runs a preflight check to verify the destination is reachable and properly configured. If the check passes, the drain is created and begins syncing immediately.
Managing Drains
The Drains tab shows all your configured drains with the following information:Drain Statuses
Drain Payload Reference
Use this section if you are building a system on top of drain output — a usage warehouse, a cost monitor, or an anomaly detector.Payload envelope
Every delivery (one S3 object, or one HTTP POST body) is a single JSON document:message and the drain identity in the tags.
There is no fixed record schema. The keys of each record are exactly the fields you selected when creating the drain, plus that data type’s timestamp field, which is always included. Two drains on the same data type with different field selections produce different record shapes.
Timestamps
Credit log timestamps are ISO 8601 with aT separator (2026-08-19T17:18:04.512+00:00). Timestamps on workflow, agent, and agent interaction records are rendered with a space separator (2026-08-19 17:18:04.512000+00:00). All values are UTC. Parse both forms.
Delivery model
Each drain tracks a cursor on exactly one timestamp column:
Every sync selects records newer than the cursor in ascending order, delivers them, then advances the cursor. Each record is delivered once and is never re-sent or updated.
Cost fields by data type
- Credit Logs
- Workflow Runs
- Agent Interactions
- Gumstack
One record per individual charge — this is the ledger that the credit numbers in the Gumloop UI are computed from.
Some rows are accounting entries rather than usage: credit resets and credit cap adjustments carry no
amount. Exclude them from consumption totals.Reconciling drain data with the UI
1
Sum credits from Credit Logs, not from run records
Add up
amount on Credit Logs records for the period. Deductions are negative, so consumption is the absolute value of the negative rows. Records without an amount are not usage.2
Keep only usage categories
Consumption is the sum of
Workflow Runs, Agent Chats, AI Utilities, Company Brain, Custom Node Development, and External MCP Call. Credit Reset, Manual Adjustment, Credit Cap Adjustment, and Gifted Credits are balance bookkeeping, not spend.3
Group by correlation_id to match the UI's rows
A drain delivers one record per charge, while the credit usage view in the UI shows one row per event with the charges summed. Grouping records by
correlation_id reproduces those rows.Custom Trigger Check rows are the exception: their correlation_id is the owning agent rather than a single event, and the UI groups them per calendar day.4
Watch the boundaries
Organization-scoped drains deliver only organization-scope rows, so per-member credit cap entries never double count your totals. Also note that no credit log data exists before February 11, 2026 — a window that starts earlier will report less than the UI shows for the same range.
Category and type labels
Drain records contain the human-readable labels, not the internal values. Thecategory_filter option on the API, however, expects the internal value (for example agent_run).
Categories
Categories
Types
Types
Export Scopes
Every export (one-time or drain) runs in one of two scopes:Organization Scope
This is the default behavior. Organization-scoped exports let admins select specific teams, include personal spaces, and filter by entity IDs. All existing exports use this scope.Personal Scope
Personal exports return only your own data: workflow runs you triggered, agents you created, and interactions from your sessions. This is useful for individual compliance requests or personal usage auditing. How it works:- The export filters rows by your user ID automatically. You do not need to select teams or workspaces.
start_date,end_date, andexport_fieldsare required.- Team/workspace selection parameters (
workspace_ids,include_all_workspaces) are ignored. - Supported for Workflow Runs, Agents, Agent Interactions, and Credit Logs. Not supported for Audit Logs or Gumstack exports.
export_scope to "personal" in your request body:
Personal exports require the Enterprise plan. The
export_scope parameter defaults to "organization" when omitted, preserving backward compatibility.API Integration
For programmatic access to data export functionality, use the following endpoints:Create Data Export
Create Data Export
Endpoint: Optional Parameters:
POST /export_dataRequest Body:export_scope:"organization"(default) or"personal". Personal scope returns only your own data and requires the Enterprise plan.data_type: The type of data to export ("workflows","agents","agent_interactions","credit_logs","audit_logs", or"gumstack"). Defaults to"workflows".entity_ids: Filter the export to specific entities. For workflow exports, provide workbook IDs. For agent exports, provide agent IDs. Not applicable for credit log exports.
Credit log exports work differently from workflow and agent exports:
- Team/workspace selection parameters (
workspace_ids,include_personal_workspaces) are not applicable - Credit log exports are always scoped to the entire organization
- Use
category_filterto filter by a specific credit log category (e.g.,"PIPELINE_RUN","AGENT_RUN") - Use
permission_group_filterto filter credit logs by a specific custom role (legacy parameter name retained for API compatibility)
Check Export Status
Check Export Status
Endpoint:
GET /export_statusQuery Parameters:user_id(required): User requesting the statusdata_export_id(required): Export job identifierdownload(optional): Set totrueto download the file if completed
List Data Drains
List Data Drains
Endpoint:
GET /data-drainsQuery Parameters:organization_id(required): Your organization ID
Create Data Drain
Create Data Drain
Endpoint: Required Parameters:
POST /data-drainsRequest Body:organization_id: Your organization IDname: A display name for the draindrain_type:"custom_endpoint","s3", or"datadog"data_type:"workflows","agents","agent_interactions","credit_logs","audit_logs", or"gumstack"destination_config: Configuration object specific to the destination typeexport_fields: Array of field IDs to include in the synced data
secret_id: The credential secret ID for authenticating with the destinationproject_ids: Filter to specific team/workspace IDsinclude_personal_workspaces: Include personal workspaces in scopeentity_ids: Filter to specific entity IDscategory_filter: Filter credit logs by categoryevent_type_filter: Filter audit logs by event typestart_ts: ISO 8601 timestamp to start syncing from (defaults to current time)
When creating a drain, Gumloop performs a preflight check to verify the destination is reachable. If the check fails, the drain will not be created and an error will be returned.
Delete Data Drain
Delete Data Drain
Endpoint:
DELETE /data-drains/{drain_id}Query Parameters:organization_id(required): Your organization ID
Complete API Documentation
View the full API reference for detailed endpoint specifications and examples
Related Resources
Audit Logging
Learn about security and compliance audit logging
Custom Roles
Learn about managing user permissions and roles
Organizations and Teams
Understand how to structure your Gumloop organization
Insights
View organization-wide usage analytics and dashboards

