すべてのプロダクト
Search
ドキュメントセンター

:Subscription 関連の操作

最終更新日:Mar 22, 2020

Subscribe

説明

このAPIはtopicに対してサブスクリプションを作成するために使われます。

サブスクリプション名は256字以内で文字、数字、ハイフン(-)を含みます。名前の始まりは文字か数字でなければいけません。

endpointは作成済みの特定のサブスクリプションでなければなりません。 そうでなければサブスクリプションは無効になってしまいます。

リクエスト

リクエストは次のパートを含みます。

  • リクエスト行

    PUT /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1 .

  • 特別なリクエストヘッダー

    なし。 詳細はCall method/Public parametersを参照してください。

  • リクエスト本文

    リクエスト本文はXML形式でattribute属性を含みます。

パラメータ名 説明 パラメータ値 必須/任意
Endpoint 作成されたサブスクリプションのメッセージ受信者の端末アドレス。 現在、4つのendpointがサポートされています。 1. HttpEndpoint:”http://“ で始まります。 2. QueueEndpoint:フォーマット形式は acs:mns:{REGION}:{AccountID}:queues/{QueueName} です。 3. MailEndpoint:フォーマット形式はmail:directmail:{MailAddress} です。 4. SmsEndpoint:フォーマット形式はsms:directsms:anonymous または sms:directsms:{Phone} です。 必須
FilterTag 作成したサブスクリプションのメッセージフィルタタグ(一貫したタグを含むメッセージのみがプッシュされます) 文字列は16文字以下です。デフォルトではメッセージフィルタはなし。 任意
NotifyStrategy エンドポイントへのメッセージプッシュ中にエラーが発生した場合に適用されるポリシーを再試行する。 BACKOFF_RETRY または EXPONENTIAL_DECAY_RETRY; デフォルト値 value:BACKOFF_RETRY. retry policiesに関する詳細は Basic Concepts/NotifyStrategyを参照してください。 任意
NotifyContentFormat エンドポイントにプッシュされたメッセージコンテンツの形式 XML, JSON, または SIMPLIFIED; デフォルト値: XML. メッセージフォーマットに関する詳細はBasic Concepts/NotifyContentFormatを参照してください。 任意

Response

レスポンスメッセージは3つのパーツから成ります。 返信ステータス行, HTTPヘッダー, メッセージ本文

  • HTTP ステータスコード

    HTTP/1.1 201

    同一リージョンの同一作成者による重複したサブスクリプション名は使えません。もし作成されたサブスクリプションが既存のサブスクリプションと名前と属性が同じであるとき、ステータスコード 204(No Content)が返されます。もし名前が同じではあるが属性が異なる場合は、ステータスコード 409(Conflict)が返されます。

  • 特別なレスポンスヘッダー

パラメータ名 説明
Location 作成されたsubscriptionのURL。フォーマットは次のようになります。: http://$AccountId.mns.cn-hangzhou.aliyuncs.com/topics/$TopicName/subscriptions/$SubscriptionName

その他のレスポンスヘッダーに関しての詳細はCall Method/Public Parametersを参照してください。

  • レスポンス本文

    なし。

特別なエラー

エラーコード エラーメッセージ ステータスコード
SubscriptionNameLengthError サブスクリプション名の長さは1から256文字以内でなければいけません。 400
SubscriptionNameInvalid サブスクリプション名が不正です。 サブスクリプション名は英数字で始め、使用できるのは英数字および”-“のみです。 400
SubscriptionAlreadyExist 作成しようとしたサブスクリプションは既に存在しています。 409
EndpointInvalid エンドポイントが不正です。 400
InvalidArgument フィルタータグの長さは1から16でなければいけません。 400

リクエスト例:

  1. PUT /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1
  2. Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
  3. Date: Tue, 08 Dec 2015 06:06:46 GMT
  4. Authorization:MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
  5. x-mns-version: 2015-06-06
  6. <?xml version="1.0" encoding="utf-8"?>
  7. <Subscription xmlns="http://mns.aliyuncs.com/doc/v1/">
  8. <Endpoint>http://company.com</Endpoint>
  9. <NotifyStrategy>BACKOFF_RETRY</NotifyStrategy>
  10. <NotifyContentFormat>SIMPLIFIED</NotifyContentFormat>
  11. <FilterTag>important</FilterTag>
  12. </Subscription>

レスポンス例:

  1. HTTP/1.1 201
  2. x-mns-request-id:56667376B2B71C9C16000025
  3. x-mns-version: 2015-06-06
  4. Location: http://$AccountId.mns.cn-hangzhou.aliyuncs.com/topics/$TopicName/subscriptions/$SubscriptionName

SetSubscriptionAttributes

説明

このAPIはサブスクリプションの属性を変更するために使います。

レスポンス

