Campaign Monitor API を使用してメールを追加するための簡単な Ruby コードを作成しようとしています。以下は私のコードです。
require 'httparty'
require 'json'
def request
url = 'https://api.createsend.com/api/v3.1/subscribers/MYLISTID.json'
auth = {:username => 'MYAPIKEY', :password => 'x'}
response = HTTParty.post(url,
:basic_auth => auth, :body => {
'EmailAddress' => 'mike@hotmail.com',
'Name' => 'Test',
'Resubscribe' => true,
'RestartSubscriptionBasedAutoresponders' => true
})
puts response
puts response.code
end
request
APIで接続できました。ただし、メールを追加しようとすると、次の応答が返されます。
{"コード"=>400、"メッセージ"=>"リクエストのデシリアライズに失敗しまし
た。ドキュメントを確認して、もう一度やり直してください。
エラーのフィールド: 購読者"}
400
応答get
の代わりに要求を変更すると、次のようになります。put
{"コード"=>1, "メッセージ"=>"無効なメールアドレス"}
Campaign Monitor APIのドキュメントに従っているため、何が間違っているのか理解できません。