Capability Library · Pack detail

servicenow v1.0.0

ServiceNow Table API on the customer's own instance: read, create and update incidents, read and create change requests, and read catalog items.

Review state: library· Distributable: digest matches the release manifest

Release identity

SHA-256 of the pack file bytes: 305d152ba7af2363f1042f701101e6f0d142e5b8cf29e42d06f42bf954f6f3db

Distributable: digest matches the release manifest. The binary carries a digest-bound manifest of the distributable library; a pack whose bytes differ from its manifest entry — endpoint, tier, allowlist, or credential edited, with provider, version, and review block preserved — fails the digest check, loses distributability, and renders MODIFIED rather than as the shipped reviewed artifact. Review state and artifact status are different facts: the first is a documentation-review declaration, the second is the identity of the exact bytes.

Capabilities (6)

servicenow.incident.read v1.0.0R0

Action
read
Endpoint
GET https://servicenow-instance.invalid/api/now/table/incident
Connector
http
Custody
customer_vault
Credential ref
secret-ref-servicenow-oauth-token
Data class
pii

Retrieve incident records from the collection endpoint; this pack registers the collection read only — the Table API's single-record read (GET /now/table/{tableName}/{sys_id}) is not registered. Incident records carry caller, assignee and watch-list user references, so the read is registered at the pii class. The host is a reserved placeholder: substitute the customer's instance host before enabling.

servicenow.incident.create v1.0.0R2

Action
create
Endpoint
POST https://servicenow-instance.invalid/api/now/table/incident
Connector
http
Custody
customer_vault
Credential ref
secret-ref-servicenow-oauth-token
Data class
pii

Insert one incident record; the Table API inserts one record per call and does not support multiple-record insertion. The record can name a caller and other users, so the capability registers at the pii class. The host is a reserved placeholder: substitute the customer's instance host before enabling.

servicenow.incident.update v1.0.0R2

Action
update
Endpoint
PATCH https://servicenow-instance.invalid/api/now/table/incident/SYS_ID
Connector
http
Custody
customer_vault
Credential ref
secret-ref-servicenow-oauth-token
Data class
pii

Update one incident record with the name-value pairs in the request body; fields prefixed sys_ are system-generated and cannot be updated. The Table API also documents PUT for updates; this pack registers PATCH only. The host is a reserved placeholder to substitute before enabling, and SYS_ID binds to the target record at call time.

servicenow.change_request.read v1.0.0R0

Action
read
Endpoint
GET https://servicenow-instance.invalid/api/now/table/change_request
Connector
http
Custody
customer_vault
Credential ref
secret-ref-servicenow-oauth-token
Data class
pii

Retrieve change request records from the collection endpoint; this pack registers the collection read only — the Table API's single-record read (GET /now/table/{tableName}/{sys_id}) is not registered. Change requests carry requested-by and assigned-to user references, so the read is registered at the pii class. The host is a reserved placeholder: substitute the customer's instance host before enabling.

servicenow.change_request.create v1.0.0R2

Action
create
Endpoint
POST https://servicenow-instance.invalid/api/now/table/change_request
Connector
http
Custody
customer_vault
Credential ref
secret-ref-servicenow-oauth-token
Data class
pii

Insert one change request record; the Table API inserts one record per call. The insert accepts the name-value pairs the calling user is permitted to set, subject to the instance's ACLs and business rules — this registration does not restrict which fields a request may carry, so what workflow state a newly inserted record enters, and whether it starts unapproved, is decided by the instance's configuration, not by this pack. Nothing in this pack approves a change: the approval capability was considered and removed (see the pack notes). The host is a reserved placeholder: substitute the customer's instance host before enabling.

servicenow.catalog_item.read v1.0.0R0

Action
read
Endpoint
GET https://servicenow-instance.invalid/api/now/table/sc_cat_item
Connector
http
Custody
customer_vault
Credential ref
secret-ref-servicenow-oauth-token
Data class
internal

