Free Trial

ディスカッション

答えを見つけ、質問し、Alteryx の専門知識を共有してください。

Server API Get Tool の パラメータ "dataConnectionId" の設定方法

Yoshiro_Fujimori
オーロラ

お世話になっております。

 

最近 Alteryx Server が Server V3 API が使えるバージョン(2022.3)になったため、Server API Get Tool を使い始めました。

 

Server API Get tool で特定の Data Connection に登録されているユーザーのリストを抽出しようとしております。
API Documentation↓を見ると、dataConnectionId を渡す必要があるようです。

serverDataConnections.png

そこで、以下のようなWorkflowを作り

serverApiGetTool.png

Server API Get toolのConfiguration画面でActionに "Retrieve a server data connection record" を選んだのですが、
"dataConnectionId" を設定する場所が見つかりません。

serverApiGetToolConfig.png

 

指定しないままで実行すると下記のエラーとなりますが、ツールの設定方法に問題があるのでしょうか。

Record #1: Tool #173: Missing Parameter Error:
for the endpoint 'Retrieve a server data connection record', you must supply these required fields: DATACONNECTIONID

 

About this Macroの所に
The macro pack is provided as-is, without warranty
と注記があるので、既知の事象であればこのツールを使わない方法を考えたいと思います。

(リリースノートをざっと見たところでは見当たりませんでした)

5件の返信5
AkimasaKajitani
17 - Castor
17 - Castor

@Yoshiro_Fujimori さん

 

Server API Get Toolと記載あるのですが、あまりお見かけしないアイコンの形状をしています。

 

現在、サポートが有るServer APIの呼び出しツールは、Server APIツールです。

https://marketplace.alteryx.com/en-US/apps/418052/server-api-tool

 

説明はこちら

https://help.alteryx.com/current/en/designer/tools/developer/server-api-tool.html

 

Pyhonベースのせいか重い、という気がしますが、サポートもあるのでこちらを利用してみてはいかがでしょうか?

Yoshiro_Fujimori
オーロラ

@AkimasaKajitani 

ありがとうございます。

質問本文のツールは、インストールした記憶がないので、2022.3をインストールしたら付いてきたと思うのですが

別途 正規のサポートがあるツールがあったのですね。

 

早速 ServerAPI_v1_2_2.yxi をmarketplaceからダウンロードし、インストールして RUN すると以下のエラーがでました;
Server API (1) This machine is missing the following package: pip_system_certs

ヘルプの記述に従い、メッセージ
Server API (1) Run this linked workflow as Admin to install missing packages.
のリンクをクリックして開いたワークフローを実行したところ、以下のエラーとなりました。

Python (1) Traceback (most recent call last):
File "C:\Users\a4910125\AppData\Local\Temp\Engine_17324_ffe96efc54994dceb4b0e5c4de303a17_\5a7f8cbfefd31a8b90f2f9ad9cd7db12\workbook.py", line 3, in <module>
Package.installPackages(["pip_system_certs"])
File "C:\Program Files\Alteryx\bin\Miniconda3\envs\DesignerBaseTools_venv\lib\site-packages\ayx\Package.py", line 202, in installPackages
raise pip_install_result["err"]
File "C:\Program Files\Alteryx\bin\Miniconda3\envs\DesignerBaseTools_venv\lib\site-packages\ayx\Utils.py", line 120, in runSubprocess
result = subprocess.check_output(args_list, stderr=subprocess.STDOUT)
File "C:\Program Files\Alteryx\bin\Miniconda3\envs\DesignerBaseTools_venv\lib\subprocess.py", line 411, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File "C:\Program Files\Alteryx\bin\Miniconda3\envs\DesignerBaseTools_venv\lib\subprocess.py", line 512, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['C:\\Program Files\\Alteryx\\bin\\Miniconda3\\envs\\DesignerBaseTools_venv\\python.exe', '-I', '-m', 'pip', 'install', 'pip_system_certs']' returned non-zero exit status 1.

 

"timeout" とあり、proxyサーバーが邪魔していると推測されるので、社内の Python 環境の担当者に対応を相談したいと思います。

 

AkimasaKajitani
17 - Castor
17 - Castor

Pythonパッケージのインストール時には、管理者権限で起動したDesignerで行う必要があるので、そちらも合わせてご対応いただければよいかと思います。

Yoshiro_Fujimori
オーロラ

@AkimasaKajitani 

はい、ヘルプにも管理者権限でDesignerを起動するように記載されていたので、そのようにしたのですがエラーになります。

念のため今朝もう一度やってみましたが、同じエラーになりました。

 

python package をインストールするワークフロー ("Install_As_Admin.yxmd") のメッセージを見ると;

Python (1)        WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:<削除>)'))': /repository/<削除>/simple/pip-system-certs/

とあるので、社内の python の repository へのSSL認証にあたりを付けています。

AkimasaKajitani
17 - Castor
17 - Castor

@Yoshiro_Fujimori さん

 

そうですね、パッケージのインストールは外部インターネットへの接続が必要になるので、そちらも対応いただければ・・・。