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 |
リクエスト例:
PUT /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:06:46 GMT
Authorization:MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="utf-8"?>
<Subscription xmlns="http://mns.aliyuncs.com/doc/v1/">
<Endpoint>http://company.com</Endpoint>
<NotifyStrategy>BACKOFF_RETRY</NotifyStrategy>
<NotifyContentFormat>SIMPLIFIED</NotifyContentFormat>
<FilterTag>important</FilterTag>
</Subscription>
レスポンス例:
HTTP/1.1 201
x-mns-request-id:56667376B2B71C9C16000025
x-mns-version: 2015-06-06
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 |
リクエスト例:
PUT /topics/$TopicName/subscriptions/$SubscriptionName?metaoverride=true HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:09:22 GMT
Authorization: MNS 15B4D3461F177624206A:rNT4xclLS297/n0UFYIezzHJI7Q=
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="utf-8"?>
<Subscription xmlns="http://mns.aliyuncs.com/doc/v1/">
<NotifyStrategy>BACKOFF_RETRY</ NotifyStrategy>
</Subscription>
リクエスト例:
HTTP/1.1 204 No Content
x-mns-request-id:56667412B2B71C9C16000027
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 |
リクエスト例:
GET /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:09:58 GMT
Authorization: MNS 15B4D3461F177624206A:GvaApggLQfMu6B6W5sbF6HEjV6Y=
x-mns-version: 2015-06-06
レスポンス例:
HTTP/1.1 200 OK
Content-Type=text/xml;utf-8
Content-Length:451
x-mns-request-id:56667436B2B71C9C16000029
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="utf-8"?>
<Subscription xmlns="http://mns.aliyuncs.com/doc/v1">
<CreateTime>1449554806</CreateTime>
<Endpoint>http://company.com</Endpoint>
<FilterTag>important</FilterTag>
<LastModifyTime>1449554962</LastModifyTime>
<NotifyContentFormat>XML</NotifyContentFormat>
<NotifyStrategy>BACKOFF_RETRY</NotifyStrategy>
<SubscriptionName>$SubscriptionName</SubscriptionName>
<Subscriber>$Subscriber</Subscriber>
<TopicName>$TopicName</TopicName>
<TopicOwner>$TopicOwner</TopicOwner>
</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を参照してください。
レスポンス本文
なし。
リクエスト例:
DELETE /topics/$TopicName/Subscriptions/$SubscriptionName HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:18:04 GMT
Authorization: MNS 15B4D3461F177624206A:UOEb7OmC9GX7G9BLY3XryP6vtjQ=
x-mns-version: 2015-06-06
レスポンス例:
HTTP/1.1 204 No Content
x-mns-request-id: 5666761CB2B71C9C16000035
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要素が含まれます次のページの開始位置となります。
リクエスト例:
GET /topics/$TopicName/subscriptions HTTP/1.1
x-mns-ret-number:2
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:16:18 GMT
Authorization: MNS 15B4D3461F177624206A:dXSLY5yGG8Ri5f26ZEmxMCq1CC4=
x-mns-version: 2015-06-06
レスポンス例:
HTTP/1.1 200 OK
x-mns-request-id:566675B2B2B71C9C16000033
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="utf-8"?>
<Subscriptions xmlns="http://mns.aliyuncs.com/doc/v1/">
<Subscription>
<SubscriptionURL>http://$AccountId.mns.cn-hangzhou.aliyuncs.com/$TopicName/subscriptions/$SubscriptionName1</SubscriptionURL>
</Subscription>
<Subscription>
<SubscriptionURL>http://$AccountId.mns.cn-hangzhou.aliyuncs.com/$TopicName/subscriptions/$SubscriptionName2</SubscriptionURL>
</Subscription>
<NextMarker>OTczNjU4MTcvYmRwejd6NXluby8yNjg0Mi9+fn5FI1Rlc3RUb3BpYy0xI2JkcHo3ejV5bm8jVGVzdFN1Yi0zLzA=</NextMarker>
</Subscriptions>