ServiceNow · Arazzo Workflow

ServiceNow Onboard Contact

Version 1.0.0

Create a CSM contact, fetch it by its new sys_id, then open a welcome incident for it.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub AutomationCloud ServicesDigital WorkflowsEnterprise PlatformITSMProcessesT1Workflow-AutomationWorkflowsArazzoWorkflows

Provider

servicenow

Workflows

onboard-contact
Create a contact and open a welcome incident for them.
Creates a CSM contact, reads it back by sys_id, and opens an onboarding incident keyed to the new contact.
3 steps inputs: email, firstName, lastName, phone, welcomeShortDescription outputs: contactSysId, incidentSysId
1
createContact
createContact
Create a new CSM contact from the supplied identity fields.
2
getContact
getContactById
Fetch the newly created contact by its sys_id to confirm it persisted.
3
openWelcomeIncident
createRecord
Open a welcome incident on the Table API referencing the new contact as the caller.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: ServiceNow Onboard Contact
  summary: Create a CSM contact, fetch it by its new sys_id, then open a welcome incident for it.
  description: >-
    A user-onboarding flow spanning the Contact and Table APIs. The workflow
    creates a new CSM contact, fetches the contact by the sys_id returned from
    the create call to confirm it persisted, and then opens a welcome incident
    on the Table API that references the new contact as its caller. The Contact
    API create returns the new sys_id under a result string while the get and
    Table API calls wrap their records under a result object. Every request is
    written inline.
  version: 1.0.0
sourceDescriptions:
- name: contactApi
  url: ../openapi/contact-api-openapi.yaml
  type: openapi
- name: tableApi
  url: ../openapi/servicenow-table-api-openapi.yml
  type: openapi
workflows:
- workflowId: onboard-contact
  summary: Create a contact and open a welcome incident for them.
  description: >-
    Creates a CSM contact, reads it back by sys_id, and opens an onboarding
    incident keyed to the new contact.
  inputs:
    type: object
    required:
    - firstName
    - lastName
    - email
    properties:
      firstName:
        type: string
        description: The contact's first name.
      lastName:
        type: string
        description: The contact's last name.
      email:
        type: string
        description: The contact's email address.
      phone:
        type: string
        description: The contact's phone number.
      welcomeShortDescription:
        type: string
        description: The short description for the onboarding incident.
  steps:
  - stepId: createContact
    description: >-
      Create a new CSM contact from the supplied identity fields.
    operationId: createContact
    requestBody:
      contentType: application/json
      payload:
        first_name: $inputs.firstName
        last_name: $inputs.lastName
        email: $inputs.email
        phone: $inputs.phone
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      contactSysId: $response.body#/result
  - stepId: getContact
    description: >-
      Fetch the newly created contact by its sys_id to confirm it persisted.
    operationId: getContactById
    parameters:
    - name: id
      in: path
      value: $steps.createContact.outputs.contactSysId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      confirmedSysId: $response.body#/result/sys_id
  - stepId: openWelcomeIncident
    description: >-
      Open a welcome incident on the Table API referencing the new contact as
      the caller.
    operationId: createRecord
    parameters:
    - name: tableName
      in: path
      value: incident
    requestBody:
      contentType: application/json
      payload:
        short_description: $inputs.welcomeShortDescription
        caller_id: $steps.createContact.outputs.contactSysId
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      incidentSysId: $response.body#/result/sys_id
      incidentNumber: $response.body#/result/number
  outputs:
    contactSysId: $steps.createContact.outputs.contactSysId
    incidentSysId: $steps.openWelcomeIncident.outputs.incidentSysId

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/servicenow-onboard-contact-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.