{"id":19054425,"url":"https://github.com/datadog/cloudcraft-go","last_synced_at":"2025-09-08T15:45:57.226Z","repository":{"id":212332497,"uuid":"727764596","full_name":"DataDog/cloudcraft-go","owner":"DataDog","description":"Go client for the Cloudcraft developer API.","archived":false,"fork":false,"pushed_at":"2024-06-27T16:53:23.000Z","size":167,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"trunk","last_synced_at":"2025-04-24T03:15:16.407Z","etag":null,"topics":["api-client","cloudcraft","go","golang","sdk","sdk-go"],"latest_commit_sha":null,"homepage":"http://www.cloudcraft.co","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/DataDog.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE-3rdparty.csv","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-12-05T14:27:32.000Z","updated_at":"2024-10-16T09:26:16.000Z","dependencies_parsed_at":"2024-03-25T18:32:14.374Z","dependency_job_id":"d4b3a4d5-a462-4788-9b79-a501e275cba5","html_url":"https://github.com/DataDog/cloudcraft-go","commit_stats":null,"previous_names":["datadog/cloudcraft-go"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/DataDog/cloudcraft-go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataDog%2Fcloudcraft-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataDog%2Fcloudcraft-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataDog%2Fcloudcraft-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataDog%2Fcloudcraft-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DataDog","download_url":"https://codeload.github.com/DataDog/cloudcraft-go/tar.gz/refs/heads/trunk","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataDog%2Fcloudcraft-go/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274209410,"owners_count":25241783,"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-09-08T02:00:09.813Z","response_time":121,"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":["api-client","cloudcraft","go","golang","sdk","sdk-go"],"created_at":"2024-11-08T23:38:20.614Z","updated_at":"2025-09-08T15:45:57.189Z","avatar_url":"https://github.com/DataDog.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cloudcraft-go\n\n[![Go Documentation](http://img.shields.io/badge/godoc-reference-blue.svg?style=flat)](https://pkg.go.dev/github.com/DataDog/cloudcraft-go)\n[![Go Report Card](https://goreportcard.com/badge/github.com/DataDog/cloudcraft-go)](https://goreportcard.com/report/github.com/DataDog/cloudcraft-go)\n\n![Cloudcraft diagram](https://static.cloudcraft.co/sdk/cloudcraft-sdk-example-1.svg)\n\nVisualize your cloud architecture with Cloudcraft by Datadog, [the best way to create smart AWS and Azure diagrams](https://www.cloudcraft.co/).\n\nCloudcraft supports both manual and programmatic diagramming, as well as automatic reverse engineering of existing cloud environments into beautiful system architecture diagrams.\n\nThis `cloudcraft-go` package provides an easy-to-use native Go SDK for interacting with [the Cloudcraft API](https://docs.datadoghq.com/cloudcraft/api/).\n\nUse case examples:\n- Snapshot and visually compare your live AWS or Azure environment before and after a deployment, in your app or as part of your automated CI pipeline\n- Download an inventory of all your cloud resources from a linked account as JSON\n- Write a converter from a third party data format to Cloudcraft diagrams\n- Backup, export \u0026 import your Cloudcraft data\n- Programmatically create Cloudcraft diagrams\n\nThis SDK requires a [Cloudcraft API key](https://docs.datadoghq.com/cloudcraft/api/#authentication) to use. [A free trial of Cloudcraft Pro](https://www.cloudcraft.co/pricing) with API access is available.\n\n## Installation\n\nTo install `cloudcraft-go`, run:\n\n```console\ngo get github.com/DataDog/cloudcraft-go\n```\n\n## Documentation\n\nPlease [see the Go reference documentation](https://pkg.go.dev/github.com/DataDog/cloudcraft-go).\n\n## Usage\n\nIn the below example the Cloudcraft API key is read from the `CLOUDCRAFT_API_KEY` environment variable. Alternatively, pass in the key to the `Config` struct directly.\n\n```go\npackage main\n\nimport (\n\t\"context\"\n\t\"log\"\n\t\"os\"\n\n\t\"github.com/DataDog/cloudcraft-go\"\n)\n\nfunc main() {\n\tkey, ok := os.LookupEnv(\"CLOUDCRAFT_API_KEY\")\n\tif !ok {\n\t\tlog.Fatal(\"missing env var: CLOUDCRAFT_API_KEY\")\n\t}\n\n\t// Create new Config to be initialize a Client.\n\tcfg := cloudcraft.NewConfig(key)\n\n\t// Create a new Client instance with the given Config.\n\tclient, err := cloudcraft.NewClient(cfg)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\t// List all blueprints in an account.\n\tblueprints, _, err := client.Blueprint.List(context.Background())\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\t// Print the name of each blueprint.\n\tfor _, blueprint := range blueprints {\n\t\tlog.Println(blueprint.Name)\n\t}\n}\n```\n\nMore examples can be found in the [examples](examples/) directory.\n\n## Contributing\n\nAnyone can help make `cloudcraft-go` better. Check out [the contribution guidelines](CONTRIBUTING.md) for more information.\n\n---\n\nReleased under the [Apache-2.0 License](LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatadog%2Fcloudcraft-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatadog%2Fcloudcraft-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatadog%2Fcloudcraft-go/lists"}