Manage artifact metadata in integration accounts with Azure Logic Apps and Enterprise Integration Pack

You can define custom metadata for artifacts in integration accounts and get that metadata during runtime for your logic app to use. For example, you can provide metadata for artifacts, such as partners, agreements, schemas, and maps - all store metadata using key-value pairs.

Prerequisites

Add metadata to artifacts

  1. Sign in to the Azure portal with your Azure account credentials. Find and open your integration account.

  2. Select the artifact where you want to add metadata, and choose Edit. Enter the metadata details for that artifact, for example:

    Enter metadata

  3. When you're done, choose OK.

  4. To view this metadata in the JavaScript Object Notation (JSON) definition for the integration account, choose Edit as JSON so that the JSON editor opens:

    JSON for partner metadata

Get artifact metadata

  1. In the Azure portal, open the logic app that's linked to the integration account you want.

  2. In the Logic App Designer, if you're adding the step for getting metadata under the trigger or last action in the workflow, choose New step > Add an action.

  3. In the search box, enter "integration account". Under the search box, choose All. From the actions list, select this action: Integration Account Artifact Lookup - Integration Account

    Select "Integration Account Artifact Lookup"

  4. Provide this information for the artifact you want to find:

    Property Required Value Description
    Artifact Type Yes Schema, Map, Partner, Agreement, or a custom type The type for the artifact you want
    Artifact Name Yes <artifact-name> The name for the artifact you want

    For example, suppose you want to get the metadata for a trading partner artifact:

    Select artifact type and enter artifact name

  5. Add the action that you want for handling that metadata, for example:

    1. Under the Integration Account Artifact Lookup action, choose Next step, and select Add an action.

    2. In the search box, enter "http". Under the search box, choose Built-ins, and select this action: HTTP - HTTP

      Add HTTP action

    3. Provide information for the artifact metadata you want to manage.

      For example, suppose you want to get the routingUrl metadata that's added earlier in this topic. Here are the property values you might specify:

      Property Required Value Description
      Method Yes <operation-to-run> The HTTP operation to run on the artifact. For example, this HTTP action uses the GET method.
      URI Yes <metadata-location> To access the routingUrl metadata value from the artifact you retrieved, you can use an expression, for example:

      @{outputs('Integration_Account_Artifact_Lookup')['properties']['metadata']['routingUrl']}

      Headers No <header-values> Any header outputs from the trigger you want to pass into the HTTP action. For example, to pass in the trigger's headers property value: you can use an expression, for example:

      @triggeroutputs()['headers']

      Body No <body-content> Any other content you want to pass through the HTTP action's body property. This example passes the artifact's properties values into the HTTP action:

      1. Click inside the Body property so the dynamic content list appears. If no properties appear, choose See more.
      2. From the dynamic content list, under Integration Account Artifact Lookup, select Properties.

      For example:

      Specify values and expressions for HTTP action

    4. To check the information you provided for the HTTP action, view your logic app's JSON definition. On the Logic App Designer toolbar, choose Code view so the app's JSON definition appears, for example:

      Logic app JSON definition

      After you switch back to the Logic App Designer, any expressions you used now appear resolved, for example:

      Resolved expressions in Logic App Designer

Next steps