Skip to main content

Python asyncio library for ServiceNow

Project description

snow: Python asyncio library for ServiceNow

image image image image image

Snow is a simple and lightweight yet powerful and extensible library for interacting with ServiceNow. It works with modern versions of Python, utilizes asyncio and can be used for simple scripting as well as for building high-concurrency backend applications on top of the ServiceNow platform. Also, its API is fully type annotated and documented.

Example code

import asyncio

from snow import Snow
from snow.schemas.table import IncidentSchema as Incident

app = Snow("<instance>.service-now.com", basic_auth=("<username>", "<password>"))

async def main():
    # Make a TableModel object from the built-in Incident schema
    async with app.get_table(Incident) as inc:
        # Get high-priority incidents
        for response in await inc.get(Incident.priority <= 3, limit=5):
            print(f"Number: {response['number']}, Priority: {response['priority'].text}")

asyncio.run(main())

Check out the examples directory for more examples.

Documentation

The Snow API reference and more is available in the documentation.

Funding

The Snow 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 Snow.

Development status

The fundamental components (models, client code, error handling, documentation, etc) of the library is considered complete. However, automatic testing and real-world use is somewhat lacking, i.e. there are most likely bugs lurking about, and the software should be considered Alpha, shortly Beta.

Contributing

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

Author

Robert Wikman <rbw@vault13.org>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

snow-0.3.1.tar.gz (22.8 kB view hashes)

Uploaded Source

Built Distribution

snow-0.3.1-py3-none-any.whl (33.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page