Skip to main content

aiosnow: Asynchronous Python ServiceNow Library

image image image image image

aiosnow is a Python asyncio library for interacting with ServiceNow programmatically. It hopes to be:

  • Convenient: A good deal of work is put into making the library flexible and easy to use.
  • Performant: Uses non-blocking I/O to allow large amounts of API request tasks to run concurrently while being friendly on system resources.
  • Modular: Core functionality is componentized into modules that are built with composability and extensibility in mind.

Example code

import asyncio

import aiosnow
from aiosnow.models.table.declared import IncidentModel as Incident

async def main():
    client = aiosnow.Client("<instance>.service-now.com", basic_auth=("<username>", "<password>"))

    async with Incident(client, table_name="incident") as inc:
        # Fetch high-priority incidents
        for response in await inc.get(Incident.priority <= 3, limit=5):
            print(f"Number: {response['number']}, Priority: {response['priority'].value}")

asyncio.run(main())

Check out the examples directory for more material.

Documentation

API reference and more is available in the technical documentation.

Funding

The aiosnow code is permissively licensed, and can be incorporated into any type of application–commercial or otherwise–without costs or limitations. Its author believes it's in the commercial best-interest for users of the project to invest in its ongoing development.

Consider leaving a donation if you like this software, it will:

  • Directly contribute to faster releases, more features, and higher quality software.
  • Allow more time to be invested in documentation, issue triage, and community support.
  • Safeguard the future development of aiosnow.

Development status

Beta: Core functionality is done and API breakage unlikely to happen.

Contributing

Check out the contributing guidelines if you want to help out with code or documentation.

Author

Robert Wikman <rbw@vault13.org>

Metadata

Release files for aiosnow 0.6.0

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

Source distribution (sdist)

Source distribution for aiosnow 0.6.0
File Size Uploaded
aiosnow-0.6.0.tar.gz 24.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aiosnow 0.6.0
File Interpreter ABI Platform
aiosnow-0.6.0-py3-none-any.whl Python 3 none any Details

Total release size: 61.0 kB

Release files / aiosnow-0.6.0.tar.gz

Download URL aiosnow-0.6.0.tar.gz
Size 24.1 kB
Tags Source
SHA-256 checksum
How to use checksums
c057c0cb132e952d53bf643bc236a1755e880385a3278e2dbfb7ec12133d2d24
BLAKE2b-256 checksum
How to use checksums
4e7edcb9d9f74d84330fdf0f05a52e3c9cc602d3e105e862acbcac7e6a508c74
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.0b4 CPython/3.7.3 Linux/4.19.0-11-amd64

Release files / aiosnow-0.6.0-py3-none-any.whl

Download URL aiosnow-0.6.0-py3-none-any.whl
Size 36.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
685b8575f09da3a1d59a2ea6e6921fdafacb2e82ab9337d76712b57317b1350b
BLAKE2b-256 checksum
How to use checksums
193052cb8e2a0dd42f3c0b6c9cdb825bc574542c2b9792a87ceee2678f4c663b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.0b4 CPython/3.7.3 Linux/4.19.0-11-amd64

Release history Release notifications | RSS feed

This release

0.6.0 This release

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

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