Links

Link Whitelabel

Link Whitelabel設定はサブドメインとドメインから構成されます。これらは、メール内リンクのドメインを書き換えるのに使用されます。ユーザはリンクのドメイン書き換え、およびユーザがそのドメインのオーナーであることを示すために、いくつかのCNAMEレコードを作成するよう求められます。

List all Links [GET]

Link Whitelabel設定一覧の取得

Request

1
GET https://api.sendgrid.com/v3/whitelabel/links HTTP/1.1

Response

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
HTTP/1.1 200
[
  {
    "id": 1,
    "domain": "example.com",
    "subdomain": "mail",
    "username": "john@example.com",
    "user_id": 7,
    "default": true,
    "valid": true,
    "legacy": false,
    "dns": {
      "domain_cname": {
        "valid": true,
        "type": "cname",
        "host": "mail.example.com",
        "data": "sendgrid.net"
      },
      "owner_cname": {
        "valid": true,
        "type": "cname",
        "host": "7.example.com",
        "data": "sendgrid.net"
      }
    }
  },
  {
    "id": 2,
    "domain": "example2.com",
    "subdomain": "news",
    "username": "john@example.com",
    "user_id": 8,
    "default": false,
    "valid": false,
    "legacy": false,
    "dns": {
      "domain_cname": {
        "valid": true,
        "type": "cname",
        "host": "news.example2.com",
        "data": "sendgrid.net"
      },
      "owner_cname": {
        "valid": false,
        "type": "cname",
        "host": "8.example2.com",
        "data": "sendgrid.net"
      }
    }
  }
]

Create a Link [POST]

Link Whitelabel設定の作成
Body引数 必須 条件 説明
domain Yes string Whitelabel設定のためのドメイン名.
Example: example.com
subdomain Yes string Whitelabel設定のためのサブドメイン名.
Example: mail
default No boolean 送信者のドメイン名がLink Whitelabel設定のドメインと一致しない場合にデフォルトWhitelabelとして使用するか否かを指定します.
Example: true

Request

1
POST https://api.sendgrid.com/v3/whitelabel/links HTTP/1.1
Request Body
1
2
3
4
5
{
  "domain": "example.com",
  "subdomain": "mail",
  "default": true
}

Response

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
HTTP/1.1 201
{
  "id": 1,
  "domain": "example.com",
  "subdomain": "mail",
  "username": "john@example.com",
  "user_id": 7,
  "default": false,
  "valid": true,
  "legacy": false,
  "dns": {
    "domain_cname": {
      "valid": true,
      "type": "cname",
      "host": "mail.example.com",
      "data": "sendgrid.net"
    },
    "owner_cname": {
      "valid": true,
      "type": "cname",
      "host": "7.example.com",
      "data": "sendgrid.net"
    }
  }
}

Retrieve a Link [GET]

Link Whitelabel設定の取得
URI引数 必須 条件 説明
ID Yes integer Link Whitelabel設定のID
Example: 1234

Request

1
GET https://api.sendgrid.com/v3/whitelabel/links/{id} HTTP/1.1

Response

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
HTTP/1.1 200
{
  "id": 1,
  "domain": "example.com",
  "subdomain": "mail",
  "username": "john@example.com",
  "user_id": 7,
  "default": false,
  "valid": true,
  "legacy": false,
  "dns": {
    "domain_cname": {
      "valid": true,
      "type": "cname",
      "host": "mail.example.com",
      "data": "sendgrid.net"
    },
    "owner_cname": {
      "valid": true,
      "type": "cname",
      "host": "7.example.com",
      "data": "sendgrid.net"
    }
  }
}

Update a Link [PATCH]

Link Whitelabel設定の更新
URI引数 必須 条件 説明
ID Yes integer Link Whitelabel設定のID
Example: 1234

Request

1
PATCH https://api.sendgrid.com/v3/whitelabel/links/{id} HTTP/1.1
Request Body
1
2
3
{
  "default": true
}

Response

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
HTTP/1.1 200
{
  "id": 1,
  "domain": "example.com",
  "subdomain": "mail",
  "username": "john@example.com",
  "user_id": 7,
  "default": true,
  "valid": true,
  "legacy": false,
  "dns": {
    "domain_cname": {
      "valid": true,
      "type": "cname",
      "host": "mail.example.com",
      "data": "sendgrid.net"
    },
    "owner_cname": {
      "valid": true,
      "type": "cname",
      "host": "7.example.com",
      "data": "sendgrid.net"
    }
  }
}

Delete a Link [DELETE]

Link Whitelabel設定の削除
URI引数 必須 条件 説明
ID Yes integer Link Whitelabel設定のID
Example: 1234

Request

1
DELETE https://api.sendgrid.com/v3/whitelabel/links/{id} HTTP/1.1

Response