Retrieve service catalog item records from the collection endpoint; this pack registers the collection read only. Catalog items are the organization's catalog content, registered at the internal class; this reads the catalog only — ordering an item is the Service Catalog API (order_now), which this pack does not register. The host is a reserved placeholder: substitute the customer's instance host before enabling.

Credential reference

The pack names a reference, never a secret. Installing a pack registers capabilities and makes them governable; registration is not connectivity. The credential is created at the provider and held in the client's own secret manager under the reference the pack names, and deployment testing is still required to show the credential path works and cannot be bypassed.

Reference
secret-ref-servicenow-oauth-token
Custody
customer_vault
Injection
header (Authorization)

An OAuth2 access token for the customer's own ServiceNow instance, held in the client's own secret manager. The stored material must be the complete Authorization header value (scheme included): 'Bearer ' followed by the access token. An external deployment process obtains the token from the instance and renews it when it expires — storing the OAuth client credentials under this reference does not make the HTTP injector perform OAuth: the injector injects the stored value verbatim, so refresh ownership (including any refresh-token grant the deployment chooses to use) sits entirely with that external process. Access tokens expire and can be revoked at the instance; an expired or revoked value fails closed. The token's access is the token user's access — grant the user the minimum roles (for example itil for the incident and change tables) that make these capabilities work, and nothing more. Executor hygiene: the value must live only in executor memory for the lifetime of a call, must never be written to logs, traces or diagnostics, and must not appear in crash dumps; a deployment that cannot meet that bar must not enable the pack.

Resources

  • servicenow-instance (api, pii): https://servicenow-instance.invalid/api/now

Pack notes and exclusions

The endpoint host 'servicenow-instance.invalid' is a reserved non-production placeholder (an RFC 2606 reserved TLD): substitute the customer's instance host before enabling, in every endpoint, in the resource locator and in every egress allowlist entry. The allowlist matches exactly, so endpoints and allowlist must be substituted together, and substitution is a required deployment step — the reserved host being allowlisted does not make an unsubstituted pack safe to enable. The pack does not create the OAuth application or mint tokens: an external deployment process registers the OAuth client with the instance admin, obtains access tokens from the customer's own instance, and stores and renews the complete header value described in the credential note. The Table API enforces the calling user's ACLs and roles, so a capability works only if the token's user (for example an itil user) is permitted the operation; the registration records the endpoint, not the instance's authorization decision. Removed capability, as a documented exclusion: servicenow.change_request.approve. Approving a change request by PATCHing the record's approval field was considered and removed — the retrieved Table API documentation establishes PATCH /now/table/{tableName}/{sys_id} as a generic name-value update but does not establish that setting the change_request record's approval field performs a workflow approval; change approvals run through approval records and the Change Management REST API's approval operation, each a different registration requiring its own review, and this pack registers neither. Nothing in this pack approves a change. Further documented exclusions, from the retrieved Table API documentation: DELETE /now/table/{tableName}/{sys_id} exists in the API and is deliberately not registered — a supported review outcome is removing what the integration is not ready for, and incident or change deletion is not part of this pack; PUT /now/table/{tableName}/{sys_id} also exists, and only PATCH is registered for updates; POST inserts one record per call — multiple-record insertion is not supported by the Table API. The Attachment API, Stats API, Import Set API and Service Catalog API (order_now) are separate ServiceNow APIs this pack does not register — reading sc_cat_item returns catalog content and orders nothing. AAES has not been certified by ServiceNow; the endpoints here are a reviewable default, not a vendor guarantee.

Review record

Review completed: 2026-09-21 · Reviewer: aaes-eng (an opaque id that resolves internally to the responsible reviewer)

A pack review is not a vendor or examiner attestation. A retrieval date says when a source page was read; it does not by itself establish what the page said then. No pack is vendor-endorsed, and none has been connectivity-tested against a live vendor tenant.