Separate API keys help you manage the applications collecting Google SERP, Google AI Mode, ChatGPT and Perplexity data. A scheduled report and a development script can have different submission permissions and credit caps while sharing one ProtoScrape account.
Open API keys & limits to create and manage keys. Every key can read the account's results and usage. Submission restrictions limit what a key can start; they do not create separate projects or isolate one application's data from another.
Choose access and submission engines
Use Read and submit for an application that collects new data. Select the engines it needs. A key limited to Google SERP cannot submit a ChatGPT job or a batch containing ChatGPT inputs. Restrictions are checked before new work is admitted and credits are reserved.
Use Read only for applications that retrieve existing jobs, results and usage. These keys can poll job status and export retained results, including through the POST status and export endpoints. They cannot submit or cancel jobs, or pause, resume or cancel batches.
Key management, account budget changes, billing, support messages and webhook configuration require a verified signed-in account. An application key cannot increase its own limits or rotate itself.
Limit credits per application
You can set a daily cap, a monthly cap, or both. Leave a cap blank for no limit. Caps use UTC calendar periods and apply alongside the account spending limits. They control scraping credits, not subscription renewal payments.
For each admission, ProtoScrape counts successful charges in the current period, that key's active reservations, and the proposed job's cost. For example, a key with a 10-credit daily cap, 4 charged credits and 5 reserved credits can admit one more 1-credit Google SERP job. It cannot admit a 4-credit Perplexity job yet.
Failed, cancelled and expired jobs release reserved credits and charge zero. Duplicate settlement cannot charge the same job twice. A successful job counts on its completion date; unfinished jobs still hold credits across a UTC day or month reset. Limits cannot be lowered below charges plus reservations already committed. To stop new admission immediately, change the key to read-only or revoke it.
The key card shows current day/month charges, active reservations and tracked lifetime charges. New job, batch and credit activity responses include api_key_id. Jobs admitted from the workspace and older jobs without recorded attribution return null. Historical activity cannot be reconstructed per key.
Expire and rotate secrets
Set an expiry for temporary integrations. The workspace accepts your local date and time and stores the corresponding UTC timestamp. At expiry, authentication stops. Up to ten active keys are allowed; expired keys are archived when you create another key. Key history remains available separately from the active list.
Rotate secret replaces the secret immediately, without changing the logical key ID, settings or tracked usage. There is no grace period: prepare the application's secret configuration before rotating, copy the replacement once, and update the application promptly. If the rotation response is interrupted, sign in and rotate again to obtain a new secret.
Store secrets in a server environment or secret manager, never in browser JavaScript, public repositories, query strings or logs. Use the Authorization: Bearer header. The workspace shows the full secret only after creation or rotation; later views show a prefix. Last-use timestamps are approximate and refresh at most every five minutes.
What happens to accepted batches?
A batch keeps the logical key that created it. Secret rotation does not break this association. Each pending input rechecks the key's current access, submission engines, expiry, revocation and caps before admission.
At a credit cap, the batch waits without reserving credits for pending inputs. Revoked or expired keys also prevent new admission. The batch exposes a waiting reason and keeps its original 24-hour admission deadline. Adjust an unrevoked key's settings or cancel work you no longer want; revocation cannot be undone.
Jobs already admitted can finish after a key changes or expires. Their normal credit settlement still applies. Cancelling unfinished jobs releases their holds, while a successful job already completed keeps its original charge.
See the API reference and batch collection guide for integration details. Engine availability and supported markets remain those returned by GET /v1/engines.