AI_SQL / connectors /salesforce_connector.py
mgbam's picture
Update connectors/salesforce_connector.py
229dcff verified
raw
history blame
566 Bytes
"""
Salesforce connector using CData JDBC bridge.
Set env vars:
SF_USER, SF_PASS, SF_TOKEN
"""
import os, json
from cdata.salesforce import connect
_conn = connect(
User = os.getenv("SF_USER"),
Password = os.getenv("SF_PASS"),
SecurityToken = os.getenv("SF_TOKEN"),
)
def sf_query(sql: str) -> str:
"""Execute SQL against Salesforce and return JSON rows."""
cur = _conn.cursor()
cur.execute(sql)
cols = [d[0] for d in cur.description]
rows = [dict(zip(cols, r)) for r in cur.fetchall()]
return json.dumps(rows)