Is FastApply - Free AI Automated Job Application Copilot safe?

Medium risk

FastApply sends page error telemetry from most pages where its content script runs to its API.

FastApply installs a content script across a broad set of pages and listens for page errors and unhandled promise rejections. When one occurs, it sends the error message and the current page URL, with query strings removed, to FastApply's telemetry endpoint.

zionekekentav9.1Chrome Web Store
45Risk
Who publishes it

zionekekenta - no other listings under this identity, 10 shared hostnames

What this publisher told the store about itself, and the other listings that told it the same thing.

Publisher
zionekekenta

Shared hosts - 10 hostnames

Hostnames hardcoded in this extension that few other listings call. That can mean one operator behind both, and it can equally mean a small shared vendor, so it is context rather than a conclusion. Hosts that many listings call are left out: they are services, not connections.

bayt.com
Also called by 2 other listings, including ResumeGPT : AI Job Autofill & Best Resume
glassdoor.com.ar
Also called by 2 other listings, including RoboApply
glassdoor.at
Also called by 3 other listings, including RoboApply
glassdoor.com.mx
Also called by 3 other listings, including RoboApply
app.breezy.hr
Also called by 5 other listings, including Magical, Profile Enhancer Pro
glassdoor.co.nz
Also called by 5 other listings, including RoboApply
glassdoor.ie
Also called by 5 other listings
recruit.zoho.com
Also called by 5 other listings, including Magical, Zoho Recruit's Resume Extractor
glassdoor.com.br
Also called by 6 other listings
glassdoor.sg
Also called by 6 other listings

AI-generated. Findings may contain errors. Those marked Verified have been manually reviewed.

Publishers can request a review.

Findings

FastApply sends the page URL where a script error fires to its telemetry API

FastApply's content script runs on almost every site you visit.

When a page throws a JavaScript error or a rejected promise, we observed the page's URL sent to FastApply's own telemetry server along with the error text.

Severity
Medium unwanted
Type
Unexpected
CWE
CWE-359
Source
Dynamic sandbox
What actually happens
You did this

You browse a site outside FastApply's five excluded webmail domains and something on the page throws a JavaScript error.

The extension did this

FastApply's content script sends the page's URL and the error text to FastApply's own telemetry server.

The background service worker strips the URL's query string first, but keeps the site's host and full path.

Captured request
POSThttps://api.fastapply.co/api/v1/telemetry/events

HTTP 201 from api.fastapply.co. Captured during dynamic analysis on a live job-board page after a genuine, unforced script error, not a planted test error. A second independent run captured the same behavior on https://fastapply.co/for/auto-fill.

Body
{  "events": [    {      "platform": "unknown",      "action": "crash",      "success": false,      "errorType": "uncaught_error",      "errorMessage": "Uncaught SyntaxError: Identifier ... has already been declared",      "pageUrl": "https://jobs.lever.co/aledade",      "extensionVersion": "9.1"    }  ]}
What FastApply logs every time a script error fires on a page you're viewing
  • Page URL (host + path)
    https://jobs.lever.co/aledade

    The address of the page open when the error fired, sent even when that page has nothing to do with a job application.

  • Error message text
    Uncaught SyntaxError: Identifier ... has already been declared

    The JavaScript error text is stored alongside the page URL.

  • Error type
    uncaught_error

    Marks whether the error was an uncaught exception or a rejected promise.

  • Extension version
    9.1

    Lets FastApply correlate the error report with a specific release.

When this fires

When a batch threshold is hit · flushes at 10 queued events

Queued error events are held locally and uploaded together once 10 events accumulate or 30 seconds pass, whichever comes first.

Where page URLs go when a script error fires
    • api.fastapply.co

    FastApply's own backend telemetry endpoint. Receives the page URL and error text from any site where the content script runs and an error fires.

Reproduce it yourself

Forces a JS error on the current tab so you can watch the resulting POST to FastApply's telemetry endpoint in DevTools.

Requires
  • Chrome with FastApply installed and enabled
  • DevTools open on the target tab
trigger-fastapply-telemetry.js · js
// Run in the DevTools console of any normal HTTPS tab (not one of the// five excluded webmail domains) while FastApply is installed and enabled.setTimeout(() => {  throw new Error("fastapply-verify-test");}, 0);// Then open DevTools > Network on this tab, filter for "telemetry", and// wait up to 30 seconds (or trigger 9 more errors to force an immediate// flush). Look for a POST to// https://api.fastapply.co/api/v1/telemetry/events whose body includes an// event with pageUrl set to this tab's current URL, query string stripped.
How to run it
  1. 1Open DevTools on a non-webmail HTTPS page with FastApply active.
  2. 2Paste the script into Console.
  3. 3Open the Network tab, filter for 'telemetry'.
  4. 4Wait up to 30s and confirm the POST body's pageUrl matches this page.

Where it sends data

Destinations our analysis observed FastApply - Free AI Automated Job Application Copilot contacting. Sending data somewhere is not a finding on its own - an extension that syncs your settings has to talk to its own server - but it is where your data can go, and who else it goes to.

  • api.fastapply.co

    FastApply - Free AI Automated Job Application Copilot sends data to api.fastapply.co. No other extension we have analysed sends data here.

Updated 30 September 2026aokdahpjojkcjlnlbjlecolfcnhjndnd