npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@janus-idp/backstage-scaffolder-backend-module-servicenow

v1.4.7

Published

The servicenow custom actions

Downloads

1,553

Readme

ServiceNow actions for Backstage

This plugin provides Backstage template actions for ServiceNow.

The following actions are currently supported in this plugin:

Prerequisites

Installation

Run the following command to install the action package in your Backstage project:

yarn workspace backend add @janus-idp/backstage-scaffolder-backend-module-servicenow

Installing the action on the legacy backend

Register the ServiceNow actions by modifying the packages/backend/src/plugins/scaffolder.ts file from your project with the following changes:

/* highlight-add-next-line */
import { createServiceNowActions } from '@janus-idp/backstage-scaffolder-backend-module-servicenow';

export default async function createPlugin(
  env: PluginEnvironment,
): Promise<Router> {
  // ...

  /* highlight-add-next-line */
  const actions = [
    ...builtInActions,
    ...createServiceNowActions({ config: env.config }),
  ];

  return await createRouter({
    actions,
    logger: env.logger,
    config: env.config,
    database: env.database,
    reader: env.reader,
    catalogClient,
    identity: env.identity,
  });
}

Installing the action on the new backend

Add the following to your packages/backend/src/index.ts file:

const backend = createBackend();

// Add the following line
backend.add(
  import('@janus-idp/backstage-scaffolder-backend-module-servicenow/alpha'),
);

backend.start();

Configuration

Update the app-config.yaml file to include the following config:

servicenow:
  # The base url of the ServiceNow instance.
  baseUrl: ${SERVICENOW_BASE_URL}
  # The username to use for authentication.
  username: ${SERVICENOW_USERNAME}
  # The password to use for authentication.
  password: ${SERVICENOW_PASSWORD}

Usage

Action : servicenow:now:table:createRecord

Request Type: POST

Input

| Parameter Name | Type | Required | Description | | ----------------------------- | :----------------------------: | :------: | ------------------------------------------------------------------------------------------ | | tableName | string | Yes | Name of the table in which to save the record | | requestBody | Record<PropertyKey, unknown> | No | Field name and the associated value for each parameter to define in the specified record | | sysparmDisplayValue | enum("true", "false", "all") | No | Return field display values (true), actual values (false), or both (all) (default: false) | | sysparmExcludeReferenceLink | boolean | No | True to exclude Table API links for reference fields (default: false) | | sysparmFields | string[] | No | An array of fields to return in the response | | sysparmInputDisplayValue | boolean | No | Set field values using their display value (true) or actual value (false) (default: false) | | sysparmSuppressAutoSysField | boolean | No | True to suppress auto generation of system fields (default: false) | | sysparmView | string | No | Render the response according to the specified UI view (overridden by sysparm_fields) |

Output

| Name | Type | Description | | -------- | :----------------------------: | -------------------------------- | | result | Record<PropertyKey, unknown> | The response body of the request |

Action : servicenow:now:table:deleteRecord

Request Type: DELETE

Input

| Parameter Name | Type | Required | Description | | ---------------------- | :-------: | :------: | ----------------------------------------------------------------- | | tableName | string | Yes | Name of the table in which to delete the record | | sysId | string | Yes | Unique identifier of the record to delete | | sysparmQueryNoDomain | boolean | No | True to access data across domains if authorized (default: false) |

Action : servicenow:now:table:modifyRecord

Request Type: PUT

Input

| Parameter Name | Type | Required | Description | | ----------------------------- | :----------------------------: | :------: | ------------------------------------------------------------------------------------------ | | tableName | string | Yes | Name of the table in which to modify the record | | sysId | string | Yes | Unique identifier of the record to modify | | requestBody | Record<PropertyKey, unknown> | No | Field name and the associated value for each parameter to define in the specified record | | sysparmDisplayValue | enum("true", "false", "all") | No | Return field display values (true), actual values (false), or both (all) (default: false) | | sysparmExcludeReferenceLink | boolean | No | True to exclude Table API links for reference fields (default: false) | | sysparmFields | string[] | No | An array of fields to return in the response | | sysparmInputDisplayValue | boolean | No | Set field values using their display value (true) or actual value (false) (default: false) | | sysparmSuppressAutoSysField | boolean | No | True to suppress auto generation of system fields (default: false) | | sysparmView | string | No | Render the response according to the specified UI view (overridden by sysparm_fields) | | sysparmQueryNoDomain | boolean | No | True to access data across domains if authorized (default: false) |

