{"id":13810819,"url":"https://github.com/novuhq/go-novu","last_synced_at":"2026-03-17T04:30:16.008Z","repository":{"id":37749841,"uuid":"506188349","full_name":"novuhq/go-novu","owner":"novuhq","description":"GO SDK for Novu - The open-source notification infrastructure for engineers. 🚀","archived":false,"fork":false,"pushed_at":"2024-08-21T01:02:44.000Z","size":128,"stargazers_count":60,"open_issues_count":32,"forks_count":44,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-02-13T22:14:57.923Z","etag":null,"topics":["go","golang","hacktoberfest","novu","novu-api"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/novuhq.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":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-22T09:51:50.000Z","updated_at":"2025-02-10T18:06:57.000Z","dependencies_parsed_at":"2023-11-23T13:40:33.800Z","dependency_job_id":"290244f2-c499-4590-b02e-0c86f3e0d85c","html_url":"https://github.com/novuhq/go-novu","commit_stats":null,"previous_names":["novuhq/novu-go","novuhq/go-novu-legacy"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novuhq%2Fgo-novu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novuhq%2Fgo-novu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novuhq%2Fgo-novu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novuhq%2Fgo-novu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/novuhq","download_url":"https://codeload.github.com/novuhq/go-novu/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239927846,"owners_count":19719836,"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","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":["go","golang","hacktoberfest","novu","novu-api"],"created_at":"2024-08-04T03:00:27.858Z","updated_at":"2026-03-17T04:30:15.949Z","avatar_url":"https://github.com/novuhq.png","language":"Go","funding_links":[],"categories":["SDKs \u0026 Components"],"sub_categories":[],"readme":"# Novu's API v1 Go Library\n\nNovu's API exposes the entire Novu features via a standardized programmatic interface. Please refer to the full [documentation](https://docs.novu.co/docs/overview/introduction) to learn more.\n\n## Installation \u0026 Usage\n\nInstall the package to your GoLang project.\n\n```golang\ngo get github.com/novuhq/go-novu\n```\n\n## Getting Started\n\nPlease follow the [installation procedure](#installation--usage) and then run the following:\n\n```golang\npackage main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\tnovu \"github.com/novuhq/go-novu/lib\"\n\t\"log\"\n)\n\nfunc main() {\n\tsubscriberID := \"\u003c\u003cREPLACE_WITH_YOUR_SUBSCRIBER\u003e\"\n\tapiKey := \"\u003cREPLACE_WITH_YOUR_API_KEY\u003e\"\n\teventId := \"\u003cREPLACE_WITH_YOUR_EVENT_ID\u003e\"\n\n\tctx := context.Background()\n\tto := map[string]interface{}{\n\t\t\"lastName\":     \"Doe\",\n\t\t\"firstName\":    \"John\",\n\t\t\"subscriberId\": subscriberID,\n\t\t\"email\":        \"john@doemail.com\",\n\t}\n\n\tpayload := map[string]interface{}{\n\t\t\"name\": \"Hello World\",\n\t\t\"organization\": map[string]interface{}{\n\t\t\t\"logo\": \"https://happycorp.com/logo.png\",\n\t\t},\n\t}\n\n\tdata := novu.ITriggerPayloadOptions{To: to, Payload: payload}\n\tnovuClient := novu.NewAPIClient(apiKey, \u0026novu.Config{})\n\n\tresp, err := novuClient.EventApi.Trigger(ctx, eventId, data)\n\tif err != nil {\n\t\tlog.Fatal(\"novu error\", err.Error())\n\t\treturn\n\t}\n\n\tfmt.Println(resp)\n\n\t// get integrations\n\tintegrations, err := novuClient.IntegrationsApi.GetAll(ctx)\n\tif err != nil {\n\t\tlog.Fatal(\"Get all integrations error: \", err.Error())\n\t}\n\tfmt.Println(integrations)\n}\n```\n\n**NOTE**\nCheck the `cmd` directory to see a sample implementation and test files to see sample tests\n\n## Documentation for API Endpoints\n\nClass | Method                                                                           | HTTP request                            | Description\n------------ |----------------------------------------------------------------------------------|-----------------------------------------| -------------\n*EventApi* | [**Trigger**](https://docs.novu.co/platform/subscribers#removing-a-subscriber)   | **Post** /events/trigger                | Trigger\n*EventApi* | [**TriggerBulk**](https://docs.novu.co/api/trigger-event/)   | **Post** /v1/events/trigger/bulk               | Bulk trigger event\n*EventApi* | [**BroadcastToAll**](https://docs.novu.co/api/broadcast-event-to-all/)   | **Post** /v1/events/trigger/broadcast               | Broadcast event to all\n*EventApi* | [**CancelTrigger**](https://docs.novu.co/api/cancel-triggered-event/)   | **Delete** /v1/events/trigger/:transactionId                | Cancel triggered event\n*SubscriberApi* | [**Get**](https://docs.novu.co/api/get-subscriber/) | **Get** /subscribers/:subscriberId                 | Get a subscriber\n*SubscriberApi* | [**Identify**](https://docs.novu.co/platform/subscribers#creating-a-subscriber) | **Post** /subscribers                 | Create a subscriber\n*SubscriberApi* | [**Update**](https://docs.novu.co/platform/subscribers#updating-subscriber-data)     | **Put** /subscribers/:subscriberID    | Update subscriber data\n*SubscriberApi* | [**Delete**](https://docs.novu.co/platform/subscribers#removing-a-subscriber)     | **Delete** /subscribers/:subscriberID | Removing a subscriber\n*SubscriberApi* | [**Get**](https://docs.novu.co/api/get-a-notification-feed-for-a-particular-subscriber)     | **Get** /subscribers/:subscriberId/notifications/feed | Get a notification feed for a particular subscriber\n*SubscriberApi* | [**Get**](https://docs.novu.co/api/get-the-unseen-notification-count-for-subscribers-feed)     | **Get** /subscribers/:subscriberId/notifications/feed | Get the unseen notification count for subscribers feed\n*SubscriberApi* | [**Post**](https://docs.novu.co/api/mark-a-subscriber-feed-message-as-seen)     | **Post** /v1/subscribers/:subscriberId/messages/markAs | Mark a subscriber feed message as seen\n*SubscriberApi* | [**Get**](https://docs.novu.co/api/get-subscriber-preferences/)     | **Get** /subscribers/:subscriberId/preferences | Get subscriber preferences\n*SubscriberApi* | [**Patch**](https://docs.novu.co/api/update-subscriber-preference/)     | **Patch** /subscribers/:subscriberId/preferences/:templateId | Update subscriber preference\n*TopicsApi* | [**Get**](https://docs.novu.co/api/filter-topics/) | **Get** /topics | Get a list of topics\n*TopicsApi* | [**Get**](https://docs.novu.co/api/get-topic/) | **Get** /topics/:topicKey | Get a topic by its topic key\n*TopicsApi* | [**Post**](https://docs.novu.co/api/topic-creation/) | **Post** /topics | Create a topic\n*TopicsApi* | [**Patch**](https://docs.novu.co/api/rename-a-topic/) | **Patch** /topics/:topicKey | Rename a topic\n*TopicsApi* | [**Delete**](https://docs.novu.co/api/delete-topic/) | **Delete** /topics/:topicKey | Delete a topic\n*TopicsApi* | [**Post**](https://docs.novu.co/api/subscribers-addition/) | **Post** /topics/:topicKey/subscribers | Add subscribers to a topic by key\n*TopicsApi* | [**Post**](https://docs.novu.co/api/subscribers-removal/) | **Post** /topics/:topicKey/subscribers/removal |Remove subscribers from a topic\n*IntegrationsApi* | [**Create**](https://docs.novu.co/platform/integrations)                         | **Post** /integrations                  | Create an integration\n*IntegrationsApi* | [**Update**](https://docs.novu.co/platform/integrations)                         | **Put** /integrations/:integrationId    | Update an integration\n*IntegrationsApi* | [**Delete**](https://docs.novu.co/platform/integrations)                         | **Delete** /integrations/:integrationId | Delete an integration\n*IntegrationsApi* | [**Get**](https://docs.novu.co/platform/integrations)                            | **Get** /integrations                   | Get all integrations\n*IntegrationsApi* | [**GetActive**](https://docs.novu.co/platform/integrations)                      | **Get** /integrations/active            | Get all active integrations\n_InboundParserApi_ | [**Get**](https://docs.novu.co/platform/inbound-parse-webhook/) | **Get** /inbound-parse/mx/status | Validate the mx record setup for the inbound parse functionality\n\n## Authorization (api-key)\n\n- **Type**: API key\n- **API key parameter name**: ApiKey\n- **Location**: HTTP header\n\n### For more information about these methods and their parameters, see the [API documentation](https://docs.novu.co/api-reference/overview).  \n\n## Support and Feedback\n\nBe sure to visit the Novu official [documentation website](https://docs.novu.co/docs) for additional information about our API.\n\nIf you find a bug, please post the issue on [Github](https://github.com/novuhq/go-novu/issues).\n\nAs always, if you need additional assistance, join our Discord us a note [here](https://discord.gg/novu).\n\n## Contributors\n\nName |\n------------ |\n[Oyewole Samuel](https://github.com/samsoft00) |\n[Dima Grossman](https://github.com/scopsy) |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovuhq%2Fgo-novu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnovuhq%2Fgo-novu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovuhq%2Fgo-novu/lists"}