リクエストは次のパートを含みます。

  • リクエスト行

    PUT /topics/$TopicName/subscriptions/$SubscriptionName?metaoverride=true HTTP/1.1

  • 特別なURIパラメータ

    metaoverride=true: サブスクリプションの属性が変更されます。

  • 特別なリクエストヘッダー

    なし。詳細はCall method/Public parametersを参照してください。

  • リクエスト本文

    リクエスト本文はXML形式で設定されたサブスクリプション属性を含んでいます。

パラメータ名 説明 パラメータ値 必須/任意
NotifyStrategy BACKOFF_RETRYまたはEXPONENTIAL_DECAY_RETRYエンドポイントへのメッセージプッシュ中にエラーが発生した場合に適用されるポリシーを再試行します。デフォルト値:BACKOFF_RETRY。再試行のポリシーに関する詳細はBasic Concepts/NotifyStrategyを参照してください。 任意

レスポンス

レスポンスメッセージは3つのパーツから成ります。 返信ステータス行, HTTPヘッダー, メッセージ本文

  • HTTP ステータスコード

    HTTP/1.1 204 No Content

  • 特別なレスポンスヘッダー

    なし。 詳細はCall method/Public parametersを参照してください。

  • レスポンス本文

    なし

特別なエラー:

エラーコード エラーメッセージ ステータスコード
SubscriptionNotExist サブスクリプションは存在しません。 404

リクエスト例:

  1. PUT /topics/$TopicName/subscriptions/$SubscriptionName?metaoverride=true HTTP/1.1
  2. Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
  3. Date: Tue, 08 Dec 2015 06:09:22 GMT
  4. Authorization: MNS 15B4D3461F177624206A:rNT4xclLS297/n0UFYIezzHJI7Q=
  5. x-mns-version: 2015-06-06
  6. <?xml version="1.0" encoding="utf-8"?>
  7. <Subscription xmlns="http://mns.aliyuncs.com/doc/v1/">
  8. <NotifyStrategy>BACKOFF_RETRY</ NotifyStrategy>
  9. </Subscription>

リクエスト例:

  1. HTTP/1.1 204 No Content
  2. x-mns-request-id:56667412B2B71C9C16000027
  3. x-mns-version: 2015-06-06

GetSubscriptionAttributes

説明

このAPIはサブスクリプションの属性を取得するために使われます。

リクエスト

リクエストは次のパートを含みます。

  • リクエスト行

    GET /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1

  • 特別なリクエストヘッダー

    なし。 詳細はCall method/Public parametersを参照してください。

  • リクエスト本文

    なし。

レスポンス

レスポンスメッセージは3つのパーツから成ります。 返信ステータス行, HTTPヘッダー, メッセージ本文

  • HTTP ステータスコード

    HTTP/1.1 200 OK

  • 特別なレスポンスヘッダー

    なし。 詳細はCall method/Public parametersを参照してください。

  • レスポンス本文

パラメータ名 説明
SubscriptionName サブスクリプション名
Subscriber メッセージ受信者のアカウントID
TopicOwner メッセージ受信しているtopic所有者のアカウントID
TopicName メッセージ受信しているtopicの名前
Endpoint 作成されたサブスクリプションのメッセージ受信者の端末アドレス
NotifyStrategy エンドポイントへのメッセージプッシュ中にエラーが発生した場合に適用されるポリシーを再試行する。
NotifyContentFormat エンドポイントにプッシュされたメッセージコンテンツの形式。
FilterTag 作成したサブスクリプションのメッセージフィルタタグ(一貫したタグを含むメッセージのみがプッシュされます)
CreateTime サブスクリプションが作成された日時。1970年1月1日00:00:00を起点として、経過した秒数で表す。
LastModifyTime サブスクリプション属性の最終更新時刻。1970年1月1日00:00:00を起点として、経過した秒数で表す。

特別なエラー

エラーコード エラーコード ステータスコード
SubscriberNotExist サブスクリプションは存在しません。 404

リクエスト例:

  1. GET /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1
  2. Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
  3. Date: Tue, 08 Dec 2015 06:09:58 GMT
  4. Authorization: MNS 15B4D3461F177624206A:GvaApggLQfMu6B6W5sbF6HEjV6Y=
  5. x-mns-version: 2015-06-06

レスポンス例:

  1. HTTP/1.1 200 OK
  2. Content-Type=text/xml;utf-8
  3. Content-Length:451
  4. x-mns-request-id:56667436B2B71C9C16000029
  5. x-mns-version: 2015-06-06
  6. <?xml version="1.0" encoding="utf-8"?>
  7. <Subscription xmlns="http://mns.aliyuncs.com/doc/v1">
  8. <CreateTime>1449554806</CreateTime>
  9. <Endpoint>http://company.com</Endpoint>
  10. <FilterTag>important</FilterTag>
  11. <LastModifyTime>1449554962</LastModifyTime>
  12. <NotifyContentFormat>XML</NotifyContentFormat>
  13. <NotifyStrategy>BACKOFF_RETRY</NotifyStrategy>
  14. <SubscriptionName>$SubscriptionName</SubscriptionName>
  15. <Subscriber>$Subscriber</Subscriber>
  16. <TopicName>$TopicName</TopicName>
  17. <TopicOwner>$TopicOwner</TopicOwner>
  18. </Subscription>

