# Crextractor Utility for extracting credentials from the Crunchyroll Android app ## Prerequisites - [Node.js](https://nodejs.org/en) - [jadx](https://github.com/skylot/jadx) ## Usage ### Fetching already extracted credentials ```js async function main() { const url = 'https://raw.githubusercontent.com/vitalygashkov/crextractor/refs/heads/main/credentials.tv.json'; const credentials = await fetch(url).then((response) => response.json()); // You can use the extracted credentials to obtain access tokens for Crunchyroll APIs const response = await fetch('https://beta-api.crunchyroll.com/auth/v1/token', { headers: { Authorization: credentials.authorization, 'User-Agent': 'Crunchyroll/ANDROIDTV/3.42.1_22267 (Android 16; en-US; sdk_gphone64_x86_64)', // ... }, method: 'POST', body: JSON.stringify({ // ... }), }); } ``` ### Command-line interface ```bash npx crextractor --target mobile --output ./credentials.mobile.json ``` > Results will be printed to the console and saved to `credentials.mobile.json` file. By default, the target is TV, but you can change it with `--target mobile` option. ### Library ```bash npm i crextractor ``` ```js import { extract } from 'crextractor'; const { id, secret, encoded, authorization } = await extract(); // id - Crunchyroll app ID // secret - Crunchyroll app secret // encoded - Base64 encoded `id:secret` string // authorization - ready HTTP header in the format `Basic `, can be used to access some Crunchyroll APIs // Do something with the extracted credentials ``` ## License MIT