{"id":44012638,"url":"https://github.com/injectivelabs/sdk-go","last_synced_at":"2026-06-02T13:00:41.134Z","repository":{"id":36950455,"uuid":"236135355","full_name":"InjectiveLabs/sdk-go","owner":"InjectiveLabs","description":"Tools to work with the Injective Chain, Injective EVM and EIP712.","archived":false,"fork":false,"pushed_at":"2026-05-15T19:23:58.000Z","size":55893,"stargazers_count":122,"open_issues_count":4,"forks_count":66,"subscribers_count":22,"default_branch":"master","last_synced_at":"2026-05-15T21:59:24.493Z","etag":null,"topics":["eip712","ethereum","evm","wrappers"],"latest_commit_sha":null,"homepage":"","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/InjectiveLabs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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,"zenodo":null,"notice":"NOTICE.md","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-01-25T06:39:37.000Z","updated_at":"2026-04-27T15:12:26.000Z","dependencies_parsed_at":"2023-01-17T07:30:44.768Z","dependency_job_id":"8750d829-e091-43a5-8448-129c1bdd0bd3","html_url":"https://github.com/InjectiveLabs/sdk-go","commit_stats":{"total_commits":506,"total_committers":19,"mean_commits":26.63157894736842,"dds":0.6264822134387351,"last_synced_commit":"a3c32cf4984b1a86fcf51d1c3e8669016dd571b9"},"previous_names":["injectivelabs/zeroex-go"],"tags_count":463,"template":false,"template_full_name":null,"purl":"pkg:github/InjectiveLabs/sdk-go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InjectiveLabs%2Fsdk-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InjectiveLabs%2Fsdk-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InjectiveLabs%2Fsdk-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InjectiveLabs%2Fsdk-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/InjectiveLabs","download_url":"https://codeload.github.com/InjectiveLabs/sdk-go/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InjectiveLabs%2Fsdk-go/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33822821,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-02T02:00:07.132Z","response_time":109,"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":["eip712","ethereum","evm","wrappers"],"created_at":"2026-02-07T14:38:48.795Z","updated_at":"2026-06-02T13:00:41.121Z","avatar_url":"https://github.com/InjectiveLabs.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Injective Protocol Golang SDK 🌟\n\n[![codecov](https://codecov.io/gh/InjectiveLabs/sdk-go/graph/badge.svg?token=XDGZV265EE)](https://codecov.io/gh/InjectiveLabs/sdk-go)\n\n---\n\n## 📚 Getting Started\n\nClone the repository locally and install needed dependencies\n\n```bash\n$ git clone git@github.com:InjectiveLabs/sdk-go.git\n$ cd sdk-go\n$ go mod download\n```\n\n## Run examples\n```bash\n# import pk into keyring if you use keyring\ninjectived keys unsafe-import-eth-key inj-user 5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e\n\n# run chain example\ngo run examples/chain/bank/1_MsgSend/example.go\n\n# run exchange example\ngo run examples/exchange/derivatives/4_Orderbook/example.go\n```\n\n---\n\n## Choose Exchange V1 or Exchange V2 queries\n\nThe SDK provides two different clients for interacting with the Injective Exchange:\n\n- `ChainClient`: Use this client if you need to interact with Exchange V1. This client maintains compatibility with the original exchange implementation and is suitable for existing applications that haven't migrated to V2 yet. Note that this client will not include any new endpoints added to the Exchange module - for access to new features, you should migrate to V2.\n\n- `ChainClientV2`: Use this client for all new applications or when you need to interact with Exchange V2 features. This client provides access to the latest exchange functionality and improvements, including all new endpoints added to the Exchange module.\n\nExample usage:\n```go\n// For Exchange V1\nclient := chainclient.NewChainClient(...)\n\n// For Exchange V2\nclientV2 := chainclient.NewChainClientV2(...)\n```\n\n### Markets Assistant\n\nThe SDK provides a Markets Assistant to help you interact with markets in both V1 and V2. Here's how to create instances for each version:\n\n```go\n// For Exchange V1 markets\nmarketsAssistant, err := chain.NewMarketsAssistant(ctx, client)  // ChainClient instance\nif err != nil {\n    // Handle error\n}\n\n// For Exchange V2 markets\nmarketsAssistantV2, err := chain.NewHumanReadableMarketsAssistant(ctx, clientV2)  // ChainClientV2 instance\nif err != nil {\n    // Handle error\n}\n```\n\nThe Markets Assistant provides helper methods to:\n- Fetch market information\n- Get market prices\n- Query orderbooks\n- Access market statistics\n\nMake sure to use the correct version of the Markets Assistant that matches your ChainClient version to ensure compatibility. The V1 assistant (`NewMarketsAssistant`) will only work with V1 markets, while the V2 assistant (`NewHumanReadableMarketsAssistant`) provides access to V2 markets and their features.\n\n### Format Differences\n\nThere are important format differences between V1 and V2 endpoints:\n\n- **Exchange V1**: All values (amounts, prices, margins, notionals) are returned in chain format (raw numbers)\n- **Exchange V2**: Most values are returned in human-readable format for better usability:\n  - Amounts, prices, margins, and notionals are in human-readable format\n  - Deposit-related information remains in chain format to maintain consistency with the Bank module\n\nThis format difference is one of the key improvements in V2, making it easier to work with market data without manual conversion.\n\n## Maintainers\n\nThe process for updating proto definitions, chain types, and generated data files (`injective_data/chain_messages_list.json`, `injective_data/ofac.json`) is documented in [MAINTAINERS.md](MAINTAINERS.md).\n\n---\n\n## Publishing Tagged Release\n\n```bash\n$ git add .\n$ git commit -m \"bugfix\"\n$ git tag -a v1.1.1\n$ git push origin master --tags\n```\n\n---\n\n## ⛑ Support\n\nReach out to us at one of the following places!\n\n- Website at \u003ca href=\"https://injective.com\" target=\"_blank\"\u003e`injective.com`\u003c/a\u003e\n- Twitter at \u003ca href=\"https://twitter.com/InjectiveLabs\" target=\"_blank\"\u003e`@InjectiveLabs`\u003c/a\u003e\n\n---\n\n## License\n\nCopyright © 2020 - 2026 Injective Labs Inc. (https://injectivelabs.org/)\n\n\u003ca href=\"https://drive.google.com/uc?export=view\u0026id=1-fPQRh_D_dnun2yTtSsPW5MypVBOVYJP\"\u003e\u003cimg src=\"https://drive.google.com/uc?export=view\u0026id=1-fPQRh_D_dnun2yTtSsPW5MypVBOVYJP\" style=\"width: 300px; max-width: 100%; height: auto\" /\u003e\n\nOriginally released by Injective Labs Inc. under: \u003cbr /\u003e\nApache License \u003cbr /\u003e\nVersion 2.0, January 2004 \u003cbr /\u003e\nhttp://www.apache.org/licenses/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finjectivelabs%2Fsdk-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finjectivelabs%2Fsdk-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finjectivelabs%2Fsdk-go/lists"}