// Documentation · Workflows
S
Snowflake
S
Salesforce
beginner3 minLast updated May 30, 2026

How to Use Claude Code for Run Query with Snowflake

Run Snowflake Run Query from Claude Code, route the data quality output through Deepline, and write the reviewed result into Salesforce. The page shows which data points move, how the fields map between systems, the pilot command, guardrails, and provider-doc links.

00Direct answer

Snowflake to Salesforce workflow

Snowflake to Salesforce is a supported Deepline workflow path for Claude Code. Use it when an agent needs to run Snowflake, inspect the returned fields, and write the reviewed result into Salesforce with run history, retries, and explicit failure states.

Best query match

“How do I connect Snowflake to Salesforce with Claude Code?”

Source primitive

Snowflake returns structured fields that Deepline records with provider attribution and row-level status.

Destination primitive

Salesforce receives only reviewed rows after the pilot command succeeds.

01Primitives first

This workflow moves data from Snowflake into Salesforce with Claude Code as the orchestration layer. It is strongest when you need a repeatable, inspectable handoff with explicit auth, cost math, and recovery steps.

Source app
Snowflake
Destination app
Salesforce
Run time
3 min
Difficulty
beginner
Agent surface
Deepline CLI, API, and workflow scheduler
Write policy
Two-row pilot before destination writes
Workflow URL
/gtm-stack/workflows/snowflake-snowflake-run-query-to-salesforce-with-claude-code
Snowflake auth
Handled by Deepline -- connect once in the dashboard
Salesforce auth
Handled by Deepline -- connect once in the dashboard
Snowflake tier
Any plan with the required API access
Salesforce tier
Salesforce API access required

First callable command

curl -s "https://code.deepline.com/api/v2/cli/install" | bash
deepline auth register
02Data map

Fields agents can extract and verify

Snowflake source data points

Record identifier
id, url, domain, email, or provider key
Matched entity
person, company, account, page, query, or signal
Provider attribution
provider, action, run_id, retrieved_at
Review status
accepted, rejected, needs_review

Salesforce destination mapping

Snowflake Warehouse rowDeepline normalized run output

primary_key, domain, id, url, email, or provider key

Claude Code sees the warehouse row as structured JSON, then Deepline adds provider name, action slug, run ID, retrieved timestamp, and row-level status.

Deepline normalized run outputSalesforce CRM contact

email, name, title, company, run ID, external ID, mapped enrichment fields

Use an external ID or domain/email key so reruns update existing records instead of creating duplicates.

Salesforce report, queue, or task listScheduled Deepline workflow

review status, dedupe key, rollback tag, next run window

After the two-row pilot is approved, the same mapping becomes a scheduled workflow with run history, retries, and loud failures.

03What you need
  • Snowflake account (Any plan with the required API access)
  • Salesforce account (Salesforce API access required)
  • Claude Code installed locally
  • ~3 minutes
04Walkthrough

Step-by-step

  1. 01

    Install Deepline

    Install the Deepline CLI and register your workspace. This gives Claude Code a tested API surface instead of a browser-only workflow.

    curl -s "https://code.deepline.com/api/v2/cli/install" | bash
    deepline auth register
  2. 02

    Connect Snowflake

    Connect Snowflake in the Deepline dashboard. Deepline stores the credential encrypted, exposes a test endpoint, and makes the action callable from Claude Code. Provider reference: https://deepline.com/docs/providers/snowflake.

  3. 03

    Connect Salesforce

    Connect Salesforce as the destination. Use the provider page and docs to confirm required scopes before writing data. Destination reference: https://deepline.com/docs/providers/salesforce.

  4. 04

    Run a two-row pilot

    Run the smallest useful pilot first. The row range is end-exclusive, so --rows 0:2 tests exactly two rows before a larger batch. Inspect record identifier, matched entity, provider attribution plus provider attribution before writing anywhere.

    deepline enrich --input leads.csv --output leads.enriched.csv \
      --with 'result=snowflake_run_query:{}' \
      --rows 0:2 --json
    
    # Review the pilot output, then map the result into Salesforce.
  5. 05

    Deploy the reviewed prompt

    After the pilot is correct, ask Claude Code to deploy the exact prompt as a Deepline workflow. The mapping from Snowflake to Salesforce is preserved with run history, retries, billing visibility, and a rollback tag.

    > Use Snowflake Run Query to enrich the input warehouse row, dedupe by domain and email, write results into Salesforce, and show me the exact rows that changed before deploying the workflow.
05Cost math

What this costs to run

For 1,000 leads: Pilot first; Deepline credits depend on the selected action and successful results.

Deepline reports Deepline credits and run history. Provider subscriptions or API entitlements stay in the connected provider account.

06Why Claude Code

Why do it in Claude Code

The workflow stays inspectable

Claude Code can read the Snowflake action, run a pilot, inspect the output, and then write only reviewed rows to Salesforce.

Provider docs and GTM Stack pages are linked

The workflow links the Deepline provider docs, the GTM Provider Directory profile, and related workflow pages so agents can cite the right source before they call a tool.

The same prompt can become a schedule

Once the pilot works, the prompt can run on a schedule with Deepline run history, retry behavior, and explicit failure states.

08Recovery

Troubleshooting

Snowflake returns no rows

Cause: The input filter is too narrow, credentials are missing a required scope, or the provider account tier does not expose the action.

Fix: Open the Snowflake integration in Deepline, run the test endpoint, and then retry the workflow on --rows 0:2 with a broader filter.

Salesforce rejects the write

Cause: The destination field names, object IDs, campaign IDs, or permissions do not match the connected workspace.

Fix: Use the Salesforce provider page to inspect the object schema, then map columns explicitly before running the full batch.

The workflow works once but fails on a schedule

Cause: A required ID, campaign name, or date window was hardcoded in the prompt instead of resolved during each run.

Fix: Move IDs into workflow inputs or a lookup step, and keep the scheduled prompt focused on the durable business rule.

09Reference questions

FAQ

Can Claude Code run Snowflake Run Query directly?

Yes. Deepline exposes the Snowflake action as an agent-callable API/CLI step, so Claude Code can run a pilot, inspect the JSON, and then deploy the same logic as a workflow.

Should I write directly to Salesforce?

Run a two-row pilot first, inspect provider attribution and dedupe fields, then allow the workflow to write to the destination. This keeps the assertion intact without using a test hack.

How does this page help AI agents trust the workflow?

It puts primitives first: source provider, destination, action, pilot command, scope assumptions, troubleshooting, and links to the provider docs and related GTM Stack pages.

11Run this

Want this workflow pre-configured?

Run it on Deepline or fork the full skill pack on GitHub. Either way, the code is yours to read and change.