Cargo CLI — Connections
Connector and integration management: listing connectors, discovering available integrations, and managing authenticated connector instances.
See
references/response-shapes.mdfor full JSON response structures. Seereferences/troubleshooting.mdfor common errors and how to fix them. Seereferences/examples/connectors.mdfor connector CRUD and discovery examples. Seereferences/examples/integrations.mdfor listing available integrations and OAuth flows. For third-party connector rate limit handling and retry config in workflows, seecargo-orchestration/references/polling.mdandcargo-orchestration/references/troubleshooting.md. Native integrations do not have rate limits.
Bootstrap
Already signed in (cargo-ai whoami returns a workspace)? Skip to the next section.
Every command prints JSON to stdout; failures exit non-zero with {"errorMessage": "..."}. Anything that creates a run or a batch is async — pass --wait-until-finished or poll the matching get. When the full skill bundle is installed, ../cargo/references/prerequisites.md adds the CLI version pin, token scopes, and the admin-only surface.
Key concepts
Integration: The external service type (e.g. HubSpot, Clearbit, Salesforce). Integrations define what actions are available.
Connector: An authenticated instance of an integration. One integration can have multiple connectors (e.g. two different HubSpot accounts). Connectors are what you reference in workflow node graphs.
Discover resources first
Looking for an action? Search for it — don't browse the catalog. Two keyword
searches cover the whole surface, and both beat paging integration list or
reading a whole integration get payload:
Reach for the catalog commands when you need the integration, not an action — its auth fields, its extractors, or the full input schema of an action you have already picked:
Deprecated integrations still appear in the catalog.
integration listreturns them withisDeprecated: trueand a display name ending in(deprecated). Existing connectors keep working — deprecation breaks nothing — but never wire a new workflow to one. Two were deprecated in CLI 1.0.92, the self-referentialcargointegration among them. Read the flag rather than keeping a list: checkisDeprecatedbefore proposing any integration you found by browsing instead of byaction list.
Which action search?
Default to action list — it is the one that hands you something you can execute.
Switch to action search for the two questions it alone answers: which paid
actions match this? (--credits-only) and what does this category offer?
(--category). Both rank an action-slug or name hit above an integration hit,
above a description hit, and require all query terms to match.
integration get vs native-integration get
These two commands return different sets of actions and are not interchangeable:
Example: To find HubSpot-specific actions, use integration get hubspot — native-integration get will not return them.
Quick reference
Connectors
Connectors are authenticated connections to external services.
Note: Creating a connector requires --slug (unique identifier) in addition to --name (display name) and --integration-slug. For OAuth-based integrations, the authentication flow is completed separately via connection integration complete-oauth.
Integrations
Integrations define the available services and their connector actions.
Integration categories: engagement, marketing, sales, finance, analytics, freeform, success, support, enrichment, storage, custom.
Use integration get <slug> to discover all actions available for a specific third-party service (e.g. HubSpot, Salesforce). Use native-integration get only for built-in Cargo actions — it does not return HubSpot or other service-specific actions. Actions are referenced by actionSlug in workflow node graphs (see the cargo-orchestration skill's references/nodes.md).
Connector autocomplete — fetching available values for action fields
Some action fields don't accept freeform input — their allowed values must be fetched dynamically from the connector. When you inspect an action's config (via integration get <slug> or native-integration get), look at the uiSchema alongside the jsonSchema. If a field's uiSchema contains "ui:widget": "IntegrationAutocompleteWidget", the valid values for that field must be retrieved using connector autocomplete.
How to detect autocomplete fields
When an action's config looks like this:
The objectType field requires autocomplete. The ui:options.slug ("listObjects") is the autocomplete slug you pass to connector autocomplete.
How to call connector autocomplete
Autocomplete with parameters
Some autocomplete fields depend on the value of another field. This is indicated by a params object in ui:options:
Here, propertyName depends on the selected objectType. Replace the $this.$parent... expression with the actual value you chose:
Response format
Use the value field in your node config. The label is the human-readable display name. Results may also include optional description and parent fields.
End-to-end example: configuring a HubSpot action
Using connector actions in workflows
Connector actions are used as nodes in workflow graphs. To use an action:
Reading an action's input schema — and where the inputs go
An action's input fields live at actions.<slug>.config.schema in the integration get <slug> output (config.jsonSchema is the same schema decorated for the form UI). Read it before calling an action — don't guess field names.
Two footguns:
- For a top-level action (
action execute/execute-batch), the input values go in--data, NOT in the action'sconfig. The fields described byconfig.schemaare the--datapayload; the action definition carries noconfigkey at all. Misplacing them is no longer a loud failure: older backends rejected the call withA top-level action does not use action.config; pass the action's inputs via data instead., newer ones dropconfigon the way in and run the action with no inputs at all — you get a missing-required-field error from the provider, or an empty result, not a message aboutconfig. If an action comes back empty for no obvious reason, check that the inputs are in--data. (Inside a workflow node graph those same fields go in the node'sconfig— seecargo-orchestration/references/nodes.md. The "--data, notconfig" rule is specific toaction execute/execute-batch.) - Some inputs must be resolved first via autocomplete. If a field's
uiSchemacarriesIntegrationAutocompleteWidget, fetch its values withconnector autocomplete(above). Notably, LinkedIn engagement/extraction actions (connectProfile,visitProfile,extractEventAttendees,extractProfileViewers) requireidentityIds— the connected account that acts — resolved via thelistIdentityIdsautocomplete. Amust match format "uuid"error means that identity is missing.
Example connector node (Clearbit company enrichment):
Help
Every command supports --help:


