📜  mailchimp api 端点 (1)

📅  最后修改于: 2023-12-03 15:02:50.848000             🧑  作者: Mango

Mailchimp API 端点介绍

Mailchimp API 是一个基于 REST 风格架构的 API,可以让程序员与自己的 Mailchimp 帐户进行交互。Mailchimp API 端点是 Mailchimp API 中的一部分,它是对 API 的特定资源或功能进行请求的地址。

API 端点

API 端点是 API 的基本资源。Mailchimp API 端点是 Mailchimp API 中的具体地址,它是请求 API 的 API。Mailchimp API 端点提供了访问和操作 API 中的各种功能和资源的途径。

Mailchimp API 端点遵循以下 URL 命名约定:

https://<dc>.api.mailchimp.com/3.0/<endpoint>

其中 <dc> 是数据中心,在 Mailchimp 中表示数据所存储的位置,<endpoint> 是具体的 API 端点名称。

认证

在使用 Mailchimp API 端点之前,您需要进行身份验证。Mailchimp 支持 OAuth2.0 认证和基本身份验证。

OAuth2.0 认证

OAuth2.0 是一种授权框架,用于在应用程序之间共享数据。OAuth2.0 认证是 Mailchimp API 推荐的身份验证方式,它允许程序员安全地访问 Mailchimp 帐户中的数据。

在 Mailchimp 中,OAuth2.0 认证分为以下步骤:

  1. 创建一个应用程序。应用程序是一个 Mailchimp 帐户中的实体,用于表示您的应用程序或服务。
  2. 注册您的应用程序。在注册应用程序时,您需要提供应用程序名称、描述和重定向 URI 等信息。
  3. 授权您的应用程序。在授权您的应用程序时,Mailchimp 将提示用户授权请求,并提供给用户选择授权的权限。
  4. 获取访问令牌。授权成功后,您将获得一个访问令牌,该访问令牌将用于调用 Mailchimp API 端点。
基本身份验证

Mailchimp API 也支持基本身份验证。基本身份验证是一种简单的身份验证方式,将您的用户名和密码作为 HTTP 请求标头发送。

使用基本身份验证时,可以将您的 API 密钥用作用户名,而将密码留空。例如,在请求 Mailchimp API 端点时可以使用以下标头:

Authorization: Basic <base64-encoded-api-key>
API 端点的类型

Mailchimp API 端点分为以下几种类型:

1. GET 端点

GET 端点用于获取资源或数据。例如,您可以使用 GET 端点来获取帐户详细信息或获取订阅者列表。

请求示例:

````http
GET /3.0/lists HTTP/1.1
Host: <dc>.api.mailchimp.com
Authorization: Basic <base64-encoded-api-key>
2. POST 端点

POST 端点用于创建资源或执行操作。例如,您可以使用 POST 端点创建一个新的列表或订阅者。

请求示例:

```http
POST /3.0/lists HTTP/1.1
Host: <dc>.api.mailchimp.com
Content-Type: application/json
Authorization: Basic <base64-encoded-api-key>

{
    "name": "My New List",
    "contact": {
        "company": "Mailchimp",
        "address1": "675 Ponce De Leon Ave NE",
        "address2": "Suite 5000",
        "city": "Atlanta",
        "state": "GA",
        "zip": "30308",
        "country": "US",
        "phone": ""
    },
    "permission_reminder": "You're receiving this email...",
    "use_archive_bar": true,
    "campaign_defaults": {
        "from_name": "Your Name",
        "from_email": "you@company.com",
        "subject": "",
        "language": "en"
    },
    "notify_on_subscribe": "",
    "notify_on_unsubscribe": "",
    "email_type_option": false,
    "visibility": ""
}
3. PATCH 端点

PATCH 端点用于更新资源的部分内容。例如,您可以使用 PATCH 端点更新列表中的某个订阅者的信息。

请求示例:

```http
PATCH /3.0/lists/{list_id}/members/{subscriber_hash} HTTP/1.1
Host: <dc>.api.mailchimp.com
Authorization: Basic <base64-encoded-api-key>
Content-Type: application/json

{
    "merge_fields": {
        "FNAME": "John",
        "LNAME": "Doe"
    }
}
4. PUT 端点

