mirror of
https://github.com/hanzo-go/sendgrid.git
synced 2026-10-30 15:05:38 +00:00
659 lines
18 KiB
Go
659 lines
18 KiB
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"github.com/hanzoai/sendgrid-go"
|
|
"log"
|
|
"os"
|
|
)
|
|
|
|
// CreateaCustomField : Create a Custom Field
|
|
// POST /contactdb/custom_fields
|
|
func CreateaCustomField() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/custom_fields", host)
|
|
request.Method = "POST"
|
|
request.Body = []byte(` {
|
|
"name": "pet",
|
|
"type": "text"
|
|
}`)
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrieveallcustomfields : Retrieve all custom fields
|
|
// GET /contactdb/custom_fields
|
|
func Retrieveallcustomfields() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/custom_fields", host)
|
|
request.Method = "GET"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// RetrieveaCustomField : Retrieve a Custom Field
|
|
// GET /contactdb/custom_fields/{custom_field_id}
|
|
func RetrieveaCustomField() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/custom_fields/{custom_field_id}", host)
|
|
request.Method = "GET"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// DeleteaCustomField : Delete a Custom Field
|
|
// DELETE /contactdb/custom_fields/{custom_field_id}
|
|
func DeleteaCustomField() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/custom_fields/{custom_field_id}", host)
|
|
request.Method = "DELETE"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// CreateaList : Create a List
|
|
// POST /contactdb/lists
|
|
func CreateaList() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists", host)
|
|
request.Method = "POST"
|
|
request.Body = []byte(` {
|
|
"name": "your list name"
|
|
}`)
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrievealllists : Retrieve all lists
|
|
// GET /contactdb/lists
|
|
func Retrievealllists() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists", host)
|
|
request.Method = "GET"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// DeleteMultiplelists : Delete Multiple lists
|
|
// DELETE /contactdb/lists
|
|
func DeleteMultiplelists() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists", host)
|
|
request.Method = "DELETE"
|
|
request.Body = []byte(` [
|
|
1,
|
|
2,
|
|
3,
|
|
4
|
|
]`)
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// UpdateaList : Update a List
|
|
// PATCH /contactdb/lists/{list_id}
|
|
func UpdateaList() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists/{list_id}", host)
|
|
request.Method = "PATCH"
|
|
request.Body = []byte(` {
|
|
"name": "newlistname"
|
|
}`)
|
|
queryParams := make(map[string]string)
|
|
queryParams["list_id"] = "1"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrieveasinglelist : Retrieve a single list
|
|
// GET /contactdb/lists/{list_id}
|
|
func Retrieveasinglelist() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists/{list_id}", host)
|
|
request.Method = "GET"
|
|
queryParams := make(map[string]string)
|
|
queryParams["list_id"] = "1"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// DeleteaList : Delete a List
|
|
// DELETE /contactdb/lists/{list_id}
|
|
func DeleteaList() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists/{list_id}", host)
|
|
request.Method = "DELETE"
|
|
queryParams := make(map[string]string)
|
|
queryParams["delete_contacts"] = "true"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// AddMultipleRecipientstoaList : Add Multiple Recipients to a List
|
|
// POST /contactdb/lists/{list_id}/recipients
|
|
func AddMultipleRecipientstoaList() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists/{list_id}/recipients", host)
|
|
request.Method = "POST"
|
|
request.Body = []byte(` [
|
|
"recipient_id1",
|
|
"recipient_id2"
|
|
]`)
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// RetrieveallrecipientsonaList : Retrieve all recipients on a List
|
|
// GET /contactdb/lists/{list_id}/recipients
|
|
func RetrieveallrecipientsonaList() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists/{list_id}/recipients", host)
|
|
request.Method = "GET"
|
|
queryParams := make(map[string]string)
|
|
queryParams["page"] = "1"
|
|
queryParams["page_size"] = "1"
|
|
queryParams["list_id"] = "1"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// AddaSingleRecipienttoaList : Add a Single Recipient to a List
|
|
// POST /contactdb/lists/{list_id}/recipients/{recipient_id}
|
|
func AddaSingleRecipienttoaList() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists/{list_id}/recipients/{recipient_id}", host)
|
|
request.Method = "POST"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// DeleteaSingleRecipientfromaSingleList : Delete a Single Recipient from a Single List
|
|
// DELETE /contactdb/lists/{list_id}/recipients/{recipient_id}
|
|
func DeleteaSingleRecipientfromaSingleList() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/lists/{list_id}/recipients/{recipient_id}", host)
|
|
request.Method = "DELETE"
|
|
queryParams := make(map[string]string)
|
|
queryParams["recipient_id"] = "1"
|
|
queryParams["list_id"] = "1"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// UpdateRecipient : Update Recipient
|
|
// PATCH /contactdb/recipients
|
|
func UpdateRecipient() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients", host)
|
|
request.Method = "PATCH"
|
|
request.Body = []byte(` [
|
|
{
|
|
"email": "[email protected]",
|
|
"first_name": "Guy",
|
|
"last_name": "Jones"
|
|
}
|
|
]`)
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Addrecipients : Add recipients
|
|
// POST /contactdb/recipients
|
|
func Addrecipients() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients", host)
|
|
request.Method = "POST"
|
|
request.Body = []byte(` [
|
|
{
|
|
"age": 25,
|
|
"email": "[email protected]",
|
|
"first_name": "",
|
|
"last_name": "User"
|
|
},
|
|
{
|
|
"age": 25,
|
|
"email": "[email protected]",
|
|
"first_name": "Example",
|
|
"last_name": "User"
|
|
}
|
|
]`)
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrieverecipients : Retrieve recipients
|
|
// GET /contactdb/recipients
|
|
func Retrieverecipients() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients", host)
|
|
request.Method = "GET"
|
|
queryParams := make(map[string]string)
|
|
queryParams["page"] = "1"
|
|
queryParams["page_size"] = "1"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// DeleteRecipient : Delete Recipient
|
|
// DELETE /contactdb/recipients
|
|
func DeleteRecipient() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients", host)
|
|
request.Method = "DELETE"
|
|
request.Body = []byte(` [
|
|
"recipient_id1",
|
|
"recipient_id2"
|
|
]`)
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrievethecountofbillablerecipients : Retrieve the count of billable recipients
|
|
// GET /contactdb/recipients/billable_count
|
|
func Retrievethecountofbillablerecipients() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients/billable_count", host)
|
|
request.Method = "GET"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// RetrieveaCountofRecipients : Retrieve a Count of Recipients
|
|
// GET /contactdb/recipients/count
|
|
func RetrieveaCountofRecipients() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients/count", host)
|
|
request.Method = "GET"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrieverecipientsmatchingsearchcriteria : Retrieve recipients matching search criteria
|
|
// GET /contactdb/recipients/search
|
|
func Retrieverecipientsmatchingsearchcriteria() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients/search", host)
|
|
request.Method = "GET"
|
|
queryParams := make(map[string]string)
|
|
queryParams["{field_name}"] = "test_string"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrieveasinglerecipient : Retrieve a single recipient
|
|
// GET /contactdb/recipients/{recipient_id}
|
|
func Retrieveasinglerecipient() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients/{recipient_id}", host)
|
|
request.Method = "GET"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// DeleteaRecipient : Delete a Recipient
|
|
// DELETE /contactdb/recipients/{recipient_id}
|
|
func DeleteaRecipient() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients/{recipient_id}", host)
|
|
request.Method = "DELETE"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrievetheliststhatarecipientison : Retrieve the lists that a recipient is on
|
|
// GET /contactdb/recipients/{recipient_id}/lists
|
|
func Retrievetheliststhatarecipientison() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/recipients/{recipient_id}/lists", host)
|
|
request.Method = "GET"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrievereservedfields : Retrieve reserved fields
|
|
// GET /contactdb/reserved_fields
|
|
func Retrievereservedfields() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/reserved_fields", host)
|
|
request.Method = "GET"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// CreateaSegment : Create a Segment
|
|
// POST /contactdb/segments
|
|
func CreateaSegment() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/segments", host)
|
|
request.Method = "POST"
|
|
request.Body = []byte(` {
|
|
"conditions": [
|
|
{
|
|
"and_or": "",
|
|
"field": "last_name",
|
|
"operator": "eq",
|
|
"value": "Miller"
|
|
},
|
|
{
|
|
"and_or": "and",
|
|
"field": "last_clicked",
|
|
"operator": "gt",
|
|
"value": "01/02/2015"
|
|
},
|
|
{
|
|
"and_or": "or",
|
|
"field": "clicks.campaign_identifier",
|
|
"operator": "eq",
|
|
"value": "513"
|
|
}
|
|
],
|
|
"list_id": 4,
|
|
"name": "Last Name Miller"
|
|
}`)
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrieveallsegments : Retrieve all segments
|
|
// GET /contactdb/segments
|
|
func Retrieveallsegments() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/segments", host)
|
|
request.Method = "GET"
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Updateasegment : Update a segment
|
|
// PATCH /contactdb/segments/{segment_id}
|
|
func Updateasegment() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/segments/{segment_id}", host)
|
|
request.Method = "PATCH"
|
|
request.Body = []byte(` {
|
|
"conditions": [
|
|
{
|
|
"and_or": "",
|
|
"field": "last_name",
|
|
"operator": "eq",
|
|
"value": "Miller"
|
|
}
|
|
],
|
|
"list_id": 5,
|
|
"name": "The Millers"
|
|
}`)
|
|
queryParams := make(map[string]string)
|
|
queryParams["segment_id"] = "test_string"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrieveasegment : Retrieve a segment
|
|
// GET /contactdb/segments/{segment_id}
|
|
func Retrieveasegment() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/segments/{segment_id}", host)
|
|
request.Method = "GET"
|
|
queryParams := make(map[string]string)
|
|
queryParams["segment_id"] = "1"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Deleteasegment : Delete a segment
|
|
// DELETE /contactdb/segments/{segment_id}
|
|
func Deleteasegment() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/segments/{segment_id}", host)
|
|
request.Method = "DELETE"
|
|
queryParams := make(map[string]string)
|
|
queryParams["delete_contacts"] = "true"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
// Retrieverecipientsonasegment : Retrieve recipients on a segment
|
|
// GET /contactdb/segments/{segment_id}/recipients
|
|
func Retrieverecipientsonasegment() {
|
|
apiKey := os.Getenv("YOUR_SENDGRID_APIKEY")
|
|
host := "https://api.sendgrid.com"
|
|
request := sendgrid.GetRequest(apiKey, "/v3/contactdb/segments/{segment_id}/recipients", host)
|
|
request.Method = "GET"
|
|
queryParams := make(map[string]string)
|
|
queryParams["page"] = "1"
|
|
queryParams["page_size"] = "1"
|
|
request.QueryParams = queryParams
|
|
response, err := sendgrid.API(request)
|
|
if err != nil {
|
|
log.Println(err)
|
|
} else {
|
|
fmt.Println(response.StatusCode)
|
|
fmt.Println(response.Body)
|
|
fmt.Println(response.Headers)
|
|
}
|
|
}
|
|
|
|
func main() {
|
|
// add your function calls here
|
|
}
|