snow_record – Create/Delete/Update records in ServiceNow

New in version 2.5.

Synopsis

  • Creates/Deletes/Updates a single record in ServiceNow

Requirements

The below requirements are needed on the host that executes this module.

  • python pysnow (pysnow)

Parameters

Parameter Choices/Defaults Comments
attachment
-
Attach a file to the record
data
-
key, value pairs of data to load into the record. See Examples. Required for state:present
instance
- / required
The service now instance name
lookup_field
-
Default:
"number"
Changes the field that number uses to find records
number
-
Record number to update. Required for state:absent
password
- / required
Password for username
state
- / required
    Choices:
  • present
  • absent
If present is supplied with a number argument, the module will attempt to update the record with the supplied data. If no such record exists, a new one will be created. absent will delete a record.
table
-
Default:
"incident"
Table to query for records
username
- / required
User to connect to ServiceNow as

Examples

- name: Grab a user record
  snow_record:
    username: ansible_test
    password: my_password
    instance: dev99999
    state: present
    number: 62826bf03710200044e0bfc8bcbe5df1
    table: sys_user
    lookup_field: sys_id

- name: Create an incident
  snow_record:
    username: ansible_test
    password: my_password
    instance: dev99999
    state: present
    data:
      short_description: "This is a test incident opened by Ansible"
      severity: 3
      priority: 2
  register: new_incident

- name: Delete the record we just made
  snow_record:
    username: admin
    password: xxxxxxx
    instance: dev99999
    state: absent
    number: "{{new_incident['record']['number']}}"

- name: Delete a non-existant record
  snow_record:
    username: ansible_test
    password: my_password
    instance: dev99999
    state: absent
    number: 9872354
  failed_when: false

- name: Update an incident
  snow_record:
    username: ansible_test
    password: my_password
    instance: dev99999
    state: present
    number: INC0000055
    data:
      work_notes : "Been working all day on this thing."

- name: Attach a file to an incident
  snow_record:
    username: ansible_test
    password: my_password
    instance: dev99999
    state: present
    number: INC0000055
    attachment: README.md
  tags: attach

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
attached_file
dictionary
when supported
Details of the file that was attached via attachment

record
dictionary
when supported
Record data from Service Now



Status

Authors

  • Tim Rightnour (@garbled1)

Hint

If you notice any issues in this documentation you can edit this document to improve it.