Open5
csvファイルを作ってmarketoにデータ送信

こんな感じでやれば良さそう
このコードの通り、csvファイルを用意して、送信してやらないといけない
module Mrkt
module ImportLeads
def import_lead(file, format = 'csv', lookup_field: nil, list_id: nil, partition_name: nil)
params = {
format: format,
file: ::Faraday::UploadIO.new(file, 'text/csv')
}
optional = {
lookupField: lookup_field,
listId: list_id,
partitionName: partition_name
}
post('/bulk/v1/leads.json', params, optional)
end
csvファイルの作り方
公式
require 'csv'
# ファイルへ書き込み
CSV.open("path/to/file.csv", "wb") do |csv|
csv << ["row", "of", "CSV", "data"]
csv << ["another", "row"]
# ...
end
良さげな作り方
def send_posts_csv(posts)
csv_data = CSV.generate do |csv|
column_names = %w(投稿者名 タイトル 本文)
csv << column_names
posts.each do |post|
column_values = [
post.user.name,
post.title,
post.body,
]
csv << column_values
end
end
send_data(csv_data, filename: "投稿一覧.csv")
end

単純なcsvファイル作って送れば良いだけな気がする

curlで送った方が圧倒的に楽

faradayでファイル送信書かれてるじゃん

ここも