Bulk API Runner

Smart API Table Mapper

Build variable-based API requests, run them against tabular input, map JSON responses into clean result tables, and export the output.

GET / POST / PUT / PATCH / DELETE Bulk input mapping JSON response mapping Template library

1. Request Builder

Enter the endpoint and optionally use {{variableName}} where row values should be inserted.

Browser mode
Stored locally as your default proxy endpoint and reused across run modes.
Stored locally in this browser, masked by default, and excluded from templates or exported settings.

Local Agent / Proxy Status

Not tested yet. Start the Node, PHP, or Python proxy, paste its token, then test the connection.
Backend proxy adapters accept JSON fields: method, url, headers, body, timeoutMs. They add CORS headers for this UI and forward requests from your environment.
Use key=value lines, key: value lines, or a JSON object. Use {{variableName}} for bulk values.
Use either Key: Value lines or a JSON object. Add auth headers manually or use the Auth tab.

Body is usually not needed for this method

Use Params for GET-style filtering. The app sends request bodies only for POST, PUT, PATCH, and DELETE.
POST, PUT, and PATCH commonly use a body. Use {{variableName}} for row-specific values.

Smart variable detector

No variables detected yet.
Demo sample request / response
Load a demo sample to preview the request.
Load a demo sample to preview the response.

2. Bulk Input

Paste tabular columns from Excel, CSV/TSV with headers, or a JSON array.

0 rows

Needed input columns

Paste rows copied from Excel or Google Sheets into any cell.
Request field mapping

Map each detected request variable to one of the parsed input columns. Leave a field on Auto to match by name.

3. Run

Review readiness, test one row, then run the request set.

Run options

4. Smart Response Mapping

Run a test request or use demo mode, then auto-discover useful fields.

0 fields
Sample response / discovered paths
No sample response yet. Click “Test First Row” or use Demo mode.

5. Results

Mapped fields appear as table columns. Click a row to inspect raw response.

Idle
0 done 0 success 0 failed 0 ms avg
Run requests to see results here.

Template Library

Save and organize bulk run templates with request and response mappings.

CORS / Privacy Notes

Browser direct mode cannot bypass CORS. If an API blocks browser requests, use Local Agent / Proxy mode. API keys entered here stay in your browser until you run a request; in Local Agent mode they are sent only to the local agent on your computer and then forwarded to the target API.

Need backend/proxy support?

Backend proxy setup

Node local agent

cd backend-examples/node
node local-agent.js

Endpoint: http://127.0.0.1:8787/request. Copy the token printed in the terminal.

PHP / XAMPP proxy

Copy backend-examples/php/index.php and backend-examples/php/.htaccess to:
C:\xampp\htdocs\api-runner-backend\

Endpoint: http://localhost/api-runner-backend/request. Health: http://localhost/api-runner-backend/health. Use the token configured in index.php.

Python FastAPI proxy

cd backend-examples/python-fastapi-proxy
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
uvicorn main:app --host 127.0.0.1 --port 8787

Endpoint: http://127.0.0.1:8787/request. Set or copy the proxy token, paste it above, then click Test Agent.

API Bulk Runner & Smart Response Mapper

API Bulk Runner & Smart Response Mapper lets you build one API request and run it against many input rows. You can insert row values into the URL, query parameters, headers, authentication fields, or request body using variables.

The workflow is to paste bulk data, match columns to request variables, test a row, map JSON response paths into table columns, and export the results.

How to Use This App

  • Enter the API method, URL, query parameters, headers, auth settings, and request body
  • Add variables such as {{customerNumber}} where row-specific values should be inserted
  • Paste bulk input from Excel, CSV, TSV, or JSON and parse the rows
  • Match input columns to the detected request variables
  • Test the first row to confirm the request and response structure
  • Map JSON response paths into table columns
  • Run the bulk requests, review results, and export CSV or JSON

Examples and Use Cases

Example use cases:

  • Customer lookup: Paste a list of customer numbers, map each value to {{customerNumber}}, run the same API request for every row, and export columns such as name, status, segment, balance, and risk score.
  • Order status check: Upload rows with account ID, order ID, and tenant, insert those values into the request URL or body, and map response fields such as order status, total amount, shipment status, and estimated delivery date.
  • Support case update: Use a PATCH request with case ID, owner, priority, and region from a table, then review whether each update succeeded or failed in the results grid.
  • API testing before release: Test the first row, inspect the sample JSON response, auto-map useful paths, and then run the full set with retries, timeout settings, and progress tracking.
  • Reusable workflow: Save a request, input mapping, and response mapping as a template so the same bulk API task can be loaded again without rebuilding the setup.

Helpful Details

Request Mapping Tips

Use clear variable names that match your input columns, such as customerNumber, orderId, or caseId. Keeping names consistent makes auto-mapping easier and reduces setup errors when running many rows.

  • Use variables only where row-specific values are needed.
  • Test one row before running the full batch.
  • Map only the response fields you need in the final table.

Common Mistakes to Avoid

  • Missing headers: Make sure pasted CSV, TSV, or spreadsheet data has clear column names when using multiple variables.
  • Wrong JSON path: If a mapped column is blank, check the sample response and confirm the response path is correct.
  • Running too fast: Use delay, timeout, retry, and concurrency settings carefully to avoid API rate limits.

CORS and Privacy Notes

Browser direct mode works only when the target API allows browser requests through CORS. For blocked APIs, use a local proxy or backend agent. API keys and tokens should be handled carefully, especially when testing private or production endpoints.

Frequently Asked Questions

What does API Bulk Runner & Smart Response Mapper do?

It lets you build one API request, run it against many input rows, map JSON response fields into table columns, and export the results as CSV or JSON.

What input formats can I use for bulk requests?

You can paste values from Excel or Google Sheets, use CSV or TSV data with headers, or provide a JSON array for structured bulk input.

How do variables work in the request?

Variables such as {{customerNumber}} or {{orderId}} can be placed in the URL, query parameters, headers, auth fields, or request body. The app replaces each variable with the matching value from each input row.

Can I use this app with any API?

It can work with APIs that allow browser requests through CORS. If an API blocks browser requests, you may need to use the local agent or proxy mode if available.

What can I export after running requests?

You can export mapped results as CSV or JSON, and you can also keep raw response data when you need to inspect the full API output.

Is this useful for testing APIs?

Yes. You can test the first row, inspect the sample response, map useful JSON paths, set retries and timeouts, and then run a larger batch with progress tracking.