Output

| Name | Type | Description | | -------- | :----------------------------: | -------------------------------- | | result | Record<PropertyKey, unknown> | The response body of the request |

Action : servicenow:now:table:retrieveRecord

Request Type: GET

Input

| Parameter Name | Type | Required | Description | | ----------------------------- | :----------------------------: | :------: | ----------------------------------------------------------------------------------------- | | tableName | string | Yes | Name of the table from which to retrieve the record | | sysId | string | Yes | Unique identifier of the record to retrieve | | sysparmDisplayValue | enum("true", "false", "all") | No | Return field display values (true), actual values (false), or both (all) (default: false) | | sysparmExcludeReferenceLink | boolean | No | True to exclude Table API links for reference fields (default: false) | | sysparmFields | string[] | No | An array of fields to return in the response | | sysparmView | string | No | Render the response according to the specified UI view (overridden by sysparm_fields) | | sysparmQueryNoDomain | boolean | No | True to access data across domains if authorized (default: false) |

Output

| Name | Type | Description | | -------- | :----------------------------: | -------------------------------- | | result | Record<PropertyKey, unknown> | The response body of the request |

Action : servicenow:now:table:retrieveRecords

Request Type: GET

Input

| Parameter Name | Type | Required | Description | | --------------------------------- | :----------------------------: | :------: | ----------------------------------------------------------------------------------------- | | tableName | string | Yes | Name of the table from which to retrieve the records | | sysparmQuery | string | No | An encoded query string used to filter the results | | sysparmDisplayValue | enum("true", "false", "all") | No | Return field display values (true), actual values (false), or both (all) (default: false) | | sysparmExcludeReferenceLink | boolean | No | True to exclude Table API links for reference fields (default: false) | | sysparmSuppressPaginationHeader | boolean | No | True to suppress pagination header (default: false) | | sysparmFields | string[] | No | An array of fields to return in the response | | sysparmLimit | int | No | The maximum number of results returned per page (default: 10,000) | | sysparmView | string | No | Render the response according to the specified UI view (overridden by sysparm_fields) | | sysparmQueryCategory | string | No | Name of the query category (read replica category) to use for queries | | sysparmQueryNoDomain | boolean | No | True to access data across domains if authorized (default: false) | | sysparmNoCount | boolean | No | Do not execute a select count(*) on table (default: false) |

Output

| Name | Type | Description | | -------- | :----------------------------: | -------------------------------- | | result | Record<PropertyKey, unknown> | The response body of the request |

Action : servicenow:now:table:updateRecord

Request Type: PATCH

Input

| Parameter Name | Type | Required | Description | | ----------------------------- | :----------------------------: | :------: | ------------------------------------------------------------------------------------------ | | tableName | string | Yes | Name of the table in which to update the record | | sysId | string | Yes | Unique identifier of the record to update | | requestBody | Record<PropertyKey, unknown> | No | Field name and the associated value for each parameter to define in the specified record | | sysparmDisplayValue | enum("true", "false", "all") | No | Return field display values (true), actual values (false), or both (all) (default: false) | | sysparmExcludeReferenceLink | boolean | No | True to exclude Table API links for reference fields (default: false) | | sysparmFields | string[] | No | An array of fields to return in the response | | sysparmInputDisplayValue | boolean | No | Set field values using their display value (true) or actual value (false) (default: false) | | sysparmSuppressAutoSysField | boolean | No | True to suppress auto generation of system fields (default: false) | | sysparmView | string | No | Render the response according to the specified UI view (overridden by sysparm_fields) | | sysparmQueryNoDomain | boolean | No | True to access data across domains if authorized (default: false) |

Output

| Name | Type | Description | | -------- | :----------------------------: | -------------------------------- | | result | Record<PropertyKey, unknown> | The response body of the request |