---
sourceDocument: Brazil IT Service Management
sourceDocumentLink: https://www.servicenow.com/docs/r/it-service-management

 Release :

    - brazil

ft:locale :

    - en-US

ft:publication_title :

    - Brazil IT Service Management

ft:clusterId :

    - itsm

bundleId :

    - itsm

workflow :

    - Technology


---

# User created

# User-created integrations in DevOps Change Velocity {#ariaid-title1}

Release version: Brazil  
Updated September 10, 2026  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 6 minutes to read
Summarize  
![AI sparkle icon](https://servicenow.com/docs/portal-asset/ai-sparkle-icon) Summarized using AI  
This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.  

## Summary of User-created integrations in DevOps Change Velocity

User-created integrations in the DevOps Change Velocity application enable ServiceNow customers to connect additional planning, coding, testing, security, and orchestration tools that are not included by default.
While the application supports common DevOps tools, these integrations let you extend functionality and unify data from your unique toolset, enhancing visibility and control across your DevOps environment.
Show full answer Show less  

## Key Features

* **Integration Objects and Actions:** Integration consists of tool capability actions such as Connect (establish connection), Discover (import new data), Import (note: does not support historical imports), Lookup (support artifact tool types), and Notification (webhook-based inbound events).
* **Configurable Subflows:** Integration developers create Workflow Studio subflows to collect, transform, and process data from source tools, supporting customized data handling and error management.
* **Role Separation:** Integration developers define tool integration records, capability mappings, and subflows, while DevOps admins configure tool connection records and credentials.
* **Inbound Event Handling:** Inbound events act as staging for webhook notifications, supporting retries for failed payloads and detailed error states with recommended resolutions.
* **Tool and Capability Mappings:** Tools can be mapped to multiple capabilities (Plan, Code, Orchestration, Artifact, Test). Tool capability mappings link integrations to supported actions like connect, discover, import, lookup, and notification.
* **Test Tool Integration:** Supports viewing unit, functional, and performance test results from Jenkins, Azure DevOps, GitHub, GitHub Enterprise, and GitLab.
* **Security and Orchestration Tool Integration:** Enables integration of additional security and orchestration tools not included in the base system.
* **Customization:** Allows adding custom fields to planning tool integrations for improved configurability and business-specific insights.
* **DevOps Change Workspace:** Provides an interface to create and manage tool integrations easily for additional orchestration, planning, and coding tools.

## Practical Application for ServiceNow Customers

By leveraging user-created integrations in DevOps Change Velocity, you can:

* Extend the DevOps toolchain beyond default supported tools, integrating your specific planning, coding, test, security, and orchestration tools.
* Ensure seamless data ingestion and transformation through custom Workflow Studio subflows tailored to your tools' payloads and capabilities.
* Manage connection states and monitor integration health with clear inbound event error handling and retry mechanisms.
* Map tools accurately to capabilities and actions for consistent data flow and reporting within ServiceNow DevOps.
* Customize planning tools with additional fields to capture relevant business data, enhancing decision-making.
* Utilize the DevOps Change Workspace for streamlined integration creation, improving operational efficiency.

Overall, user-created integrations empower your DevOps teams to unify diverse toolsets under ServiceNow, improving visibility, automation, and velocity in software delivery processes.  
User-created integrations are for integrating additional planning, coding, and test
tools that are not available by default in the DevOps Change Velocity
application.

The DevOps Change Velocity application includes tool definitions for integrating some common planning, coding, and [DevOps test tool integration](https://www.servicenow.com/docs/f98wCjQCWVekzGw516Frdw "Test tool integration lets you view test results in DevOps for Jenkins, Azure DevOps, GitHub, GitHub Enterprise, and GitLab unit, functional, and performance tests."), but you can also set up user-created integrations for additional tools in your DevOps environment.

## Integration objects {#dev-ops-tool-integration__section_mv2_ltw_zjb}

DevOps tool integration consists of these objects.

## Tool capability actions {#dev-ops-tool-integration__section_h44_1bx_zjb}

* Connect action:

  When connecting, the subflow for the specific
  tool is called and the connection state is updated. The connection status message is
  shown on the form.

  See [Connect capability subflow](https://www.servicenow.com/docs/l48zqIgmXNRnT0H84pHdvA#creating-dev-ops-subflows__section_tkj_jzf_1kb) for more details.
* Discover action:

  When discovering, an import request record is created and the subflow for the specific tool is called (as defined in the Integration Capability record).
  Detail and Status fields in the Import Request record are updated with the number of items discovered, updated, and failed.

  The transformed payload consists of an array of objects as a JSON string. Elements vary depending on the tool type.

  See [Discover capability subflow](https://www.servicenow.com/docs/l48zqIgmXNRnT0H84pHdvA#creating-dev-ops-subflows__section_sgn_lzf_1kb) for more details.
* Import action:

  Import action does not support historical
  import functionality.
* Lookup action:

  The Lookup main flow is provided to support
  artifact tool type in a subflow created by your integration developer.
* Notification (webhook) action:

  The source tool is configured
  manually (by your integration developer) to send raw data to the ServiceNow instance. The raw payload is then transformed into a
  standard JSON object using a subflow.

  See the [Notification capability subflow](https://www.servicenow.com/docs/l48zqIgmXNRnT0H84pHdvA#creating-dev-ops-subflows__section_ep4_txg_w3b) and the [DevOps - POST
  /devops/tool/{capability}](https://www.servicenow.com/docs/access?context=devops-api&version=brazil&pubname=brazil-api-reference&ft:locale=en-US) endpoint of the [DevOps API](https://www.servicenow.com/docs/access?context=devops-api&version=brazil&pubname=brazil-api-reference&ft:locale=en-US) for more
  details.  
  Note:  
  If a subflow is not specified, default handling of notifications occurs (original payload is automatically copied to transformed payload).

  This behavior is useful when the
  transactional data of the tool is supported by ServiceNow
  DevOps as is.

  See the expected standard payloads in the [Notification capability subflow](https://www.servicenow.com/docs/l48zqIgmXNRnT0H84pHdvA#creating-dev-ops-subflows__section_ep4_txg_w3b) for more details.
{#dev-ops-tool-integration__ul_y3d_sbx_zjb}

## DevOps integration configuration overview {#dev-ops-tool-integration__section_dq1_kk2_djb}

Tool integration configuration can be completed by your integration developer and your DevOps admin.  

Integration developer
:
    * Create a tool integration record in DevOps to define the tool you are integrating (source tool).
    * Create a Workflow Studio [subflow](https://www.servicenow.com/docs/l48zqIgmXNRnT0H84pHdvA "For user-created integrations, create a DevOps Workflow Studio subflow to collect and transform data from the tool you are integrating.") to collect and transform data from the tool you are integrating (source tool).
    * Create a tool capability mapping record in DevOps to map the tool integration record to the tool type capability.  
      Note:  
      Notifications (webhook) capability is supported. Connect and discover capabilities are also supported.
    * Create an integration capability record in DevOps to specify the action for the tool type capability.
    {#dev-ops-tool-integration__ul_bmc_ybx_zjb}

DevOps admin
:
    * Create a (planning, coding, or test) tool record in DevOps to connect to the tool you are integrating (source tool).  
      Note:  
      The tool integration record must be specified in the Tool field of the tool record.
    * Configure the source tool with the webhook and credentials.
    {#dev-ops-tool-integration__ul_asn_bcx_zjb}

## Inbound events {#dev-ops-tool-integration__section_r5w_vnf_2jb}

An inbound event serves as a staging area for the notifications flow that supports
reprocessing of failed payloads. Meaning, a record in an error state from a failed
integration or transformation can be retried.

If an Inbound Event record is in the Error state, the flow was not
able to insert the record successfully into the core DevOps tables.

Common errors can be resolved with these actions.  
{#dev-ops-tool-integration__table_xhy_k4f_2jb__entry__2}

| Error | Action |
|-|-|
| Missing required fields | The transformed payload does not match the standard payload. Refer to the standard and JSON payloads provided. |
| Repository not marked for tracking | The commit cannot be inserted. The DevOps admin needs to track the repository. |
| \[Subflow\] has not been published within application scope \[app_scope\] | The subflow is created but not published yet. |
| Timeout exception | The subflow takes more time than the value set in the property: com.glide.hub.flow_api.default_execution_time See [FlowAPI - executeSubflowQuick(String name, Map inputs, Number timeout)](https://www.servicenow.com/docs/access?context=ScriptableFlowAPI&version=brazil&pubname=brazil-api-reference&ft:locale=en-US) for more details. Note: The execution of the subflow exceeds the value set in the Timeout field in the Integration Capability record. |
| Did not find a matching subflow for notification capability and \[tool_integration_sys_id\] tool integration | The flow was not able to find the matching subflow. Verify the integration setup procedure. |
| Payload does not match the expected capability. | The Original payload (payload being sent) is a different Capability type than the tool type capability configured in your tool capability mapping. The payload type must match the tool type capability configured in your tool integration. |
[Table 1. Inbound event error states]

{#dev-ops-tool-integration__table_xhy_k4f_2jb}  
Note:  
An inbound event record is not created when any of the following conditions occur:

* Source tool has not passed the tool ID as a query parameter.
* Source tool has passed on a tool ID, but there is no matching tool ID in the instance.
{#dev-ops-tool-integration__ul_fdd_tqf_2jb}

## Tool mappings {#dev-ops-tool-integration__section_rsp_z1v_xnb}

A tool can be mapped to multiple capabilities.  
{#dev-ops-tool-integration__table_w5z_p31_2jb__entry__3}

| Tool Integration | Tool Type Capability | Tool Capability Mapping ||
|-|-|-|-|
| * Agile Development 2.0 * Azure DevOps * Bitbucket * GitHub * GitHub Enterprise * GitLab * Jenkins * Jira * Rally {#dev-ops-tool-integration__ul_gbg_t1w_wkb} | * Plan * Code * Orchestration * Artifact * Test {#dev-ops-tool-integration__ul_og4_ccw_wkb} | Plan * Agile Development 2.0 - Plan * Azure DevOps - Plan * Jira - Plan * Rally - Plan {#dev-ops-tool-integration__ul_xj2_fcw_wkb} Code * Azure DevOps - Code * Bitbucket - Code * GitHub - Code * GitHub Enterprise - Code * GitLab - Code {#dev-ops-tool-integration__ul_edc_32w_wkb} Orchestration * Azure DevOps - Orchestration * Jenkins - Orchestration * GitLab - Orchestration {#dev-ops-tool-integration__ul_jhb_p2w_wkb} Test * Azure DevOps - Test * Jenkins - Test {#dev-ops-tool-integration__ul_kdr_hpl_vlb} ||
[ ]

{#dev-ops-tool-integration__table_w5z_p31_2jb}

A tool capability mapping can be mapped to multiple actions.  
{#dev-ops-tool-integration__table_ep4_qcw_wkb__entry__3}

| Tool Capability Mapping | Tool Action | Integration Capability ||
|-|-|-|-|
| * Agile Development 2.0 - Plan * Azure DevOps - Plan * Azure DevOps - Code * Azure DevOps - Orchestration * Bitbucket - Code * GitHub - Code * GitHub Enterprise - Code * GitLab - Code * GitLab - Orchestration * Jenkins - Orchestration * Jira - Plan * Rally - Plan {#dev-ops-tool-integration__ul_dns_qfw_wkb} | * Connect * Discover * Import * Lookup * Notification {#dev-ops-tool-integration__ul_qlq_ycw_wkb} | Agile Development 2.0 * Agile Development 2.0 - Plan - Connect * Agile Development 2.0 - Plan - Discover * Agile Development 2.0 - Plan - Import * Agile Development 2.0 - Plan - Notification {#dev-ops-tool-integration__ul_o3n_cfw_wkb} Azure DevOps * Azure DevOps - Plan - Connect * Azure DevOps - Plan - Discover * Azure DevOps - Plan - Notification * Azure DevOps - Code - Discover * Azure DevOps - Code - Notification * Azure DevOps - Orchestration - Discover * Azure DevOps - Orchestration - Notification {#dev-ops-tool-integration__ul_x1r_1gw_wkb} Bitbucket * Bitbucket - Code - Connect * Bitbucket - Code - Discover * Bitbucket - Code - Import * Bitbucket - Code - Notification {#dev-ops-tool-integration__ul_dgb_bgw_wkb} GitHub * GitHub - Code - Connect * GitHub - Code - Discover * GitHub - Code - Import * GitHub - Code - Notification {#dev-ops-tool-integration__ul_wqw_dgw_wkb} GitHub Enterprise * GitHub - Code - Connect * GitHub - Code - Discover * GitHub - Code - Import * GitHub - Code - Notification {#dev-ops-tool-integration__ul_opx_pmm_xkb} GitLab * GitLab - Code - Connect * GitLab - Code - Discover * GitLab - Code - Notification * GitLab - Orchestration - Notification {#dev-ops-tool-integration__ul_vhf_nqb_gmb} Jenkins * Jenkins - Orchestration - Connect * Jenkins - Orchestration - Discover * Jenkins - Orchestration - Import * Jenkins - Orchestration - Notification {#dev-ops-tool-integration__ul_mz4_2gw_wkb} Jira * Jira - Plan - Connect * Jira - Plan - Discover * Jira - Plan - Import * Jira - Plan - Notification {#dev-ops-tool-integration__ul_czf_dgw_wkb} Rally * Rally - Plan - Discover * Rally - Plan - Import * Rally - Plan - Notification * Rally - Plan - Connect * Rally - Plan - Validate {#dev-ops-tool-integration__ul_qgm_5mx_wvb} ||
[ ]

{#dev-ops-tool-integration__table_ep4_qcw_wkb}

Multiple test types can be mapped to each tool integration.
{#dev-ops-tool-integration__table_cc3_z5l_vlb__entry__3}

| Test Type | Tool Integration | Test Type Mapping |
|-|-|-|
| Unit: JUnit, XUnit, NUnit, Unit test Functional: * Integration * Regression * Smoke * System * User Acceptance {#dev-ops-tool-integration__ul_qz1_qvl_vlb} Performance: Load | * Azure DevOps * Jenkins * GitLab * GitHub * GitHub Enterprise {#dev-ops-tool-integration__ul_rnq_kvl_vlb} | Azure DevOps * Azure DevOps - JUnit * Azure DevOps Nunit * Azure DevOps Xunit * Azure DevOps Unit test * Azure DevOps - Integration * Azure DevOps - Regression * Azure DevOps - Smoke * Azure DevOps - System * Azure DevOps - User Acceptance * Azure DevOps - Load {#dev-ops-tool-integration__ul_rb2_w5n_vlb} Jenkins * Jenkins - JUnit * Jenkins - Integration * Jenkins - Regression * Jenkins - Smoke * Jenkins - System * Jenkins - User Acceptance * Jenkins - Load {#dev-ops-tool-integration__ul_hfn_v5n_qnb} GitLab * GitLab - JUnit * GitLab - Integration * GitLab - Regression * GitLab - Smoke * GitLab - System * GitLab - User Acceptance * GitLab - Load {#dev-ops-tool-integration__ul_srs_wvr_21c} GitHub and GitHub Enterprise * GitHub - JUnit * GitHub Nunit * GitHub Xunit * GitHub Unit test * GitHub - Integration * GitHub - Regression * GitHub - Smoke * GitHub - System * GitHub - User Acceptance * GitHub - Load {#dev-ops-tool-integration__ul_qvn_zvr_21c} |
[ ]

{#dev-ops-tool-integration__table_cc3_z5l_vlb}
* **[DevOps test tool integration](https://www.servicenow.com/docs/f98wCjQCWVekzGw516Frdw)**   
  Test tool integration lets you view test results in DevOps for Jenkins, Azure DevOps, GitHub, GitHub Enterprise, and GitLab unit, functional, and performance tests.
* **[DevOps user-created security tool integration](https://www.servicenow.com/docs/KK06N4v8AlysfSu5fJXKzA)**   
  You can integrate additional security tools that are not supported in the base system in DevOps Change Velocity.
* **[DevOps user-created orchestration tool integration](https://www.servicenow.com/docs/L~Y7YR04N144ZCdpREmnYw)**   
  Integrate DevOps Change Velocity with any orchestration tool that is not supported in the base system.
* **[Create a DevOps tool integration](https://www.servicenow.com/docs/aG~AaAT0R45iCG20X3ZZsw)**   
  To create a DevOps tool integration, your integration developer configures DevOps tool integration settings, and a Workflow Studio subflow to collect and transform data from the source tool. Then your DevOps admin configures your DevOps tool connections.
* **[Creating DevOps subflows](https://www.servicenow.com/docs/l48zqIgmXNRnT0H84pHdvA)**   
  For user-created integrations, create a DevOps Workflow Studio subflow to collect and transform data from the tool you are integrating.
* **[Add custom fields for a planning tool integration](https://www.servicenow.com/docs/jDCTYcmuIij7mvm46WBQeA)**   
  Add custom fields into your planning tool integration to improve configurability and access business-specific information, which facilitates more informed decision-making.
* **[Create a tool integration from the DevOps Change Workspace](https://www.servicenow.com/docs/gd5tCjSgbI4mel7vcf6UUQ)**   
  Create a tool integration from the DevOps Change Workspace for integrating additional orchestration, planning, and coding tools that are not available by default in the DevOps Change Velocity application.

