This release is a pre-release and may not be stable for production use.
node-wire-salesforce
Salesforce CRM connector for Node Wire. Lets an agent or app create, read, update and delete Leads and Contacts through the Salesforce REST API. It authenticates with an OAuth 2.0 refresh token, so long-running agents stay signed in.
Part of Node Wire. Every call runs through the Node Wire runtime, so it gets input validation, retries with a circuit breaker, scope policy, a shared error taxonomy, and OpenTelemetry tracing. A Node Wire host exposes each action over REST, gRPC and MCP.
Install
pip install node-wire-salesforce
This pulls in node-wire-runtime. Pre-releases
are published as X.Y.ZbN; install one with pip install --pre node-wire-salesforce. To install
every connector at once, use node-wire-connectors.
Wheels are compiled with Cython and contain no Python source. They are built for CPython 3.11, 3.12 and 3.13 on Linux x86_64 (manylinux and musllinux), macOS arm64 and Windows x64.
Actions
The connector registers as salesforce. MCP tool names are <connector_id>_<action>, with
dots replaced by underscores.
| Action | MCP tool | What it does |
|---|---|---|
create_lead |
salesforce_create_lead |
Creates a Lead (last_name and company are required) |
read_lead |
salesforce_read_lead |
Reads a Lead by record ID |
update_lead |
salesforce_update_lead |
Updates fields on a Lead |
delete_lead |
salesforce_delete_lead |
Deletes a Lead |
create_contact |
salesforce_create_contact |
Creates a Contact (last_name is required), optionally under an Account |
read_contact |
salesforce_read_contact |
Reads a Contact by record ID |
update_contact |
salesforce_update_contact |
Updates fields on a Contact |
delete_contact |
salesforce_delete_contact |
Deletes a Contact |
Fields accept both snake_case and Salesforce API names (last_name or LastName). Record IDs
accept record_id, id, or lead_id / contact_id.
Configuration
Add the connector to config/connectors.yaml:
connectors:
salesforce:
enabled: true
exposed_via: ["rest", "grpc", "mcp"]
auth:
provider: oauth2
grant_method: refresh_token
token_url_secret: SALESFORCE_TOKEN_URL
client_id_secret: SALESFORCE_CLIENT_ID
client_secret_secret: SALESFORCE_CLIENT_SECRET
refresh_token_secret: SALESFORCE_REFRESH_TOKEN
Secrets are read through the configured secret provider (environment variables by default):
| Variable | Purpose |
|---|---|
SALESFORCE_INSTANCE_URL |
Your org's URL, e.g. https://your-domain.my.salesforce.com |
SALESFORCE_TOKEN_URL |
OAuth 2.0 token endpoint, e.g. https://login.salesforce.com/services/oauth2/token |
SALESFORCE_CLIENT_ID |
Consumer key of the connected app |
SALESFORCE_CLIENT_SECRET |
Consumer secret of the connected app |
SALESFORCE_REFRESH_TOKEN |
Refresh token issued to the connected app |
Usage
Set NW_ALLOWED_CONNECTORS=salesforce (comma-separate several). Node Wire loads only the
connectors listed there, and discovers them through the node_wire.connectors entry point.
A Node Wire host (the REST, gRPC or MCP server, or ConnectorFactory) then builds the connector
from the configuration above. See Use a connector.
Documentation
- Node Wire on GitHub: source, issues and full documentation
- Salesforce setup guide: configuration and examples
- Connector reference
- Configuration
- Error codes
- Changelog
License
Apache-2.0. See LICENSE.
Metadata
Release files for node-wire-salesforce 1.0.0b1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 6.6 MB
Release files / node_wire_salesforce-1.0.0b1-cp313-cp313-win_amd64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 138.2 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
acd11224cdc31a458d28a6b3b1008296a703301c6e6405ab2f988820d04214c2
|
|
BLAKE2b-256 checksum How to use checksums |
d1658c6fb7893a0f895acf959799bf4ee8c3f8585b22ba61dbe85b69b7d442d5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp313-cp313-musllinux_1_2_x86_64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp313-cp313-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 912.3 kB |
| Tags | CPython 3.13 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
3b4c66451f3cfb6779ca3b6382ccb8372def2716190b5f3e63736d2b2a44920b
|
|
BLAKE2b-256 checksum How to use checksums |
25b3884fb7d2cdef9cd0ec1bdadd54e7ede71d86fdc640e2c535d059f532767a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 960.5 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d1bce8b76f8232a96d08c190eee865f894b425f499d0b40b2be30e7045afbc60
|
|
BLAKE2b-256 checksum How to use checksums |
552c2b03115234938c0f337cb37924ac5064c7f97eb3aa517d63b6884495bd83
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 157.7 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
8d8b92d6f0e0a2468beae1378ccb6b66b90a8cf088d89f469c24c5658f50c007
|
|
BLAKE2b-256 checksum How to use checksums |
23712a9f31474095e143c4c3f59ac248259064a90455b7652c4f2487eb8b5e1b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp312-cp312-win_amd64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 140.2 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
72a97a46ef153290c566bd9dc1878057828158b9c9a98ec884f379d7d40077ab
|
|
BLAKE2b-256 checksum How to use checksums |
aa4a35586fbf9a7697733ffadaee7ecfedac19155b76cb49c856a0177940343c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp312-cp312-musllinux_1_2_x86_64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp312-cp312-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 926.1 kB |
| Tags | CPython 3.12 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
7257c60932009b2eb5e5d3154ea62703da6b7b8fabd2d8a31c1969288b44e7ea
|
|
BLAKE2b-256 checksum How to use checksums |
350bad71750b371e284ece5156ba3b51716dc80a7dd3d81099d0928bf54bfb4d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 975.8 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
bb651eaea0ba0be518aaf36760823522d3862baa57e6f64458ccc1e211597a45
|
|
BLAKE2b-256 checksum How to use checksums |
5b2888f135fcaea8abfd387fe1a3e770b64e662ca7b7b92dbb932b5d1c1f2a4d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 158.9 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b74c0060d0cdb17de6c1e406603c9d1f9c1c487105cb60aa77c50e4c52ee2133
|
|
BLAKE2b-256 checksum How to use checksums |
5b4f28ac30f30f9eef919a857c6079c45814817c48c8921ef33ae2fb82ec1b2e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp311-cp311-win_amd64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 143.8 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d7a56df0d5f2dc2f57f79f3565f7a0c95017a425cb4bc021561bed2c1a0617e5
|
|
BLAKE2b-256 checksum How to use checksums |
b94b3d17e24d802f505521f82e10d4fa23c03f771a455abf09f065eefc01223d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp311-cp311-musllinux_1_2_x86_64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp311-cp311-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 926.9 kB |
| Tags | CPython 3.11 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
f7fc2f4e6bc8907f453170500ca2ab1909cbc2be7dacbcbf4cb489b8648009b5
|
|
BLAKE2b-256 checksum How to use checksums |
b2c569109f3590a502086307780c4f358fb8eedb0313d38e6a44f28c09a45556
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 962.5 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d041d5a14ac33c067b0bf2cb90bd97d25836a2b487d12b16e96c98cde681c66a
|
|
BLAKE2b-256 checksum How to use checksums |
48960931dd92708771bb483bf40d4b73184ea03ef8ab9a76ef40627a38337ea4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / node_wire_salesforce-1.0.0b1-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | node_wire_salesforce-1.0.0b1-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 158.1 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b7e64dea2d4d3d38912924694ac7eaf67a98a3e115b28f49fcf25158c8906146
|
|
BLAKE2b-256 checksum How to use checksums |
de352e4a3a847ff7ac26fafb40e87daccc78992768d0ff60537a99677f512bf6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency log