翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SNS メッセージ形式の解析
Amazon では、次の形式SNSを使用します。
トピック
HTTP/HTTPS ヘッダー
Amazon SNSがサブスクリプション確認、通知、またはサブスクリプション解除の確認メッセージを HTTP/HTTPS エンドポイントに送信すると、Amazon SNS固有のヘッダー値が多数含まれたPOSTメッセージを送信します。値を読み取るためにメッセージ本文を解析しなくても、JSONメッセージタイプを識別するなどのタスクにヘッダーType
値を使用できます。デフォルトでは、Amazon は を Content-Type
に設定してすべての通知を HTTP/S エンドポイントSNSに送信しますtext/plain; charset=UTF-8
。text/plain (デフォルト) 以外の Content-Type
を選択するには、「HTTP/S 配信ポリシーの作成」の「headerContentType
」を参照してください。
x-amz-sns-message-type
-
メッセージのタイプ。指定できる値は、
SubscriptionConfirmation
、Notification
およびUnsubscribeConfirmation
です。 x-amz-sns-message-id
-
発行される各メッセージに一意のユニバーサル一意識別子 (UUID)。再試行中に Amazon SNSが再送信する通知には、元のメッセージのメッセージ ID が使用されます。
x-amz-sns-topic-arn
-
このメッセージが公開されたトピックの Amazon リソースネーム (ARN)。
x-amz-sns-subscription-arn
-
このエンドポイントへのサブスクリプションARNの 。
次のHTTPPOSTヘッダーは、HTTPエンドポイントへのNotification
メッセージのヘッダーの例です。
POST / HTTP/1.1 x-amz-sns-message-type: Notification x-amz-sns-message-id: 165545c9-2a5c-472c-8df2-7ff2be2b3b1b x-amz-sns-topic-arn: arn:aws:sns:us-west-2:123456789012:MyTopic x-amz-sns-subscription-arn: arn:aws:sns:us-west-2:123456789012:MyTopic:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55 Content-Length: 1336 Content-Type: text/plain; charset=UTF-8 Host: myhost.example.com Connection: Keep-Alive User-Agent: Amazon Simple Notification Service Agent
HTTP/HTTPS サブスクリプション確認JSON形式
HTTP/HTTPS endpoint, Amazon SNS sends a subscription confirmation message to the HTTP/HTTPS エンドポイントをサブスクライブした後。このメッセージには、サブスクリプションを確認するためにアクセスする必要がある SubscribeURL
値が含まれています (または、Token
値を ConfirmSubscription
で使用できます)。
注記
Amazon SNSは、サブスクリプションが確認されるまで、このエンドポイントに通知を送信しません
サブスクリプション確認メッセージは、次の名前と値のペアを持つJSONドキュメントを含むメッセージ本文を含むPOSTメッセージです。
Type
-
メッセージのタイプ。サブスクリプションの確認の場合、タイプは
SubscriptionConfirmation
です。 MessageId
-
発行される各メッセージに一意のユニバーサル一意識別子 (UUID)。再試行中に Amazon SNSが再送信するメッセージには、元のメッセージのメッセージ ID が使用されます。
Token
-
サブスクリプションを確認するために
ConfirmSubscription
アクションで使用できる値。または、SubscribeURL
にアクセスしても構いません。 TopicArn
-
このエンドポイントがサブスクライブされているトピックの Amazon リソースネーム (ARN)。
Message
-
メッセージについて説明する文字列。サブスクリプションの確認の場合、この文字列は以下のようになります。
You have chosen to subscribe to the topic arn:aws:sns:us-east-2:123456789012:MyTopic.\nTo confirm the subscription, visit the SubscribeURL included in this message.
SubscribeURL
-
サブスクリプションを確認するためにアクセスURLする必要がある 。または、代わりに
Token
をConfirmSubscription
アクションで使用してサブスクリプションを確認することもできます。 Timestamp
-
サブスクリプション確認が送信された時刻 (GMT)。
SignatureVersion
-
使用される Amazon SNS署名のバージョン。
-
SignatureVersion
が 1 である場合、Signature
はMessage
、MessageId
、Type
、Timestamp
、TopicArn
の各値の Base64 でエンコードされたSHA1withRSA
シグネチャです。 -
SignatureVersion
が 2 である場合、Signature
はMessage
、MessageId
、Type
、Timestamp
、TopicArn
の各値の Base64 でエンコードされたSHA256withRSA
シグネチャです。
-
Signature
-
Message
、MessageId
、Type
、Timestamp
、TopicArn
の各値の BaseBase64 でエンコードされたSHA1withRSA
またはSHA256withRSA
シグネチャ。 SigningCertURL
-
メッセージの署名に使用されたURL証明書への 。
次のHTTPPOSTメッセージは、HTTPエンドポイントへのSubscriptionConfirmation
メッセージの例です。
POST / HTTP/1.1 x-amz-sns-message-type: SubscriptionConfirmation x-amz-sns-message-id: 165545c9-2a5c-472c-8df2-7ff2be2b3b1b x-amz-sns-topic-arn: arn:aws:sns:us-west-2:123456789012:MyTopic Content-Length: 1336 Content-Type: text/plain; charset=UTF-8 Host: myhost.example.com Connection: Keep-Alive User-Agent: Amazon Simple Notification Service Agent { "Type" : "SubscriptionConfirmation", "MessageId" : "165545c9-2a5c-472c-8df2-7ff2be2b3b1b", "Token" : "2336412f37...", "TopicArn" : "arn:aws:sns:us-west-2:123456789012:MyTopic", "Message" : "You have chosen to subscribe to the topic arn:aws:sns:us-west-2:123456789012:MyTopic.\nTo confirm the subscription, visit the SubscribeURL included in this message.", "SubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=ConfirmSubscription&TopicArn=arn:aws:sns:us-west-2:123456789012:MyTopic&Token=2336412f37...", "Timestamp" : "2012-04-26T20:45:04.751Z", "SignatureVersion" : "1", "Signature" : "EXAMPLEpH+DcEwjAPg8O9mY8dReBSwksfg2S7WKQcikcNKWLQjwu6A4VbeS0QHVCkhRS7fUQvi2egU3N858fiTDN6bkkOxYDVrY0Ad8L10Hs3zH81mtnPk5uvvolIC1CXGu43obcgFxeL3khZl8IKvO61GWB6jI9b5+gLPoBc1Q=", "SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-f3ecfb7224c7233fe7bb5f59f96de52f.pem" }
HTTP/HTTPS 通知JSON形式
Amazon がサブスクライブHTTPまたはHTTPSエンドポイントに通知SNSを送信すると、エンドポイントに送信されるPOSTメッセージには、次の名前と値のペアを持つJSONドキュメントを含むメッセージ本文があります。
Type
-
メッセージのタイプ。通知の場合、タイプは
Notification
です。 MessageId
-
発行される各メッセージに一意のユニバーサル一意識別子 (UUID)。再試行中に Amazon SNSが再送信する通知には、元のメッセージのメッセージ ID が使用されます。
TopicArn
-
このメッセージが公開されたトピックの Amazon リソースネーム (ARN)。
Subject
-
通知をトピックに発行したときに指定した
Subject
パラメータ。注記
このパラメータはオプションです。
Subject
が指定されていない場合、この名前と値のペアはこのJSONドキュメントに表示されません。 Message
-
通知をトピックに発行したときに指定した
Message
値。 Timestamp
-
通知が発行された時刻 (GMT)。
SignatureVersion
-
使用される Amazon SNS署名のバージョン。
-
SignatureVersion
が 1 の場合、Signature
は、Message
、、Subject
(存在する場合)MessageId
、、Type
Timestamp
、およびTopicArn
値の Base64-encodedされたSHA1withRSA
署名です。 -
SignatureVersion
が 2 である場合、Signature
はMessage
、MessageId
、Subject
(存在する場合)、Type
、Timestamp
、TopicArn
の各値の Base64 でエンコードされたSHA256withRSA
シグネチャです。
-
Signature
-
Message
、MessageId
、Subject
(存在する場合)、Type
、Timestamp
、TopicArn
の各値の Base64 でエンコードされたSHA1withRSA
またはSHA256withRSA
シグネチャ。 SigningCertURL
-
メッセージの署名に使用されたURL証明書への 。
UnsubscribeURL
-
このトピックからエンドポイントのサブスクライブを解除するためにURL使用できる 。この にアクセスするとURL、Amazon はエンドポイントのサブスクライブSNSを解除し、このエンドポイントへの通知の送信を停止します。
次のHTTPPOSTメッセージは、HTTPエンドポイントへのNotification
メッセージの例です。
POST / HTTP/1.1 x-amz-sns-message-type: Notification x-amz-sns-message-id: 22b80b92-fdea-4c2c-8f9d-bdfb0c7bf324 x-amz-sns-topic-arn: arn:aws:sns:us-west-2:123456789012:MyTopic x-amz-sns-subscription-arn: arn:aws:sns:us-west-2:123456789012:MyTopic:c9135db0-26c4-47ec-8998-413945fb5a96 Content-Length: 773 Content-Type: text/plain; charset=UTF-8 Host: myhost.example.com Connection: Keep-Alive User-Agent: Amazon Simple Notification Service Agent { "Type" : "Notification", "MessageId" : "22b80b92-fdea-4c2c-8f9d-bdfb0c7bf324", "TopicArn" : "arn:aws:sns:us-west-2:123456789012:MyTopic", "Subject" : "My First Message", "Message" : "Hello world!", "Timestamp" : "2012-05-02T00:54:06.655Z", "SignatureVersion" : "1", "Signature" : "EXAMPLEw6JRN...", "SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-f3ecfb7224c7233fe7bb5f59f96de52f.pem", "UnsubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-west-2:123456789012:MyTopic:c9135db0-26c4-47ec-8998-413945fb5a96" } }
HTTP/HTTPS サブスクライブ解除の確認JSON形式
HTTP/HTTPS エンドポイントがトピックからサブスクライブ解除されると、Amazon はサブスクライブ解除確認メッセージをエンドポイントSNSに送信します。
サブスクライブ解除確認メッセージは、次の名前と値のペアを持つJSONドキュメントを含むメッセージ本文を含むPOSTメッセージです。
Type
-
メッセージのタイプ。サブスクリプション解除の確認の場合、タイプは
UnsubscribeConfirmation
です。 MessageId
-
発行される各メッセージに一意のユニバーサル一意識別子 (UUID)。再試行中に Amazon SNSが再送信するメッセージには、元のメッセージのメッセージ ID が使用されます。
Token
-
サブスクリプションを再確認するために
ConfirmSubscription
アクションで使用できる値。または、SubscribeURL
にアクセスしても構いません。 TopicArn
-
このエンドポイントがサブスクライブ解除されたトピックの Amazon リソースネーム (ARN)。
Message
-
メッセージについて説明する文字列。サブスクリプション解除の確認の場合、この文字列は次のようになります。
You have chosen to deactivate subscription arn:aws:sns:us-east-2:123456789012:MyTopic:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55.\nTo cancel this operation and restore the subscription, visit the SubscribeURL included in this message.
SubscribeURL
-
サブスクリプションを再確認するためにアクセスURLする必要がある 。または、代わりに
Token
をConfirmSubscription
アクションで使用してサブスクリプションを再確認することもできます。 Timestamp
-
サブスクライブ解除の確認が送信された時刻 (GMT)。
SignatureVersion
-
使用される Amazon SNS署名のバージョン。
-
SignatureVersion
が 1 である場合、Signature
はMessage
、MessageId
、Type
、Timestamp
、TopicArn
の各値の Base64 でエンコードされたSHA1withRSA
シグネチャです。 -
SignatureVersion
が 2 である場合、Signature
はMessage
、MessageId
、Type
、Timestamp
、TopicArn
の各値の Base64 でエンコードされたSHA256withRSA
シグネチャです。
-
Signature
-
Message
、MessageId
、Type
、Timestamp
、TopicArn
の各値の BaseBase64 でエンコードされたSHA1withRSA
またはSHA256withRSA
シグネチャ。 SigningCertURL
-
メッセージの署名に使用されたURL証明書への 。
次のHTTPPOSTメッセージは、HTTPエンドポイントへのUnsubscribeConfirmation
メッセージの例です。
POST / HTTP/1.1 x-amz-sns-message-type: UnsubscribeConfirmation x-amz-sns-message-id: 47138184-6831-46b8-8f7c-afc488602d7d x-amz-sns-topic-arn: arn:aws:sns:us-west-2:123456789012:MyTopic x-amz-sns-subscription-arn: arn:aws:sns:us-west-2:123456789012:MyTopic:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55 Content-Length: 1399 Content-Type: text/plain; charset=UTF-8 Host: myhost.example.com Connection: Keep-Alive User-Agent: Amazon Simple Notification Service Agent { "Type" : "UnsubscribeConfirmation", "MessageId" : "47138184-6831-46b8-8f7c-afc488602d7d", "Token" : "2336412f37...", "TopicArn" : "arn:aws:sns:us-west-2:123456789012:MyTopic", "Message" : "You have chosen to deactivate subscription arn:aws:sns:us-west-2:123456789012:MyTopic:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55.\nTo cancel this operation and restore the subscription, visit the SubscribeURL included in this message.", "SubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=ConfirmSubscription&TopicArn=arn:aws:sns:us-west-2:123456789012:MyTopic&Token=2336412f37fb6...", "Timestamp" : "2012-04-26T20:06:41.581Z", "SignatureVersion" : "1", "Signature" : "EXAMPLEHXgJm...", "SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-f3ecfb7224c7233fe7bb5f59f96de52f.pem" }
SetSubscriptionAttributes 配信ポリシーJSONの形式
SetSubscriptionAttributes
アクションにリクエストを送信し、 AttributeName
パラメータを の値に設定する場合DeliveryPolicy
、 AttributeValue
パラメータの値は有効なJSONオブジェクトである必要があります。例えば、次の例では、配信ポリシーを合計 5 回の再試行に設定します。
http://sns.us-east-2.amazonaws.com/ ?Action=SetSubscriptionAttributes &SubscriptionArn=arn%3Aaws%3Asns%3Aus-east-2%3A123456789012%3AMy-Topic%3A80289ba6-0fd4-4079-afb4-ce8c8260f0ca &AttributeName=DeliveryPolicy &AttributeValue={"healthyRetryPolicy":{"numRetries":5}} ...
AttributeValue
パラメータの値には、次のJSON形式を使用します。
{ "healthyRetryPolicy" : { "minDelayTarget" : int, "maxDelayTarget" : int, "numRetries" : int, "numMaxDelayRetries" : int, "backoffFunction" : "linear|arithmetic|geometric|exponential" }, "throttlePolicy" : { "maxReceivesPerSecond" : int }, "requestPolicy" : { "headerContentType" : "text/plain | application/json | application/xml" } }
SetSubscriptionAttribute
アクションの詳細については、「Amazon Simple Notification Service APIリファレンスSetSubscriptionAttributes」の「」を参照してください。サポートされているHTTPコンテンツタイプのヘッダーの詳細については、「」を参照してくださいHTTP/S 配信ポリシーの作成。
SetTopicAttributes 配信ポリシーJSONの形式
SetTopicAttributes
アクションにリクエストを送信し、 AttributeName
パラメータを の値に設定する場合DeliveryPolicy
、 AttributeValue
パラメータの値は有効なJSONオブジェクトである必要があります。例えば、次の例では、配信ポリシーを合計 5 回の再試行に設定します。
http://sns.us-east-2.amazonaws.com/ ?Action=SetTopicAttributes &TopicArn=arn%3Aaws%3Asns%3Aus-east-2%3A123456789012%3AMy-Topic &AttributeName=DeliveryPolicy &AttributeValue={"http":{"defaultHealthyRetryPolicy":{"numRetries":5}}} ...
AttributeValue
パラメータの値には、次のJSON形式を使用します。
{ "http" : { "defaultHealthyRetryPolicy" : { "minDelayTarget": int, "maxDelayTarget": int, "numRetries": int, "numMaxDelayRetries": int, "backoffFunction": "linear|arithmetic|geometric|exponential" }, "disableSubscriptionOverrides" : Boolean, "defaultThrottlePolicy" : { "maxReceivesPerSecond" : int }, "defaultRequestPolicy" : { "headerContentType" : "text/plain | application/json | application/xml" } } }
SetTopicAttribute
アクションの詳細については、「Amazon Simple Notification Service APIリファレンスSetTopicAttributes」の「」を参照してください。サポートされているHTTPコンテンツタイプのヘッダーの詳細については、「」を参照してくださいHTTP/S 配信ポリシーの作成。