Skip to content

Releases: OfficeDev/microsoft-teams-app-schema

Schema v1.17

07 Jun 22:50
510341c
Compare
Choose a tag to compare
  • Added support for creation of Outlook add-ins with the unified manifest for Microsoft 365. Learn more.
  • Added a semanticDescription field in a message extension plugin for Copilot for Microsoft 365. Learn more
  • Added support for creating message extensions using API. Learn more
  • Added support for apps to easily show as cards on Viva Connections Dashboard. Learn more
  • Added new sample prompts to guide users who install or enable a plugin for the first time. Learn more
  • Added bot configurations changes. Learn more
  • Removal of Apppackagename property. If your manifest has this property, it will not be valid in this new manifest version.
  • Removal of callingSidepanel propoerty. This is a minor breaking change. If your manifest has this property, it will not be valid in this new manifest version.

Schema v1.16

13 Jul 17:12
4f0207e
Compare
Choose a tag to compare

Property Updates in Static Tabs

  • Added "groupChat" to staticTabs scope. Learn more.

  • Added 6 new values to staticTabs context. Learn more.

    • "privateChatTab"
    • "meetingChatTab"
    • "meetingDetailsTab"
    • "meetingSidePanel"
    • "meetingStage"
    • "teamLevelApp"

Property Updates in Meeting Extension Definition

Schema v1.15

21 Mar 17:45
db9620d
Compare
Choose a tag to compare

Property Updates in Compose Extensions

Schema v1.14

21 Mar 17:39
db9620d
Compare
Choose a tag to compare

Property update for Shared Channels & Meeting Extensions

  • Added new supportedChannelTypes property.  Learn more.

  • Added new supportsStreams property to meeting extension definition. 

  • Added new scopeConstraints property. Learn more.

Schema v1.13

21 Mar 17:27
db9620d
Compare
Choose a tag to compare

Support for apps running across Microsoft 365

This schema version auto-extends support of Teams apps to run in other Microsoft 365 host applications, including Outlook and Office. Learn more.

Schema v1.12

14 Mar 17:56
789c543
Compare
Choose a tag to compare

Schema v1.11

06 Jan 11:47
5830305
Compare
Choose a tag to compare

Clean-up

Removal of supported platform properties which is a feature that was cancelled for public release.
Compose extension id should be a guid definition not a bot id

Schema v1.10

10 May 15:43
024c127
Compare
Choose a tag to compare

App Customization

App customization enables admins to change the look-and-feel of the apps loaded through bots, messaging extensions, tabs, and connectors. For example, if the Teams admin customizes the name of an app from Contoso to Contoso Agent, then the app will appear with the new name Contoso Agent to users. However, while adding a connector to a chat, in the list the connectors will still show the name of the app as Contoso

Please refer to the documentation regarding the schema property:
configurableProperties
https://docs.microsoft.com/en-us/microsoftteams/platform/resources/schema/manifest-schema#configurableproperties

Schema v1.9

27 Jan 21:08
29a8c86
Compare
Choose a tag to compare

Changes in this release:

MicrosoftTeams.schema.json

defaultInstallScope
Provides a way specify the default installation scope for their apps so the app install experience will make it the default option for users. The rest will be moved to the chevron.

defaultGroupCapability
This value is related to "defaultInstallScope" where you can specify the default capability in the case of having multiple capabilities when your app is installed in the group scope.

Schema v1.5

17 May 17:55
ff2e595
Compare
Choose a tag to compare

Changes in this release:

