# Offenevergaben — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search and explore Austrian public procurement contracts, including details about contracting authorities, suppliers, and product categories. Track government spending by accessing comprehensive information about individual contracts, the organizations that issue them, and the vendors that supply them.

**Category:** Government & Public Data | **Website:** [offenevergaben.at/](https://offenevergaben.at/) | **Docs:** [parse.bot/marketplace/a796d0e9-aae5-4c71-89c3-19d054d68a7f/offenevergaben-at-api](https://parse.bot/marketplace/a796d0e9-aae5-4c71-89c3-19d054d68a7f/offenevergaben-at-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-offenevergaben-at-api-a796d0e9/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_contract_detail

Fetch full details of a specific contract. Uses structured XML source when available, otherwise falls back to HTML parsing. Core fields (id, bezeichnung, auftraggeber, lieferant, art_des_auftrags) are consistently present; additional fields vary by contract type and data source.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `id` | string | Yes | Contract ID from list_contracts results (e.g. 280981). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-offenevergaben-at-api-a796d0e9/get_contract_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"id":"<string>"}'
```

### get_contracting_authority_detail

Fetch profile and recent contracts of a contracting authority. Returns authority metadata including total volume, average bidders, and a list of their awarded contracts.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `id` | string | Yes | Authority ID from list_contracting_authorities results (e.g. 8476). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-offenevergaben-at-api-a796d0e9/get_contracting_authority_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"id":"<string>"}'
```

### get_supplier_detail

Fetch profile and awarded contracts of a supplier. Returns supplier metadata including total volume, contract count, and a list of contracts they were awarded.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `id` | string | Yes | Supplier ID from list_suppliers results (e.g. 8478). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-offenevergaben-at-api-a796d0e9/get_supplier_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"id":"<string>"}'
```

### list_categories

Fetch the list of CPV (Common Procurement Vocabulary) industry categories with their contract counts and volumes. Returns all categories in a single response without pagination.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-offenevergaben-at-api-a796d0e9/list_categories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### list_contracting_authorities

Fetch a paginated list of contracting authorities sorted by total contract volume descending. Returns 20 authorities per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-offenevergaben-at-api-a796d0e9/list_contracting_authorities \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>"}'
```

### list_contracts

Fetch a paginated list of public contracts with optional filters. Returns 20 contracts per page sorted by last modification date descending. Supports filtering by keyword search, notice type, date range, contract type, volume range, bidder count, CPV code, and NUTS region.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `contract_types` | string | No | Contract types comma-separated (Bauauftrag, Dienstleistungsauftrag, Lieferauftrag). |
| `cpv` | string | No | CPV category code from list_categories (e.g. 45000000). |
| `date_from` | string | No | Start date in YYYY-MM-DD format. |
| `date_to` | string | No | End date in YYYY-MM-DD format. |
| `date_type` | string | No | Date field to filter by (e.g. date_lastmod). |
| `nuts` | string | No | Region NUTS codes comma-separated (e.g. AT130,AT342). |
| `page` | integer | No | Page number. |
| `search` | string | No | Keyword search for title, authority, or supplier. |
| `tenders_from` | integer | No | Minimum number of bidders. |
| `tenders_to` | integer | No | Maximum number of bidders. |
| `types` | string | No | Notice types comma-separated (Ausschreibung, Auftrag). |
| `volume_from` | number | No | Minimum contract volume. |
| `volume_to` | number | No | Maximum contract volume. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-offenevergaben-at-api-a796d0e9/list_contracts \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"contract_types":"<string>","cpv":"<string>","date_from":"<string>","date_to":"<string>","date_type":"<string>","nuts":"<string>","page":"<integer>","search":"<string>","tenders_from":"<integer>","tenders_to":"<integer>","types":"<string>","volume_from":"<number>","volume_to":"<number>"}'
```

### list_suppliers

Fetch a paginated list of suppliers sorted by total contract volume descending. Returns 20 suppliers per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-offenevergaben-at-api-a796d0e9/list_suppliers \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>"}'
```
