---
title: "Process Estimate"
method: POST
path: "/api/process/estimate"
---

# Process Estimate

`POST /api/process/estimate`

## Request

- Base URL: `https://api.openshorts.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.openshorts.app/api/process/estimate`
- Auth: none declared

Cost line for the dashboard: what this source would cost before it runs.

Probes a URL's duration the same way /api/process does (and caches it so
the submit does not probe twice), or takes the duration of a local file the
browser already read. Never on the per-GB proxy: a link only that proxy
can read gets no estimate (``outcome`` None) and is probed again on submit
with every route. Reserves nothing.

## Request body

- EstimateRequest
  - `url` string, nullable
  - `seconds` number, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-24** `608303963a3c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/openshorts/apis/openshorts-api/changes/api/process/estimate/post.md)

---

[API](https://skmtc.dev/openshorts/apis/openshorts-api.md) - [All operations](https://skmtc.dev/openshorts/apis/openshorts-api/llms.txt) - [OpenAPI document](https://skmtc.dev/openshorts/apis/openshorts-api/revisions/62b7629b5e88?raw)
