2

我正在为 Mailchimp 使用Gibbon版本 2.2.1,我希望能够在兴趣组中创建兴趣。例如,我有订阅课程的用户。我的兴趣组是“课程”,该兴趣组内部的兴趣是“Foo课程”。

我希望能够添加在我网站的 CMS 中添加新类的功能,这将在after_create.

class Lesson < ActiveRecord::Base
  after_create :create_class_on_mailchimp

  def create_class_on_mailchimp
    require 'mailchimp_service'
    mailchimp = MailchimpService.new(self)
    response = mailchimp.create_class
    self.interest_id = response.id
    self.save
  end
end


class MailchimpService
  def initialize(lesson)
    @lesson = lesson
    @list_id = ENV['MAILCHIMP_LIST_ID']
  end

  def create_class
    GB.lists(@list_id).interest_categories(ENV['MAILCHIMP_CLASSES_CATEGORY_ID']).interests.create(
      body: {
        name: 'foobar'
      }
    )
  end
end

我不断收到此错误:

Gibbon::MailChimpError:the server responded with status 404 @title="Resource Not Found",
@detail="The requested resource could not be found.",
@body={  
  "type"  =>"http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/",
  "title"  =>"Resource Not Found",
  "status"  =>404,
  "detail"  =>"The requested resource could not be found.",
  "instance"  =>""
},
@raw_body="{  
  \"type\":  \"http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/\",
  \"title\":\"Resource Not Found\",
  \"status\":404,
  \"detail\":\"The requested resource could not be found.\",
  \"instance\":\"\"
}",
@status_code=404

这告诉我的是我没有使用正确的资源名称?在 Gibbon 的有限文档中似乎没有任何此类请求的文档,Mailchimp 似乎也没有考虑过。 是 Mailchimp 文档的链接,该链接涵盖了兴趣组内的兴趣请求,但是,似乎没有创建选项......只需阅读、编辑和删除。这对我来说似乎很愚蠢,因为我可以想象人们会想从 Mailchimp 仪表板以外的其他地方创建兴趣。

我尝试使用nametitleinterest_name作为资源名称,但没有任何效果。我也尝试过使用 REST API 调用,但我收到了相同的响应。

我做错了什么,或者这真的是 Mailchimp 不提供的东西吗?如果是这样,那将是一个巨大的麻烦,因为我将创建许多我希望人们能够订阅的类,而必须手动完成这一切将是一个很大的痛苦。

4

1 回答 1

1

我很确定 POST 可以创造兴趣,尽管文档中似乎确实缺少它。可能发生的情况是您的列表 ID 或兴趣类别 ID 不正确。您可能想尝试使用API Playground来跟踪这两个实体的确切 ID。

于 2016-01-13T20:08:39.007 回答