> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lumenfall.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Purge request payloads

> Delete stored request and response body data and media for a specific request

Permanently deletes the stored request body, response body, and any associated media files for a specific request. The request metadata (cost, timing, model, status) is preserved - only the payload data is removed.

This operation is idempotent. Calling it on an already-purged request returns a success response with `already_purged` set to `true`.

<Info>
  This endpoint uses the native Lumenfall API path (`/v1/requests`), not the OpenAI-compatible prefix (`/openai/v1`).
</Info>

## Path parameters

<ParamField path="request_id" type="string" required>
  The ID of the request whose payloads should be purged (e.g., `req_2m4jLFHhkN1i4VrVHpjJqCOKlPw`).
</ParamField>

## Response

<ResponseField name="id" type="string">
  The request ID that was purged.
</ResponseField>

<ResponseField name="purged" type="boolean">
  Always `true` on a successful response.
</ResponseField>

<ResponseField name="already_purged" type="boolean">
  `true` if the request was already purged in a previous call. `false` if this call performed the purge.
</ResponseField>

<ResponseField name="media_deleted" type="integer">
  The number of media files deleted from storage. `0` if the request had no stored media or was already purged.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X DELETE "https://api.lumenfall.ai/v1/requests/req_2m4jLFHhkN1i4VrVHpjJqCOKlPw/payloads" \
    -H "Authorization: Bearer $LUMENFALL_API_KEY"
  ```

  ```python Python theme={null}
  import requests

  response = requests.delete(
      "https://api.lumenfall.ai/v1/requests/req_2m4jLFHhkN1i4VrVHpjJqCOKlPw/payloads",
      headers={"Authorization": "Bearer your-lumenfall-api-key"},
  )
  print(response.json())
  ```

  ```typescript TypeScript theme={null}
  const response = await fetch(
    "https://api.lumenfall.ai/v1/requests/req_2m4jLFHhkN1i4VrVHpjJqCOKlPw/payloads",
    {
      method: "DELETE",
      headers: { Authorization: "Bearer your-lumenfall-api-key" },
    }
  );
  const data = await response.json();
  console.log(data);
  ```

  ```go Go theme={null}
  req, _ := http.NewRequest(
      "DELETE",
      "https://api.lumenfall.ai/v1/requests/req_2m4jLFHhkN1i4VrVHpjJqCOKlPw/payloads",
      nil,
  )
  req.Header.Set("Authorization", "Bearer your-lumenfall-api-key")

  resp, _ := http.DefaultClient.Do(req)
  defer resp.Body.Close()
  body, _ := io.ReadAll(resp.Body)
  fmt.Println(string(body))
  ```

  ```csharp C# / .NET theme={null}
  using var client = new HttpClient();
  client.DefaultRequestHeaders.Add("Authorization", "Bearer your-lumenfall-api-key");

  var response = await client.DeleteAsync(
      "https://api.lumenfall.ai/v1/requests/req_2m4jLFHhkN1i4VrVHpjJqCOKlPw/payloads"
  );
  var json = await response.Content.ReadAsStringAsync();
  Console.WriteLine(json);
  ```

  ```java Java theme={null}
  HttpClient client = HttpClient.newHttpClient();
  HttpRequest request = HttpRequest.newBuilder()
      .uri(URI.create("https://api.lumenfall.ai/v1/requests/req_2m4jLFHhkN1i4VrVHpjJqCOKlPw/payloads"))
      .header("Authorization", "Bearer your-lumenfall-api-key")
      .DELETE()
      .build();

  HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
  System.out.println(response.body());
  ```

  ```ruby Ruby theme={null}
  require "net/http"
  require "json"

  uri = URI("https://api.lumenfall.ai/v1/requests/req_2m4jLFHhkN1i4VrVHpjJqCOKlPw/payloads")
  req = Net::HTTP::Delete.new(uri)
  req["Authorization"] = "Bearer your-lumenfall-api-key"

  response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
  puts JSON.parse(response.body)
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "id": "req_2m4jLFHhkN1i4VrVHpjJqCOKlPw",
    "purged": true,
    "already_purged": false,
    "media_deleted": 2
  }
  ```

  ```json Already purged theme={null}
  {
    "id": "req_2m4jLFHhkN1i4VrVHpjJqCOKlPw",
    "purged": true,
    "already_purged": true,
    "media_deleted": 0
  }
  ```
</ResponseExample>
