Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Async Simple Salesforce

This is an async fork of the library simple-salesforce. It is considered beta software.

This fork is available on PyPI and can be installed like this:

$ pip install "async-simple-salesforce"

Because we release with alpha or beta version identifiers, you will likely need to specify the tag you want (see Release page):

$ pip install "async-simple-salesforce == 1.12.9b0"

Installation Prerequisites

This library depends on zeep, which requires lxml. On most platforms and Python versions, lxml installs via a pre-built wheel with no extra steps. However, if you are on macOS or Linux with a Python version that does not yet have a pre-built lxml wheel, the install will attempt to build lxml from source and will fail unless the libxml2 and libxslt development libraries are present.

macOS:

brew install libxml2 libxslt

Linux (Debian/Ubuntu):

sudo apt-get install libxml2-dev libxslt1-dev

After installing the system libraries, re-run the pip install command.

Versioning

Versioning for this library tracks the upstream version; i.e., when a new version of upstream has been published, it will be integrated into this codebase and released under the same version identifier, with one notable difference: we add alpha or beta identifiers to make it more obvious that this fork has not been around as long as upstream and that it has also not seen the same wide-scale usage that upstream has.

For example, when changes from upstream version 1.12.9 have been integrated into this library, a new version of this library will be published as 1.12.9b0. Further changes under the same version will increment the alpha version identifier.

How to Use

This library attempts to offer the same API as simple-salesforce inside an aio subpackage.

For instance, here's how to create and use an async Salesforce client:

import asyncio
import datetime

from simple_salesforce.aio import build_async_salesforce_client, AsyncSalesforce


async def create_client(username, consumer_key, private_key) -> AsyncSalesforce:
    # build_async_salesforce_client accepts all args of simple-salesforce Login
    return await build_async_salesforce_client(
            username=username,
            consumer_key=consumer_key,
            privatekey_file=private_key,
            request_timeout_seconds=60 * 2,
        )

async def update_contact(sf_client):
    end = datetime.datetime.now(pytz.UTC) # we need to use UTC as salesforce API requires this
    await sf_client.Contact.updated(end - datetime.timedelta(days=10), end)


async def run_query(sf_client, opportunity_name: str):
    query = (
        f"SELECT Id,StageName from Opportunity where "
        f"Name='{opportunity_name}'"
    )
    return await sf_client.query_all(search)

You can typically call any method available on the synchronous Salesforce object as an async method with an await added.

For full documentation of the async API — all authentication methods, SObject CRUD, queries, Bulk v1, Bulk v2, Metadata API, session customization, and more — see docs/async.md.

See upstream docs continued here.

How to Contribute

This project uses uv to manage dependencies. In addition, a justfile has been provided to aid contributors. If you have uv and just in your environment, you can get started with just bootstrap. You can run the test suite with just test and code quality checks with just test. For more common recipes, run just:

❯ just
just --list
Available recipes:
    bootstrap                         # Create a virtual environment and install dependencies
    build *args                       # Build the project as a package
    check                             # Run code quality checks
    check-types                       # Run mypy checks
    ci-test coverage_dir='./coverage' # Run all tests locally
    format                            # Run the formatter (`ruff`)
    lock                              # Update the lock file
    release                           # Release this project to PyPI
    sync *args                        # Make sure all dependencies are up to date in env
    test *args                        # Run all tests locally

The upstream README is located here

Metadata

Release files for async-simple-salesforce 1.12.10b0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for async-simple-salesforce 1.12.10b0
File Size Uploaded Provenance Actions
async_simple_salesforce-1.12.10b0.tar.gz 255.4 kB With provenance Details for async_simple_salesforce-1.12.10b0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for async-simple-salesforce 1.12.10b0
File Interpreter ABI Platform Actions
async_simple_salesforce-1.12.10b0-py3-none-any.whl Python 3 none any Details for async_simple_salesforce-1.12.10b0-py3-none-any.whl

Total release size: 520.0 kB

Release files / async_simple_salesforce-1.12.10b0.tar.gz

Download URL async_simple_salesforce-1.12.10b0.tar.gz
Size 255.4 kB
Tags Source
SHA-256 checksum
How to use checksums
6e8ef94ea9968cab6db4a56537cde2c1250e3d2542b41bed815d889fceb759d0
BLAKE2b-256 checksum
How to use checksums
6bd7e1a06600e087b28a71e8abc6358c811d636e0817e423406f7c916b23a353
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 4, 2026.

Transparency log

Release files / async_simple_salesforce-1.12.10b0-py3-none-any.whl

Download URL async_simple_salesforce-1.12.10b0-py3-none-any.whl
Size 264.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
184efbec8d377bc07a477749c4b2ce9163a6630d074c59a290a1258d54fe18fd
BLAKE2b-256 checksum
How to use checksums
df796ab6ff6ccfaffe6ed2500d55343c6f3e6b87cfa3fb693509524ac7309585
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 4, 2026.

Transparency log

Security for async-simple-salesforce 1.12.10b0

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.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for async_simple_salesforce-1.12.10b0.tar.gz

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 Nov 4, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page