API 呼び出しの応答として、Amazon SNS で受け取った無効なパラメータのエラーを解決する方法を教えてください。

所要時間2分
0

API 呼び出しの応答として Amazon Simple Notification Service (Amazon SNS) に無効なパラメータのエラーメッセージが表示されます。

簡単な説明

次のエラーが表示された場合:

InvalidParameter - Error message: Invalid parameter: Attributes Reason: Platform credentials are invalid

プラットフォームの認証情報エラーを解決するセクションの手順を実行してください。

次のエラーが表示された場合:

"message": "Invalid parameter: The MessageGroupId parameter is required for FIFO topics" even if the customer has provided MessageGroupId

FIFO エラーを解決するセクションの手順を実行してください。

次のエラーが表示された場合:

Couldn't set text messaging attributes.
Error code: InvalidParameter - Error message: Invalid parameter:

テキストメッセージング (SMS) のエラーを解決するセクションの手順を実行してください。

次のエラーが表示された場合:

Couldn't delete subscription.
Error code: InvalidParameter - Error message: Invalid parameter: SubscriptionArn Reason: An ARN must have at least 6 elements, not 1

サブスクリプションの削除エラーを解決するセクションの手順を実行してください。

解決方法

プラットフォームの認証情報エラーを解決する

重要: 次の手順を実行する前に、Apple Developer アカウントのプロバイダー証明書のタイプを確認します。その後、証明書をダウンロードします。

1.    Amazon SNS コンソールを開きます。

2.    ナビゲーションペインで、[プッシュ通知] を選択します。

3.    [プラットフォームアプリケーションの作成] を選択します。

4.    [アプリケーション名] に、アプリケーションの名前を入力します。

5.    [プッシュ通知プラットフォーム] で、[Apple iOS/VoIP/Mac] を選択します。

6.    Sandbox の証明書を使用している場合は、[Apple 認証情報] セクションで [サンドボックスでの開発に使用] チェックボックスをオンにします。

**重要:**Sandbox & Production の証明書を使用している場合は、このチェックボックスをオンにしないでください。チェックを入れると、エラーが表示されます。

7.    [プッシュ証明書タイプ] で、証明書のタイプを選択します。

8.    [ファイルを選択] を選択し、認証情報をロードする証明書を選択します。

9.    [プラットフォームアプリケーションの作成] を選択します。

FIFO エラーを解決する

AWS SDK for JavaScript in the Browser、またはバージョン 2.777.0 以降の AWS SDK for JavaScript in Node.js を使用していることを確認します。

API リクエストで ID が指定されていても、無効な MessageGroupId または無効な MessageDeduplicationId に関する Amazon SNS の FIFO エラーを受け取ることがあります。Amazon SNS の FIFO 属性は、新しい SDK バージョンでのみ使用できます。詳細については、「AWS SDK for JavaScript の変更履歴」を参照してください。

テキストメッセージング (SMS) のエラーを解決する

1.    Amazon SNS コンソールを開きます。

2.    ナビゲーションペインで、[テキストメッセージング (SMS)] を選択します。

3.    [テキストメッセージングの優先設定] で、[編集] を選択します。

4.    [アカウントの利用限度額 - オプションのパラメータ] に、数値 1 を入力します。このデフォルト値は、1 か月の利用限度額 (USD) です。アカウントの1 か月の利用限度額を 1USD より大きくしたい場合は、アカウントの利用限度額の引き上げをリクエストできます。

注記: デフォルトでは、すべての Amazon SNS アカウントで各 AWS リージョンの使用クォータが 1 USD に設定されています。値が 1 より大きい場合、Amazon SNS コンソールにエラーが表示されます。

5.    [変更を保存] を選択します。

サブスクリプションの削除エラーを解決する

このエラーは、PendingConfirmation ステータスのサブスクリプションを削除しようとすると表示されます。サブスクリプションを削除するには、Amazon SNS Unsubscribe API を呼び出します。これには SubscriptionARN が必要です。コンソールを使用してサブスクリプションを削除する場合、Amazon SNS コンソールでは、選択したサブスクリプションから自動的に SubscriptionARN が選択されます。サブスクリプションが PendingSubscription ステータスの場合、コンソールには SubscriptionId は表示されません。その結果として、コンソールでは PendingConfirmationSubscriptionId として使用されます。その後、API 呼び出しは失敗し、エラーが返されます。

確認の保留中ステータスのサブスクリプションの場合:

1.    Amazon SNS コンソールを開きます。

2.    ナビゲーションペインで [トピック] を選択し、トピックを選択します。

3.    サブスクリプションが確認の保留中ステータスのトピックを選択し、次に [確認の保留中] ステータスのサブスクリプションを選択します。

4.    [リクエストの確認] を選択します。

サブスクリプションの通知がエンドポイントに送信され、サブスクリプションが確認されます。

5.    サブスクリプションの通知から URL をコピーします。URL は次のようなものです。

https://sns.us-east-1.amazonaws.com/confirmation.html?TopicArn=arn:aws:sns:your-aws-region:your-account-number:your-topic-name&Token=your-token&Endpoint=your-endpoint

6.    Amazon SNS のナビゲーションメニューで [サブスクリプション] を選択し、サブスクリプションを選択します。

7.    [サブスクリプションを確認] を選択します。

8.    ステップ 5 のサブスクリプションの URL をダイアログボックスに貼り付け、[サブスクリプションを確認] を選択します。

9.    サブスクリプションを選択し、[削除] を選択します。

削除済み ステータスのサブスクリプションの場合:

サブスクライブ解除のリンクが選択されたエンドポイントを確認します。サブスクリプションが解除されると、エンドポイントは次のような別の通知を受け取ります。

Your subscription to the topic below has been deactivated:
arn:aws:sns:Your-AWS-Region:Your-Account-Number:Your-Topic-Name

If this was in error or you wish to resubscribe, click or visit the link below:
Resubscribe

Please click on the resubscribe link present in the notification. This will confirm the subscription. On success, please select the specific subscription and click on Delete button.

-または-

サブスクリプションが削除されるまで 3 日間お待ちください。デフォルトでは、PendingConfirmation のサブスクリプションは Amazon SNS で 3 日以内に自動的に削除されます。

AWS公式
AWS公式更新しました 3年前
コメントはありません

関連するコンテンツ