2016-11-30 19 views
0

現在、私はOKTAプラットフォームとAPIを使用しているプロジェクトで作業していますが、いくつかのクエリがあります。 Okta API GetAppリクエストに関する質問

  1. アプリは、ユーザーに割り当てられたユーザーまたはリストに割り当てられ一覧AppsのGET呼び出しを行う

    は、私が得ているすべてのアプリケーションの応答はかなりのものよりも、OKTAインスタンスに を追加しました現在の ユーザーセッションに関連しています。私は見落としている旗がありますか?

  2. アプリケーションリストの結果配列を取得すると、親アプリケーションに子配列 として すべてのオフィス365 'サブアプリケーション'(メール、カレンダーなど)が返されます。しかし、子の 配列のこれらのサブアプリケーションは、他の標準 アプリケーションが行う画像リンクで返されません。今私は彼らのためにハードコードすることができますが、それは 理想的ではありません。これについてのアドバイスもありますか?

ありがとう!

+0

1:ユーザーに割り当てられたアプリケーションを一覧表示するGET要求の例を含めることはできますか? http://developer.okta.com/docs/api/resources/apps.html#list-applications-assigned-to-user 2:取得したリクエストと結果のサニタイズされた例も含めることができますか? –

+0

1. {{url}}/api/v1/apps?filter = user.id + eq + "{{userId}}" 2.https://jsfiddle.net/#&togetherjs=zLIyUg25um –

答えて

0

ユーザに割り当てられたリストアプリを使用するには2通りの方法があります。まず、適切な特権を持つAPIトークンを必要とするサーバー側の呼び出しです。ユーザーがOktaとのアクティブなセッションを開始すると、2番目はブラウザの呼び出しです。 2番目の呼び出しを行うには、usernameが必要です。

  1. GET /api/v1/apps?filter=user.id+eq+"{{userId}}" - >サーバー側から

  2. GET /api/v1/users/{{username}}/appLinks - >ブラウザ/ JavaScriptの

からログインしてブラウザにURLを貼り付け、2番目の呼び出しをテストするにはあなたが望みの結果を得られることを確認してください。 AJAX通話をご利用の場合は、をxhrFieldsに送信する必要があります。例:

$.ajax({ 
    type: "GET", 
    url: "https://example.okta.com/api/v1/users/{{username}}/appLink", 
    headers: { 
    'Accept': 'application/json', 
    'Content-Type': 'application/json' 
    }, 
    xhrFields: { 
    withCredentials: true 
    }, 
    cache: false, 
    success: function(data, status) 
    { 

    }, 

    error: function(data, status) 
    { 

    } 
}); 

両方の呼び出しでユーザーに割り当てられたアプリケーションが返されます。

+0

サーバーサイドコールあなたが投稿したものは私が使っているものですが、まだ割り当てられていないすべてのアプリケーションを返すようです。 –

+0

James - 私はちょうどuseridフィルターを使ってアプリケーション呼び出しを試みましたが、それはユーザーのアプリケーションを私のために引き出しました。正しいリクエストを行っていることを確認できますか?たとえば、悪いuserIdを渡した場合、返されるアプリケーションはありません。ところで、これをテストする簡単な方法は、Apps postmanコレクションを使用することです(more info [here](http://developer.okta.com/docs/api/getting_started/api_test_client.html))。 – remanc