{"id":15146030,"url":"https://github.com/zackradisic/soundcloud-api","last_synced_at":"2025-10-16T17:18:23.851Z","repository":{"id":55037640,"uuid":"313095568","full_name":"zackradisic/soundcloud-api","owner":"zackradisic","description":"A SoundCloud API v2 wrapper for Go","archived":false,"fork":false,"pushed_at":"2023-04-18T17:46:54.000Z","size":92,"stargazers_count":28,"open_issues_count":1,"forks_count":7,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-06T21:10:00.613Z","etag":null,"topics":["souncloud-api-go","soundcloud","soundcloud-api"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zackradisic.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}},"created_at":"2020-11-15T18:23:43.000Z","updated_at":"2025-01-29T05:39:05.000Z","dependencies_parsed_at":"2024-06-18T18:38:36.941Z","dependency_job_id":"0a17a12f-f2b9-41d9-aca8-94e8e5a20ecb","html_url":"https://github.com/zackradisic/soundcloud-api","commit_stats":null,"previous_names":["zackradisic/go-soundcloud-api"],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/zackradisic/soundcloud-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zackradisic%2Fsoundcloud-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zackradisic%2Fsoundcloud-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zackradisic%2Fsoundcloud-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zackradisic%2Fsoundcloud-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zackradisic","download_url":"https://codeload.github.com/zackradisic/soundcloud-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zackradisic%2Fsoundcloud-api/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262893640,"owners_count":23380710,"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":["souncloud-api-go","soundcloud","soundcloud-api"],"created_at":"2024-09-26T12:00:38.541Z","updated_at":"2025-10-16T17:18:18.791Z","avatar_url":"https://github.com/zackradisic.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"![soundcloud-api](https://socialify.git.ci/zackradisic/soundcloud-api/image?description=1\u0026language=1\u0026owner=1\u0026pattern=Plus\u0026stargazers=1\u0026theme=Dark)\n\n[![GoDoc](https://img.shields.io/badge/go.dev-reference-007d9c?logo=go)](https://pkg.go.dev/github.com/zackradisic/soundcloud-api)\n\n### SoundCloud's v2 API reverse engineered for Go.\n\n\n# Notice\nThe SoundCloud api-v2 is an [undocumented, internal](https://stackoverflow.com/questions/29253633/soundcloud-is-api-v2-allowed-to-be-used-and-is-there-documentation-on-it) API used by the web app at https://soundcloud.com. \n\nSoundCloud is currently [not](https://docs.google.com/forms/d/e/1FAIpQLSfNxc82RJuzC0DnISat7n4H-G7IsPQIdaMpe202iiHZEoso9w/closedform) allowing developers to register for applications, and using undocumented APIs is apparently breaking SoundCloud's [ToS](https://twitter.com/SoundCloudDev/status/639017606264016896), use this at your own risk.\n\n# Quick Start\n\n```go\n// You can specify certain options here if you want\nsc, err := soundcloudapi.New(soundcloudapi.APIOptions{}) \n\nif err != nil {\n    log.Fatal(err.Error())\n}\n\ntrack, err := sc.GetTrackInfo(soundcloudapi.GetTrackInfoOptions{\n    URL: \"https://soundcloud.com/track/infsdfo\",\n})\n```\n\nSee the [docs](https://pkg.go.dev/github.com/zackradisic/soundcloud-api) for more reference.\n\n# Error Handling\nIf an error is returned from SoundCloud's API, it will take the form of the FailedRequestError struct. You can use type\nassertions to access the status code or JSON error msg for your use case. Ex:\n\n```go\ntracks, err := sc.GetTrackInfo(soundcloudapi.GetTrackInfoOptions{\n    URL: \"https://soundcloud.com/asdkfjhalsdhfl\",\n})\n\nif failedRequest, ok := err.(*soundcloudapi.FailedRequestError); ok {\n    if failedRequest.Status == 404 {\n        fmt.Println(\"Could not find that track\")\n    }\n    return\n}\n```\n\n# Paginated Queries\nFunctions like [`sc.Search()`](https://pkg.go.dev/github.com/zackradisic/soundcloud-api@v0.1.0#API.Search) or [`sc.GetLikes()`](https://pkg.go.dev/github.com/zackradisic/soundcloud-api@v0.1.0#API.GetLikes) return a [PaginatedQuery](https://pkg.go.dev/github.com/zackradisic/soundcloud-api@v0.1.0#PaginatedQuery). PaginatedQuery.Collection contains the JSON of the items that matched the query,\nrepresented as a `map[string]interface{}`. You can use the provided functions to get the items in the form you want:\n\n```go\npaginatedQuery, _ := sc.Search(soundcloudapi.SearchOptions{\n    Query: \"childish gambino\"\n})\n\ntracks, _ := paginatedQuery.GetTracks() // Get the tracks of the response\nplaylists, _ := paginatedQuery.GetPlaylists() // Get the playlists of the response\nlikes, _ := paginatedQuery.GetLikes() // Get the likes of the response\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzackradisic%2Fsoundcloud-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzackradisic%2Fsoundcloud-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzackradisic%2Fsoundcloud-api/lists"}