Maxim Logo
How toEvaluate Workflows via API

Transform API data with Workflow scripts

Customize your API requests and responses using Workflow scripts

Maxim Workflows provide powerful scripting capabilities to modify requests and responses. These scripts help you transform data, add authentication, and handle complex response structures.

Scripts are optional - you'll only need them when you want to modify your API's behavior.

Pre-request Script

The prescript function runs before sending requests to your API. Use it to modify request parameters, add headers, or transform data.

function prescript(request) {
  // Add an authorization header
  request.headers['Authorization'] = 'Bearer your-token';
  
  // Modify the request body
  request.data = {
    ...JSON.parse(request.data || "{}"),
    timestamp: Date.now()
  };
  
  return request;
}

Post-response Script

The postscriptV2 function processes API responses before displaying them. Use it to transform response data or extract specific fields:

function postscriptV2(response, request) {
  // Extract only the 'message' field from response
  return {
    content: response.data.message,
    confidence: response.data.metadata?.confidence || 1.0
  };
}

Simulation Scripts

Simulation scripts only run for multi-turn conversations. They won't execute for single-turn tests.

Use these scripts to set up and clean up multi-turn conversation tests:

// Initialize conversation context
function preSimulation() {
  return {
    sessionId: generateUUID(),
    startTime: Date.now()
  };
}
 
// Clean up after simulation
function postSimulation() {
  return {
    status: 'completed',
    endTime: Date.now()
  };
}

On this page