Axiom
Query and interrogate Axiom datasets from swamp — list datasets, describe schemas, and run APL queries with results stored as model data.
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Unused for annotations but kept for cross-model consistency. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| datasets? | array | Filter annotations to those attached to the given dataset names. |
| start? | string | ISO-8601 lower bound. |
| end? | string | ISO-8601 upper bound. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Annotation ID (e.g. `ann_…`). |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| type | string | Annotation type slug, alphanumeric or hyphens (e.g. `production-deployment`). |
| datasets | array | Datasets the annotation should overlay onto. |
| time? | string | ISO-8601 timestamp for the annotation. Defaults to server-side request time. |
| endTime? | string | Optional end time for span annotations. |
| title? | string | |
| description? | string | |
| url? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | |
| type? | string | |
| datasets? | array | |
| time? | string | |
| endTime? | string | |
| title? | string | |
| description? | string | |
| url? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Unused for dashboards but kept for cross-model consistency. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| uid | string | Dashboard UID (1-128 alphanumeric/underscore/hyphen). |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| uid? | string | Optional stable UID. If omitted, Axiom generates one server-side. |
| message? | string | Optional change-log message for this revision. |
| overwrite? | boolean | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| uid | string | |
| message? | string | |
| overwrite? | boolean | |
| version? | number | Current dashboard version. Required when `overwrite` is false. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| uid | string | |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset for get/update/delete/trim/vacuum. Falls back to AXIOM_DATASET env var. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| name | string | Unique dataset name. |
| description? | string | |
| retentionDays? | number | |
| useRetentionPeriod? | boolean | |
| edgeDeployment? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| description? | string | |
| retentionDays? | number | |
| useRetentionPeriod? | boolean | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| maxDuration | string | Compact duration string accepted by Axiom (e.g. "1h", "24h", "7d"). Data older than this is trimmed. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset for list/get/update. Falls back to AXIOM_DATASET env var. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| fieldId | string | Field identifier (the field's name as returned by `list`). |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| fieldId | string | Field identifier (the field's name as returned by `list`). |
| name | string | Field name. Required by the API even on update. |
| type | string | Field type. Required by the API even on update. |
| description? | string | |
| unit? | string | |
| hidden? | boolean | |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset for ingest methods. Falls back to AXIOM_DATASET env var. |
| orgId? | string |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset for all map-field methods. Falls back to AXIOM_DATASET env var. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| name | string | Name of the map field to create. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| name | string | Name of the map field to delete. |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset for every introspection method. Falls back to AXIOM_DATASET env var. |
| orgId? | string |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset — unused by monitor methods, retained for cross-model consistency. |
| orgId? | string | Organization ID for personal-token requests in multi-org accounts. |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Monitor identifier (e.g. `mon_xyz789`). |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| name | string | Human-readable monitor name. |
| description? | string | |
| aplQuery? | string | APL query string. At least one of aplQuery or mplQuery is required server-side. |
| mplQuery? | string | |
| alertOnNoData? | boolean | |
| columnName? | string | |
| compareDays? | number | |
| disabled? | boolean | |
| disabledUntil? | string | |
| intervalMinutes? | number | |
| rangeMinutes? | number | |
| notifierIds? | array | |
| notifyByGroup? | boolean | |
| notifyEveryRun? | boolean | |
| resolvable? | boolean | |
| secondDelay? | number | |
| skipResolved? | boolean | |
| threshold? | number | |
| tolerance? | number | |
| triggerAfterNPositiveResults? | number | |
| triggerFromNRuns? | number | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Monitor identifier to update. |
| name | string | Monitor name (required by the API on PUT). |
| description? | string | |
| aplQuery? | string | |
| mplQuery? | string | |
| alertOnNoData? | boolean | |
| columnName? | string | |
| compareDays? | number | |
| disabled? | boolean | |
| disabledUntil? | string | |
| intervalMinutes? | number | |
| rangeMinutes? | number | |
| notifierIds? | array | |
| notifyByGroup? | boolean | |
| notifyEveryRun? | boolean | |
| resolvable? | boolean | |
| secondDelay? | number | |
| skipResolved? | boolean | |
| threshold? | number | |
| tolerance? | number | |
| triggerAfterNPositiveResults? | number | |
| triggerFromNRuns? | number | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Monitor identifier to delete. Destructive. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Monitor identifier whose history to fetch. |
| startTime | string | ISO-8601 lower bound for the history window (required by the API). |
| endTime | string | ISO-8601 upper bound for the history window (required by the API). |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset — unused by notifier methods, retained for cross-model consistency. |
| orgId? | string | Organization ID for personal-token requests in multi-org accounts. |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Notifier identifier (e.g. `notify_slack_prod`). |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| name | string | Human-readable notifier name. |
| type | string | Channel discriminator — one of `slack`, `email`, `pagerduty`, `opsgenie`, `discord`, `discordWebhook`, `microsoftTeams`, `webhook`, `customWebhook`. Becomes the key under `properties`. |
| config | record | Channel-specific configuration object (e.g. `{ url: '…' }` for slack). |
| disabledUntil? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Notifier identifier to update. |
| name | string | Notifier name (required by the API on PUT). |
| type | string | Channel discriminator (required on PUT so the correct `properties.<type>` key is sent). |
| config | record | Channel-specific configuration object that replaces the existing settings. |
| disabledUntil? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Notifier identifier to delete. Destructive. |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset — unused by org methods, retained for cross-model consistency. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| name | string | Name of the new organization. |
| edgeDeployment? | string | Optional default edge deployment for the org. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Org ID to fetch. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Org ID to update. |
| name | string | Updated organization name. |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset for tail. Falls back to AXIOM_DATASET env var. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| apl | string | APL query. Reference the dataset inside the query, e.g. ['my_dataset'] | where ... | limit 100. |
| startTime? | string | |
| endTime? | string | |
| lookback? | string | Compact duration window ("30s", "5m", "24h", "7d") used to derive startTime. Ignored if startTime is set. |
| name? | string | |
| cursor? | string | Pagination cursor returned by a previous APL query. |
| defaultLimit? | number | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| limit | number | |
| filter? | string | Optional APL fragment placed in a `where` clause, e.g. severity == 'error'. |
| startTime? | string | |
| endTime? | string | |
| lookback? | string | |
| name? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| mpl | string | MPL (Metrics Pipeline Language) query string. |
| startTime? | string | |
| endTime? | string | |
| lookback? | string | |
| quickRange? | string | Shortcut for common ranges (e.g. "last-1h", "last-24h"). Mutually exclusive with explicit start/end/lookback. |
| name? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| queries | array | Array of raw legacy-query bodies as documented for /v1/query/batch. |
| startTime? | string | |
| endTime? | string | |
| lookback? | string | |
| name? | string | |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset — unused by RBAC methods, retained for cross-model consistency. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Group ID to fetch. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Group ID to delete. |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset — unused by RBAC methods, retained for cross-model consistency. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Role ID to fetch. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Role ID to delete. |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Unused for starred queries but kept for cross-model consistency. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| who? | string | Filter by owner user ID. |
| dataset? | string | Filter by dataset name. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Starred query ID. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| name | string | Human-readable name for the saved query. |
| kind | literal | Query kind. Only `apl` is supported by this endpoint. |
| who | string | Owner user ID. |
| dataset? | string | |
| metadata | record | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | |
| name? | string | |
| kind? | literal | |
| who? | string | |
| dataset? | string | |
| metadata? | record | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset — unused by token methods, retained for cross-model consistency. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Token ID to fetch. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| name | string | Human-readable token name. |
| description? | string | |
| expiresAt? | string | ISO-8601 expiration. Pass null/omit for non-expiring. |
| datasetCapabilities? | record | |
| orgCapabilities? | record | |
| viewCapabilities? | record | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Token ID to delete. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Token ID to regenerate. |
| existingTokenExpiresAt | string | ISO-8601 time at which the existing token becomes invalid (grace period). |
| newTokenExpiresAt? | string | ISO-8601 expiration for the new token. Null/omitted means non-expiring. |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset — unused by user methods, retained for cross-model consistency. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| name | string | Full name of the new user. |
| string | Email address of the new user. | |
| role | string | Role identifier to assign (e.g. "member", "admin"). |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | User ID to fetch. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Default dataset for `list` and `create`. Falls back to AXIOM_DATASET env var. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| dataset? | string | |
| name | string | Display name of the virtual field. |
| expression | string | APL expression that derives the field's value. |
| description? | string | |
| type? | string | |
| unit? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Server-issued virtual-field id. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Server-issued virtual-field id. |
| dataset | string | Dataset the virtual field belongs to. Required by the API on update. |
| name | string | Display name of the virtual field. |
| expression | string | APL expression that derives the field's value. |
| description? | string | |
| type? | string | |
| unit? | string | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | Server-issued virtual-field id. |
| _client? | unknown |
Resources
Global Arguments
| Argument | Type | Description |
|---|---|---|
| apiUrl | string | Axiom API base URL. Override for self-hosted or staging endpoints. |
| dataset? | string | Unused for views but kept for cross-model consistency. |
| orgId? | string |
| Argument | Type | Description |
|---|---|---|
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | View ID. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| name | string | Human-readable name for the view. |
| aplQuery | string | APL query body that the view persists. |
| description? | string | |
| datasets? | array | Datasets referenced by the view's APL query. |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | |
| name? | string | |
| aplQuery? | string | |
| description? | string | |
| datasets? | array | |
| _client? | unknown |
| Argument | Type | Description |
|---|---|---|
| id | string | |
| _client? | unknown |
Resources
Compare service health metrics from a window *before* a deploy against a matching window *after* it. Produces four parallel queries — request rate, error rate, p95 latency, and unique error fingerprints — so a reviewer can see the deploy's blast radius in one place. Wire it into your release pipeline as a post-deploy check, or run it manually when triaging a suspected regression. The four result resources can be fed into a diff/report workflow or an LLM call for narrative output.
Cross-reference monitors, notifiers, and datasets to surface alerting gaps: datasets with no monitors at all, monitors targeting non-existent datasets, and monitors with no notifiers attached (silent alerts). Produces three resource families a reviewer can read at a glance. Use this monthly to keep monitor hygiene tight, or after a large dataset migration to ensure alerts followed the move.
Measure the cardinality (distinct value count) of selected fields over a recent window. High-cardinality dimensions are the usual suspect when queries get slow, dashboards lag, or storage costs spike. Use this to spot fields that exploded in cardinality between releases — common with un-bucketed request IDs leaking into a tag. Supply a comma-separated list of fields. The workflow emits one count per field as a single rollup row plus a top-N values listing per field.
Find monitors that fired more than `thresholdFires` times in the supplied lookback window. Alert fatigue is the silent killer of an on-call rotation; this workflow surfaces the worst offenders so you can tune thresholds, add hysteresis, or retire stale monitors. Pulls the full monitor list, then fetches per-monitor history for the monitorId given. (Per-monitor history requires an explicit ID — the API doesn't expose a fleet-wide history endpoint.) For fleet-wide auditing, invoke this workflow N
Snapshot the retention configuration of every dataset in the workspace so governance/finops can see at a glance which datasets are unbounded, which carry costly long retention, and which are correctly capped. List-datasets returns one resource per dataset; downstream reports/CEL can filter on `retentionDays`, `useRetentionPeriod`, and `kind`.
Detect datasets that have stopped ingesting in a recent window. The most common cause is a broken collector — a service was redeployed, IAM was rotated, or the OTel endpoint changed. This workflow finds the gap before someone notices missing data in a dashboard the next morning. Step 1 lists every dataset, step 2 counts events per dataset over the configured window. A dataset with zero events in the window is a candidate outage — chain into a notifier workflow or open a ticket.
Triage errors in an Axiom dataset over a recent window. Runs two queries: a count-by-group rollup so you can see which services/scopes are noisy, and a sorted sample of the most-recent matching events (with trace_ids you can feed into `axiom-trace-lookup`). The error predicate is configurable because every team encodes "error" differently — pick whichever APL fragment matches your conventions.
End-to-end probe of Axiom's ingestion path. Writes a single tagged event, waits a configurable settle period, then queries for it. Use as a synthetic check after collector upgrades, network reconfigurations, or as a scheduled heartbeat (combine with `swamp serve` + a `trigger.schedule`).
Quick interrogation of an Axiom dataset: list everything visible to the token, tail the most recent events, and run a one-shot APL summary.
Audit an Axiom dataset for schema sanity. Dumps every column via APL `getschema`, then runs follow-up rollups so a human reviewer can spot dotted-vs-nested collisions (e.g. `service.name` vs `service\.name`), unusually sparse columns, and the per-group event volume distribution.
Golden-signals rollup over a configurable window: top N services by event volume, top N by p95 latency, and top N by error count. Three parallel APL queries grouped by the user-supplied service field — the canonical "Where's the noise coming from?" weekly review.
Fetch every span belonging to a single trace_id and write the ordered result so a workflow can chain off it (e.g. send to an LLM for explanation, or open a trace viewer URL). Lookback defaults to 24h so cold traces still resolve; widen with `lookback=7d` when investigating older incidents.
Compliance / security snapshot: lists every user, role, and group in the workspace. Run this on a schedule and diff successive runs to detect unexpected privilege grants, stale accounts, or role creep. Combine with a report extension for a quarterly access review.
Bulk-export every starred (saved) APL query in the workspace into swamp data. Use this for: - disaster-recovery snapshots (datasets can be rebuilt; the institutional knowledge in saved queries cannot) - GitOps — diff this workflow's output against a previous run to surface unauthorised changes to shared queries - migrations between Axiom workspaces (pair with `swamp data get` + a corresponding axiom-starred-query create call on the target) Each starred query is written as its
- Has README or module doc2/2earned
- README has a code example1/1earned
- README is substantive1/1earned
- Most symbols documented1/1earned
- No slow types1/1earned
- Dependencies pass trust audit2/2earned
- Has description1/1earned
- Platform support declared (or universal)2/2earned
- License declared1/1earned
- Verified public repository0/2missing