TeamsApp を発行する
名前空間: microsoft.graph
重要
Microsoft Graph の /beta
バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。
Microsoft Teams アプリ カタログにアプリを発行します。
具体的には、この API はアプリをorganizationのカタログ (テナント アプリ カタログ) に発行します。作成されたリソースの distributionMethod プロパティ値organization
は です。
requiresReview プロパティを使用すると、すべてのユーザーが管理者によるレビューのためにアプリを送信できます。 管理者は、この API または Microsoft Teams 管理センターを使用して、これらのアプリを承認または拒否できます。
この API は、次の国内クラウド展開で使用できます。
グローバル サービス | 米国政府機関 L4 | 米国政府機関 L5 (DOD) | 21Vianet が運営する中国 |
---|---|---|---|
✅ | ✅ | ✅ | ❌ |
アクセス許可
この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「 アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、 アクセス許可のリファレンスを参照してください。
アクセス許可の種類 | 最小特権アクセス許可 | 特権の高いアクセス許可 |
---|---|---|
委任 (職場または学校のアカウント) | AppCatalog.Submit | AppCatalog.ReadWrite.All,Directory.ReadWrite.All |
委任 (個人用 Microsoft アカウント) | サポートされていません。 | サポートされていません。 |
アプリケーション | サポートされていません。 | サポートされていません。 |
注:
Directory.ReadWrite.All アクセス許可は、下位互換性のためにのみサポートされます。 前の表に記載されている別のアクセス許可を使用するようにソリューションを更新し、今後これらのアクセス許可を使用しないようにすることをお勧めします。
HTTP 要求
POST /appCatalogs/teamsApps
レビューを必要とするアプリを発行するには:
POST /appCatalogs/teamsApps?requiresReview={Boolean}
クエリ パラメーター
プロパティ | 型 | 説明 |
---|---|---|
requiresReview | ブール型 | このオプションのクエリ パラメーターは、アプリ レビュー プロセスをトリガーします。 管理者特権を持つユーザーは、レビューをトリガーせずにアプリを送信できます。 ユーザーが発行する前にレビューを要求する場合は、 requiresReview を に設定する true 必要があります。 管理者特権を持つユーザーは、 requiresReview を設定したり、値を に false 設定したりしないことを選択でき、アプリが承認され、すぐに公開されます。 |
要求ヘッダー
ヘッダー | 値 |
---|---|
Authorization | ベアラー {token}。 必須です。 認証と承認の詳細については、こちらをご覧ください。 |
Content-Type | application/zip。 必須です。 |
要求本文
要求本文に、Teams zip マニフェスト ペイロードを含めます。 詳細については、「 アプリ パッケージの作成」を参照してください。
アプリ カタログ内の各アプリには、一意のマニフェスト ID が必要です。
応答
成功した場合、このメソッドは 200 OK
応答コードと teamsApp オブジェクトを返します。 アプリ マニフェストに検証エラーがある場合、要求はスキーマ エラーに関する詳細を含むエラー応答を返します。
例
例 1: アプリ カタログにアプリを発行する
要求
次の例は要求を示しています。
POST https://graph.microsoft.com/beta/appCatalogs/teamsApps
Content-type: application/zip
[Zip file containing a Teams app package]
Microsoft Teams アプリケーションの zip ファイルを作成する方法については、「 アプリ パッケージの作成」を参照してください。
応答
次の例は応答を示しています。
HTTP/1.1 201 Created
Content-Type: application/json
{
"id": "e3e29acb-8c79-412b-b746-e6c39ff4cd22",
"externalId": "b5561ec9-8cab-4aa3-8aa2-d8d7172e4311",
"displayName": "Test App",
"distributionMethod": "organization"
}
例 2: レビュー用の新しいアプリケーションをorganizationのアプリ カタログにアップロードする
要求
次の例は要求を示しています。
POST https://graph.microsoft.com/beta/appCatalogs/teamsApps?requiresReview=true
Content-type: application/zip
応答
次の例は応答を示しています。
HTTP/1.1 201 Created
Location: https://graph.microsoft.com/beta/appCatalogs/teamsApps/e3e29acb-8c79-412b-b746-e6c39ff4cd22
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#appCatalogs/teamsApps/$entity",
"id": "e3e29acb-8c79-412b-b746-e6c39ff4cd22",
"externalId": "b5561ec9-8cab-4aa3-8aa2-d8d7172e4311",
"displayName": "Test App",
"distributionMethod": "organization"
}
例 3: アプリのレビュー待ちを承認または拒否する
要求
次の例は要求を示しています。
PATCH https://graph.microsoft.com/beta/appCatalogs/teamsApps/a761ad07-22ef-4a53-9feb-2837c8ad4a84/appDefinitions/YTc2MWFkMDctMjJlZi00YTUzLTlmZWItMjgzN2M4YWQ0YTg0IyMxLjEuOCMjU3VibWl0dGVk
Content-type: application/json
If-Match: InFtSStsNVJHVWdzWUJRU2ZVWGp4RWc9PSI=
{
"publishingState":"published"
}
応答
次の例は応答を示しています。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#appCatalogs/teamsApps('a761ad07-22ef-4a53-9feb-2837c8ad4a84')/appDefinitions/$entity",
"id": "YTc2MWFkMDctMjJlZi00YTUzLTlmZWItMjgzN2M4YWQ0YTg0IyMxLjEuOCMjUHVibGlzaGVk",
"teamsAppId": "a761ad07-22ef-4a53-9feb-2837c8ad4a84",
"azureADAppId": null,
"displayName": "Ducks",
"version": "1.1.8",
"requiredResourceSpecificApplicationPermissions": [],
"publishingState": "published",
"shortdescription": "quaerat quasi magnam. slight change. 5",
"description": "Aliquid placeat animi debitis accusamus. Non perferendis ullam. Quis est consequuntur vitae provident. Sunt laudantium id aut. slight change 5",
"lastModifiedDateTime": null,
"createdBy": null
}
例 4: アプリ マニフェストでエラーが発生したアプリをアプリ カタログに発行する
要求
次の例は要求を示しています。
POST https://graph.microsoft.com/v1.0/appCatalogs/teamsApps
Content-type: application/zip
[Zip file containing a Teams app package]
応答
次の例は応答を示しています。
HTTP/1.1 200 OK
Content-type: application/json
{
"error": {
"code": "BadRequest",
"message": "name | Required properties are missing from object: [].; developer.websiteUrl | String \"hs://www.yo.com\" does not match regex pattern \"^[Hh][Tt][Tt][Pp][Ss]?://\".",
"innerError": {
"code": "UnableToParseTeamsAppManifest",
"message": "name | Required properties are missing from object: [].; developer.websiteUrl | String \"hs://www.yo.com\" does not match regex pattern \"^[Hh][Tt][Tt][Pp][Ss]?://\".",
"details": [
{
"code": "SchemaError_Required",
"message": "Required properties are missing from object: [].",
"target": "name"
},
{
"code": "SchemaError_Pattern",
"message": "String \"hs://www.yo.com\" does not match regex pattern \"^[Hh][Tt][Tt][Pp][Ss]?://\".",
"target": "developer.websiteUrl"
}
],
"date": "2024-01-18T21:47:58",
"request-id": "d1878136-bc88-421a-b342-c3d883db31a1",
"client-request-id": "d1878136-bc88-421a-b342-c3d883db31a1"
}
}
}
関連コンテンツ
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示