Projects」というプロジェクト管理ツールを採用しています。Projects」は各メンバの持ちタスクの優先度や期限の設定、タスクをマイルストーン、タスクリストなどの粒度ごとで切り分けての工数管理、ガントチャートでタスクの進捗率やアサイン状況が図式化...といった多種多様で複雑なプロジェクト管理を比較的簡単な操作で行うことができるのが特徴です。Projects」におけるタスク作成はブラウザ上の専用管理画面から手作業で行います。API」を使用し、タスク作成作業の自動化を行ってみます。※Zohoアカウントの作成手順は今回省略します。API」公式ドキュメント(英語)も併せてご覧ください。API」の使用には「クライアントID」とクライアントシークレットの2つの値が必要です。これら2つの値はアカウントを作成しただけでは、自動生成されませんので手作業で作成します。https://accounts.zoho.com/developerconsole上記のページにアクセスし、「クライアントIDの追加」をクリックします。Typeを求められます。認証済みのリダイレクトURIは自社サイト内の任意のページのURLなどで構いません。Based」で特に問題ないかと思います。「作成する」を押すことでクライアントIDとクライアントシークレットの作成が完了します。完了画面にクライアントIDとクライアントシークレットが表示されますので、どこかにコピーしておきます。Apiへのアクセスを承認させます。https://accounts.zoho.com/oauth/v2/auth?scope={スコープ}&client_id={クライアントID}&response_type=code&access_type={offlineまたはonline}&redirect_uri={認証済みのリダイレクトURI}&prompt=consent上記の指定のURLへのアクセスには各種設定値の挿入が必要になります。「scope」「access_type」の2つが必要で、計4つの設定値の挿入が必要です。「scope」はAPIアクセス時の公開を与える範囲の設定です。https://www.zoho.com/projects/help/rest-api/tasks-api.html上記のページ内で英語にて説明がありますが、該当プロジェクトの全てのタスクを読む場合は「ZohoProjects.tasks.READ」という記述でAPIアクセス時の公開範囲を指定します。今回はタスクの作成を行いたいので、「ZohoProjects.tasks.CREATE」と記述しましょう。「access_type」に関しては「offline」に設定しておけば、特に問題はありません。計4カ所の値を書き換えた上でブラウザからアクセスを行います。設定値に問題がなければ、承認ページが表示されます。このまま先に進んでしまわずに、ここで一旦作業をとめてください。API」を使用するのに必要なアクセストークンを発行します。(※この時点までに「Postman」などPOST・GETツールのご用意をおすすめします。)今回は「Postman」を用いてPOSTを行い、アクセストークンを発行します。「クライアントシークレット」の値をこれまでの過程で使用した取得値に置き換えます。「グラントトークン」に関してはこれからの作業で取得した値を使用します。「Postman」を起動しておき、前項の最後の工程で一旦とめてもらった作業を再開します。承認ページ上で「承認する」をクリックしてみると、認証済みのリダイレクトURIにリダイレクトされます。ブラウザのURL入力欄を見ると通常のURLではなく、色々な値が付与されているかと思います。●●●●●にあたる値が「グラントトークン」です。この「グラントトークン」は生成後2分間を越えると使用できなくなります。前述のURLの「グラントトークン」を差し替えた上でPostmanでPOSTを行います。返ってきた値の中にアクセストークンやリフレッシュトークンが含まれています。※このアクセストークンも1時間の使用期限付きです。Projects上でタスクを作成してみます。今回は「Postman」上のPOST作業でタスクを作成してみます。HeadersでkeyをAuthorization、Valueに前項で取得したtoken_typeとaccess_tokenを入力します。token_typeとaccess_tokenに関しては「token_type(半角スペース)access_token」という形になります。続いてParamsに必須項目を入力していきます。タスク作成に必須なのは名前だけなので、Key:name、Value:testと入力します。Sendを押して送信を行います。成功すればレスポンスが返ってくるはずです。Projects」の管理画面を確認すると、「test」という名称でタスクが生成されています。