#!/bin/bash

# Define package name and versionCode (use 0 if you don't care about comparing)
PACKAGE_NAME="com.hulu.plus"
VERSION_CODE=0

# Create JSON header string
HEADER='{"device_info":{"abis":["armeabi-v7a","armeabi"],"android_id":"9deda93075c83ab1","os_ver":"29","os_ver_name":"10","platform":1,"screen_height":1080,"screen_width":1920}}'

# Create request body
REQUEST_BODY=$(cat <<EOF
{
  "app_info_for_update": [
    {	
      "package_name": "$PACKAGE_NAME",
      "version_code": $VERSION_CODE,
      "is_system": false,
      "version_id": "",
      "cached_size": -1
    }
  ],
  "android_id": "ece3de5d0cf1247a",
  "application_id": "com.apkpure.aegon",
  "cached_size": -1
}
EOF
)

# Make API call
RESPONSE=$(curl -s -X POST "https://tapi.pureapk.com/v3/get_app_update" \
  -H "Content-Type: application/json" \
  -H "ual-access-businessid: projecta" \
  -H "ual-access-projecta: $HEADER" \
  -d "$REQUEST_BODY")

# Extract raw URL from the "type":"APK" section
RAW_URL=$(echo "$RESPONSE" | grep -oP '"type":"APK","url":"\Khttps[^"]+')

# Decode \u0026 to &
APK_URL=$(echo "$RAW_URL" | sed 's/\\u0026/\&/g')

VERSION_NAME=$(echo "$RESPONSE" | grep -oP '"version_name"\s*:\s*"\K[^"]+')

# Display result
echo "📦 Package: $PACKAGE_NAME"
echo "🆕 Version: $VERSION_NAME"
echo "⬇️  Download: $APK_URL"
echo
