アプリケーションの初期化 - Python SDK
これで、アプリの設定ファイル/ディクショナリーを定義した後で、アプリを初期化する準備が整いました。
認可トークンとリフレッシュトークンの作成
単一ユーザー(自己承認)の場合
セルフクライアントアプリの場合、Zoho Developer Console(https://accounts.zoho.com/developerconsole)から自己承認の認可トークンを作成する必要があります。開発者コンソールには、ユーザーの認可トークンを直接作成するオプションがあります。このオプションは、アプリのすべての操作や開発テストで、1人のCRMユーザーの認証情報のみを使用する場合に便利です。
- ユーザーのアカウントにサインインしてください。
- https://accounts.zoho.com/developerconsoleにアクセスしてください。
- 権限を付与するクライアントの[オプション]→[セルフクライアント]オプションをクリックしてください。
- 承認する有効なZoho CRMスコープを、1つまたは複数(カンマ区切り)で[スコープ]項目に入力し、有効期限を選択してください。Zoho CRMスコープと共に「aaaserver.profile.READ」スコープを入力してください。
- 画面に表示されている認可トークンをコピーしてください。
- 以下のURLでPOSTリクエストを行うことによって、認可トークンからrefresh_tokenを作成してください。
https://accounts.zoho.com/oauth/v2/token?code={grant_token}&redirect_uri={redirect_uri}&client_id={client_id}&client_secret={client_secret}&grant_type=authorization_code
- バックアップ用のリフレッシュトークンをコピーしてください。
注:
- 作成した認可トークンは、作成時に選択した規定時間だけ有効です。したがって、その時間内にアクセストークンとリフレッシュトークンを作成する必要があります。
- OAuthクライアントの登録と認可トークンの作成は、同じZohoアカウント(サインイン)の開発者コンソールで行う必要があります。
複数ユーザーの場合
複数ユーザーの場合、サインインしようとするユーザーから認可トークンを作成するのは、クライアントアプリの役目です。
- アプリケーションのUIには、ユーザーのZohoサインイン認証情報を要求し、Zohoの認可トークンURLを開くための[Zohoでサインイン]するオプションが必要です。
- ユーザーが正常にサインインすると、認可トークンが登録済みリダイレクトURLにパラメーターとして送信されます。
アクセストークンの作成
アクセストークンは、認可トークンまたはリフレッシュトークンによって作成できます。以下の2つの方法のいずれかに従うだけです。
アクセストークンを取得するには、メインクラスから次のコードスニペットを実行する必要があります。
ZCRMRestClient.initialize()
oauth_client = ZohoOAuth.get_client_instance()
grant_token="paste_grant_token_here"
oauth_tokens = oauth_client.generate_access_token(grant_token)
作成された認可トークンを、指定された文字列に貼り付けてください。これは1回だけの処理です。
リフレッシュトークンからのアクセストークンの作成
アクセストークンを取得するには、メインクラスから次のコードスニペットを実行する必要があります。
ZCRMRestClient.initialize()
oauth_client = ZohoOAuth.get_client_instance()
refresh_token="paste_refresh_token_here"
user_identifier="provide_user_identifier_like_email_here"
oauth_tokens = oauth_client.generate_access_token_from_refresh_token(refresh_token,user_identifier)
作成されたリフレッシュトークンを、指定された文字列に貼り付けてください。これは1回だけの処理です。
注:
- 上記のコードスニペットは、認可トークンごとに1回のみ有効です。正常に実行されると、作成されたアクセストークンとリフレッシュトークンは、永続化ハンドラークラスによって永続化されるようになります。
- OAuthトークンが保存されると、以降のAPI呼び出しでは保存されたアクセストークンとリフレッシュトークンが使用されます。SDKは必要に応じて、リフレッシュトークンを使用してアクセストークンをリフレッシュしてください。