# 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
```python
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)
```
## Documentation
Full documentation currently available at [https://servicenow.github.io/PySNC/](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()`
* `is_valid()` TODO
* `is_valid_record()`
* `new_record()`
* `_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
# Feature Wants and TODO
* GlideAggregate support (`/api/now/stats/{tableName}`)
And we want to:
* Improve documentation
Raw data
{
"_id": null,
"home_page": "https://github.com/ServiceNow/PySNC",
"name": "pysnc",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.8",
"maintainer_email": null,
"keywords": "servicenow, snc",
"author": "Matthew Gill",
"author_email": "matthew.gill@servicenow.com",
"download_url": "https://files.pythonhosted.org/packages/ef/25/60ab6cebac045142c50b9e6dcd19471deddcecf5ea691a0a88e2efd5d45e/pysnc-1.1.10.tar.gz",
"platform": null,
"description": "# ServiceNow Python API\n\n**What:** \nPySnc 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. \n\n**Why:** \nSpawned from the desire to interact with ServiceNow data in a familiar and consistent manner\n\n## Install\n\n```\npip install pysnc\n```\n\n## Quick Start\n\n```python\nfrom pysnc import ServiceNowClient\n\nclient = ServiceNowClient('https://dev0000.service-now.com', ('integration.user', password))\n\ngr = client.GlideRecord('sys_user')\ngr.add_query('user_name', 'admin')\ngr.query()\nfor r in gr:\n\tprint(r.sys_id)\n```\n\n## Documentation\n\nFull documentation currently available at [https://servicenow.github.io/PySNC/](https://servicenow.github.io/PySNC/)\n\nOr build them yourself:\n\n```\ncd docs && make html\n```\n\n## Development Notes\n\nThe following functions are not (yet?) supported:\n\n* `choose_window(first_row, last_row, force_count=True)` TODO\n* `get_class_display_value()`\n* `get_record_class_name()`\n* `is_valid()` TODO\n* `is_valid_record()`\n* `new_record()`\n* `_next()`\n* `_query()`\n\nThe following will not be implemented:\n\n* `get_attribute(field_name)` Not Applicable\n* `get_ED()` Not Applicable\n* `get_label()` Not Applicable\n* `get_last_error_message()` Not Applicable\n* `set_workflow(enable)` Not Possible\n* `operation()` Not Applicable\n* `set_abort_action()` Not Applicable\n* `is_valid_field()` Not Possible\n* `is_action_aborted()` Not Applicable\n\n# Feature Wants and TODO\n\n* GlideAggregate support (`/api/now/stats/{tableName}`)\n\nAnd we want to:\n\n* Improve documentation",
"bugtrack_url": null,
"license": "MIT",
"summary": "Python SNC (REST) API",
"version": "1.1.10",
"project_urls": {
"Documentation": "https://servicenow.github.io/PySNC/",
"Homepage": "https://github.com/ServiceNow/PySNC",
"Repository": "https://github.com/ServiceNow/PySNC"
},
"split_keywords": [
"servicenow",
" snc"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e108af58ceba989af6585b9684dc2adbd85e20013a377604c118be0ec15f7e5a",
"md5": "9a059f57ebc07aa0df7e4e357332228e",
"sha256": "a302a7d4382f6dab1f9b758be31751f122a187e1f9fbad69890824cc6df80c4e"
},
"downloads": -1,
"filename": "pysnc-1.1.10-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9a059f57ebc07aa0df7e4e357332228e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.8",
"size": 25377,
"upload_time": "2024-10-15T22:43:58",
"upload_time_iso_8601": "2024-10-15T22:43:58.083961Z",
"url": "https://files.pythonhosted.org/packages/e1/08/af58ceba989af6585b9684dc2adbd85e20013a377604c118be0ec15f7e5a/pysnc-1.1.10-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ef2560ab6cebac045142c50b9e6dcd19471deddcecf5ea691a0a88e2efd5d45e",
"md5": "271fdf7ac3a88aa9e3803bbf4026bbf7",
"sha256": "d84730a19da22e4d0ebb1da671f0ca37a440c92fffeda05dcfa2ec9e9f0c7513"
},
"downloads": -1,
"filename": "pysnc-1.1.10.tar.gz",
"has_sig": false,
"md5_digest": "271fdf7ac3a88aa9e3803bbf4026bbf7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.8",
"size": 23397,
"upload_time": "2024-10-15T22:43:59",
"upload_time_iso_8601": "2024-10-15T22:43:59.124405Z",
"url": "https://files.pythonhosted.org/packages/ef/25/60ab6cebac045142c50b9e6dcd19471deddcecf5ea691a0a88e2efd5d45e/pysnc-1.1.10.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-15 22:43:59",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ServiceNow",
"github_project": "PySNC",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "pysnc"
}