1
HTTP/1.1 204
デフォルトLink Whitelabel設定はメッセージ送信の際に実際に使用されるWhitelabel設定です。複数のLink Whitelabel設定が存在した場合、以下の順番でデフォルト設定が決定されます。
  • "default"としてマークされた確認(validated)済みのLink Whitelabel設定
  • レガシーLink Whitelabel(旧Whitelabel Wizardで作成されたもの)
  • SendGridのデフォルトLink Whitelabel設定(i.e. 100.ct.sendgrid.net)

Default Link [GET]

デフォルトLink Whitelabel設定の取得
URI引数 必須 条件 説明
domain No string Link Whitelabel設定のドメインにマッチする送信者ドメイン.

Request

1
GET https://api.sendgrid.com/v3/whitelabel/links/default?domain={domain} HTTP/1.1

Response

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
HTTP/1.1 200
{
  "id": 1,
  "domain": "example.com",
  "subdomain": "mail",
  "username": "john@example.com",
  "user_id": 7,
  "default": false,
  "valid": true,
  "legacy": false,
  "dns": {
    "domain_cname": {
      "valid": true,
      "type": "cname",
      "host": "mail.example.com",
      "data": "sendgrid.net"
    },
    "owner_cname": {
      "valid": true,
      "type": "cname",
      "host": "7.example.com",
      "data": "sendgrid.net"
    }
  }
}

Validate a Link [POST]

Link Whitelabel設定の確認

Request

1
POST https://api.sendgrid.com/v3/whitelabel/links/{id}/validate HTTP/1.1

Response

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
HTTP/1.1 200
{
  "id": 1,
  "valid": true,
  "validation_results": {
    "domain_cname": {
      "valid": false,
      "reason": "Expected CNAME to match \"sendgrid.net.\" but found \"example.com.\"."
    },
    "owner_cname": {
      "valid": true,
      "reason": null
    }
  }
}

Request

1
POST https://api.sendgrid.com/v3/whitelabel/links/{id}/validate HTTP/1.1

Response

1
2
3
4
5
6
7
8
HTTP/1.1 500
{
  "errors": [
    {
      "message": "internal error getting CNAME"
    }
  ]
}
Link Whitelabel設定は親アカウントの権限でサブユーザに割り当てることができます。この機能を利用することにより、サブユーザは親アカウントのWhitelabel設定を利用してメール送信することができます。Whitelabel設定を割り当てるためには、はじめに親アカウントでLink Whitelabel設定を作成してValidateを通す必要があります。その後、親アカウントの権限でSubuser Management機能を使用してサブユーザに割り当てます。

List Associated Link [GET]

関連するLink Whitelabel設定の一覧取得
URI引数 必須 条件 説明
username Yes string Link Whitelabel設定に割り当てられているサブユーザのユーザ名.

Request

1
GET https://api.sendgrid.com/v3/whitelabel/links/subuser?username={username} HTTP/1.1

Response

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
HTTP/1.1 200
{
  "id": 1,
  "domain": "example.com",
  "subdomain": "mail",
  "username": "john@example.com",
  "user_id": 7,
  "default": false,
  "valid": true,
  "legacy": false,
  "dns": {
    "domain_cname": {
      "valid": true,
      "type": "cname",
      "host": "mail.example.com",
      "data": "sendgrid.net"
    },
    "owner_cname": {
      "valid": true,
      "type": "cname",
      "host": "7.example.com",
      "data": "sendgrid.net"
    }
  }
}

Disassociate Link [DELETE]

Link Whitelabel設定のサブユーザへの割り当て解除
URI引数 必須 条件 説明
username Yes string Link Whitelabel設定に割り当てられているサブユーザのユーザ名.

Request

1
DELETE https://api.sendgrid.com/v3/whitelabel/links/subuser HTTP/1.1

Response

1
HTTP/1.1 204

Associate Link [POST]

Link Whitelabel設定のサブユーザへの割り当て
URI引数 必須 条件 説明
link_id Yes string サブユーザに割り当てるLink Whitelabel設定のID
Body引数 必須 条件 説明
username Yes string Link Whitelabel設定と関連付けるサブユーザのユーザ名.
Example: jane@example.com

Request

1
POST https://api.sendgrid.com/v3/whitelabel/links/{link_id}/subuser HTTP/1.1
Request Body
1
2
3
{
  "username": "jane@example.com"
}

Response

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
HTTP/1.1 201
{
  "id": 1,
  "domain": "example.com",
  "subdomain": "mail",
  "username": "john@example.com",
  "user_id": 7,
  "default": false,
  "valid": true,
  "legacy": false,
  "dns": {
    "domain_cname": {
      "valid": true,
      "type": "cname",
      "host": "mail.example.com",
      "data": "sendgrid.net"
    },
    "owner_cname": {
      "valid": true,
      "type": "cname",
      "host": "7.example.com",
      "data": "sendgrid.net"
    }
  }
}