gplayapi-ts
Version:
Google Play API wrapper in TypeScript
94 lines (60 loc) • 2.56 kB
Markdown
# gplayapi-ts
A TypeScript library for interacting with the unofficial Google Play API.
## Installation
```bash
npm install gplayapi-ts
```
## Sample Usage
Here's a quick example of how to use the library:
### Creating a new client
```typescript
import { GooglePlayClient, Pixel3a } from "gplayapi-ts";
async function main() {
// Create a new client with your email, AAS token, and a device profile
const client = await GooglePlayClient.newClientWithDeviceInfo(
"youremail@gmail.com",
"your_aas_token",
Pixel3a
);
// You can now use the client to interact with Google Play
const app = await client.getAppDetails("com.discord");
console.log(app.displayName);
// It's recommended to save the session for future use
await client.saveSession("session.json");
}
main();
```
### Loading from a session
If you have a saved session, you can easily load it:
```typescript
import { GooglePlayClient } from "gplayapi-ts";
async function main() {
const client = await GooglePlayClient.loadSession("session.json");
// Use the client as usual
const app = await client.getAppDetails("com.discord");
console.log(app.displayName);
}
main();
```
## Documentation
The main entry point to the API is the `GooglePlayClient` class.
### `GooglePlayClient`
The client handles authentication, session management, and provides access to different API endpoints.
**Endpoints:**
* `client.apps`: For fetching app details, searching, etc.
* `client.auth`: For handling authentication, generating GSF IDs, etc.
* `client.purchase`: For purchase-related actions.
For more details on the available methods, please refer to the source code.
## Development
This project uses [semantic-release](https://semantic-release.gitbook.io/) for automated versioning and publishing. See [SEMANTIC_RELEASE.md](SEMANTIC_RELEASE.md) for details on how to contribute with proper commit messages.
### Available Scripts
- `bun run build` - Build the project
- `bun run test` - Run tests
- `bun run commit` - Interactive commit helper for conventional commits
- `bun run release:dry-run` - Test the release process
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Credits
This TypeScript implementation is based on the original Go library [gplayapi-go](https://github.com/Juby210/gplayapi-go) by Juby210.
## Disclaimer
This library is for educational and research purposes only. Please respect Google's Terms of Service and use responsibly.