/public/v1/auth/login
Exchange email/password for a JWT (no public API key).
public
Ecosystem Workbench
Public API
Send a Workbench JWT or a public API key.
Entities
Data Management
Catalogs
Predictions
Jobs
Campaigns
Analytics
- Either
Authorization: Bearer <jwt>orX-API-Key: ewb_public_...- Gateway
https://mewbserver.ecosystem.ai- Base path
/public/v1- MCP
https://mewbserver.ecosystem.ai/mcp
Check my API access
Paste a public API key or a Workbench JWT.
Enter a public API key or a Workbench JWT.
API tester
Select an endpoint to test it here.
Public API Catalog
Filter by group, method, or keyword.
117 endpoints across 16 groups, plus 31 entity collections.
No endpoints match this filter.
Auth & Health
2/public/v1/health
Gateway health check.
public
Data Management
12/public/v1/data-management/databases
List MongoDB databases.
data-management:read
/public/v1/data-management/databases
Create a MongoDB database.
data-management:write
/public/v1/data-management/databases/{database}/collections
List collections in a database.
data-management:read
/public/v1/data-management/databases/{database}/collections
Create a collection.
data-management:write
/public/v1/data-management/databases/{database}/collections/{collection}/fields
List field keys for a collection.
data-management:read
/public/v1/data-management/databases/{database}/collections/{collection}/indexes
List indexes on a collection.
data-management:read
/public/v1/data-management/databases/{database}/collections/{collection}/indexes
Create an index on a collection.
data-management:write
/public/v1/data-management/databases/{database}/collections/{collection}/documents/query
Query documents (limit capped at 1000).
data-management:read
/public/v1/data-management/databases/{database}/collections/{collection}/documents
Insert one document.
data-management:write
/public/v1/data-management/databases/{database}/collections/{collection}/documents/update
Update one document by _id (POST, not PUT).
data-management:write
/public/v1/data-management/databases/{database}/collections/{collection}/documents
Delete one document.
data-management:write
/public/v1/data-management/databases/{database}/collections/{collection}/import
Import CSV or JSON (multipart form upload).
data-management:write
Contact Catalogs
3/public/v1/catalogs
List Contact Sets (not entity collections).
catalogs:read
/public/v1/catalogs/{catalog_id}
Read one Contact Set.
catalogs:read
/public/v1/catalogs/{catalog_id}/records
List records for a Contact Set.
contacts:read
Jobs & Predictions
4/public/v1/jobs/{job_id}
Read async job status.
jobs:read
/public/v1/batch-scoring/jobs
Start a backend batch-scoring job.
predictions:run
/public/v1/batch-scoring/jobs/{job_id}
Read backend batch-scoring job progress.
jobs:read
/public/v1/predictions/run
Run Spend Personality runtime scoring.
predictions:run
Networks (large processing)
9/public/v1/networks/jobs
Start graph build/analyze job (largeMode for million-scale).
networks:jobs
/public/v1/networks/jobs/{job_id}
Read Networks job status/progress.
networks:read
/public/v1/networks/jobs/{job_id}/events
SSE (or polled) progress events for a Networks job.
networks:read
/public/v1/networks/jobs/{job_id}/result
Job result: graphId, analysisStats, displayGraph, metricsSummary.
networks:read
/public/v1/networks/jobs/{job_id}
Cancel a Networks job.
networks:jobs
/public/v1/networks/graphs/{graph_id}/display
Display sample (≤ displayMaxNodes) for a graphId.
networks:read
/public/v1/networks/graphs/{graph_id}/metrics
Top-K / paginated node metrics from analysis store.
networks:read
/public/v1/networks/graphs/{graph_id}/analyze
Run/re-run core analysis against a cached analysis graph.
networks:analyze
/public/v1/networks/graphs/{graph_id}/temporal/{category}
Temporal analysis (use largeMode + timeField + periodBounds for large corpora).
networks:analyze
Spend Personality
5/public/v1/spend-personality/configs
List algorithm configs (optional ?name= for RUN_NAME handoff).
spend-personality:configs
/public/v1/spend-personality/configs
Create or upsert a named algorithm config from wizard snapshot.
spend-personality:configs
/public/v1/spend-personality/configs/{config_id}
Read one algorithm config and run_log.
spend-personality:configs
/public/v1/spend-personality/runs
Start a phased or full pipeline (same sp_pipeline steps as the wizard). Poll GET /public/v1/jobs/{job_id} until Completed. Pass running_config_id from the first response on later phase calls so prepare/deploy share leader model ids. Requires jobs:read to poll.
spend-personality:runs
/public/v1/spend-personality/drift
Recompute per-customer personality drift from weekly/monthly score collections onto the selected demographic or generated _customers collection. Poll GET /public/v1/jobs/{job_id}.
spend-personality:runs
Money Personality
1/public/v1/money-personality/process
Start money personality scoring. Poll GET /public/v1/jobs/{job_id}.
money-personality:runs
Sentimental Equilibrium
1/public/v1/sentimental-equilibrium/process
Start sentimental equilibrium analysis from prediction logs. Poll GET /public/v1/jobs/{job_id}.
sentimental-equilibrium:runs
Interaction Personality
8/public/v1/interaction-personality/configs
List saved Interaction Personality configurations.
interaction-personality:configs
/public/v1/interaction-personality/configs
Create or upsert an Interaction Personality configuration.
interaction-personality:configs
/public/v1/interaction-personality/configs/{config_id}
Read one Interaction Personality configuration.
interaction-personality:configs
/public/v1/interaction-personality/configs/{config_id}
Update an Interaction Personality configuration.
interaction-personality:configs
/public/v1/interaction-personality/configs/{config_id}
Delete an Interaction Personality configuration.
interaction-personality:configs
/public/v1/interaction-personality/process
Start Interaction Personality scoring from a saved config_id or the configuration JSON. Poll GET /public/v1/jobs/{job_id}.
interaction-personality:runs
/public/v1/interaction-personality/events
Enqueue one interaction event or a small batch into the config input collection. Returns 202 before Mongo acknowledges.
interaction-personality:runs
/public/v1/interaction-personality/events/flush
Wait until queued events for a user_id have been inserted.
interaction-personality:runs
Two-Tower
14/public/v1/two-tower/configs
List saved Two-Tower configurations.
two-tower:configs
/public/v1/two-tower/configs
Create or upsert a Two-Tower configuration.
two-tower:configs
/public/v1/two-tower/configs/{config_id}
Read one Two-Tower configuration.
two-tower:configs
/public/v1/two-tower/configs/{config_id}
Update a Two-Tower configuration.
two-tower:configs
/public/v1/two-tower/train
Start training; poll /public/v1/jobs/{job_id}.
two-tower:train
/public/v1/two-tower/concept-test
Sync concept rank for one customer.
two-tower:train
/public/v1/two-tower/export-embeddings
Export user/item embeddings to Mongo.
two-tower:train
/public/v1/two-tower/batch-score
Batch score top-K offers to a collection.
two-tower:train
/public/v1/two-tower/predictors
List distinct predictors in a flatten collection.
two-tower:configs
/public/v1/two-tower/predictor-date-bounds
Oldest/latest dates and row count for a predictor.
two-tower:configs
/public/v1/two-tower/runs
List recent training runs (optional config_id filter).
two-tower:configs
/public/v1/two-tower/preview-schema
Preview flatten schema for a predictor slice (async job).
two-tower:configs
/public/v1/two-tower/prepare-feature-frame
Create H2O feature frame without training (async job).
two-tower:train
/public/v1/two-tower/generate-python
Generate runnable Python + API explanation for the full pipeline.
two-tower:train
LoRA Recommender
12/public/v1/lora/configs
List saved LoRA configurations.
lora:configs
/public/v1/lora/configs
Create or upsert a LoRA configuration.
lora:configs
/public/v1/lora/configs/{config_id}
Read one LoRA configuration.
lora:configs
/public/v1/lora/configs/{config_id}
Update a LoRA configuration.
lora:configs
/public/v1/lora/train
Start LoRA training; poll /public/v1/jobs/{job_id}.
lora:train
/public/v1/lora/concept-test
Sync concept rank for one customer.
lora:train
/public/v1/lora/export-embeddings
Export user/item embeddings to Mongo.
lora:train
/public/v1/lora/batch-score
Batch score top-K offers to a collection.
lora:train
/public/v1/lora/predictors
List distinct predictors in a flatten collection.
lora:configs
/public/v1/lora/predictor-date-bounds
Oldest/latest dates and row count for a predictor.
lora:configs
/public/v1/lora/runs
List recent training runs (optional config_id filter).
lora:configs
/public/v1/lora/generate-python
Generate runnable Python + API explanation for the LoRA pipeline.
lora:train
Simulations
10/public/v1/simulations/status
In-process simulation engine status.
simulation:read
/public/v1/simulations/validate-connections
Validate Workbench Mongo and pulse responder URL.
simulation:read
/public/v1/simulations/from-deployment
Open or create a simulation linked to a deployment.
simulation:runs
/public/v1/simulations/run
Start recommender or log_replay simulation. Save config via /entities/simulation first (set simulation_type + runs[].log_replay).
simulation:runs
/public/v1/simulations/cancel
Cancel a running simulation by run_uuid.
simulation:runs
/public/v1/simulations/logs
Fetch simulation run logs.
simulation:read
/public/v1/simulations/logs
Clear simulation run logs.
simulation:runs
/public/v1/simulations/results/parameters
Parameter/metric outputs (includes HitAtK for log_replay).
simulation:read
/public/v1/simulations/results/plot
Plot outputs for a simulation run.
simulation:read
/public/v1/simulations/results/options
Plot variable options for a simulation run.
simulation:read
Ontology
12/public/v1/ontology
List ontologies.
ontology:read
/public/v1/ontology/{ontology_id}
Get one ontology document.
ontology:read
/public/v1/ontology
Create an ontology.
ontology:write
/public/v1/ontology/{ontology_id}
Update an ontology (POST — not PUT/PATCH).
ontology:write
/public/v1/ontology/{ontology_id}
Delete an ontology.
ontology:write
/public/v1/ontology/from-data-source
Generate-for-me: infer ontology + draft mapping from a MongoDB database.collection.
ontology:write
/public/v1/ontology/{ontology_id}/mappings
List mappings for an ontology.
ontology:read
/public/v1/ontology/{ontology_id}/mappings
Create a mapping document.
ontology:write
/public/v1/ontology/{ontology_id}/mappings/suggest-multi
Generate matches (detected types + Matched status). Preserves Accepted rows.
ontology:write
/public/v1/ontology/{ontology_id}/mappings/{mapping_id}
Update a mapping (POST — not PUT/PATCH).
ontology:write
/public/v1/ontology/{ontology_id}/resolve-term
Resolve a business term to ontology properties/fields.
ontology:read
/public/v1/ontology/{ontology_id}/resolve-question
Resolve an NL question to mongo_filter / sql_filter.
ontology:read
Campaigns
18/public/v1/campaigns
List campaigns.
entities:read
/public/v1/campaigns/channel-catalog
Platform campaign delivery channel catalog (email, WhatsApp, WhatsApp Local, Python, …).
entities:read
/public/v1/campaigns/{campaign_id}
Read one campaign.
entities:read
/public/v1/campaigns/{campaign_id}/channels
Campaign channel options, selection, send_track, and platform catalog.
entities:read
/public/v1/campaigns/{campaign_id}/channel-selection
Set Campaign Management channel selection (option_ids).
entities:write
/public/v1/campaigns/{campaign_id}/trigger
Trigger a campaign run.
entities:write
/public/v1/campaigns/{campaign_id}/apply-params
Apply campaign parameter overrides.
entities:write
/public/v1/campaigns/{campaign_id}/schedules
Replace embedded multi-schedule definitions.
entities:write
/public/v1/campaigns/{campaign_id}/schedules
List embedded and registered schedules.
entities:read
/public/v1/campaigns/{campaign_id}/schedules/sync
Save optional schedules and arm all enabled crons into the claim loop.
entities:write
/public/v1/campaigns/{campaign_id}/schedules/generate
Plain-English → validated schedule draft rows (no write/arm). Returns schedules with next_run_at.
entities:read
/public/v1/campaigns/{campaign_id}/schedule
Register one recurring schedule (cron + optional id, param_overrides, cadence).
entities:write
/public/v1/campaigns/{campaign_id}/schedules/{schedule_id}
Unregister one armed schedule from the claim loop.
entities:write
/public/v1/campaigns/{campaign_id}/schedule
Unregister one schedule (?schedule_id=) or all (?all=true).
entities:write
/public/v1/campaigns/{campaign_id}/runs
List runs for a campaign.
jobs:read
/public/v1/campaigns/runs/{run_id}
Read one campaign run.
jobs:read
/public/v1/campaigns/runs/{run_id}/progress
Campaign run progress.
jobs:read
/public/v1/campaigns/runs/{run_id}/stop
Stop a campaign run.
entities:write
Analytics
4/public/v1/analytics/dashboards
List analytics dashboards.
entities:read
/public/v1/analytics/dashboards/{dashboard_id}
Read one dashboard.
entities:read
/public/v1/analytics/dashboards/{dashboard_id}/share
Read dashboard share metadata.
entities:read
/public/v1/analytics/dashboards/{dashboard_id}/share
Create or refresh dashboard share.
entities:write
Account & Models
2/public/v1/me/apis
Endpoints accessible to the current public credential.
public
/v1/models
OpenAI-compatible model list (also /models).
predictions:run
Entity collections
31
Each Workbench entity type has paths under
/public/v1/entities/<collection>.
Requires entities:read / entities:write plus your JWT.
Projects
projects
List
GET /public/v1/entities/projects
Read
GET /public/v1/entities/projects/{entity_id}
Create
POST /public/v1/entities/projects
Update
PUT /public/v1/entities/projects/{entity_id}
Delete
DELETE /public/v1/entities/projects/{entity_id}
Agent Configs
agent_configs
List
GET /public/v1/entities/agent_configs
Read
GET /public/v1/entities/agent_configs/{entity_id}
Create
POST /public/v1/entities/agent_configs
Update
PUT /public/v1/entities/agent_configs/{entity_id}
Delete
DELETE /public/v1/entities/agent_configs/{entity_id}
Agent Node Configs
agent_node_configs
List
GET /public/v1/entities/agent_node_configs
Read
GET /public/v1/entities/agent_node_configs/{entity_id}
Create
POST /public/v1/entities/agent_node_configs
Update
PUT /public/v1/entities/agent_node_configs/{entity_id}
Delete
DELETE /public/v1/entities/agent_node_configs/{entity_id}
Agent Channel Configs
agent_channel_configs
List
GET /public/v1/entities/agent_channel_configs
Read
GET /public/v1/entities/agent_channel_configs/{entity_id}
Create
POST /public/v1/entities/agent_channel_configs
Update
PUT /public/v1/entities/agent_channel_configs/{entity_id}
Delete
DELETE /public/v1/entities/agent_channel_configs/{entity_id}
Custom Channel Modules
custom_channel_modules
List
GET /public/v1/entities/custom_channel_modules
Read
GET /public/v1/entities/custom_channel_modules/{entity_id}
Create
POST /public/v1/entities/custom_channel_modules
Update
PUT /public/v1/entities/custom_channel_modules/{entity_id}
Delete
DELETE /public/v1/entities/custom_channel_modules/{entity_id}
Calendar
calendar
List
GET /public/v1/entities/calendar
Read
GET /public/v1/entities/calendar/{entity_id}
Create
POST /public/v1/entities/calendar
Update
PUT /public/v1/entities/calendar/{entity_id}
Delete
DELETE /public/v1/entities/calendar/{entity_id}
Fact Injection Config
chat_config
List
GET /public/v1/entities/chat_config
Read
GET /public/v1/entities/chat_config/{entity_id}
Create
POST /public/v1/entities/chat_config
Update
PUT /public/v1/entities/chat_config/{entity_id}
Delete
DELETE /public/v1/entities/chat_config/{entity_id}
Dashboards
dashboards
List
GET /public/v1/entities/dashboards
Read
GET /public/v1/entities/dashboards/{entity_id}
Create
POST /public/v1/entities/dashboards
Update
PUT /public/v1/entities/dashboards/{entity_id}
Delete
DELETE /public/v1/entities/dashboards/{entity_id}
Data Wizards
data_wizards
List
GET /public/v1/entities/data_wizards
Read
GET /public/v1/entities/data_wizards/{entity_id}
Create
POST /public/v1/entities/data_wizards
Update
PUT /public/v1/entities/data_wizards/{entity_id}
Delete
DELETE /public/v1/entities/data_wizards/{entity_id}
Dynamic Engagement
dynamic_engagement
List
GET /public/v1/entities/dynamic_engagement
Read
GET /public/v1/entities/dynamic_engagement/{entity_id}
Create
POST /public/v1/entities/dynamic_engagement
Update
PUT /public/v1/entities/dynamic_engagement/{entity_id}
Delete
DELETE /public/v1/entities/dynamic_engagement/{entity_id}
Enrichment Configs
enrichment_configs
List
GET /public/v1/entities/enrichment_configs
Read
GET /public/v1/entities/enrichment_configs/{entity_id}
Create
POST /public/v1/entities/enrichment_configs
Update
PUT /public/v1/entities/enrichment_configs/{entity_id}
Delete
DELETE /public/v1/entities/enrichment_configs/{entity_id}
Enrichment Pipelines
enrichment_pipelines
List
GET /public/v1/entities/enrichment_pipelines
Read
GET /public/v1/entities/enrichment_pipelines/{entity_id}
Create
POST /public/v1/entities/enrichment_pipelines
Update
PUT /public/v1/entities/enrichment_pipelines/{entity_id}
Delete
DELETE /public/v1/entities/enrichment_pipelines/{entity_id}
Frames
frames
List
GET /public/v1/entities/frames
Read
GET /public/v1/entities/frames/{entity_id}
Create
POST /public/v1/entities/frames
Update
PUT /public/v1/entities/frames/{entity_id}
Delete
DELETE /public/v1/entities/frames/{entity_id}
Predictions
predictions
List
GET /public/v1/entities/predictions
Read
GET /public/v1/entities/predictions/{entity_id}
Create
POST /public/v1/entities/predictions
Update
PUT /public/v1/entities/predictions/{entity_id}
Delete
DELETE /public/v1/entities/predictions/{entity_id}
Data Connections
data_connections
List
GET /public/v1/entities/data_connections
Read
GET /public/v1/entities/data_connections/{entity_id}
Create
POST /public/v1/entities/data_connections
Update
PUT /public/v1/entities/data_connections/{entity_id}
Delete
DELETE /public/v1/entities/data_connections/{entity_id}
Offer Matrix
offer_matrix
List
GET /public/v1/entities/offer_matrix
Read
GET /public/v1/entities/offer_matrix/{entity_id}
Create
POST /public/v1/entities/offer_matrix
Update
PUT /public/v1/entities/offer_matrix/{entity_id}
Delete
DELETE /public/v1/entities/offer_matrix/{entity_id}
Offer Matrix History
offer_matrix_history
List
GET /public/v1/entities/offer_matrix_history
Read
GET /public/v1/entities/offer_matrix_history/{entity_id}
Create
POST /public/v1/entities/offer_matrix_history
Update
PUT /public/v1/entities/offer_matrix_history/{entity_id}
Delete
DELETE /public/v1/entities/offer_matrix_history/{entity_id}
Prompt Library
prompt_library
List
GET /public/v1/entities/prompt_library
Read
GET /public/v1/entities/prompt_library/{entity_id}
Create
POST /public/v1/entities/prompt_library
Update
PUT /public/v1/entities/prompt_library/{entity_id}
Delete
DELETE /public/v1/entities/prompt_library/{entity_id}
Responder Analytics Config
responder_analytics_config
List
GET /public/v1/entities/responder_analytics_config
Read
GET /public/v1/entities/responder_analytics_config/{entity_id}
Create
POST /public/v1/entities/responder_analytics_config
Update
PUT /public/v1/entities/responder_analytics_config/{entity_id}
Delete
DELETE /public/v1/entities/responder_analytics_config/{entity_id}
Responder API Config
responder_config
List
GET /public/v1/entities/responder_config
Read
GET /public/v1/entities/responder_config/{entity_id}
Create
POST /public/v1/entities/responder_config
Update
PUT /public/v1/entities/responder_config/{entity_id}
Delete
DELETE /public/v1/entities/responder_config/{entity_id}
Simulation
simulation
List
GET /public/v1/entities/simulation
Read
GET /public/v1/entities/simulation/{entity_id}
Create
POST /public/v1/entities/simulation
Update
PUT /public/v1/entities/simulation/{entity_id}
Delete
DELETE /public/v1/entities/simulation/{entity_id}
Campaigns
campaigns
List
GET /public/v1/entities/campaigns
Read
GET /public/v1/entities/campaigns/{entity_id}
Create
POST /public/v1/entities/campaigns
Update
PUT /public/v1/entities/campaigns/{entity_id}
Delete
DELETE /public/v1/entities/campaigns/{entity_id}
Ontology
ontology
List
GET /public/v1/entities/ontology
Read
GET /public/v1/entities/ontology/{entity_id}
Create
POST /public/v1/entities/ontology
Update
PUT /public/v1/entities/ontology/{entity_id}
Delete
DELETE /public/v1/entities/ontology/{entity_id}
Ontology Mappings
ontology_mappings
List
GET /public/v1/entities/ontology_mappings
Read
GET /public/v1/entities/ontology_mappings/{entity_id}
Create
POST /public/v1/entities/ontology_mappings
Update
PUT /public/v1/entities/ontology_mappings/{entity_id}
Delete
DELETE /public/v1/entities/ontology_mappings/{entity_id}
Networks
networks
List
GET /public/v1/entities/networks
Read
GET /public/v1/entities/networks/{entity_id}
Create
POST /public/v1/entities/networks
Update
PUT /public/v1/entities/networks/{entity_id}
Delete
DELETE /public/v1/entities/networks/{entity_id}
Network Configs
network_configs
List
GET /public/v1/entities/network_configs
Read
GET /public/v1/entities/network_configs/{entity_id}
Create
POST /public/v1/entities/network_configs
Update
PUT /public/v1/entities/network_configs/{entity_id}
Delete
DELETE /public/v1/entities/network_configs/{entity_id}
Network Selector Configs
network_selector_configs
List
GET /public/v1/entities/network_selector_configs
Read
GET /public/v1/entities/network_selector_configs/{entity_id}
Create
POST /public/v1/entities/network_selector_configs
Update
PUT /public/v1/entities/network_selector_configs/{entity_id}
Delete
DELETE /public/v1/entities/network_selector_configs/{entity_id}
Custom Forms
custom_forms
List
GET /public/v1/entities/custom_forms
Read
GET /public/v1/entities/custom_forms/{entity_id}
Create
POST /public/v1/entities/custom_forms
Update
PUT /public/v1/entities/custom_forms/{entity_id}
Delete
DELETE /public/v1/entities/custom_forms/{entity_id}
Workbench Analytics Dashboards
workbench_analytics_dashboards
List
GET /public/v1/entities/workbench_analytics_dashboards
Read
GET /public/v1/entities/workbench_analytics_dashboards/{entity_id}
Create
POST /public/v1/entities/workbench_analytics_dashboards
Update
PUT /public/v1/entities/workbench_analytics_dashboards/{entity_id}
Delete
DELETE /public/v1/entities/workbench_analytics_dashboards/{entity_id}
Lora Configs
lora_configs
List
GET /public/v1/entities/lora_configs
Read
GET /public/v1/entities/lora_configs/{entity_id}
Create
POST /public/v1/entities/lora_configs
Update
PUT /public/v1/entities/lora_configs/{entity_id}
Delete
DELETE /public/v1/entities/lora_configs/{entity_id}
Lora Runs
lora_runs
List
GET /public/v1/entities/lora_runs
Read
GET /public/v1/entities/lora_runs/{entity_id}
Create
POST /public/v1/entities/lora_runs
Update
PUT /public/v1/entities/lora_runs/{entity_id}
Delete
DELETE /public/v1/entities/lora_runs/{entity_id}
Notebooks and scripts
Send a public API key or a Workbench JWT.
import os
import requests
BASE = "https://mewbserver.ecosystem.ai/public/v1"
# Option A: public API key
HEADERS = {"X-API-Key": os.environ["EWB_PUBLIC_API_KEY"]}
# Option B: Workbench JWT instead
# HEADERS = {"Authorization": f"Bearer {os.environ['EWB_JWT']}"}
projects = requests.get(f"{BASE}/entities/projects", headers=HEADERS, params={"limit": 20}, timeout=30)
print(projects.json())
Need the Workbench app?
Keys are issued in Workbench Administration → API Keys.