Connections

Manage multiple SFCC sandbox connections in VS Code

In Intellij SFCC we don't rely on dw.json to manage connections.

That file is obsolete and not a safe way to manage sandbox access. The extension keeps connection metadata in workspace state and references credentials separately, so secrets never have to live in a project file.

A connection defines the active SFCC instance used by upload, logs, debugging, route lookup, MCP tools, and remote WebDAV actions. In VS Code, the Explorer panel stores connection metadata in workspace state and rebinds accounts and API clients from the Credentials manager on startup, so the active sandbox is always wired to live credentials.

Connection groups and active sandbox
Cropped real VS Code screenshot of the Intellij SFCC Explorer connection tree with PIG, ODS, Test Realm, and active Dev 03 connection.
The screenshot is cropped to the actual Explorer panel, with red arrows for the important controls and privacy masks over hostname prefixes.
  • Grouped sandboxesPIG and ODS stay separated from the Test Realm group.
  • Active connectionDev 03 - 64 is visibly selected as the sandbox that drives IDE actions.
  • Hostname privacyOnly the prefix before the first hostname dot is masked; the platform domain remains readable.
  • Scoped actionsSettings and Instance stay nested under the active connection.
  • Standalone targetsTest remains available as a separate sandbox in the same tree.

Connection Manager

The connection manager lives in the Intellij SFCC activity-bar container, inside the Explorer panel. Use it to add connections, create connection groups, change code versions, browse remote folders over WebDAV, and activate the connection that should drive IDE actions.

Focused crops from the same real VS Code session show how the active sandbox and status bar reinforce the current target.

Connection context stays visible
Real VS Code screenshot crop showing the active Dev 03 sandbox with Settings and Instance child actions.
The active sandbox owns its Settings and Instance actions. Hostname prefixes before the first dot are masked.

In the tree, grouped sandboxes and standalone sandboxes share the same workflow:

  • Groups keep environments such as STG and DEV under a shared project or customer label.
  • Active connection marks the sandbox used by upload, logs, debugger, route lookup, MCP tools, and WebDAV commands.
  • Child actions such as Settings and Instance stay under the selected connection so operational actions remain scoped.
  • Status bar state mirrors the active connection, selected code version, and site scope.

What a Connection Stores

Each connection is a self-contained target. It references credentials by ID rather than embedding secrets, so the same account or API client can be reused across many sandboxes.

FieldRequiredDescription
NameYesDisplay name shown in the tree and status bar.
HostnameYesSandbox hostname used for WebDAV, OCAPI, and SCAPI.
AccountYesBusiness Manager account reference from Credentials.
Code VersionUsuallyTarget code version for upload and debug.
Shop API ClientOptionalAPI client reference used by storefront and SCAPI workflows.
Data API ClientOptionalAPI client reference used by data and code-version workflows.
CertificateOptionalClient certificate settings for secured instances.
Secure HostnameOptionalAlternate hostname used when certificate authentication is on.
Site ScopeOptionalSite and cartridge context for route and debug workflows.
CartridgesOptionalCartridges used by upload, route, and override features.
Auto UploadOptionalPer-connection flag that drives automatic upload on save.
Group membershipOptionalThe group this connection belongs to, if any.

Auto upload is toggled from the status bar for the active connection. When it is on, the file watcher uploads cartridge changes to the sandbox as you save. See Cartridge Management for the full upload and watch behavior.

Connection Groups

Groups organize related sandboxes under one label, for example a client name or an environment tier.

  • Create a group with Add Connection Group, then drag connections into it or assign a group when editing a connection.
  • Reorder connections and groups with Move Up and Move Down.
  • Edit or remove a group without deleting the connections it holds.

Adding a Connection

Add credentials first

Open Credentials and add the account and API clients this connection should use. The connection only stores references, so the credential has to exist before it can be linked.

Open the connection form

Use Add B2C Connection from the Explorer panel toolbar, the context menu, or the command palette.

Fill in details

Enter the connection metadata listed in What a Connection Stores. At minimum you need a name, a hostname, and an account.

Save and activate

Save the connection, then choose Activate Connection when it should become the workspace target.

Switching Connections

Switch the active connection in three ways:

Right-click a connection in the Explorer panel and choose Activate Connection.
Click the active connection item in the Status Bar to open a quick picker.

Run the Intellij SFCC active instance command from the Command Palette (Ctrl+Shift+P).

Use Focus Active Connection to scroll the tree to the current target when you have many connections.

Code Versions

Each connection tracks a target code version, shown as a child node in the tree.

  • Change Code Version lists the code versions present on the instance and lets you pick the one upload and debug should target.
  • Switch to Active Code Version on Instance aligns the connection with the version currently activated in Business Manager.

The selected code version is mirrored in the status bar alongside the active connection.

Certificate Authentication

Sandboxes that require mutual TLS can authenticate WebDAV traffic with a client certificate. The certificate settings appear as child nodes under a connection.

ActionPurpose
Use Certificate AuthenticationTurns certificate authentication on for the connection.
Disable Certificate AuthenticationTurns it back off.
Edit Secure HostnameSets the alternate hostname used for certificate-based WebDAV access.
Select Certificate FilePoints to the .p12 (PKCS#12) certificate file.
Edit Certificate PasswordStores the passphrase that unlocks the certificate file.

Import and Export

Move connections between machines or share a setup with your team. Exports carry references only, never secrets.

  • Export connections lets you choose a scope: all connections, the current selection, a specific group, or a hand-picked set.
  • Import Connections reads an exported JSON file and recreates accounts and API client references, prompting you to create credentials that are missing.
  • When an import would collide with an existing connection, you choose to override, create copies, or omit the duplicates.

Connection exports contain account usernames and API client IDs as references. Passwords, access keys, and client secrets stay in the credentials flow.

Sync to a JSON File

Some external tooling still expects a dw.json style file. The extension can keep one or more JSON files in sync with the active connection instead of treating them as the source of truth.

  • Map fields such as Hostname, Username, Password, Code Version, Client Id, and Client Secret onto a target JSON file.
  • Use Show JSON files used to synchronize the active connection to review or manage the files currently linked.

This keeps the extension as the single connection manager while still feeding tools that read a JSON config.

WebDAV and API Access

The extension uses WebDAV for code upload and remote file actions, and OCAPI or SCAPI for sandbox management. Ensure your sandbox allows:

  • WebDAV access on port 443 for code deployment and remote file browsing.
  • OCAPI for sandbox info and code version management.
  • SCAPI (optional) for enhanced API features.

If your organization uses a VPN or firewall, ensure VS Code can reach your sandbox hostname on port 443.

B2C WebDAV Explorer

Every active connection exposes a full remote file explorer for the sandbox: code versions, logs, IMPEX, catalogs, libraries, and more, with download, upload, compress, and cross-instance copy actions.

How It Uses Credentials

Connections reference accounts and API clients created in Credentials. If a referenced account or API client is missing, connection actions can still display metadata, but remote actions that require authentication will fail until the credentials are restored.

Full Setup Guide

On this page