{"id":15110878,"url":"https://github.com/android-sms-gateway/client-go","last_synced_at":"2026-04-24T03:06:34.054Z","repository":{"id":247012076,"uuid":"806835950","full_name":"android-sms-gateway/client-go","owner":"android-sms-gateway","description":"A Go client library for sending and managing SMS messages via the SMS Gateway for Android™ API.","archived":false,"fork":false,"pushed_at":"2025-03-26T07:11:24.000Z","size":31,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-26T08:24:03.369Z","etag":null,"topics":["android","android-app","android-development","android-sms","api-client","communication","go-client","go-sdk","golang","http-client","message-service","messaging-api","mobile-messaging","rest-api","sms-api","sms-gateway","sms-integration","sms-library","sms-service","telecommunications"],"latest_commit_sha":null,"homepage":"https://sms-gate.app","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/android-sms-gateway.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":"2024-05-28T02:13:46.000Z","updated_at":"2025-03-09T22:41:04.000Z","dependencies_parsed_at":"2024-10-28T00:18:02.264Z","dependency_job_id":"3a1f0aae-827e-4153-b233-cbad10c8c6f2","html_url":"https://github.com/android-sms-gateway/client-go","commit_stats":null,"previous_names":["capcom6/android-sms-gateway-go"],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/android-sms-gateway%2Fclient-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/android-sms-gateway%2Fclient-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/android-sms-gateway%2Fclient-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/android-sms-gateway%2Fclient-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/android-sms-gateway","download_url":"https://codeload.github.com/android-sms-gateway/client-go/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247370642,"owners_count":20928056,"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":["android","android-app","android-development","android-sms","api-client","communication","go-client","go-sdk","golang","http-client","message-service","messaging-api","mobile-messaging","rest-api","sms-api","sms-gateway","sms-integration","sms-library","sms-service","telecommunications"],"created_at":"2024-09-26T00:01:14.475Z","updated_at":"2026-04-24T03:06:34.040Z","avatar_url":"https://github.com/android-sms-gateway.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca id=\"readme-top\"\u003e\u003c/a\u003e\n\n\u003c!-- PROJECT SHIELDS --\u003e\n[![Go Report Card][reportcard-shield]][reportcard-url]\n[![Codecov][codecov-shield]][codecov-url]\n[![Go Version][goversion-shield]][goversion-url]\n[![License][license-shield]][license-url]\n[![Release][release-shield]][release-url]\n[![Stars][stars-shield]][stars-url]\n[![Issues][issues-shield]][issues-url]\n\n\u003c!-- PROJECT LOGO --\u003e\n\u003cbr /\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://github.com/android-sms-gateway/client-go\"\u003e\n    \u003cimg src=\"https://github.com/capcom6/android-sms-gateway/raw/master/assets/logo.png\" alt=\"Logo\" width=\"100\" height=\"100\"\u003e\n  \u003c/a\u003e\n\n\u003ch3 align=\"center\"\u003eclient-go\u003c/h3\u003e\n\n  \u003cp align=\"center\"\u003e\n    Go client library for SMSGate APIs.\n    \u003cbr /\u003e\n    \u003ca href=\"https://api.sms-gate.app/\"\u003e\u003cstrong\u003eExplore API docs »\u003c/strong\u003e\u003c/a\u003e\n    \u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://github.com/android-sms-gateway/client-go/issues\"\u003eReport Bug\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/android-sms-gateway/client-go/issues\"\u003eRequest Feature\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n- [About The Project](#about-the-project)\n- [Built With](#built-with)\n- [Getting Started](#getting-started)\n\t- [Prerequisites](#prerequisites)\n\t- [Installation](#installation)\n- [Usage](#usage)\n\t- [SMSGate client (`smsgateway`)](#smsgate-client-smsgateway)\n\t- [Certificate Authority client (`ca`)](#certificate-authority-client-ca)\n- [API Coverage](#api-coverage)\n\t- [`smsgateway.Client`](#smsgatewayclient)\n\t- [`ca.Client`](#caclient)\n- [Contributing](#contributing)\n- [License](#license)\n\n\n\u003c!-- ABOUT THE PROJECT --\u003e\n## About The Project\n\n`client-go` provides typed clients for the SMSGate ecosystem:\n\n- `smsgateway` package for 3rd-party API operations (messages, devices, health, logs, settings, webhooks, and token lifecycle).\n- `ca` package for Certificate Authority workflows (submit CSR and check CSR status).\n- Shared low-level HTTP handling in the `rest` package.\n\nThe library supports both Basic authentication (`user` + `password`) and Bearer token authentication for the SMSGate client.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## Built With\n\n- [Go](https://go.dev/) 1.22+\n- Standard `net/http` client with configurable transport\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- GETTING STARTED --\u003e\n## Getting Started\n\n### Prerequisites\n\n- Go 1.22 or newer\n- SMSGate account/device credentials and/or API token\n\n### Installation\n\n```bash\ngo get github.com/android-sms-gateway/client-go\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- USAGE EXAMPLES --\u003e\n## Usage\n\n### SMSGate client (`smsgateway`)\n\n```go\npackage main\n\nimport (\n\t\"context\"\n\t\"log\"\n\t\"os\"\n\n\t\"github.com/android-sms-gateway/client-go/smsgateway\"\n)\n\nfunc main() {\n\tctx := context.Background()\n\n\tclient := smsgateway.NewClient(smsgateway.Config{\n\t\tUser:     os.Getenv(\"ASG_USERNAME\"),\n\t\tPassword: os.Getenv(\"ASG_PASSWORD\"),\n\t\t// or use Token: os.Getenv(\"ASG_TOKEN\"),\n\t})\n\n\tstate, err := client.Send(ctx, smsgateway.Message{\n\t\tTextMessage: \u0026smsgateway.TextMessage{Text: \"Hello from Go\"},\n\t\tPhoneNumbers: []string{\n\t\t\t\"+15555550100\",\n\t\t},\n\t})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tlog.Printf(\"message queued: %s\", state.ID)\n}\n```\n\n### Certificate Authority client (`ca`)\n\n```go\npackage main\n\nimport (\n\t\"context\"\n\t\"log\"\n\n\t\"github.com/android-sms-gateway/client-go/ca\"\n)\n\nfunc main() {\n\tctx := context.Background()\n\tclient := ca.NewClient()\n\n\tresp, err := client.PostCSR(ctx, ca.PostCSRRequest{\n\t\tType:    ca.CSRTypeWebhook,\n\t\tContent: \"-----BEGIN CERTIFICATE REQUEST-----...\",\n\t})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tlog.Printf(\"request id: %s, status: %s\", resp.RequestID, resp.Status)\n}\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## API Coverage\n\n### `smsgateway.Client`\n\n- Messages: `Send`, `GetState`\n- Devices: `ListDevices`, `DeleteDevice`\n- Health: `CheckHealth`\n- Inbox export: `ExportInbox`\n- Logs: `GetLogs`\n- Settings: `GetSettings`, `UpdateSettings`, `ReplaceSettings`\n- Webhooks: `ListWebhooks`, `RegisterWebhook`, `DeleteWebhook`\n- Token management: `GenerateToken`, `RefreshToken`, `RevokeToken`\n\nFor endpoint semantics and payload details, see https://api.sms-gate.app/\n\n### `ca.Client`\n\n- CSR workflows: `PostCSR`, `GetCSRStatus`\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- CONTRIBUTING --\u003e\n## Contributing\n\nContributions are welcome. Please open an issue to discuss major changes before submitting a pull request.\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/my-change`)\n3. Commit your changes (`git commit -m 'Describe change'`)\n4. Push to your branch\n5. Open a Pull Request\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- LICENSE --\u003e\n## License\n\nDistributed under the Apache-2.0 License. See [`LICENSE`](LICENSE) for details.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n[reportcard-shield]: https://goreportcard.com/badge/github.com/android-sms-gateway/client-go?style=for-the-badge\n[reportcard-url]: https://goreportcard.com/report/github.com/android-sms-gateway/client-go\n[codecov-shield]: https://img.shields.io/codecov/c/gh/android-sms-gateway/client-go?style=for-the-badge\n[codecov-url]: https://codecov.io/gh/android-sms-gateway/client-go\n[goversion-shield]: https://img.shields.io/github/go-mod/go-version/android-sms-gateway/client-go?style=for-the-badge\n[goversion-url]: https://github.com/android-sms-gateway/client-go/blob/HEAD/go.mod\n[license-shield]: https://img.shields.io/badge/License-Apache_2.0-blue.svg?style=for-the-badge\n[license-url]: https://github.com/android-sms-gateway/client-go/blob/master/LICENSE\n[release-shield]: https://img.shields.io/github/v/release/android-sms-gateway/client-go?style=for-the-badge\n[release-url]: https://github.com/android-sms-gateway/client-go/releases\n[stars-shield]: https://img.shields.io/github/stars/android-sms-gateway/client-go?style=for-the-badge\n[stars-url]: https://github.com/android-sms-gateway/client-go/stargazers\n[issues-shield]: https://img.shields.io/github/issues/android-sms-gateway/client-go?style=for-the-badge\n[issues-url]: https://github.com/android-sms-gateway/client-go/issues\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandroid-sms-gateway%2Fclient-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandroid-sms-gateway%2Fclient-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandroid-sms-gateway%2Fclient-go/lists"}