ユーザーからの通知を取得する

このトピックへの反応です:How to allow users to get their API Key - #4
私は、API キーを簡単に作成できる管理者向けのみのアプリケーションを作成することにしました。アプリケーションは動作していますが、解決すべき問題があります。API キーには、エンドポイント /notifications.json?username=theusername にアクセスするために、グローバルなキーアクセス(読み取りおよび書き込み)が必要です。API 作成パネルでは、エンドポイント /users/:username/notifications へのアクセスを許可するスコープ「show」が表示されています。しかし、Postman でこの URL にスコープ付きキーを使用してアクセスすると、HTML コードが返されます。同様に、/users/:username/notifications.json を使用すると、ユーザーに関する情報は得られますが、通知に関する情報は得られません。さらに、このスコープのみでは /notifications.json?username=... へのアクセスもできません。したがって、通知を正しく取得するにはグローバルキーが唯一の解決策であると結論付けられます。ご協力をお願いします。

私はこれを再現できません。

次のような管理者用 API キーを取得しました:

また、以下の cURL リクエストは正常に動作します:

➜  ~ curl 'https://meta.discourse.org/u/falco/notifications.json' \
-H "Api-Key: whyisthisapikeysolonglol"

Falco、ご返信ありがとうございます。お伝えした通り、この URL は確かにレスポンスを返しましたが、通知に関するものではなく、ユーザー情報に関するものです。画像をご確認ください:

確かにその通りです!

/u/:username/notifications のルートは単なるブラウザ用ルートであり、Ember アプリは実際のデータを取得するために標準的な /notifications.json ルートを使用します。そして、そのルートは現在、管理用 API キーの可能なスコープのリストには含まれていません。

したがって、現時点で通知を取得するには、ユーザー用 API キーか、スコープのない管理用 API キーのいずれかを使用する必要があります。

ありがとうございます、必要な情報はすべて揃いました。では、失礼します :slight_smile: