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.

- 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.

In the tree, grouped sandboxes and standalone sandboxes share the same workflow:
- Groups keep environments such as
STGandDEVunder 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
SettingsandInstancestay 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.
| Field | Required | Description |
|---|---|---|
| Name | Yes | Display name shown in the tree and status bar. |
| Hostname | Yes | Sandbox hostname used for WebDAV, OCAPI, and SCAPI. |
| Account | Yes | Business Manager account reference from Credentials. |
| Code Version | Usually | Target code version for upload and debug. |
| Shop API Client | Optional | API client reference used by storefront and SCAPI workflows. |
| Data API Client | Optional | API client reference used by data and code-version workflows. |
| Certificate | Optional | Client certificate settings for secured instances. |
| Secure Hostname | Optional | Alternate hostname used when certificate authentication is on. |
| Site Scope | Optional | Site and cartridge context for route and debug workflows. |
| Cartridges | Optional | Cartridges used by upload, route, and override features. |
| Auto Upload | Optional | Per-connection flag that drives automatic upload on save. |
| Group membership | Optional | The 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:
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.
| Action | Purpose |
|---|---|
| Use Certificate Authentication | Turns certificate authentication on for the connection. |
| Disable Certificate Authentication | Turns it back off. |
| Edit Secure Hostname | Sets the alternate hostname used for certificate-based WebDAV access. |
| Select Certificate File | Points to the .p12 (PKCS#12) certificate file. |
| Edit Certificate Password | Stores 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
443for 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.
