ディスカッション

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

Server APIツールのエラー対処法について教えてください

Yosuke-Usuki
メテオロイド

添付WFにてServerAPIツールを利用してWF毎のjobメッセージを取得しようとしておりますが以下エラーとなります。

(2つ目のAPIまでは異常ないが3つ目のAPI(job message取得)のみエラーとなっている)

対処法を教えていただけますでしょうか?

 

Error: Server API (9): Tool #358: テスト "Incoming Null Values for URL Parameters " に失敗しました: ExpectedNumRecords==0、NumRecords(#1)==1

6件の返信6
gawa
16 - Nebula
16 - Nebula

@Yosuke-Usuki 
こちらのAPI Endpointは、Curator(Server管理者権限)のみ利用可能なようです。まずは、API実行に用いているAPI Key/Secret所有者がCurator権限があるかどうか、ご確認ください。

GET {baseURL}/v3/jobs/{jobId}/messages

image.png

https://help.alteryx.com/current/en/server/api-overview/alteryx-server-api-v3/server-api-v3-objects/...

Yosuke-Usuki
メテオロイド

ご指摘ありがとうございます。WF修正いたしました。
権限については問題ありません。実際、以下エンドポイントに対して単体で処理を実行した場合はエラーが出ることはありません。

GET {baseURL}/v3/jobs/{jobId}/messages

 

gawa
16 - Nebula
16 - Nebula

@Yosuke-Usuki ツールの設定画面を見たいので、WFをyxzpにして上げなおしていただくこと可能でしょうか?(オプション=>エクスポートからyxzp作成)
Server APIツールのマクロが同封されていないため、下図のように見えております。
image.png

Yosuke-Usuki
メテオロイド

yxzp版を添付いたしました

よろしくお願いいたします。

gawa
16 - Nebula
16 - Nebula

@Yosuke-Usuki こちらでも検証してみたところ、おそらく原因は「一度も実行履歴のないWFはJob IDがNULLになっているから」だと思います。NULLを GET {baseURL}/v3/jobs/{jobId}/messages の{jobId}に代入してAPIを読んでいるので、エラーになっているようです。

 

従いまして、下図のようにツール5とツール9の間にフィルターツールをいれて、Job IDがNULLのレコードをはじくことで、正常に動作するはずです。お試しください。

image.png

Yosuke-Usuki
メテオロイド

ありがとうございます。

jobIDのNullレコードを除外することで無事エラーが出なくなりました。

 

jobIDはワークフローの実行以外にもアップロード時のValidationもjobIDとして登録されておりますが

恐らくアップロード時のValidationもスキップしてサーバー上での実行もされていないワークフローが存在していたと推察しました。

トップのソリューション投稿者