Marketo の REST API を使用して、多数の既存のレコードをバッチ更新しようとしています。ドキュメントによると、リードのインポート機能はこれに最適なようです。
つまり、ドキュメントの curl サンプルを使用すると、「610 リソースが見つかりません」というエラーが表示されます。ここに私が取ったいくつかのステップがあります。
- auth_token の取得は問題ではありません。
$ curl "https://<identity_path>/identity/oauth/token?
grant_type=client_credentials&client_id=<my_client_id>
&client_secret=<my_client_secret>"
- トークンが有効であることを証明し、単一のリードを取得することも問題ではありません:
# Fetch the record - outputs just fine
$ curl "https://<rest_path>/rest/v1/lead/1.json?access_token=<access_token>"
# output:
{
"requestId": "ab9d#12345abc45",
"result": [
{
"id": 1,
"updatedAt": "2014-09-18T13:00:00+0000",
"lastName": "Potter",
"email": "harry@hogwartz.co.uk",
"createdAt": "2014-09-18T12:00:00+0000",
"firstName": "Harry"
}
],
"success": true
}
- ここで、リードのインポート機能を使用して CSV ファイルをアップロードしようとすると、問題が発生します。そのようです:
# "Import Lead" function
$ curl -i -F format=csv -F file=@test.csv -F access_token=<access_token>
"https://<rest_path>/rest/bulk/v1/leads.json"
# results in the following error
{
"requestId": "f2b6#14888a7385a",
"success": false,
"errors": [
{
"code": "610",
"message": "Requested resource not found"
}
]
}
エラーコードのドキュメントには、 Requested resource not foundのみが記載されており、他には何も記載されていません。だから私の質問は: 610 エラー コードの原因は何ですか?どうすれば修正できますか?
私が試したさらなる手順は成功しませんでした:
- access_token を url パラメーターとして配置しても (たとえば、url に「?access_token=xxx」を追加)、効果はありません。
- CSV (はい、カンマで区切られています) を最小限に (たとえば、フィールド 'id' と 'lastName' のみ) 削除します。
- 質問Marketo APIとPythonを見て、投稿リクエストが失敗しました
- CSV にファンキーな行末がないことを確認しました
- ただし、列の順序など、CSVファイルに特定の要件があるかどうかはわかりません...
ヒントや提案はありますか?