terraform-provider-power-platform icon indicating copy to clipboard operation
terraform-provider-power-platform copied to clipboard

`powerplatform_copilotstudio_channel`

Open mattdot opened this issue 9 months ago • 1 comments

Description

Users want to be able to configure channels for copilot studio bots. This resource would allow terraform users to configure channels like teams, directline, etc

Resource

  • Resource Name: powerplatform_copilotstudio_channel
  • Documentation:
    • https://learn.microsoft.com/en-us/microsoft-copilot-studio/configure-sso-teams
    • https://learn.microsoft.com/en-us/microsoft-copilot-studio/configure-web-security
  • APIs:
    • POST https://powervamg.us-il301.gateway.prod.island.powerapps.com/api/botmanagement/v1/channels/msteams/add
    • PUT https://powervamg.us-il301.gateway.prod.island.powerapps.com/api/botmanagement/v1/channels/msteams/app/save
    • DELETE https://powervamg.us-il301.gateway.prod.island.powerapps.com/api/botmanagement/v1/channels/msteams/remove
  • Estimated complexity/effort: Hard
  • Related resources/data sources:

Open questions

  • Should we implement a strongly-typed or loosely-typed resource?
  • Do we also need a data source?

Potential Terraform Configuration

# Sample Terraform config that uses a strongly typed approach 

resource "powerplatform_copilotstudio_channel" {
  environment_id = ""
  bot_id = ""

  msteams = {
    accent_color = ""
    icon = ""
    developer_name = ""
    discoverable_in_store = false
    description = ""
    microsoft_partner_network_id = ""
    outline_icon = ""
    privacy_link = ""
    scopes = []
    short_description = ""
    sso_application_id = ""
    sso_resource_url = ""
    supports_calling = false
    teams_collaboration_enabled = true
    terms_link = ""
    website_link = "" 
  }
  directline = {
  }
  facebook = {}
}

Definition of Done

  • [ ] Data Transfer Objects (dtos)
  • [ ] Data Client functions
  • [ ] Resource Implementation
  • [ ] Resource Added to Provider
  • [ ] Unit Tests for Happy Path
  • [ ] Unit Tests for error path
  • [ ] Acceptance Tests
  • [ ] Example in the /examples folder
  • [ ] Schema Documentation in code
  • [ ] Updated auto-generated provider docs with make docs

Contributions

Do you plan to raise a PR to address this issue? YES / NO?

See the contributing guide for more information about what's expected for contributions.

mattdot avatar Feb 20 '25 17:02 mattdot

blocked on service principal support

mattdot avatar May 01 '25 15:05 mattdot