{"id":18932585,"url":"https://github.com/aerilym/spotify","last_synced_at":"2026-05-19T19:05:51.802Z","repository":{"id":92605156,"uuid":"560306123","full_name":"Aerilym/spotify","owner":"Aerilym","description":"A Universal Spotify API wrapper. (WIP)","archived":false,"fork":false,"pushed_at":"2022-11-03T11:53:52.000Z","size":361,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-25T04:36:20.366Z","etag":null,"topics":["api-wrapper","nodejs","spotify-api","typescript","universal-javascript"],"latest_commit_sha":null,"homepage":"https://aerilym.github.io/spotify/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Aerilym.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-11-01T07:26:19.000Z","updated_at":"2022-11-03T07:23:59.000Z","dependencies_parsed_at":"2023-04-22T04:34:44.271Z","dependency_job_id":null,"html_url":"https://github.com/Aerilym/spotify","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Aerilym/spotify","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aerilym%2Fspotify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aerilym%2Fspotify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aerilym%2Fspotify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aerilym%2Fspotify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Aerilym","download_url":"https://codeload.github.com/Aerilym/spotify/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aerilym%2Fspotify/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262357553,"owners_count":23298463,"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":["api-wrapper","nodejs","spotify-api","typescript","universal-javascript"],"created_at":"2024-11-08T11:49:46.947Z","updated_at":"2026-05-19T19:05:51.766Z","avatar_url":"https://github.com/Aerilym.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Spotify API Wrapper\n\n[![CI Workflow](https://github.com/Aerilym/spotify/actions/workflows/ci-workflow.yml/badge.svg)](https://github.com/Aerilym/spotify/actions/workflows/ci-workflow.yml)\n![GitHub package.json version](https://img.shields.io/github/package-json/v/aerilym/spotify)\n![Coverage](.github/badges/coverage.svg)\n![GitHub](https://img.shields.io/github/license/aerilym/spotify)\n![Website](https://img.shields.io/website?label=Documentation\u0026up_message=up\u0026url=https%3A%2F%2Faerilym.github.io%2Fspotify%2F)\n\nThis is a wrapper for the Spotify API. It is written in TypeScript and is designed to be used with any JavaScript framework. There are examples for using it with different frameworks in the `examples` folder and in the [documentation](docs/v1/).\n\n## Usage\n\nImport the API class and initialize it.\n\n```typescript\nimport { SpotifyAPI } from 'spotify-api-wrapper';\n\nconst spotify = new SpotifyAPI();\n```\n\nInitialize the API with a client ID and client secret. See the [Spotify Authorization Guide](https://developer.spotify.com/documentation/general/guides/authorization/) for more information about which auth method to use.\n\n```typescript\nimport { SpotifyAPI } from 'spotify-api-wrapper';\n\nconst spotify = new SpotifyAPI({\n  clientID: 'CLIENT_ID',\n  clientSecret: 'CLIENT_SECRET',\n});\n```\n\nYou can also initialize the API with an access token. This is useful if you already have an access token and don't want to make a request to get a new one. But this is not recommended as the access token will expire and there is a better way.\n\n```typescript\nimport { SpotifyAPI } from 'spotify-api-wrapper';\n\nconst spotify = new SpotifyAPI({\n  accessToken: 'ACCESS_TOKEN',\n});\n```\n\nIf you want to use the API with a user's access token, you can initialize the API with nothing and set the access token whenever you receive one\n\n```typescript\nimport { SpotifyAPI } from 'spotify-api-wrapper';\n\nconst spotify = new SpotifyAPI();\n\nspotify.setAccessToken('ACCESS_TOKEN');\n```\n\nYou can add and clear an access token with each call if you wish. This is useful if you are using the API with a user's access token and you want to make a request with a different user's access token or if you're getting the access token from a different source.\n\n```typescript\nspotify.setAccessToken('ACCESS_TOKEN');\n\nspotify.getAlbum('ALBUM_ID');\n\nspotify.clearAccessToken();\n```\n\n## Examples\n\nThere are examples for using the API with different frameworks in the `examples` folder and in the [documentation](docs/v1/).\n\nIf there's a framework or use case you want to see an example for, please open an issue or contribute an example yourself with a pull request.\n\n## Issues\n\nIf you encounter any issues or have any suggestions, please open an issue on the [GitHub repository](TBD). If you're confident, free to try resolve your issue or any other issues by opening a pull request and contributing to the project.\n\n## Testing\n\n![Coverage](.github/badges/coverage.svg)\n\n![Coverage lines](.github/badges/badge-lines.svg)\n![Coverage functions](.github/badges/badge-functions.svg)\n![Coverage branches](.github/badges/badge-branches.svg)\n![Coverage statements](.github/badges/badge-statements.svg)\n\n## Contributing\n\nEverything is written in TypeScript and compiled into JavaScript. The compiled JavaScript is not included in the repository. To compile the TypeScript into JavaScript, run the `build` command. The workspace has several recommended extensions and is set up to use [ESLint](https://eslint.org/) and [Prettier](https://prettier.io/) for linting and formatting. The workspace is also set up to use [Jest](https://jestjs.io/) for testing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faerilym%2Fspotify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faerilym%2Fspotify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faerilym%2Fspotify/lists"}