Collecting an answer is only one step in a reporting workflow. You also need to find the observation again, keep its timestamp, move the result into your tools and understand what it cost.
ProtoScrape now provides filtered job history, downloads in three formats and a credit activity log. These features work across Google Search, Google AI Mode, ChatGPT and Perplexity. They use the same account and existing jobs; downloading a result does not run another collection or charge more credits.
Find the observations you need
In your workspace, open Job history & exports. Filter by engine and status, or choose a submission date range. Date filters use UTC; the table displays times in your device's time zone.
For example, an agency can select ChatGPT and “succeeded” to find completed observations for its current report. To investigate missing data, select “failed” and review the job references and zero charged-credit amounts instead.
Use Load more jobs to reach older records. Jobs created at the same instant have a stable secondary order by job ID. Status filters are a live view: a running job can move into the succeeded filter while you browse. Refresh after active work finishes when preparing a report.
Job records and results are retained for approximately seven days. Download the observations you need before they expire.
Choose a download format
Select up to ten jobs, choose a format, then click Download selected. Download more groups as needed. The API allows five export requests per minute per account, within the normal API request limit.
| Format | Best for | Contents |
|---|---|---|
| CSV | Spreadsheet review | One row per job, status, credit totals, answer text and nested citation/search-result fields |
| JSON | Applications and complete archives | A data array containing job records and structured result data |
| NDJSON | Processing one observation at a time | One complete JSON job record per line |
CSV includes citations_json and organic_json columns for nested data. Import those columns as JSON in your analysis tool if you need individual citations or search listings. CSV does not expand one job into a row for every citation.
Spreadsheet tools may limit the length of a cell. Use JSON or NDJSON when preserving long answers exactly matters. CSV prefixes formula-like text with an apostrophe so prompts or answers are not interpreted as spreadsheet formulas; JSON and NDJSON preserve the original text.
Pending, failed, cancelled and expired jobs can be exported too. Their records contain status and credit information, with no successful result data. A missing or unavailable job ID rejects the export rather than silently omitting it.
Download through the API
Call GET /v1/jobs/history with optional engine, status, from and to filters. The start timestamp is inclusive; the end is exclusive. A returned next_cursor can be passed as cursor with the same filters to retrieve another page.
curl 'https://api.protoscrape.com/v1/jobs/history?engine=chatgpt&status=succeeded&limit=25' \
-H "Authorization: Bearer $PROTOSCRAPE_API_KEY"
Copy the job IDs you want from the response, then submit them to POST /v1/jobs/export. Replace the example ID below with an actual job ID from your account.
curl https://api.protoscrape.com/v1/jobs/export \
-H "Authorization: Bearer $PROTOSCRAPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"ids":["REPLACE_WITH_YOUR_JOB_ID"],"format":"json"}' \
--output protoscrape-results.json
Keep the key on your server. A request cannot retrieve another account's jobs. Respect Retry-After on rate-limit or busy-capacity responses. The API documentation and OpenAPI contract describe the parameters and error responses.
Follow a credit from reservation to release or charge
The workspace's Plans & billing → Credit activity shows credits added, held, charged and released. GET /v1/usage/events exposes the same information for an integration.
Consider a Perplexity job with a four-credit success price:
- Submission reserves four credits, reducing the available balance by four.
- Success converts that reservation into a four-credit charge. The available balance does not fall again.
- If the job fails, is cancelled or expires instead, four credits return to the available balance and the job has no charge.
The export's charged_credits field lets you compare successful observations with their costs. The activity log provides the sequence of events behind those totals. It is a credit ledger, not a monetary invoice; use Manage subscription for payment invoices and renewal settings.
Keep collection metadata with your report
Retain the query, engine, job ID and observation time alongside an answer or search listing. AI answers can change, and citations are not guaranteed on every observation. The currently supported market is US, English, desktop; the engine availability endpoint gives the active configuration.
These exports help move existing results into your workflow. For a saved list of prompts, use batch collection. Use completion webhooks for automatic delivery to your server. Native recurring schedules remain planned. Begin with a small, well-defined set of questions and preserve the evidence behind each report.