Microsoft Entra · Arazzo Workflow

Microsoft Entra Find And Update Application

Version 1.0.0

Find an app by appId, update its display name, and read it back.

1 workflow 1 source API 1 provider
View Spec View on GitHub Access ManagementAuthenticationAzure ADEntraIdentityIdentity GovernanceMicrosoftNetwork SecuritySecurityZero TrustArazzoWorkflows

Provider

microsoft-entra

Workflows

find-and-update-application
Filter applications by appId, patch the match, then re-read it.
Searches for an application by appId, updates its display name, and fetches the updated application object.
3 steps inputs: accessToken, appId, newDisplayName outputs: applicationId, displayName
1
findApplication
listApplications
Filter the applications collection on appId to locate the registration and capture its object id.
2
updateApplication
updateApplication
Patch the matched application with the new display name. Returns 204 with no body.
3
getApplication
getApplication
Read the updated application back to confirm the new name.

Source API Descriptions

Arazzo Workflow Specification

microsoft-entra-find-and-update-application-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Microsoft Entra Find And Update Application
  summary: Find an app by appId, update its display name, and read it back.
  description: >-
    Locates an application registration in Microsoft Entra ID by filtering the
    applications collection on appId (the client id), patches its display name
    and sign-in audience, and reads the application back to confirm the change.
    Because Graph update operations return 204 with no body, the final get
    retrieves the refreshed object. Every request is inlined so the chain reads
    end to end.
  version: 1.0.0
sourceDescriptions:
- name: graphIdentityApi
  url: ../openapi/microsoft-entra-graph-identity-openapi.yml
  type: openapi
workflows:
- workflowId: find-and-update-application
  summary: Filter applications by appId, patch the match, then re-read it.
  description: >-
    Searches for an application by appId, updates its display name, and fetches
    the updated application object.
  inputs:
    type: object
    required:
    - accessToken
    - appId
    - newDisplayName
    properties:
      accessToken:
        type: string
        description: OAuth 2.0 bearer token with Application.ReadWrite.All.
      appId:
        type: string
        description: The application's appId (client id) to locate it by.
      newDisplayName:
        type: string
        description: New display name to set on the matched application.
  steps:
  - stepId: findApplication
    description: >-
      Filter the applications collection on appId to locate the registration
      and capture its object id.
    operationId: listApplications
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: $filter
      in: query
      value: "appId eq '$inputs.appId'"
    - name: $top
      in: query
      value: 1
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      matchedApplicationId: $response.body#/value/0/id
    onSuccess:
    - name: applicationFound
      type: goto
      stepId: updateApplication
      criteria:
      - context: $response.body
        condition: $.value.length > 0
        type: jsonpath
  - stepId: updateApplication
    description: >-
      Patch the matched application with the new display name. Returns 204 with
      no body.
    operationId: updateApplication
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: application-id
      in: path
      value: $steps.findApplication.outputs.matchedApplicationId
    requestBody:
      contentType: application/json
      payload:
        displayName: $inputs.newDisplayName
    successCriteria:
    - condition: $statusCode == 204
    outputs:
      updateStatus: $statusCode
  - stepId: getApplication
    description: Read the updated application back to confirm the new name.
    operationId: getApplication
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: application-id
      in: path
      value: $steps.findApplication.outputs.matchedApplicationId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      displayName: $response.body#/displayName
  outputs:
    applicationId: $steps.findApplication.outputs.matchedApplicationId
    displayName: $steps.getApplication.outputs.displayName