2025-08-24 10:26:02 +05:00
2025-08-23 23:49:15 +05:00
2025-08-23 23:49:42 +05:00
2025-08-23 21:14:56 +05:00
2025-08-24 10:26:32 +05:00
2025-03-26 13:19:45 +05:00
2025-08-24 10:30:22 +05:00
2025-08-24 10:30:22 +05:00
2025-08-25 22:59:34 +05:00

Crextractor

Utility for extracting credentials from the Crunchyroll Android app (both TV and mobile versions).

The credentials are automatically updated once a week (if there are any changes).

Prerequisites

Usage

Fetching already extracted credentials

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

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

npm i crextractor
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 <encoded>`, can be used to access some Crunchyroll APIs

// Do something with the extracted credentials

License

MIT

Languages
JavaScript 100%