トピックの作成

重要

この API は廃止され、2021 年 11 月 1 日に廃止され、使用されなくなりました。

新しいトピックを作成します。 作成すると、このトピックのリソース マニフェストは変更不可になります。 この操作はべき等です。 同じ名前を持つキューの作成が成功した後に作成の呼び出しを繰り返すと、409 競合エラー メッセージが発生します。

以下の点に注意してください。

  • トピックはすぐに削除されません。 削除のマークが付けられ、5 分以内にリソース管理エージェントがその削除要求を取得します。 ただし、UI では、受信した HTTP コードに従って、すぐに削除操作が反映されます。

  • トピック名は実際には URI パスです。 次の正規表現では、% エンコードが使用されている場合は削除された後に、URI パスの各セグメントが検証されます。

  • トピック名は次の正規表現に従う必要があります。

    public static readonly Regex SafeMessagingEntityNameExpression = new Regex(@"^[\w-\.\$]*/?$", RegexOptions.Compiled | RegexOptions.ECMAScript);

    これは、次のことを意味します。

    • エンティティ セグメントに使用できるのは、文字、数字、ピリオド (.)、ハイフン (-)、およびアンダースコア (_) のみです。

    • 複数のセグメントが許可されます (たとえば、キュー名が "a/b/c" の場合、3 つのセグメントが含まれます)。

    • フォワード スラッシュ (/) はキュー名のプレフィックスまたはサフィックスに使用できません。

    • 最大文字数は 50 字です。

Request

Method 要求 URI HTTP バージョン
PUT https://management.core.windows.net/{subscription ID}/services/ServiceBus/Namespaces/{Namespace}/Topics/{Topic Path} HTTP/1.1

要求ヘッダー

必須要求ヘッダーと省略可能な要求ヘッダーを次の表に示します。

要求ヘッダー 説明
Content-Type application/xml;type=entry;charset=utf-8
x-ms-version 2012-03-01

この要求ではクライアント証明書も必要です。 この証明書は、特定のサブスクリプション用にアップロードした証明書に一致する必要があります。

要求本文

次の表では、要求本文の主要な要素について説明します。

プロパティ名 Type 必須 説明
MaxTopicSizeInMegaBytes 符号なし整数 必須。 このパラメーターには、トピックの最大サイズ (MB 単位) を指定します。 トピックがこの値を超える原因になるメッセージをキューに登録しようとすると、失敗します。 この値にはユーザー コンテンツのみが考慮されます。 トピックの作成時と実行時に設定できます。

- 範囲: 1 から 5*1024。

- 既定値: 1*1024。
TopicSizeinBytes 符号なし整数 読み取り専用。 作成時には必須ではありません。 このパラメーターは、トピック クォータに対してトピックのメッセージが現在使用している実際のバイト数を反映しています。

範囲: 0 – MaxTopicSizeinMegaBytes
DefaultMessageTimeToLive XML Datetime 省略可能。 配信不能が有効かどうかに基づいて、メッセージがトピックに保存されている期間が指定した期間よりも長い場合、自動的に配信不能キューに移動されるか、削除されます。 メッセージの TTL がトピックに設定された TTL より小さい場合、この値はメッセージに指定された TTL によって上書きされます。 トピックが作成された後、この値は変更不可になります。

- 範囲: 1 秒から 14 日。

- 既定値: 14 日。
RequiresDuplicateDetection ブール値 省略可能。 トピックの作成時にのみ設定可能です。

- 永続トピックの既定値: False。
EnableDeadLetteringOnMessageExpiration ブール値 省略可能。 トピックの作成時にのみ設定可能です。

- 既定値: False。

このフィールドは、TTL の有効期限が切れたメッセージService Bus処理する方法を決定します。 メッセージが有効になっていて、メッセージの有効期限が切れた場合、Service Busはメッセージをトピックからそのトピックの配信不能サブキューに移動します。 無効な場合は、メッセージをトピックから完全に削除します。
DuplicateDetectionHistoryTimeWindow 期間 省略可能。 Service Busがメッセージの重複を検出する期間を指定するプロパティ。

- 範囲: 1 秒から 7 日。

- 既定値: 10 分。
NumberOfSubscriptions Integer 読み取り専用。 作成時には必須ではありません。 トピックのサブスクリプションの数。
状態 String 読み取り専用。 次のいずれかの値です。

- 作成中: まだ作成フェーズにある場合。
- アクティブ: 既定では、作成後、またはユーザーが前回中断した後にアクティブ化する場合。
- 中断: ユーザーが中断されるエンティティを更新するとき。

応答

応答には、HTTP 状態コードおよび一連の応答ヘッダーが含まれています。

応答コード

注意

特殊な文字またはエンコードされた文字 (エンコード先など) を含む名前のトピックを作成すると、test?Name=value&test%3FName%3Dvalue%26(401) 承認されていない例外が生成されます。

コード 説明
201 トピックは正常に作成されました。
400 要求本文が無効。
401 認証エラー。
403 クォータを超過。キューは更新されません。
500 内部エラーです。

状態コードの詳細については、「 状態コードとエラー コード」を参照してください

レスポンス ヘッダー

応答ヘッダー 説明
Content-Type application/xml;type=entry;charset=utf-8

応答本文

PUT 要求に一部の説明プロパティがない場合、既定値が含まれている可能性があるので、トピックの説明が返されます。