各製品の資料を入手。
詳細はこちら →Azure App サービスでAvalara AvaTax のIFTTT フローをトリガー
この記事では、Logic Apps の標準ウィザードを使用してIFTTT (if-this-then-that) ワークフローを自動化する方法を説明します。
最終更新日:2025-05-22
この記事で実現できるAvalara AvaTax 連携のシナリオ
こんにちは!リードエンジニアの杉本です。
Azure Logic Apps は ノーコードでアプリを構築できるクラウドサービスです。CData API Server と連携することで、ノーコードアプリ開発用のAvalara AvaTax のデータへのクラウドベースのアクセスをノーコードで追加できます。本記事では、API Server 経由でAzure Logic Apps からAvalara AvaTax 連携を実現する方法を紹介します。
CData API Server とは?
CData API Server は、以下のような特徴を持ったAPI 開発ツールです。
- あらゆるデータソースからAPI を生成:SQL Server、MySQL、Oracle、PostgreSQL、DB2 などのRDB、Excel、CSV、Google スプレッドシートなどCData の充実したコネクタライブラリを利用できます。
- 主要なデータ形式に対応:OData、REST、JSON、CSV / TSV など、主要な形式に対応しています。
- 一元管理でAPI を効率運用:単一の管理プラットフォーム上でAPI の更新、停止、共有が可能です。
- ノーコードでシンプルな設定:GUI ベースのインターフェースを使用して、複雑なコーディングなしでAPI を作成・セキュアに公開できます。
詳しくは、こちらの製品資料をご確認ください。
API Server の設定
以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなAvalara AvaTax OData サービスを作成していきましょう。
CData API Server を使い始める
CData API Server は、オンプレミス型・AWS でのホスティングに対応しています。無償トライアルを提供していますので、自社のニーズにフィットするオプションを選択してお試しください。
30日間の無償トライアルへ
まずは製品の概要を知りたい、という方は5分でCData API Server を体験できる製品ツアーをご利用ください。
製品ツアーへ
デプロイ
API Server は内蔵のJetty サーバー上で動作します。Windows をお使いの場合は、スタンドアロンサーバーとして起動するか、IIS に組み込んで使用することが可能です。また、お使いのJava サーブレットコンテナにAPI Server のWAR ファイルを配置して実行することもできます。具体的なセットアップ方法については、こちらのヘルプドキュメントをご覧ください。
Avalara AvaTax への接続
Salesforce Connect からAvalara AvaTax のデータを操作するには、まずAvalara AvaTax への接続を作成・設定します。
- API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。
- 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Avalara AvaTax」を選択します。
- 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
CData コネクタの追加方法はこちら >> - それでは、Avalara AvaTax への接続設定を行っていきましょう!
-
Basic 認証を実行する通常の方法は、次のログイン資格情報を提供することです。
- User:ユーザー名に設定します。
- Password:パスワードに設定します。
サンドボックス環境を使用している場合には、オプションで次を設定してください。
- UseSandbox:サンドボックスアカウントで認証する場合にはこれをtrue に設定します。
アカウント番号とライセンスキーを使用して認証する
または、アカウント番号とライセンスキーを使用して認証することもできます。次を使用してデータに接続します。
- AccountId:これをアカウントId に設定します。アカウントId は管理コンソールの右上端にリストされています。
- LicenseKey:これをAvalara Avatax のライセンスキーに設定します。ライセンスキーの生成は、Avalara Avatax アカウント管理者としてログインして Settings -> Reset License Key に移動して実行できます。
- 接続情報の入力が完了したら、「保存およびテスト」をクリックします。
Basic 認証を実行する通常の方法は、次のログイン資格情報を提供することです。
- User:ユーザー名に設定します。
- Password:パスワードに設定します。
サンドボックス環境を使用している場合には、オプションで次を設定してください。
- UseSandbox:サンドボックスアカウントで認証する場合にはこれをtrue に設定します。
アカウント番号とライセンスキーを使用して認証する
または、アカウント番号とライセンスキーを使用して認証することもできます。次を使用してデータに接続します。
- AccountId:これをアカウントId に設定します。アカウントId は管理コンソールの右上端にリストされています。
- LicenseKey:これをAvalara Avatax のライセンスキーに設定します。ライセンスキーの生成は、Avalara Avatax アカウント管理者としてログインして Settings -> Reset License Key に移動して実行できます。
API Server のユーザー設定
次に、API Server 経由でAvalara AvaTax にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。
- 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
-
次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
-
その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。
Avalara AvaTax 用のAPI エンドポイントの作成
ユーザーを作成したら、Avalara AvaTax のデータ用のAPI エンドポイントを作成していきます。
-
まず、「API」ページに移動し、
「 テーブルを追加」をクリックします。
-
アクセスしたい接続を選択し、次へをクリックします。
-
接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。
OData のエンドポイントを取得
以上でAvalara AvaTax への接続を設定してユーザーを作成し、API Server でAvalara AvaTax データのAPI を追加しました。これで、OData 形式のAvalara AvaTax データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。

