Skip to main content
Gateway >= 2.9.0 Data Service >= 1.8.0
Imagine usecases where you want to redact PII, remove some requests and redact responses when making a bulk batch inference call to providers like OpenAI, Azure OpenAI, Bedrock, Vertex AI, etc. Portkey supports running guardrails on provider batch requests. You pass guardrails through a config, and Portkey applies them asynchronously — pre-processing inputs before sending to the provider, and post-processing outputs after the provider completes.

How It Works

1

Upload a batch input file

Upload a JSONL file in OpenAI chat completions format to Portkey.
Each line in the file should be a valid chat completions request. Download an example JSONL file.The response returns a Portkey file ID (pk_file_*):
2

Create a config with guardrails

Guardrails are the only supported way to pass guardrail checks to a provider batch request. Define them in a Portkey config here:
Save this config in the Portkey dashboard and note the config ID (e.g., pc-sync-g-1009a3).
3

Create a provider batch

Reference your uploaded file ID and config when creating the batch:
The response contains a Portkey batch ID (pk_batch_*) and the initial guardrail results in hook_results:
4

Poll for batch status

Poll the batch to track progress. Once input guardrails are applied, the input_file_id is replaced with a new processed file. Use include_provider_details=true to see full upstream details:
If your config includes output_guardrails, the batch enters an intermediate processing_post_request_guardrails state after the upstream provider finishes. Once complete, output_file_id reflects the final guardrail-processed output file.
5

Download the output file

Once the batch status is completed, retrieve the output using the Portkey-exclusive file content endpoint:

Batch Lifecycle with Guardrails

The input_file_id in the batch response is updated after input guardrails process the file — the new ID points to the transformed input sent to the upstream provider.

Portkey is now PRISMA AIRS AI Gateway. See it in action.

Contact Us
Last modified on August 3, 2026