# Estimate a job's cost (/api-reference/costs/estimate-a-job-s-cost)

## Estimate a job's cost

`POST https://data.tryopengrid.com/v1/costs/estimate`

Full cost of a job per provider: compute + egress + storage, unknown components named.

### Parameters

- `OpenGrid-Version` (header, string): The API version to shape the response for. Default: the version pinned to your key.

### Request body (JSON)

- `preset` (string): A reference job (`GET /v1/costs/presets`).
- `gpu` (string): GPU id or alias.
- `count` (integer)
- `hours` (number)
- `egress_tb` (number): Give `egress_tb` or `egress_gb`, not both.
- `egress_gb` (number)
- `storage_tb` (number): Give `storage_tb` or `storage_gb`, not both.
- `storage_gb` (number)
- `storage_class` (string)
- `min_fabric_gbps` (number): Only providers whose interconnect is at least this fast.

### Response `data`

Field-level schema not published for this route yet; send a request to see one.

Every success is `{"data": ..., "meta": {as_of, api_version, request_id, next_cursor?}}`.

### Example

```bash
curl -X POST "https://data.tryopengrid.com/v1/costs/estimate" \
  -H "Authorization: Bearer $OPENGRID_API_KEY"
```