Skip to main content

Python SNC (REST) API

Project description

ServiceNow Python API

What: PySnc is a python interface for the ServiceNow and the Table API. It is designed to mimic the familiar GlideRecord interface you know with pythonic support where applicable.

Why: Spawned from the desire to interact with ServiceNow data in a familiar and consistent manner

Install

pip install pysnc

Quick Start

from pysnc import ServiceNowClient

client = ServiceNowClient('https://dev0000.service-now.com', ('integration.user', password))

gr = client.GlideRecord('sys_user')
gr.add_query('user_name', 'admin')
gr.query()
for r in gr:
	print(r.sys_id)

Or you can more traditionally:

while gr.next():
	print(gr.sys_id);

It is recommended you use OAuth, however:

from pysnc import ServiceNowClient, ServiceNowOAuth2

client = ServiceNowClient('dev0000', ServiceNowOAuth2('integration.user', password))

Documentation

Full documentation currently available at https://servicenow.github.io/PySNC/

Or build them yourself:

cd docs && make html

Development Notes

The following functions are not (yet?) supported:

  • choose_window(first_row, last_row, force_count=True) TODO
  • get_class_display_value()
  • get_record_class_name()
  • get_unique_value()
  • is_valid() TODO
  • is_valid_record()
  • new_record()
  • set_new_guid_value(guid)
  • update_multiple() TODO
  • _next()
  • _query()

The following will not be implemented:

  • get_attribute(field_name) Not Applicable
  • get_ED() Not Applicable
  • get_label() Not Applicable
  • get_last_error_message() Not Applicable
  • set_workflow(enable) Not Possible
  • operation() Not Applicable
  • set_abort_action() Not Applicable
  • is_valid_field() Not Possible
  • is_action_aborted() Not Applicable

Further Reading

See the documentation.

Feature Wants and TODO

  • GlideAggregate support (/api/now/stats/{tableName})

And we want to:

  • Improve documentation
  • Refactor session abstraction
  • Improve Attachment OO

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

pysnc-1.0.5.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

pysnc-1.0.5-py2.py3-none-any.whl (17.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pysnc-1.0.5.tar.gz.

File metadata

  • Download URL: pysnc-1.0.5.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.9.0 keyring/23.4.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.0

File hashes

Hashes for pysnc-1.0.5.tar.gz
Algorithm Hash digest
SHA256 56284d68285bb06b734af528006e6ec459a75f556665ae6d363b9fd94a51ac83
MD5 26b11209c95fd7bb04b534b500aa3a04
BLAKE2b-256 2e62d45e0e717daaea980d246f8878e3a265e087a09b15eceeea4dd211785fb8

See more details on using hashes here.

File details

Details for the file pysnc-1.0.5-py2.py3-none-any.whl.

File metadata

  • Download URL: pysnc-1.0.5-py2.py3-none-any.whl
  • Upload date:
  • Size: 17.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.9.0 keyring/23.4.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.0

File hashes

Hashes for pysnc-1.0.5-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1667e0d399cb24c41707db737c70b5f45147b223aa283565842a4d28c16ae973
MD5 993de74e71c598a897072aec7ae8ef8a
BLAKE2b-256 cb0773390094a39db34814de03dd95417f48e67cabd9139a5dd5c0ddb90b9747

See more details on using hashes here.

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