{"id":31652197,"url":"https://github.com/block/iterable-go","last_synced_at":"2025-10-07T09:59:55.114Z","repository":{"id":315143381,"uuid":"1050053165","full_name":"block/iterable-go","owner":"block","description":"A Go (Golang) client library for integrating your applications with the Iterable API.","archived":false,"fork":false,"pushed_at":"2025-09-17T00:33:31.000Z","size":89,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-17T00:41:42.435Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/block.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":"GOVERNANCE.md","roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-03T22:01:57.000Z","updated_at":"2025-09-17T00:24:35.000Z","dependencies_parsed_at":"2025-09-17T00:41:47.866Z","dependency_job_id":"78c141a9-a052-4dc9-9a5d-a8d253c1ab8f","html_url":"https://github.com/block/iterable-go","commit_stats":null,"previous_names":["block/iterable-go"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/block/iterable-go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fiterable-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fiterable-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fiterable-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fiterable-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/block","download_url":"https://codeload.github.com/block/iterable-go/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fiterable-go/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278755165,"owners_count":26040034,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-07T09:59:52.806Z","updated_at":"2025-10-07T09:59:55.108Z","avatar_url":"https://github.com/block.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Iterable Go Client Library\n\n[![CI](https://github.com/block/iterable-go/actions/workflows/ci.yml/badge.svg)](https://github.com/block/iterable-go/actions/workflows/ci.yml)\n\nA Go (Golang) client library for integrating your applications with the [Iterable](https://www.iterable.com) API.\n\nThis library follows the [Iterable API public documentation](https://api.iterable.com/api/docs) and provides both individual API calls and efficient batch processing capabilities.\n\n## Overview\n\n[Iterable](https://www.iterable.com) does not provide an official Go (Golang) implementation of their SDK. While other client libraries are available for different programming languages at [https://github.com/iterable](https://github.com/iterable), Go developers needed better support.\n\nTeams at Block use [iterable-go](https://github.com/block/iterable-go) library to send billions of messages to the Iterable API every day.\n\nThe library provides a comprehensive interface to interact with Iterable's marketing automation platform.\n\nIt supports:\n\n- **Individual API operations** - Direct calls to Iterable's REST API endpoints\n- **Batch processing** - Efficient bulk operations with automatic batching, retries, and error handling\n- **Custom configuration** - Flexible configuration options for timeouts, logging, and retry strategies\n- **Type safety** - Strongly typed request and response structures\n\n\n\n## Using the library\n\n### Basic Usage\n\nHere's a simple example to get started:\n\n```go\npackage main\n\nimport (\n    \"fmt\"\n    \"log\"\n    \n    iterable_go \"github.com/block/iterable-go\"\n)\n\nfunc main() {\n    // Create a new Iterable client\n    client := iterable_go.NewClient(\"your-api-key\")\n    \n    // Get all campaigns\n    campaigns, err := client.Campaigns().All()\n    if err != nil {\n        log.Fatalf(\"Error getting campaigns: %v\", err)\n    }\n    \n    fmt.Printf(\"Found %d campaigns\\n\", len(campaigns))\n    for _, campaign := range campaigns {\n        fmt.Printf(\"Campaign (ID: %d): %s \\n\", campaign.Id, campaign.Name)\n    }\n}\n```\n\n### More Examples\n\nFor examples covering all API endpoints and batch processing capabilities, see the [examples](./examples).\n\nIt includes:\n\n- **API Examples** - Individual API calls for users, events, campaigns, lists, etc.\n- **Batch Examples** - Efficient bulk processing with automatic batching\n- **Custom Implementations** - Custom logger and retry strategy examples\n\n### Logging\n\nBy default, the library does not log any internal information.\nHowever, if you want to enable logging for debugging, monitoring, or troubleshooting purposes,\nyou can provide a custom logger that implements the `logger.Logger` interface.\n\nFor a more advanced logger implementation with colors and structured output, see [examples/logger_custom.go](./examples/logger_custom.go).\n\n### Configuration\n\n#### NewClient Configuration Options\n\nThe `NewClient` function accepts various configuration options to customize the HTTP client behavior:\n\n| Option          | Type                | Default                 | Description                  | Example                                      |\n|-----------------|---------------------|-------------------------|------------------------------|----------------------------------------------|\n| `WithTimeout`   | `time.Duration`     | `10 * time.Second`      | HTTP request timeout         | `iterable_go.WithTimeout(30*time.Second)`    |\n| `WithTransport` | `http.RoundTripper` | `http.DefaultTransport` | Custom HTTP transport        | `iterable_go.WithTransport(customTransport)` |\n| `WithLogger`    | `logger.Logger`     | `logger.Noop{}`         | Custom logger implementation | `iterable_go.WithLogger(myLogger)`           |\n\n**Example:**\n```go\nclient := iterable_go.NewClient(\n    \"your-api-key\",\n    iterable_go.WithTimeout(30*time.Second),\n    iterable_go.WithLogger(myLogger),\n)\n```\n\n#### NewBatch Configuration Options\n\nThe `NewBatch` function provides extensive configuration for batch processing behavior:\n\n| Option                      | Type                    | Default            | Description                                      | Example                                              |\n|-----------------------------|-------------------------|--------------------|--------------------------------------------------|------------------------------------------------------|\n| `WithBatchFlushQueueSize`   | `int`                   | `100`              | Maximum messages before triggering batch         | `iterable_go.WithBatchFlushQueueSize(50)`            |\n| `WithBatchFlushInterval`    | `time.Duration`         | `5 * time.Second`  | Maximum time before triggering batch             | `iterable_go.WithBatchFlushInterval(10*time.Second)` |\n| `WithBatchBufferSize`       | `int`                   | `500`              | Internal channel buffer size                     | `iterable_go.WithBatchBufferSize(1000)`              |\n| `WithBatchRetryTimes`       | `int`                   | `1`                | Maximum retry attempts                           | `iterable_go.WithBatchRetryTimes(3)`                 |\n| `WithBatchSendIndividual`   | `bool`                  | `true`             | Send messages individually after a batch failure | `iterable_go.WithBatchSendIndividual(false)`         |\n| `WithBatchRetry`            | `retry.Retry`           | `ExponentialRetry` | Custom retry strategy                            | `iterable_go.WithBatchRetry(myRetry)`                |\n| `WithBatchSendAsync`        | `bool`                  | `true`             | Enable asynchronous processing                   | `iterable_go.WithBatchSendAsync(false)`              |\n| `WithBatchLogger`           | `logger.Logger`         | `logger.Noop{}`    | Custom logger for batch operations               | `iterable_go.WithBatchLogger(myLogger)`              |\n| `WithBatchResponseListener` | `chan\u003c- batch.Response` | `nil`              | Channel for response monitoring                  | `iterable_go.WithBatchResponseListener(respChan)`    |\n\n**Example:**\n```go\nbatchClient := iterable_go.NewBatch(\n    client,\n    iterable_go.WithBatchFlushQueueSize(50),\n    iterable_go.WithBatchFlushInterval(10*time.Second),\n    iterable_go.WithBatchRetryTimes(3),\n    iterable_go.WithBatchLogger(myLogger),\n)\n```\n\n\n## Supported APIs\n\nThe following table shows which [Iterable API endpoints](https://api.iterable.com/api/docs) are currently supported by this Go client library:\n\n|                                                           | Endpoint                                                              | Supported | Batch |\n|-----------------------------------------------------------|-----------------------------------------------------------------------|-----------|-------|\n| **Campaigns**                                             |                                                                       |           |       |\n| List campaign metadata                                    | GET `/api/campaigns`                                                  | ✅         |       |\n| Abort campaign                                            | POST `/api/campaigns/abort`                                           | ✅         |       |\n| Activate a triggered campaign                             | POST `/api/campaigns/activateTriggered`                               | ✅         |       |\n| Archive campaigns                                         | POST `/api/campaigns/archive`                                         |           |       |\n| Cancel a scheduled or \u003cbr/\u003erecurring campaign             | POST `/api/campaigns/cancel`                                          | ✅         |       |\n| Create a campaign                                         | POST `/api/campaigns/create`                                          | ✅         |       |\n| Deactivate a triggered \u003cbr/\u003ecampaign                      | POST `/api/campaigns/deactivateTriggered`                             |           |       |\n| Get metrics for campaigns                                 | GET `/api/campaigns/metrics`                                          |           |       |\n| Get child campaigns of \u003cbr/\u003ea recurring campaign          | GET `/api/campaigns/recurring/{id}/childCampaigns`                    | ✅         |       |\n| Trigger a campaign                                        | POST `/api/campaigns/trigger`                                         | ✅         |       |\n| Schedule existing campaign \u003cbr/\u003eto be sent                | POST `/api/campaigns/{id}/schedule`                                   |           |       |\n| Send existing campaign now                                | POST `/api/campaigns/{id}/send`                                       |           |       |\n| Get a campaign                                            | GET `/api/campaigns/{id}`                                             |           |       |\n|                                                           |\n| **Catalogs**                                              |                                                                       |           |       |\n| Get catalog names                                         | GET `/api/catalogs`                                                   | ✅         |       |\n| Delete a catalog                                          | DELETE `/api/catalogs/{catalogName}`                                  |           |       |\n| Create a catalog                                          | POST `/api/catalogs/{catalogName}`                                    |           |       |\n| Get field mappings for a catalog                          | GET `/api/catalogs/{catalogName}/fieldMappings`                       | ✅         |       |\n| Set a catalog's field mappings (data types)               | PUT `/api/catalogs/{catalogName}/fieldMappings`                       |           |       |\n| Bulk delete catalog items                                 | DELETE `/api/catalogs/{catalogName}/items`                            |           |       |\n| Get the catalog items for a catalog                       | GET `/api/catalogs/{catalogName}/items`                               |           |       |\n| Bulk create catalog items                                 | POST `/api/catalogs/{catalogName}/items`                              |           |       |\n| Delete a catalog item                                     | DELETE `/api/catalogs/{catalogName}/items/{itemId}`                   |           |       |\n| Get a specific catalog item                               | GET `/api/catalogs/{catalogName}/items/{itemId}`                      |           |       |\n| Create or update a catalog item                           | PATCH `/api/catalogs/{catalogName}/items/{itemId}`                    |           |       |\n| Create or replace a catalog item                          | PUT `/api/catalogs/{catalogName}/items/{itemId}`                      |           |       |\n|                                                           |\n| **Channels**                                              |\n| Get channels                                              | GET `/api/channels`                                                   | ✅         |       |\n|                                                           |\n| **Commerce**                                              |\n| Track a purchase                                          | POST `/api/commerce/trackPurchase`                                    |           |       |\n| Update a user's shopping cart items                       | POST `/api/commerce/updateCart`                                       |           |       |\n|                                                           |\n| **Email**                                                 |\n| Cancel an email to a user                                 | POST `/api/email/cancel`                                              |           |       |\n| Send an email to an email address                         | POST `/api/email/target`                                              |           |       |\n| View a previously sent email                              | GET `/api/email/viewInBrowser`                                        |           |       |\n|                                                           |\n| **Embedded Messaging**                                    |\n| Get a user's embedded messages                            | GET `/api/embedded-messaging/messages`                                |           |       |\n|                                                           |\n| **Events**                                                |\n| Track an embedded message click                           | POST `/api/embedded-messaging/events/click`                           |           |       |\n| Track an embedded message received event                  | POST `/api/embedded-messaging/events/received`                        |           |       |\n| Track an embedded message session and related impressions | POST `/api/embedded-messaging/events/session`                         |           |       |\n| Get user events by userId                                 | GET `/api/events/byUserId/{userId}`                                   | ✅         |       |\n| Consume or delete an in-app message                       | POST `/api/events/inAppConsume`                                       |           |       |\n| Track an event                                            | POST `/api/events/track`                                              | ✅         |       |\n| Bulk track events                                         | POST `/api/events/trackBulk`                                          | ✅         | ✅     |\n| Track an in-app message click                             | POST `/api/events/trackInAppClick`                                    |           |       |\n| Track the closing of an in-app message                    | POST `/api/events/trackInAppClose`                                    |           |       |\n| Track the delivery of an in-app message                   | POST `/api/events/trackInAppDelivery`                                 |           |       |\n| Track an in-app message open                              | POST `/api/events/trackInAppOpen`                                     |           |       |\n| Track a mobile push open                                  | POST `/api/events/trackPushOpen`                                      |           |       |\n| Track a web push click                                    | POST `/api/events/trackWebPushClick`                                  |           |       |\n| Get user events                                           | GET `/api/events/{email}`                                             | ✅         |       |\n|                                                           |\n| **Experiments**                                           |\n| Get metrics for experiments                               | GET `/api/experiments/metrics`                                        |           |       |\n|                                                           |\n| **Export**                                                |\n| Export data to CSV                                        | GET `/api/export/data.csv`                                            |           |       |\n| Export data to JSON                                       | GET `/api/export/data.json`                                           |           |       |\n| Get export jobs                                           | GET `/api/export/jobs`                                                |           |       |\n| Start export                                              | POST `/api/export/start`                                              |           |       |\n| Export user events                                        | GET `/api/export/userEvents`                                          |           |       |\n| Cancel export                                             | DELETE `/api/export/{jobId}`                                          |           |       |\n| Get export files                                          | GET `/api/export/{jobId}/files`                                       |           |       |\n|                                                           |\n| **In-App**                                                |\n| Cancel a scheduled in-app message                         | POST `/api/inApp/cancel`                                              |           |       |\n| Get a user's in-app messages                              | GET `/api/inApp/getMessages`                                          |           |       |\n| Get a user's most relevant in-app message                 | GET `/api/inApp/getPriorityMessage`                                   |           |       |\n| Send an in-app notification to a user                     | POST `/api/inApp/target`                                              |           |       |\n|                                                           |\n| **In-App-Web**                                            |\n| Get a user's web in-app messages                          | GET `/api/inApp/web/getMessages`                                      |           |       |\n|                                                           |\n| **Lists**                                                 |\n| Get lists                                                 | GET `/api/lists`                                                      | ✅         |       |\n| Create a static list                                      | POST `/api/lists`                                                     | ✅         |       |\n| Get users in a list                                       | GET `/api/lists/getUsers`                                             | ✅         |       |\n| Preview users in a list                                   | GET `/api/lists/previewUsers`                                         |           |       |\n| Add subscribers to list                                   | POST `/api/lists/subscribe`                                           | ✅         | ✅     |\n| Remove users from a list                                  | POST `/api/lists/unsubscribe`                                         | ✅         | ✅     |\n| Delete a list                                             | DELETE `/api/lists/{listId}`                                          | ✅         |       |\n| Get count of users in list                                | GET `/api/lists/{listId}/size`                                        | ✅         |       |\n|                                                           |\n| **MessageTypes**                                          |\n| List message types                                        | GET `/api/messageTypes`                                               | ✅         |       |\n|                                                           |\n| **Metadata**                                              |\n| List available tables                                     | GET `/api/metadata`                                                   |           |       |\n| Delete a table                                            | DELETE `/api/metadata/{table}`                                        |           |       |\n| List keys in a table                                      | GET `/api/metadata/{table}`                                           |           |       |\n| Delete a single metadata key/value                        | DELETE `/api/metadata/{table}/{key}`                                  |           |       |\n| Get the metadata value of a single key                    | GET `/api/metadata/{table}/{key}`                                     |           |       |\n| Create or replace metadata                                | PUT `/api/metadata/{table}/{key}`                                     |           |       |\n|                                                           |\n| **Push**                                                  |\n| Cancel a push notification to a user                      | POST `/api/push/cancel`                                               |           |       |\n| Send push notification to user                            | POST `/api/push/target`                                               |           |       |\n|                                                           |\n| **SMS**                                                   |\n| Cancel an SMS to a user                                   | POST `/api/sms/cancel`                                                |           |       |\n| Send SMS notification to user                             | POST `/api/sms/target`                                                |           |       |\n|                                                           |\n| **Snippets**                                              |\n| Get all snippets                                          | GET `/api/snippets`                                                   |           |       |\n| Create a snippet                                          | POST `/api/snippets`                                                  |           |       |\n| Delete a snippet                                          | DELETE `/api/snippets/{identifier}`                                   |           |       |\n| Get snippet by ID or name                                 | GET `/api/snippets/{identifier}`                                      |           |       |\n| Create or update a snippet                                | PUT `/api/snippets/{identifier}`                                      |           |       |\n|                                                           |\n| **Subscriptions**                                         |\n| Trigger a double opt-in subscription flow                 | POST `/api/subscriptions/subscribeToDoubleOptIn`                      |           |       |\n| Bulk subscription action on a list of users               | PUT `/api/subscriptions/{subGroup}/{subGroupId}`                      |           |       |\n| Unsubscribe a single user by userId                       | DELETE `/api/subscriptions/{subGroup}/{subGroupId}/byUserId/{userId}` |           |       |\n| Subscribe a single user by their userId                   | PATCH `/api/subscriptions/{subGroup}/{subGroupId}/byUserId/{userId}`  |           |       |\n| Unsubscribe a single user                                 | DELETE `/api/subscriptions/{subGroup}/{subGroupId}/user/{userEmail}`  |           |       |\n| Subscribe a single user                                   | GET `/api/subscriptions/{subGroup}/{subGroupId}/user/{userEmail}`     |           |       |\n|                                                           |\n| **Templates**                                             |\n| Get project templates                                     | GET `/api/templates`                                                  |           |       |\n| Bulk delete templates                                     | POST `/api/templates/bulkDelete`                                      |           |       |\n| Get an email template by templateId                       | GET `/api/templates/email/get`                                        |           |       |\n| Update email template                                     | POST `/api/templates/email/update`                                    |           |       |\n| Create email template                                     | POST `/api/templates/email/upsert`                                    |           |       |\n| Get an email template by clientTemplateId                 | GET `/api/templates/getByClientTemplateId`                            |           |       |\n| Get an in-app template                                    | GET `/api/templates/inapp/get`                                        |           |       |\n| Update in-app template                                    | POST `/api/templates/inapp/update`                                    |           |       |\n| Create an in-app template                                 | POST `/api/templates/inapp/upsert`                                    |           |       |\n| Get a push template                                       | GET `/api/templates/push/get`                                         |           |       |\n| Update push template                                      | POST `/api/templates/push/update`                                     |           |       |\n| Create a push template                                    | POST `/api/templates/push/upsert`                                     |           |       |\n| Get an SMS template                                       | GET `/api//templates/sms/get`                                         |           |       |\n| Update SMS template                                       | POST `/api/templates/sms/update`                                      |           |       |\n| Create an SMS template                                    | POST `/api/templates/sms/upsert`                                      |           |       |\n|                                                           |\n| **Users**                                                 |\n| Invalidate all JWTs issued for a user                     | POST `/api/auth/jwts/invalidate`                                      |           |       |\n| Bulk update user data                                     | POST `/api/users/bulkUpdate`                                          | ✅         | ✅     |\n| Bulk update user subscriptions                            | POST `/api/users/bulkUpdateSubscriptions`                             | ✅         | ✅     |\n| Get a user by userId (query parameter)                    | GET `/api/users/byUserId`                                             | ✅         |       |\n| Delete user by userId                                     | DELETE `/api/users/byUserId/{userId}`                                 | ✅         |       |\n| Get a user by userId (path parameter)                     | GET `/api/users/byUserId/{userId}`                                    |           |       |\n| Disable pushes to a mobile device                         | POST `/api/users/disableDevice`                                       |           |       |\n| Forget a user in compliance with GDPR                     | POST `/api/users/forget`                                              | ✅         |       |\n| Get hashed forgotten users in compliance with GDPR        | GET `/api/users/forgotten`                                            | ✅         |       |\n| Get hashed forgotten userIds in compliance with GDPR      | GET `/api/users/forgottenUserIds`                                     |           |       |\n| Get a user by email (query parameter)                     | GET `/api/users/getByEmail`                                           | ✅         |       |\n| Get all user fields                                       | GET `/api/users/getFields`                                            | ✅         |       |\n| Get messages sent to a user                               | GET `/api/users/getSentMessages`                                      | ✅         |       |\n| Merge users                                               | POST `/api/users/merge`                                               |           |       |\n| Register a browser token for web push                     | POST `/api/users/registerBrowserToken`                                |           |       |\n| Register a device token for push                          | POST `/api/users/registerDeviceToken`                                 |           |       |\n| Unforget a user in compliance with GDPR                   | POST `/api/users/unforget`                                            | ✅         |       |\n| Update user data                                          | POST `/api/users/update`                                              | ✅         |       |\n| Update user email                                         | POST `/api/users/updateEmail`                                         | ✅         |       |\n| Update user subscriptions                                 | POST `/api/users/updateSubscriptions`                                 | ✅         |       |\n| Delete a user by email                                    | DELETE `/api/users/{email}`                                           | ✅         |       |\n| Get a user by email (path parameter)                      | GET `/api/users/{email}`                                              |           |       |\n|                                                           |\n| **Verify**                                                |\n| Begin SMS Verification                                    | POST `/api/verify/sms/begin`                                          |           |       |\n| Check SMS Verification Code                               | POST `/api/verify/sms/check`                                          |           |       |\n|                                                           |\n| **Webhooks**                                              |\n| Get webhooks                                              | GET `/api/webhooks`                                                   |           |       |\n| Update webhook                                            | POST `/api/webhooks`                                                  |           |       |\n|                                                           |\n| **WebPush**                                               |\n| Cancel a web push notification to a user                  | POST `/api/webPush/cancel`                                            |           |       |\n| Send web push notification to user                        | POST `/api/webPush/target`                                            |           |       |\n|                                                           |\n| **WhatsApp**                                              |\n| Cancel a scheduled WhatsApp message                       | POST `/api/whatsApp/cancel`                                           |           |       |\n| Send a WhatsApp message to a user                         | POST `/api/whatsApp/target`                                           |           |       |\n|                                                           |\n| **Workflows**                                             |\n| Get journeys (workflows)                                  | GET `/api/journeys`                                                   |           |       |\n| Trigger a journey (workflow)                              | POST `/api/workflows/triggerWorkflow`                                 |           |       |\n\n## License\n\nThis project is licensed under the terms specified in [LICENSE](./LICENSE).\n\n---\n\n## Quick Links\n\n- [Iterable Website](https://www.iterable.com)\n- [Iterable API Documentation](https://api.iterable.com/api/docs)\n- [Other Iterable Client Libraries](https://github.com/iterable)\n- [Examples Directory](./examples)\n- [License](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblock%2Fiterable-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblock%2Fiterable-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblock%2Fiterable-go/lists"}