MicrosoftTeams.schema.json

  1. mpnId field has been added to the developer object's properties. This indicates the Microsoft Partner Network ID which identifies the partner organization building the app. This field is not required, and should only be used if you are already part of the Microsoft Partner Network. More info at https://aka.ms/partner
  2. localizationInfo object has been added. It is optional and allows you to specify your default language if other than English and the additional languages for which your app is localized. These include:
    • The defaultLanguageTag of your app
    • additionalLanguages for your app and the file location of their localized strings
  3. context property has been added to composeExtensions[].commands[] object's properties. This indicates which contexts a command is applicable in. It currently supports three values: compose, commandBox, and message.
  4. messageHandlers[] has been added to the composeExtensions[].commands[] object's properties. This allows an app to specify which domains it wants to provide link previews for. The app can specify 1 or more domains it wants to register, but the same domains need to part of its validDomains[] field as well.
  5. choiceset has been added to the composeExtensions[].commands[].parameters[].inputType property's enum.  This allows the compose extension to specify a limited set of choices that the user can input. 
  6. choices property has been added to composeExtensions[].commands[].parameters[] to be used in conjunction with the choiceset inputType, where the compose extension can specify the inputs it wants to display to the user.
  7. taskInfo has been added to the composeExtensions[].commands[] object's properties. This allows developers to specify the task module to preload when using a messaging extension command. 

MicrosoftTeams.Localization.schema.json

This new json file defines the schema for the localized strings file. A localized strings file should be added to the app package for any app which is localized for more than one language. There should be one localized strings file per language in the form <languageTag>.json. The properties in this schema are the JSON paths to the manifest values that are being localized, and you can choose to localize as few or as many of these properties as applies to your app.

Properties

  1. name.short property specifies the localized short name of your app.
  2. name.full property specifies the localized full name of your app.
  3. description.short property specifies the localized short description of your app.
  4. description.full property specifies the localized full description of your app.

Pattern Properties
The name of each of the pattern properties you use should match the regular expressions defined below.

  1. ^staticTabs\[([0-9]|1[0-5])\]\.name$ pattern property allows you to specify the localized value of up to 16 static tabs. E.g staticTabs[13].name
  2. ^bots\[0\]\.commandLists\[[0-2]\]\.commands\[[0-9]\]\.title$ pattern property allows you to specify the localized value of your bot[].commandLists[].commands[].title property. E.g. bot[0].commandLists[1].commands[5].title
  3. ^bots\[0\]\.commandLists\[[0-2]\]\.commands\[[0-9]\]\.description$ pattern property allows you to specify the localized value of bot[].commandLists[].commands[].description property. E.g. bot[0].commandLists[1].commands[5].description
  4. ^composeExtensions\[0\]\.commands\[[0-9]\]\.title$ pattern property allows you to specify the localized value of your composeExtensions[].commands[].title property. E.g composeExtensions[0].commands[2].title
  5. ^composeExtensions\[0\]\.commands\[[0-9]\]\.description$ pattern property allows you to specify the localized value of your composeExtensions[].commands[].description property. E.g composeExtensions[0].commands[2].description
  6. ^composeExtensions\[0\]\.commands\[[0-9]\]\.parameters\[[0-4]\]\.title$ pattern property allows you to specify the localized value of your composeExtensions[].commands[].parameters[].title property. E.g. composeExtensions[0].commands[2].parameters[0].title
  7. ^composeExtensions\[0\]\.commands\[[0-9]\]\.parameters\[[0-4]\]\.description$ pattern property allows you to specify the localized value of your  composeExtensions[].commands[].parameters[].description parameter. E.g. composeExtensions[0].commands[2].parameters[0].description
  8. ^composeExtensions\[0\]\.commands\[[0-9]\]\.parameters\[[0-4]\]\.value$ pattern property allows you to specify the localized value of the value of your composeExtensions[].commands[].parameters[].value property. E.g. composeExtensions[0].commands[2].parameters[0].value
  9. ^composeExtensions\[0\]\.commands\[[0-9]\]\.parameters\[[0-4]\]\.choices\[[0-9]\]\.title$ pattern property allows you to specify the localized value of the composeExtension[].commands[].parameter[].choices[].title property. E.g composeExtension[0].command[2].parameter[0].choices[5].title