Adding ArcGIS for Teams tab Programmatically with URL Parameters

200
0
2 weeks ago
EendrulatGH
New Contributor II

We're using PowerAutomate to create new teams in Microsoft Teams and automatically adding channel tabs, including tabs containing ArcGIS Dashboards. We've added ArcGIS content in the past, adding the tabs as 'Websites', however, the new teams appears to block the oAuth process - forcing the tab to be opened in a browser rather than the Teams client. 

We are adding an experience builder app that contains URL parameters to filter the content of the app based on the ID of the team.

The PowerAutomate flow uses a HTTP Post connector to push the manifest for the tab.  When we set the 'contentURL' in the manifest to use the full URL for the experience builder app, including the query parameters, the tab is added with the app. It appears to function correctly when opening teams in the browser (the dashboard opens with the URL parameters in place) - however using the desktop teams client the app forces the tab to open in the browser.

When we set the content URL to

 

https://arcgis4teams.arcgis.com/teamView?culture=en-us&context=%7B%22subEntityId%22:%22itemId---f7d47c4ec9024ecd86fc0a6c152036dd___itemSubTypes---Web%20Experience___queryParamsText---___category---myContent___isAGOLPublicItem---false%22%7D

 


- then the tab works in desktop/browser teams but the URL parameters are not applied (because they aren't included anywhere in the manifest).

Is there any way to add URL parameters officially to the ArcGIS for Teams tabs manifest?  There is a 'queryParamsText' parameter, but i'm not sure what is accepted for that parameter.

Thanks in advance!!

 

Example of manifest with content url that includes full app URL with query parameters:

 

{
  "displayName": "Test ArcGIS App",
  "teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/ba4eda44-cd55-4e15-855c-0debafb0490b",
  "teamsAppId": "ba4eda44-cd55-4e15-855c-0debafb0490b",
  "configuration": {
    "entityId": "itemId---[ITEM ID HERE]___itemSubTypes---Web Experience___queryParamsText---dohmh___category---myOrg___isAGOLPublicItem---false",
    "contentUrl": "https://experience.arcgis.com/experience/[ITEM ID HERE]?data_id[list of query parameters included here for the exp builder app]",
    "websiteUrl": "https://experience.arcgis.com/experience/[ITEM ID HERE]?data_filter=IncidentFeaturesMap-IncidentFeatures%3Ateam_id%3D%27ebb1823b-623d-4c7e-9950-6447a3ead778%27%2CdataSource_3-0%3Ateam_id%3D%27ebb1823b-623d-4c7e-9950-6447a3ead778%27%2CdataSource_3-1%3Atem_id_subobj%3D%27ebb1823b-623d-4c7e-9950-6447a3ead778%27%2CdataSource_9-ERGReports%3Ateam_id%3D%27ebb1823b-623d-4c7e-9950-6447a3ead778%27%2CdataSource_8-ReportingPeriods%3Ateam_id%3D%27ebb1823b-623d-4c7e-9950-6447a3ead778%27%2CIncidentPolyMap-IncidentPolys%3Ateam_id_polys%3D%27ebb1823b-623d-4c7e-9950-6447a3ead778%27#data_s=id%3AIncidentFeaturesMap-IncidentFeatures%3A156",
    "removeUrl": "",
    "dateAdded": "2024-04-26T14:24:10.392Z"
  },
  "teamsApp": {
    "id": "ba4eda44-cd55-4e15-855c-0debafb0490b",
    "externalId": null,
    "displayName": "ArcGIS",
    "distributionMethod": "store"
  }
}

 

 

 

Example of manifest with standard contentUrl for ArcGIS for teams tabs, without url parameters:

 

{
  "displayName": "Test ArcGIS App",
  "teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/ba4eda44-cd55-4e15-855c-0debafb0490b",
  "teamsAppId": "ba4eda44-cd55-4e15-855c-0debafb0490b",
  "configuration": {
    "entityId": "itemId---[ITEM ID HERE]___itemSubTypes---Web Experience___queryParamsText---dohmh___category---myOrg___isAGOLPublicItem---false",
    "contentUrl": "https://arcgis4teams.arcgis.com/teamView?culture=en-us&context=%7B%22subEntityId%22:%22itemId---[ITEM ID HERE]___itemSubTypes---Web%20Experience___queryParamsText---___category---myContent___isAGOLPublicItem---false%22%7D",
    "websiteUrl": "https://experience.arcgis.com/experience/[ITEM ID HERE]?data_filter=[LIST OF DATA FILTERS FOR EXP BUILDER APP],
    "removeUrl": "",
    "dateAdded": "2024-04-26T14:24:10.392Z"
  },
  "teamsApp": {
    "id": "ba4eda44-cd55-4e15-855c-0debafb0490b",
    "externalId": null,
    "displayName": "ArcGIS",
    "distributionMethod": "store"
  }
}

 

 

 

 

 

0 Replies