#概要
マーケティングオートメーションツールとして有名な「Marketo」だが、REST APIを通じて他システムのログを取り込むことも出来る。というわけで、Qiitaは初投稿兼ねてログ連携のプログラムを作ってみた。
#出来上がったもの
https://github.com/asaborake/marketobulkimport
使い方はREADMEを参照
#ひっかかった点
Marketoが公式にサンプルプログラムを幾つか公開している。
https://github.com/Marketo/REST-Sample-Code
基本はこれとリファレンスを参考にして実装すれば問題なく作れる。以下は実際に作ってみて引っかかった点。
##エンドポイントを間違える
http://developers.marketo.com/rest-api/base-url/
を読むと
Base URL: https://284-RPR-133.mktorest.com/rest
Path: /v1/lead/
Resource: 318582.json
Query parameter: fields=email,firstName,lastName
と書いてある。で、実際にやりたかったのはBulk Lead Importだったので見てみると
POST /bulk/v1/leads.json?format=csv
とある。というわけで、Base URLにRequestのパスをそのままつなげたら見事にエラー。Base URLはあくまで.com手前まで、第1階層以降は用途によって変わる。
##Failログのレスポンスがcsvで返ってくる
APIのレスポンスは基本jsonなのだが、Failログのレスポンスだけは何故かデフォルトがcsv。formatパラメータ指定が出来るようだが、何気にひっかかってしまった。
http://developers.marketo.com/rest-api/bulk-import/bulk-lead-import/#failures
#まとめ
内容云々ではなくまずは初投稿ということで。皆様のご意見諸々賜れたら幸いです。