コネクションとOData エンドポイントを設定したら、Azure Logic Apps からAvalara AvaTax のデータに接続できます。
Logic App でAvalara AvaTax にアクセス
Logic App でAPI Server を使用し、Avalara AvaTax の周りにプロセスフローを作成できます。HTTP + Swagger アクションは、Avalara AvaTax に対して実行する操作を定義するためのウィザードを提供します。以下のステップでは、Logic App でAvalara AvaTax を取得する方法を説明しています。
テーブルにレコードの作成日を含むカラムがある場合は、以下のステップに従って新しいレコードのカラム値をチェックする関数を作成できます。それ以外の場合は、[Create a Logic App]セクションにスキップし、フィルタに一致するエンティティにメールを送信します。
新しいAvalara AvaTax エンティティを確認
特定の新しいAvalara AvaTax エンティティを見つけるために、インターバルの開始日時の値を取得する関数を作成できます。
- [Azure Portal]で、[New]->[Function App]->[Create]と進みます。
- 名前を入力し、サブスクリプション、リソースグループ、App Service プラン、そしてストレージアカウントを選択します。
- Function App を選択し、Webhook + API シナリオを選択します。
- 言語を選択します。この記事では、JavaScript を使用します。
- 以下のコードを追加し、JSON オブジェクトで前の時間を返します。
module.exports = function (context, data) { var d = new Date(); d.setHours(d.getHours()-1); // Response of the function to be used later. context.res = { body: { start: d } }; context.done(); };
トリガーにAvalara AvaTax を追加
以下のステップに従って、フィルタに一致する結果をAvalara AvaTax で検索するトリガーを作成します。上記の関数を作成した場合は、返されたインターバルの開始後に作成されたオブジェクトを検索できます。
- Azure Portal で[New]をクリックし、[Web + Mobile]セクションで[Logic App]を選択してリソースグループとApp Service プランを選択します。
- これで、Logic App Designer で使用可能なウィザードが使用できます。このウィザードには、Logic App の設定ブレードからアクセスできます。Blank Logic App templateを選択します。
- Avalara AvaTax オブジェクトをポーリングするRecurrence アクションを追加します。この記事では、一時間ごとにポーリングします。タイムゾーンを選択します。デフォルトはUTC です。
- 関数アクションを追加します。[Add Action]ダイアログのメニューを展開し、リジョンにAzure 関数を表示するオプションを選択します。先に作成したFunction App を選択し、インターバル開始を返す関数を選択します。
- からの中括弧のペア({})を入力し、からのペイロードオブジェクトを関数に渡します。
- HTTP + Swagger アクションを追加し、API Server のOData エンドポイントを入力します。
http://MySite:MyPort/api.rsc/@MyAuthtoken/$oas
- [Return Transactions]操作を選択します。
各プロパティの説明を使用して、取得する列やフィルターなどの追加パラメータを指定します。以下はフィルタの一例です。
Code eq '051349'
getInterval 関数から返された日時値を使用するには、Transactions テーブルの日時列で[ge]演算子を使用し、ダイアログでBody パラメータを選択します。日時値を囲むには、クォーテーションを使用する必要があることに注意して下さい。
[Code View]に切り替え、$filter 式を変更してインターバルの開始を含むプロパティを抽出します。'@{body('MyFunc')['MyProp']' 構文を使用します。
"getAllAccount": { "inputs": { "method": "get", "queries": { "$filter":"CreatedDate ge '@{body('getInterval')['start']}'" }, "uri": "https://MySite:MyPort/api.rsc/@MyAuthtoken/Transactions" }
これで、ワークフローのデータソースおよび宛先としてAvalara AvaTax にアクセスできます。
新しレコードをメールで送信
以下のステップに従って、新しいTransactions エンティティを含むレポートをメールで送信します。
- [Logic Apps Designer]で[SMTP - Send Email]アクションを追加します。
- SMTP サーバーに必要な情報を構成します。
- From、To、Subject、Body を構成します。返されたAvalara AvaTax 列からパラメータを追加できます。
[Save]をクリックし、[Run]をクリックして過去一時間に作成されたAvalara AvaTax レコードに関する電子メール通知を送信します。

クラウドアプリケーションからAvalara AvaTax のデータへのライブ接続
Azure Logic Apps からAvalara AvaTax のリアルタイムデータに直接接続できるようになりました。これで、Avalara AvaTax のデータを複製せずにより多くの接続とアプリを作成できます。
クラウドアプリケーションから直接100を超えるSaaS 、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスを取得するには、API Server を参照してください。