Unsubscribe

説明

このAPIはサブスクリプションを取り消すために使います。

リクエスト

リクエストは次のパートを含みます。

  • リクエスト行

    DELETE /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1

  • 特別なリクエストヘッダー

    なし。 詳細はCall method/Public parametersを参照してください。

  • リクエスト本文 なし。

レスポンス

レスポンスメッセージは3つのパーツから成ります。 返信ステータス行, HTTPヘッダー, メッセージ本文

  • HTTP ステータスコード

    HTTP/1.1 204 No Content

    もしサブスクリプションが削除され存在していないときは、ステータスコード 204 が返されサブスクリプションの解除は成功です。

  • 特別なレスポンスヘッダー

    なし。 詳細はCall method/Public parametersを参照してください。

  • レスポンス本文

    なし。

リクエスト例:

  1. DELETE /topics/$TopicName/Subscriptions/$SubscriptionName HTTP/1.1
  2. Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
  3. Date: Tue, 08 Dec 2015 06:18:04 GMT
  4. Authorization: MNS 15B4D3461F177624206A:UOEb7OmC9GX7G9BLY3XryP6vtjQ=
  5. x-mns-version: 2015-06-06

レスポンス例:

  1. HTTP/1.1 204 No Content
  2. x-mns-request-id: 5666761CB2B71C9C16000035
  3. x-mns-version: 2015-06-06

ListSubscriptionByTopic

説明

このAPIは、トピックへのサブスクリプションを一覧表示するために使用されます。ページ単位のクエリがサポートされています。

ヒント:現在の要求に対して返されたトピックの総数がx-mns-ret-number値を超える場合、返されたXML結果にはNextMarkerが含まれ、次のページの開始位置を示し、この値はx-mns-marker次のページを表示するための次の要求のパラメータになります。

リクエスト

リクエストは次のパートに含まれます。

  • リクエスト行GET /topics/$TopicName/subscriptions HTTP/1.1

  • 特別リクエストヘッダー

パラメータ名 説明 必須/任意
x-mns-prefix 指定された接頭辞で始まるトピック名を検索する。 任意
x-mns-marker 前のページのNextMarkerから取得した次のページの開始位置。 任意
x-mns-ret-number 1回のリクエストで返されるサブスクリプションの最大数。1から1,000までの整数です。デフォルト値は1,000です。 任意

その他のリクエストヘッダーに関してはCall Method/Public Parametersを参照してください。

  • レスポンス本文

    なし。

レスポンス

レスポンスメッセージは3つのパーツから成ります。 返信ステータス行, HTTPヘッダー, メッセージ本文。

  • HTTP ステータスコード

    HTTP/1.1 200 OK

  • 特別なレスポンスヘッダー

    なし。詳細に関してはCall method/Public parametersを参照してください。

  • レスポンス本文

    返される結果はXML形式です。最上位レイヤのトピック要素には複数のトピック要素が含まれ、各トピック要素にはトピックのURLを示すTopicURL要素が含まれます。返されたキューの数がx-mns-ret-number値を超える場合、NextMarker要素が含まれます次のページの開始位置となります。

リクエスト例:

  1. GET /topics/$TopicName/subscriptions HTTP/1.1
  2. x-mns-ret-number:2
  3. Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
  4. Date: Tue, 08 Dec 2015 06:16:18 GMT
  5. Authorization: MNS 15B4D3461F177624206A:dXSLY5yGG8Ri5f26ZEmxMCq1CC4=
  6. x-mns-version: 2015-06-06

レスポンス例:

  1. HTTP/1.1 200 OK
  2. x-mns-request-id:566675B2B2B71C9C16000033
  3. x-mns-version: 2015-06-06
  4. <?xml version="1.0" encoding="utf-8"?>
  5. <Subscriptions xmlns="http://mns.aliyuncs.com/doc/v1/">
  6. <Subscription>
  7. <SubscriptionURL>http://$AccountId.mns.cn-hangzhou.aliyuncs.com/$TopicName/subscriptions/$SubscriptionName1</SubscriptionURL>
  8. </Subscription>
  9. <Subscription>
  10. <SubscriptionURL>http://$AccountId.mns.cn-hangzhou.aliyuncs.com/$TopicName/subscriptions/$SubscriptionName2</SubscriptionURL>
  11. </Subscription>
  12. <NextMarker>OTczNjU4MTcvYmRwejd6NXluby8yNjg0Mi9+fn5FI1Rlc3RUb3BpYy0xI2JkcHo3ejV5bm8jVGVzdFN1Yi0zLzA=</NextMarker>
  13. </Subscriptions>