PUT 端点用于更新资源的全部内容。例如,您可以使用 PUT 端点替换列表中的订阅者列表。

请求示例:

```http
PUT /3.0/lists/{list_id}/members HTTP/1.1
Host: <dc>.api.mailchimp.com
Authorization: Basic <base64-encoded-api-key>
Content-Type: application/json

[
    {
        "email_address": "example@mailchimp.com",
        "status": "subscribed",
        "merge_fields": {
            "FNAME": "",
            "LNAME": ""
        }
    }
]
5. DELETE 端点

DELETE 端点用于删除资源。例如,您可以使用 DELETE 端点删除列表中的某个订阅者。

请求示例:

```http
DELETE /3.0/lists/{list_id}/members/{subscriber_hash} HTTP/1.1
Host: <dc>.api.mailchimp.com
Authorization: Basic <base64-encoded-api-key>
示例

以下示例展示了如何使用 Mailchimp API 端点获取当前帐户的详细信息:

```http
GET /3.0/ HTTP/1.1
Host: <dc>.api.mailchimp.com
Authorization: Basic <base64-encoded-api-key>

返回的响应如下:

```json
{
    "account_id": "1234567890",
    "login": {
        "login_id": "1234567890",
        "email": "your.email@yourdomain.com",
        "profile": {
            "role": "owner",
            "public_name": "Mailchimp",
            "account_name": "Mailchimp",
            "business_name": "",
            "phone": {
                "phone": "",
                "formatted_phone": "",
                "international": ""
            },
            "address": {
                "address1": "",
                "address2": "",
                "city": "",
                "state": "",
                "zip": "",
                "country": ""
            },
            "timezone": "America/New_York",
            "avatar_url": "",
            "member_since": "2012-03-27T21:28:58+00:00",
            "industry_stats": {
                "open_rate": 22.2288123252482,
                "click_rate": 2.600208481108312,
                "bounce_rate": 0.7692773447952398,
                "unopen_rate": 77.7711876747518,
                "unsub_rate": 0
            },
            "contact": {
                "company": "Mailchimp",
                "address1": "675 Ponce De Leon Ave NE",
                "address2": "Suite 5000",
                "city": "Atlanta",
                "state": "GA",
                "zip": "30308",
                "country": "US",
                "phone": ""
            }
        },
        "is_syncing": false,
        "email_client": "",
        "last_login": "2022-01-11T14:04:02+00:00",
        "is_activated": true,
        "role": "",
        "pro_enabled": false,
        "username": ""
    },
    "contact": {
        "company": "",
        "address1": "",
        "address2": "",
        "city": "",
        "state": "",
        "zip": "",
        "country": "",
        "phone": ""
    },
    "total_subscribers": "38",
    "_links": [
        {
            "rel": "self",
            "href": "https://us15.api.mailchimp.com/3.0/"
        },
        {
            "rel": "campaigns",
            "href": "https://us15.api.mailchimp.com/3.0/campaigns"
        },
        {
            "rel": "lists",
            "href": "https://us15.api.mailchimp.com/3.0/lists"
        },
        {
            "rel": "automation_workflows",
            "href": "https://us15.api.mailchimp.com/3.0/automations"
        },
        {
            "rel": "reports",
            "href": "https://us15.api.mailchimp.com/3.0/reports"
        },
        {
            "rel": "conversations",
            "href": "https://us15.api.mailchimp.com/3.0/conversations"
        },
        {
            "rel": "file_manager_files",
            "href": "https://us15.api.mailchimp.com/3.0/file-manager/files"
        },
        {
            "rel": "template_folders",
            "href": "https://us15.api.mailchimp.com/3.0/template-folders"
        }
    ]
}
总结

Mailchimp API 端点提供了访问和操作 Mailchimp API 中各种资源和功能的途径。程序员可以使用 REST 风格的 API 调用以下类型的 API 端点:GET、POST、PATCH、PUT 和 DELETE。在使用 API 端点之前,需要进行身份验证。Mailchimp API 端点是与 Mailchimp API 交互的基础,可以轻松地创建、更新和删除资源,并以结构化的方式检索数据。