・ 社内でのGAS活用方法をご紹介したいと思います。, なお、Alibaba Cloudは関係しない内容のため、ご興味がある方は読み進めていただければ幸いです。, 当社はフリーアドレスで、毎朝手入力でシートマップに当日の座席位置を入力する必要がありましたが、手間だったのもあり、なかなか習慣付いておりませんでした。そこで、シートマップ自体がGoogleスプレッドシートで作成されていたので、Google Apps Scriptを使って下記2つの機能を実装してみました。, Google Apps Script(通称GAS)は、Googleが提供する11のサービスをクラウド上でスクリプトを実行することで操作できるサービスです。スクリプトの言語は、JavaScriptをベースとしています。, 「Excelのマクロと同じ」と言われることもありますが、これは正しくありません。スプレッドシートだけを操作する場合は、Excelのマクロと似ていますが、Google Apps Scriptはより幅広い用途に使用できます。, スクリプトを使って操作できる内容を例えると、 Google Apps Script(GAS)はGmailやGoogleカレンダー、GoogleスプレッドシートなどGoogleのサービスを操作できるスクリプト環境です。 このGASを用いてfreee APIにリクエストを送り、Googleスプレッドシートとfreeeの間でデータをやりとりすることができます。例えば、Googleスプレッドシートに記載した取引や入出金明細のデータについて、freeeの「取引」や「明細」として送信するといったことが可能です。 スプレッドシート作成でコピーしたIDを入力 dateSheet→3. 2. Google Maps APIを使用することで、Google Mapの機能をウェブサイトやアプリに埋め込むことができます。 Google Maps APIについての詳細は、公式ホームページに記載されています。 公式ホームページ https://developers.google.com/maps/?hl=ja 今回は、Google Maps APIを使って、ウェブブラウザに地図を表示させる方法について説明します。 Messaging APIで発行したアクセストークンを入力 id→3. Pocket . このGASを使用することで、システムからAPIを利用し、スプレッドシートとの連携を行うことができるのです。, 「システムから特定のデータを入力して、スプレッドシート内でその情報をもとに関数を実行し、その結果をシステムに返す。」, という簡単な作業を例に、GASを使ってシステムとスプレッドシートを連携する方法を説明します。, GASを利用する前提として、Google Cloud Platform(以下GCP)に登録し、プロジェクトを作成しておく必要があります。, https://cloud.google.com/resource-manager/docs/creating-managing-projects, スプレッドシートの内容は「B2,B3に文字を入力すると、B1-B3を結合したものがB4に表示される」という簡単なものです。, 今回は、システムからB2,B3に文字を流し込み、結果のB4を取得するという作業を行います。, ここから実際に使用するスプレッドシートに紐付いたApps Scriptを作成します。, Apps Scriptはスプレッドシート内で、「ツール」→「スクリプトエディタ」をクリックすると簡単に作成できます(以下のような画面が出てきます)。 There’s no better way to distribute scripts to large numbers of users, whether you want to ship your code to the whole world or keep it private to the users in your Google Workspace domain. Google Apps Script (GAS) で、Web API (無料、サーバーレス)を公開する方法についてのメモです Google Apps Script (GAS) をローカルで開発したい、Gitでコード管理したい、クラスを使いたい、TypeScriptを使いたい、などのやり方も後半簡単に紹介します スマートフォンのカメラ等でQRを読み取れば、GETした瞬間にセルのユーザー情報を照合し適切なセルへnoが書き込まれるといった仕組みです。, このブログのURIをQRコード生成しておきました。 GASを使用してTwitterAPIを叩くまでの流れを紹介しています。APIを知識としては知っているけど実際に叩いたことがないという方向けに解説しています。 今回は番外編となります。 スプレッドシートだけでなくGmailやGoogle カレンダーなどとも連携して様々な機能が使えるので、ぜひお試しください!, GA technologiesでは一緒に働いてくれる開発者を募集しています。 ご興味を持たれた方はぜひご応募ください。, ga-techさんは、はてなブログを使っています。あなたもはてなブログをはじめてみませんか?, Powered by Hatena Blog ブログを報告する, GA technologiesの澤田です。先日友人に「Vueとpugで何か記事を…, こんにちは〜! GA technologiesの澤田です。つい先日Ruby Gold…, GA technologies SREチームの永冶です。 先日2019年7月18日弊社…, https://www.googleapis.com/auth/spreadsheets, Open the following URL in the browser and enter the, https://developers.google.com/apps-script/api/quickstart/ruby, 部署を跨いでシートを共有しているため、担当部署用のシステムに移行できない(関連システム全ての変更が必要), 複雑な情報や関数があり、さらにそれが色々な部署で変更されるため、システム反映が難しい, ここで認証情報の保存先をRedisではなく、Fileにする場合は以下のようになります。. (ここに私は載っていません。「もう一人」の方です。), 初投稿の今回は「GASを使ってSUPPLIERとスプレッドシートの連携を行なった」話を共有させて下さい。, 上の記事にもあるように、SUPPLIERによる仕入れの自動化は着々と進んでいるのですが、一方でアナログな部分もいくつか存在します。, 「社内システムを利用する一方で、そのデータを別のスプレッドシートに入れて操作・管理している」, SUPPLIERに関わる業務でも、SUPPLIERに入ったデータをスプレッドシートに転記したり、逆にスプレッドシートのデータをSUPPLIERに入力することなどがありました。, こういった作業では、同じデータを重複して入力するという無駄な作業や、目視やコピペによる入力ミスが発生します。, これらのスプレッドシートを全てSUPPLIERに統合し、一元管理できれば良いのですが、, Google Apps Script(通称&以下GAS)とは、 G列とUserInfoを照合して、対象ユーザーのA列のセルに、登録ができましたね。 - 毎朝8時にGmailを自動送信する Kura 2017年5月16日 機械学習. 定形テキストメールを送信するスクリプトを作ってみます。, Google Apps Scriptのエディタは、スプレッドシートの Google関連サービス(Gmail, Google Drive, Google Spread Sheet)などと連携するアプリケーション開発のプラットフォームです。, https://developers.google.com/apps-script/overview, Google関連サービスと連携して、WebサービスやAPIとして公開することができます。 GASに以下のコードを記述します。 1行目〜3行目に事前にコピーしておいた内容を入力します。 ACCESS_TOKEN→2. TwitterDeveloperアカウントの申請とAPIキー取得(GAS×TwitterBot①) もり 2019-02-17 / 2019-03-01. GASは通知が来ないです。というか通知を受け取れる仕組みが技術的に作れないです。 (と思います) Streaming Apiを使って、5分以内にプログラムを強制的に終了する機能にすれば出来るかもれない. LINE Messaging APIもGASも使うのは初めてでしたが、わりかしサクッと作れたので備忘録。 「そもそもLINE Botって何」とかいうレベルから説明していくのでボット製作とかに興味がある人は見てってください。 ※今回の記事の最終的なゴールはLINE Messaging APIとGASを使用して「おうむ返しBot 任意の場所にjsonファイルを置き、そのパスを指定します。, token_storeにはRedisを使用していますが、Fileの場合は以下のようにします。(TOKEN_PATHには認証情報のパスを指定します。), SCOPEには、Apps Scriptで確認した「このスクリプトで必要な OAuth スコープ」を指定します。, user_idは、複数人が認証を行う場合は、ユーザーが識別できるものを使用しましょう。今回はスプレッドシートの管理者一人のみなので、固定で問題ありません。, Redisにはオプションを指定することで、認証情報のキーにprefixを設定することができます。, 初めて認証する場合は、画面からの同意が必要ですが、それが完了すると、保存先(今回はRedis)に認証情報が保存され、 実際の手順は大きく分けると以下の3ステップです。 1. いつでもアクセスできるようにMacの背面に張っておきましょう。, などもGASで実装していたりしますので、機会があればまたご紹介させていただきます。, グループウェア単体としても便利なG-suiteですが、 - スプレッドシートで作成した見積もりを自動的にPDF化させ、Googleドライブに保存する, シートマップ向けに作成した機能その①です。 前回作成したGoogle driveにアクセスしていきます。 以上、Google Apps ScriptでWeb APIを活用するための基礎知識についてお伝えしました。 APIとは何か、HTTP通信とは何か、またGASでHTTPリクエストを行うためのUrlFetchサービスのfetchメソッドについて解説をしてきました。 gasだと結構手軽にapiを作成できる . Google Apps Scriptと組み合わせることで、より利活用できるかと思います。, クラウドの導入検討、コンサル、設計・構築サービスなどでお困りですか?まずはSBクラウドまでお問い合わせください, 【番外編】Google Apps Script(GAS)のAPIでスプレッドシートにデータを書き込む, /exec?no=110 のように、箱として指定したURIのnoに任意の座席番号を入れておきましょう。, G列とUserInfoを照合して、対象ユーザーのA列のセルに、登録ができましたね。, 肝心のQRコードですが、URIをQR生成してくれるサイトがいくつかあるので、noにパラメータを入れた状態のURIでQRを必要数分作成しています。, スマートフォンのカメラ等でQRを読み取れば、GETした瞬間にセルのユーザー情報を照合し適切なセルへnoが書き込まれるといった仕組みです。. - Googleカレンダーに登録されている特定期間のスケジュールを一括でスプレッドシートに転記する Google Apps Script(GAS)とは Google Apps Script(通称GAS)は、Googleが提供する11のサービスをクラウド上でスクリプトを実行することで操作できるサービスです。� さて、前回お伝えした通り、GASではUrlFetchサービスを使うことで、他のサービスが提供しているWeb APIにHTTPリクエストを送ることができるんですね。 書式はコチラ。 それで、チャットワークにBot通知をする、つまりメッセージを送るのであれば、POSTというメソッドで、payloadにメッセージの本文を、あとheaderにチャットワークのAPIトークンを乗っけて送ればOK! それらを、fetchメソッドの引数のパラメータにオブジ… ほとんどの Cloud API では、トラフィック レベル、エラー率、レイテンシなど、プロジェクトでの API の使用状況に関する詳細情報が提供されます。Cloud API を使用するアプリケーションで問題が発生したときに、問題の優先度をすばやく判断できます。この情報は、Google Cloud Console の GASでログ出力する2つの方法(Logger.logとconsole.log)の紹介と使い分け. ※D列はアドレス情報なのでマスクしてあります, 肝心のQRコードですが、URIをQR生成してくれるサイトがいくつかあるので、noにパラメータを入れた状態のURIでQRを必要数分作成しています。 Railsは5.0.6、Rubyは2.4.3を使用しています。, redisに関しては、認証情報の保存先をRedisにしている為で、Fileとした場合には必要ありません。後ほど説明します。, ちなみにRedisにしている理由は、Supplierを複数コンテナで運用している為です。, 実行ファイルについては、以下にテンプレートが用意されているので、これを参考にします。 4. バージョンの名前は適当でおkです。, 完了するとURIが払い出されます。 例えば、下図のような座席表への入力があったかどうかを判定するシートを作成します。, D列の関数には、A列が空白でない場合"入力済み"未入力の場合”未入力”と表示されるようにしています。(これはExcelの関数レベルの話ですね), このシートの中で、未入力者だけに対してGmailを起動し 今回はOauthクライアントIDを使用します。, この認証方法では、システム内でユーザー(今回であればスプレッドシートの使用者)に同意を求め、そのユーザーの認証情報でスプレッドシートにアクセスを行うApps Scriptを実行することができます。その際の同意画面の設定です。, 完了したら、最後にトークンの登録です。このトークンをシステムから使用することで、認証情報の作成を行うことができます。, アプリケーションの画面から認証を行い、リダイレクトなどが必要な場合はウェブアプリケーションを使用しましょう。, 今回はRailsのコンソールから実行することにします。 SlackとGASを連携するメリットとは. スプレッドシートでLogシートを作成しておきます。, 併せて取得したユーザー情報(メールアドレス)を照合するためのメールアドレス情報をシート1のG列セルに入力しておきます。, 続いて、外部ユーザがアクセスできるようにウェブアプリケーションとして導入します。 ・ 次回以降はそちらを参照するため、再認証は必要ありません。, Google::Apis::ScriptV1::ScriptServiceのインスタンス(service)を作成、initializeの中で認証を行ないます。, service.client_options.application_nameは認証画面で表示する名前(「"アプリ名"が」)を指定します。, Google::Apis::ScriptV1::ExecutionRequestのインスタンス(request_object)を作成し、関数名と実行に必要なパラメータを設定します。, 最後にAPP_IDとrequest_objectを引数に、service.run_scriptを実行すれば、APIが実行され、responseが返ってきます。, これを先ほどのコンソールで打ち込むと認証が完了し、この情報がRedisに保存されます。, 今回は簡単な例でしたが、このようにしてシステム内のデータを与えて、スプレッドシート内のセルに入力、別の式の結果を取得するということは、実際に多く人の手で行われている作業だと思うので、これを使えば様々な入力作業を省くことができるようになるのではないでしょうか。, GCPの最初の設定は少し手順が多いですが、慣れればスムーズに行えるようになりますし、 ツールバー -> 公開 -> ウェブアプリケーションとして導入から実行可能です。, なお、自分をユーザーとしてアプリケーションを実行することによって、同一GmailドメインのユーザーごとにPermissionの許可をすることなくユーザー側から実行させることが可能です。 メリットは数多くあります。以下が例です。 Slackチャネルへの投稿内容をGASにPOSTし、Googleツール(Calender, Spreadsheetなど)や各種APIと簡単に連携できる; GASで処理した結果をSlackにレスポンスできる; GASは無料で利用できる ブラウザ側へのレスポンスも問題なく返りました。, Logシート側にも受け取った情報がセットされました。 2020年6月30日 3分 GASからREST API経由でデータを取得しようとしています。認証用のログイントークンを取得後に、そのトークンをヘッダーに入れてデータを取得する形になります。認証用のトークンは取得でき、id_tokenという変数に格納し、その変数をAPIアクセスの際のヘッダーに入れたのですが、以下の … 自動実行するようにしてあげたりするといいでしょう。, Google Apps Scriptには、ウェブアプリケーションを公開したりするために"doGet"という特別な関数があります。パラメータを加えて渡して上げることで、スプレッドシートのデータなどをJSONで受け取ったり、ウェブページを生成して、ウェブアプリケーションを表示したりなど、重要な機能の1つです。この仕組を使うことで、自作のREST APIもどきを作ることも可能です。, GETで渡されたパラメータ値のログも取得するために、 「Google Apps Script」の頭文字をとってGASと略されます。 Google Apps Script を利用すれば、GmailやGoogleカレンダー、Googleドライブなど、Googleが提供しているさまざまなサービスを連携して活用することができます。 はじめに 実装に使った物 実装する機能 リマインダーを実装してみる 動作確認! おわりに 参考にした記事 はじめに こんにちは。新卒2年目のrs_chankoです。 まだまだ慣れない社会人。そんな中で思ったことがあります。 物忘れが酷すぎる。 これは元々分かっていたんですが、最近特に思います。 Together, API members advance these priorities by: Building and maintaining a culture safety throughout all aspects of our operations. LINE BOTを作成する機会が増えきた「くら(twitter@arukayies)」です!GASを使って各APIを試してみました。今回は「「userId」の取得方法を紹介します。 https://developers.google.com/apps-script/api/quickstart/ruby, client_idには、先ほどGCPでダウンロードしたトークンのjsonファイルを指定します。 単体でマクロや関数が実行できるSpreadSheetと連携することでGAS botの可能性も無限大です。 エディタツールバーに実行ボタンがあるので、ポチっとしてみます。, ステータスが”未入力”となっているメールアドレスだけに、定形テキストが送信されました。, タイムトリガーで毎週火曜日の13時 〜 14時の間に The natural gas and oil industry is unified in our commitment to accelerating safety and environmental progress across its operations, while meeting global demand for affordable, reliable and cleaner energy. 前章でapiはできて、接続もできているので、この章はもはやおまけです。 正直ただgasを使いたいだけです。 スプレッドシートは前回のブログと同じで、、、 importxml 関数を使って、 弊社ブログのページ をスクレイピングしたものです。 (↑ややこしいので画像の img 列(d列)は使いま … API Energy Excellence is comprised of 13 core elements. 設定が終わるとLINE@の利用規約とMessaging APIの利用規約の2つの利用規約への同意が必要となります。 しっかりと確認、同意後に作成ボタンを押せば初期設定はひとまず完了です。 GASの初期設定 GASの作成. /exec?no=110 のように、箱として指定したURIのnoに任意の座席番号を入れておきましょう。, では、ブラウザからURIにアクセスして実行してみましょう。 ・ Apps Script makes it easy to create and publish add-ons for Google Docs, Sheets, Slides, and Forms. gas. API Energy Excellence companies commit to applying these 13 elements to safeguard our employees, environment and the communities in which they operate. GASにコード記述. 今年の2月に会社の場所が恵比寿から六本木に移転したことをきっかけに、同棲生活を始めました。 同棲生活を始めるにあたって心配だったのが、「どうでもいいことで喧嘩すること」でした。 特に原因になりそうだなと思っていたのが、家事の分担です。 「気になった人がやる」では、おそらく私が多く担当することになるのでは…。さらに、「なんで私ばっかりやらないといけないの」と喧嘩になるのでは…と思っていました。 【やりたいこと】Google Driveに複数あるスプレッドシートを、”定期的かつ自動で”エクセルに変換してPCに保管(バックアップ)したい。【詳細】Google Drive上に5つフォルダがあり、各フォルダ内には複数のスプレッドシートがあります。この複数あるスプレッドシートを月 Google Apps Script(以下GAS)とは、Google Appsで提供しているアプリ全般(例えば、GMailやスプレッドシートなど)を拡張し、 アプリケーション機能を備えるための仕組みです。 GASを利用した様々なAPI連携のマクロ処理を気軽に外から起動できるようになり、より様々な連携ができるようになります。 GASのさらなる連携性が高まりましたね! ちなみに 10/9にあるGASのモクモクハンズオンイベント GAS Station #2でもハンズオンを用意する予定です。 多分. このGASを使用することで、システムからAPIを利用し、スプレッドシートとの連携を行うことができるのです。 実行方法. たまたま業務でGoogle Apps Scriptを勉強する機会があったため、 ツールバーのツール -> スクリプトエディタから開けます。, では、上記スクリプトを実行してみましょう。 Apps ScriptをAPIとして公開する. エンジニアとしての実務未経験からGAに入社し、来月で丸1年が経ちます、櫻井と申します。, 入社以来、不動産仕入れ用の社内システム「SUPPLIER by RENOSY(以下SUPPLIER)」の開発を行っています。, www.ga-tech.co.jp | 今まで敷居が高いと感じていたapi。まだ実用に耐えうるようなものではありませんが、意外と簡単に実装できてよかったです。 今の所、無料で利用できますし、サーバーを契約したりする必要もないので、手軽ですね。 web 出来ないなりに頑張るならこんな感じ 今回はGETメソッド部分だけの処理を作成しましたが、使い方次第ではRESTなAPIサーバーも作ることができます。 Webhook連携先など簡単なAPIサーバーが欲しいときにはとても重宝します。 今後もGoogle Apps Scriptの活用方法をご紹介していきますのでお楽しみに。 今回はgasを使ってスプレッドシートの内容をツイッターに投稿する機能を紹介します。定時で同じ内容を投稿したい、少し文言変えて状況によって出し分けしたいなどなど自動化の第一歩として踏み出せるはずです。また、認証やツイート投稿のメソッドは汎用性 スプレッドシートからApps Scriptを作成する. ここで「パラメータを受け取って、それをセルに入力し、式が入っているセルの結果を受け取る」関数を作成しました。, Apps Scriptを公開するには、まずGCPのプロジェクトに紐付けを行う必要があります。, 「リソース」→「プロジェクト」から以下の画面で Tweet. API Energy Excellence. GoogleAppsScript(GAS)使ったことが無く、初めて使う方を対象に、出来るだけ平易な解説をしていきます、また、文法的な話は極力少なめにして、実際に使えるようになることを目指します。本シリーズでは、Googleスプレッドシートで、GoogleAppsScript(GAS)を使いながら、このスクリプト言語 … リクルートのTalk APIをGASで試してみた . 最近はDocomoの雑談対話apiを使用した新キャラクター「坂本」が誕生しました。 解説記事はこちら↓↓ Google Apps ScriptでSlackに雑談対話botを導入する. ここにGCPのプロジェクト番号を入力します。プロジェクト番号はGCPのプロジェクト上のダッシュボードから確認が可能です。, 紐付けが完了したら、ここで「公開」→「実行可能APIとして導入する」を押して、公開しましょう。, ここでの「現在の API ID」は後ほどAPIの実行時に使用するので、手元にとっておきましょう。, ※ここで関数に変更があった場合、現在のバージョンを「更新」するのではなく、「新しいバージョンを作成」として「更新」する必要があるため、注意してください。。, また、「ファイル」→「プロジェクトのプロパティ」→「スコープ」から「このスクリプトで必要な OAuth スコープ」についても使用するため、とっておきましょう。, 次にシステムからAPIを使用する為の、認証情報の設定を行います。