# /prozorro/tenders

`POST /api/prozorro/tenders`

Price: 20 credits

Get one Prozorro tender by its number, uuid or page URL as the full procurement record: title, description, status and stage, the buyer with EDRPOU, address and contact, estimated value, every period, line items with CPV codes and delivery addresses, lots, bids with tenderers and prices, pre-qualification decisions, awards with suppliers, contracts, cancellations with their reason, the legal ground of a no-competition procedure, funders, documents, questions and answers, complaints with objections, payment milestones, qualification criteria and the procedure's configuration flags.

## How to use it

Pass the tender number from a search result, for example UA-2026-04-03-010959-a, or the tender page URL; the uuid from a record's id also resolves. Plan numbers (UA-P-...) and contract numbers (UA-...-a1) belong to other record types and return 412.

## Parameters

- `access-token` (string, required)

## Request body

- `timeout` (integer) — Max scrapping execution timeout (in seconds) (default: 300; min: 20; max: 1500)
- `tender` (string, required) — Tender number, tender uuid or tender page URL (examples: "UA-2026-04-03-010959-a", "1fe0aaa832024d4e90fae2a2a69fa050", "https://prozorro.gov.ua/tender/UA-2026-04-03-010959-a"; minLength: 1)

## Response

### 200 — Successful Response

- `@type` (string) (default: "ProzorroTender")
- `id` (string, required)
- `tender_id` (string, required)
- `title_en` (string, nullable)
- `description` (string, nullable)
- `description_en` (string, nullable)
- `status` (string, nullable)
- `stage` (string, required)
- `procurement_method` (string, nullable)
- `procurement_method_type` (string, nullable)
- `procurement_method_rationale` (string, nullable)
- `main_procurement_category` (string, nullable)
- `award_criteria` (string, nullable)
- `submission_method` (string, nullable)
- `submission_method_details` (string, nullable)
- `owner` (string, nullable)
- `is_masked` (boolean, nullable)
- `cause_details` (object, nullable)
  - `@type` (string) (default: "ProzorroCauseDetails")
  - `code` (string, nullable)
  - `scheme` (string, nullable)
  - `title_en` (string, nullable)
  - `description` (string, nullable)
  - `description_en` (string, nullable)
  - `url` (string, nullable)
- `funding_kind` (string, nullable)
- `nbu_discount_rate` (number, nullable)
- `max_awards_count` (integer, nullable)
- `agreement_duration` (string, nullable)
- `buyer` (object, nullable)
  - `@type` (string) (default: "ProzorroOrganization")
  - `name` (string, nullable)
  - `name_en` (string, nullable)
  - `identifier` (object, nullable)
    - `@type` (string) (default: "ProzorroIdentifier")
    - `scheme` (string, nullable)
    - `id` (string, nullable)
    - `legal_name` (string, nullable)
    - `legal_name_en` (string, nullable)
    - `url` (string, nullable)
  - `address` (object, nullable)
    - `@type` (string) (default: "ProzorroAddress")
    - `street` (string, nullable)
    - `locality` (string, nullable)
    - `region` (string, nullable)
    - `postal_code` (string, nullable)
    - `country_name` (string, nullable)
  - `contact` (object, nullable)
    - `@type` (string) (default: "ProzorroContact")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `email` (string, nullable)
    - `telephone` (string, nullable)
    - `fax` (string, nullable)
    - `url` (string, nullable)
    - `available_language` (string, nullable)
  - `additional_contacts` (array) (default: [])
    - `@type` (string) (default: "ProzorroContact")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `email` (string, nullable)
    - `telephone` (string, nullable)
    - `fax` (string, nullable)
    - `url` (string, nullable)
    - `available_language` (string, nullable)
  - `kind` (string, nullable)
  - `scale` (string, nullable)
- `funders` (array) (default: [])
  - `@type` (string) (default: "ProzorroOrganization")
  - `name` (string, nullable)
  - `name_en` (string, nullable)
  - `identifier` (object, nullable)
    - `@type` (string) (default: "ProzorroIdentifier")
    - `scheme` (string, nullable)
    - `id` (string, nullable)
    - `legal_name` (string, nullable)
    - `legal_name_en` (string, nullable)
    - `url` (string, nullable)
  - `address` (object, nullable)
    - `@type` (string) (default: "ProzorroAddress")
    - `street` (string, nullable)
    - `locality` (string, nullable)
    - `region` (string, nullable)
    - `postal_code` (string, nullable)
    - `country_name` (string, nullable)
  - `contact` (object, nullable)
    - `@type` (string) (default: "ProzorroContact")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `email` (string, nullable)
    - `telephone` (string, nullable)
    - `fax` (string, nullable)
    - `url` (string, nullable)
    - `available_language` (string, nullable)
  - `additional_contacts` (array) (default: [])
    - `@type` (string) (default: "ProzorroContact")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `email` (string, nullable)
    - `telephone` (string, nullable)
    - `fax` (string, nullable)
    - `url` (string, nullable)
    - `available_language` (string, nullable)
  - `kind` (string, nullable)
  - `scale` (string, nullable)
- `suppliers` (array) (default: [])
  - `@type` (string) (default: "ProzorroOrganization")
  - `name` (string, nullable)
  - `name_en` (string, nullable)
  - `identifier` (object, nullable)
    - `@type` (string) (default: "ProzorroIdentifier")
    - `scheme` (string, nullable)
    - `id` (string, nullable)
    - `legal_name` (string, nullable)
    - `legal_name_en` (string, nullable)
    - `url` (string, nullable)
  - `address` (object, nullable)
    - `@type` (string) (default: "ProzorroAddress")
    - `street` (string, nullable)
    - `locality` (string, nullable)
    - `region` (string, nullable)
    - `postal_code` (string, nullable)
    - `country_name` (string, nullable)
  - `contact` (object, nullable)
    - `@type` (string) (default: "ProzorroContact")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `email` (string, nullable)
    - `telephone` (string, nullable)
    - `fax` (string, nullable)
    - `url` (string, nullable)
    - `available_language` (string, nullable)
  - `additional_contacts` (array) (default: [])
    - `@type` (string) (default: "ProzorroContact")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `email` (string, nullable)
    - `telephone` (string, nullable)
    - `fax` (string, nullable)
    - `url` (string, nullable)
    - `available_language` (string, nullable)
  - `kind` (string, nullable)
  - `scale` (string, nullable)
- `value` (object, nullable)
  - `@type` (string) (default: "ProzorroValue")
  - `amount` (number, nullable)
  - `amount_net` (number, nullable)
  - `currency` (string, nullable)
  - `vat_included` (boolean, nullable)
- `min_value` (object, nullable)
  - `@type` (string) (default: "ProzorroValue")
  - `amount` (number, nullable)
  - `amount_net` (number, nullable)
  - `currency` (string, nullable)
  - `vat_included` (boolean, nullable)
- `minimal_step` (object, nullable)
  - `@type` (string) (default: "ProzorroValue")
  - `amount` (number, nullable)
  - `amount_net` (number, nullable)
  - `currency` (string, nullable)
  - `vat_included` (boolean, nullable)
- `guarantee` (object, nullable)
  - `@type` (string) (default: "ProzorroValue")
  - `amount` (number, nullable)
  - `amount_net` (number, nullable)
  - `currency` (string, nullable)
  - `vat_included` (boolean, nullable)
- `dates` (object, nullable)
  - `@type` (string) (default: "ProzorroDates")
  - `published_at` (integer, nullable)
  - `created_at` (integer, nullable)
  - `modified_at` (integer, nullable)
  - `enquiry_deadline_at` (integer, nullable)
  - `deadline_at` (integer, nullable)
  - `auction_at` (integer, nullable)
  - `awarded_at` (integer, nullable)
  - `contract_at` (integer, nullable)
- `cpv` (array) (default: [])
  - `@type` (string) (default: "ProzorroClassification")
  - `scheme` (string, nullable)
  - `code` (string, required)
  - `description` (string, nullable)
- `country` (string) (default: "UA")
- `url` (string, required)
- `enquiry_period` (object, nullable)
  - `@type` (string) (default: "ProzorroPeriod")
  - `start_at` (integer, nullable)
  - `end_at` (integer, nullable)
  - `should_start_after_at` (integer, nullable)
  - `clarifications_until_at` (integer, nullable)
  - `invalidation_at` (integer, nullable)
  - `reporting_published_at` (integer, nullable)
- `tender_period` (object, nullable)
  - `@type` (string) (default: "ProzorroPeriod")
  - `start_at` (integer, nullable)
  - `end_at` (integer, nullable)
  - `should_start_after_at` (integer, nullable)
  - `clarifications_until_at` (integer, nullable)
  - `invalidation_at` (integer, nullable)
  - `reporting_published_at` (integer, nullable)
- `auction_period` (object, nullable)
  - `@type` (string) (default: "ProzorroPeriod")
  - `start_at` (integer, nullable)
  - `end_at` (integer, nullable)
  - `should_start_after_at` (integer, nullable)
  - `clarifications_until_at` (integer, nullable)
  - `invalidation_at` (integer, nullable)
  - `reporting_published_at` (integer, nullable)
- `qualification_period` (object, nullable)
  - `@type` (string) (default: "ProzorroPeriod")
  - `start_at` (integer, nullable)
  - `end_at` (integer, nullable)
  - `should_start_after_at` (integer, nullable)
  - `clarifications_until_at` (integer, nullable)
  - `invalidation_at` (integer, nullable)
  - `reporting_published_at` (integer, nullable)
- `award_period` (object, nullable)
  - `@type` (string) (default: "ProzorroPeriod")
  - `start_at` (integer, nullable)
  - `end_at` (integer, nullable)
  - `should_start_after_at` (integer, nullable)
  - `clarifications_until_at` (integer, nullable)
  - `invalidation_at` (integer, nullable)
  - `reporting_published_at` (integer, nullable)
- `complaint_period` (object, nullable)
  - `@type` (string) (default: "ProzorroPeriod")
  - `start_at` (integer, nullable)
  - `end_at` (integer, nullable)
  - `should_start_after_at` (integer, nullable)
  - `clarifications_until_at` (integer, nullable)
  - `invalidation_at` (integer, nullable)
  - `reporting_published_at` (integer, nullable)
- `auction_url` (string, nullable)
- `agreement_id` (string, nullable)
- `agreement_ids` (array) (default: [])
- `plan_ids` (array) (default: [])
- `line_items` (array) (default: [])
  - `@type` (string) (default: "ProzorroItem")
  - `id` (string, required)
  - `description` (string, nullable)
  - `description_en` (string, nullable)
  - `classification` (object, nullable)
    - `@type` (string) (default: "ProzorroClassification")
    - `scheme` (string, nullable)
    - `code` (string, required)
    - `description` (string, nullable)
  - `additional_classifications` (array) (default: [])
    - `@type` (string) (default: "ProzorroClassification")
    - `scheme` (string, nullable)
    - `code` (string, required)
    - `description` (string, nullable)
  - `quantity` (number, nullable)
  - `unit` (object, nullable)
    - `@type` (string) (default: "ProzorroUnit")
    - `code` (string, nullable)
    - `name` (string, nullable)
    - `value` (object, nullable)
      - `@type` (string) (default: "ProzorroValue")
      - `amount` (number, nullable)
      - `amount_net` (number, nullable)
      - `currency` (string, nullable)
      - `vat_included` (boolean, nullable)
  - `delivery_address` (object, nullable)
    - `@type` (string) (default: "ProzorroAddress")
    - `street` (string, nullable)
    - `locality` (string, nullable)
    - `region` (string, nullable)
    - `postal_code` (string, nullable)
    - `country_name` (string, nullable)
  - `delivery_period` (object, nullable)
    - `@type` (string) (default: "ProzorroPeriod")
    - `start_at` (integer, nullable)
    - `end_at` (integer, nullable)
    - `should_start_after_at` (integer, nullable)
    - `clarifications_until_at` (integer, nullable)
    - `invalidation_at` (integer, nullable)
    - `reporting_published_at` (integer, nullable)
  - `related_lot` (string, nullable)
  - `category` (string, nullable)
  - `profile` (string, nullable)
  - `product` (string, nullable)
- `lots` (array) (default: [])
  - `@type` (string) (default: "ProzorroLot")
  - `id` (string, required)
  - `title_en` (string, nullable)
  - `description` (string, nullable)
  - `description_en` (string, nullable)
  - `status` (string, nullable)
  - `value` (object, nullable)
    - `@type` (string) (default: "ProzorroValue")
    - `amount` (number, nullable)
    - `amount_net` (number, nullable)
    - `currency` (string, nullable)
    - `vat_included` (boolean, nullable)
  - `min_value` (object, nullable)
    - `@type` (string) (default: "ProzorroValue")
    - `amount` (number, nullable)
    - `amount_net` (number, nullable)
    - `currency` (string, nullable)
    - `vat_included` (boolean, nullable)
  - `minimal_step` (object, nullable)
    - `@type` (string) (default: "ProzorroValue")
    - `amount` (number, nullable)
    - `amount_net` (number, nullable)
    - `currency` (string, nullable)
    - `vat_included` (boolean, nullable)
  - `minimal_step_percentage` (number, nullable)
  - `yearly_payments_percentage_range` (number, nullable)
  - `funding_kind` (string, nullable)
  - `guarantee` (object, nullable)
    - `@type` (string) (default: "ProzorroValue")
    - `amount` (number, nullable)
    - `amount_net` (number, nullable)
    - `currency` (string, nullable)
    - `vat_included` (boolean, nullable)
  - `auction_period` (object, nullable)
    - `@type` (string) (default: "ProzorroPeriod")
    - `start_at` (integer, nullable)
    - `end_at` (integer, nullable)
    - `should_start_after_at` (integer, nullable)
    - `clarifications_until_at` (integer, nullable)
    - `invalidation_at` (integer, nullable)
    - `reporting_published_at` (integer, nullable)
  - `auction_url` (string, nullable)
  - `date_at` (integer, nullable)
- `bids` (array) (default: [])
  - `@type` (string) (default: "ProzorroBid")
  - `id` (string, required)
  - `status` (string, nullable)
  - `tenderers` (array) (default: [])
    - `@type` (string) (default: "ProzorroOrganization")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `identifier` (object, nullable) (see schema ProzorroIdentifier)
    - `address` (object, nullable) (see schema ProzorroAddress)
    - `contact` (object, nullable) (see schema ProzorroContact)
    - `additional_contacts` (array) (default: [])
    - `kind` (string, nullable)
    - `scale` (string, nullable)
  - `value` (object, nullable)
    - `@type` (string) (default: "ProzorroValue")
    - `amount` (number, nullable)
    - `amount_net` (number, nullable)
    - `currency` (string, nullable)
    - `vat_included` (boolean, nullable)
  - `initial_value` (object, nullable)
    - `@type` (string) (default: "ProzorroValue")
    - `amount` (number, nullable)
    - `amount_net` (number, nullable)
    - `currency` (string, nullable)
    - `vat_included` (boolean, nullable)
  - `lot_values` (array) (default: [])
    - `@type` (string) (default: "ProzorroLotValue")
    - `related_lot` (string, nullable)
    - `status` (string, nullable)
    - `value` (object, nullable) (see schema ProzorroValue)
    - `initial_value` (object, nullable) (see schema ProzorroValue)
    - `date_at` (integer, nullable)
  - `line_items` (array) (default: [])
    - `@type` (string) (default: "ProzorroItem")
    - `id` (string, required)
    - `description` (string, nullable)
    - `description_en` (string, nullable)
    - `classification` (object, nullable) (see schema ProzorroClassification)
    - `additional_classifications` (array) (default: [])
    - `quantity` (number, nullable)
    - `unit` (object, nullable) (see schema ProzorroUnit)
    - `delivery_address` (object, nullable) (see schema ProzorroAddress)
    - `delivery_period` (object, nullable) (see schema ProzorroPeriod)
    - `related_lot` (string, nullable)
    - `category` (string, nullable)
    - `profile` (string, nullable)
    - `product` (string, nullable)
  - `is_self_qualified` (boolean, nullable)
  - `subcontracting_details` (string, nullable)
  - `date_at` (integer, nullable)
  - `submitted_at` (integer, nullable)
  - `requirement_responses` (array) (default: [])
    - `@type` (string) (default: "ProzorroRequirementResponse")
    - `id` (string, required)
    - `requirement_id` (string, nullable)
    - `requirement_title` (string, nullable)
    - `classification` (object, nullable) (see schema ProzorroClassification)
    - `value` (union, nullable)
    - `values` (array) (default: [])
    - `unit` (object, nullable) (see schema ProzorroUnit)
    - `evidences` (array) (default: [])
  - `documents` (array) (default: [])
    - `@type` (string) (default: "ProzorroDocument")
    - `id` (string, required)
    - `title_en` (string, nullable)
    - `description` (string, nullable)
    - `url` (string, nullable)
    - `mime_type` (string, nullable)
    - `document_type` (string, nullable)
    - `document_of` (string, nullable)
    - `related_item` (string, nullable)
    - `language` (string, nullable)
    - `author` (string, nullable)
    - `confidentiality` (string, nullable)
    - `hash` (string, nullable)
    - `published_at` (integer, nullable)
    - `modified_at` (integer, nullable)
  - `eligibility_documents` (array) (default: [])
    - `@type` (string) (default: "ProzorroDocument")
    - `id` (string, required)
    - `title_en` (string, nullable)
    - `description` (string, nullable)
    - `url` (string, nullable)
    - `mime_type` (string, nullable)
    - `document_type` (string, nullable)
    - `document_of` (string, nullable)
    - `related_item` (string, nullable)
    - `language` (string, nullable)
    - `author` (string, nullable)
    - `confidentiality` (string, nullable)
    - `hash` (string, nullable)
    - `published_at` (integer, nullable)
    - `modified_at` (integer, nullable)
  - `financial_documents` (array) (default: [])
    - `@type` (string) (default: "ProzorroDocument")
    - `id` (string, required)
    - `title_en` (string, nullable)
    - `description` (string, nullable)
    - `url` (string, nullable)
    - `mime_type` (string, nullable)
    - `document_type` (string, nullable)
    - `document_of` (string, nullable)
    - `related_item` (string, nullable)
    - `language` (string, nullable)
    - `author` (string, nullable)
    - `confidentiality` (string, nullable)
    - `hash` (string, nullable)
    - `published_at` (integer, nullable)
    - `modified_at` (integer, nullable)
  - `qualification_documents` (array) (default: [])
    - `@type` (string) (default: "ProzorroDocument")
    - `id` (string, required)
    - `title_en` (string, nullable)
    - `description` (string, nullable)
    - `url` (string, nullable)
    - `mime_type` (string, nullable)
    - `document_type` (string, nullable)
    - `document_of` (string, nullable)
    - `related_item` (string, nullable)
    - `language` (string, nullable)
    - `author` (string, nullable)
    - `confidentiality` (string, nullable)
    - `hash` (string, nullable)
    - `published_at` (integer, nullable)
    - `modified_at` (integer, nullable)
- `qualifications` (array) (default: [])
  - `@type` (string) (default: "ProzorroQualification")
  - `id` (string, required)
  - `status` (string, nullable)
  - `description` (string, nullable)
  - `bid_id` (string, nullable)
  - `lot_id` (string, nullable)
  - `is_qualified` (boolean, nullable)
  - `is_eligible` (boolean, nullable)
  - `date_at` (integer, nullable)
  - `complaint_period` (object, nullable)
    - `@type` (string) (default: "ProzorroPeriod")
    - `start_at` (integer, nullable)
    - `end_at` (integer, nullable)
    - `should_start_after_at` (integer, nullable)
    - `clarifications_until_at` (integer, nullable)
    - `invalidation_at` (integer, nullable)
    - `reporting_published_at` (integer, nullable)
  - `milestones` (array) (default: [])
    - `@type` (string) (default: "ProzorroMilestone")
    - `id` (string, required)
    - `code` (string, nullable)
    - `milestone_type` (string, nullable)
    - `description` (string, nullable)
    - `duration_days` (integer, nullable)
    - `duration_type` (string, nullable)
    - `percentage` (number, nullable)
    - `sequence_number` (integer, nullable)
    - `related_lot` (string, nullable)
    - `date_at` (integer, nullable)
    - `due_at` (integer, nullable)
  - `complaints` (array) (default: [])
    - `@type` (string) (default: "ProzorroComplaint")
    - `id` (string, required)
    - `complaint_id` (string, nullable)
    - `complaint_type` (string, nullable)
    - `status` (string, nullable)
    - `description` (string, nullable)
    - `author` (object, nullable) (see schema ProzorroOrganization)
    - `value` (object, nullable) (see schema ProzorroValue)
    - `related_lot` (string, nullable)
    - `bid_id` (string, nullable)
    - `is_accepted` (boolean, nullable)
    - `review_place` (string, nullable)
    - `tenderer_action` (string, nullable)
    - `date_at` (integer, nullable)
    - `submitted_at` (integer, nullable)
    - `accepted_at` (integer, nullable)
    - `decided_at` (integer, nullable)
    - `review_at` (integer, nullable)
    - `tenderer_action_at` (integer, nullable)
    - `objections` (array) (default: [])
    - `posts` (array) (default: [])
    - `documents` (array) (default: [])
  - `documents` (array) (default: [])
    - `@type` (string) (default: "ProzorroDocument")
    - `id` (string, required)
    - `title_en` (string, nullable)
    - `description` (string, nullable)
    - `url` (string, nullable)
    - `mime_type` (string, nullable)
    - `document_type` (string, nullable)
    - `document_of` (string, nullable)
    - `related_item` (string, nullable)
    - `language` (string, nullable)
    - `author` (string, nullable)
    - `confidentiality` (string, nullable)
    - `hash` (string, nullable)
    - `published_at` (integer, nullable)
    - `modified_at` (integer, nullable)
- `awards` (array) (default: [])
  - `@type` (string) (default: "ProzorroAward")
  - `id` (string, required)
  - `status` (string, nullable)
  - `description` (string, nullable)
  - `suppliers` (array) (default: [])
    - `@type` (string) (default: "ProzorroOrganization")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `identifier` (object, nullable) (see schema ProzorroIdentifier)
    - `address` (object, nullable) (see schema ProzorroAddress)
    - `contact` (object, nullable) (see schema ProzorroContact)
    - `additional_contacts` (array) (default: [])
    - `kind` (string, nullable)
    - `scale` (string, nullable)
  - `value` (object, nullable)
    - `@type` (string) (default: "ProzorroValue")
    - `amount` (number, nullable)
    - `amount_net` (number, nullable)
    - `currency` (string, nullable)
    - `vat_included` (boolean, nullable)
  - `bid_id` (string, nullable)
  - `lot_id` (string, nullable)
  - `is_qualified` (boolean, nullable)
  - `is_eligible` (boolean, nullable)
  - `date_at` (integer, nullable)
  - `period` (object, nullable)
    - `@type` (string) (default: "ProzorroPeriod")
    - `start_at` (integer, nullable)
    - `end_at` (integer, nullable)
    - `should_start_after_at` (integer, nullable)
    - `clarifications_until_at` (integer, nullable)
    - `invalidation_at` (integer, nullable)
    - `reporting_published_at` (integer, nullable)
  - `complaint_period` (object, nullable)
    - `@type` (string) (default: "ProzorroPeriod")
    - `start_at` (integer, nullable)
    - `end_at` (integer, nullable)
    - `should_start_after_at` (integer, nullable)
    - `clarifications_until_at` (integer, nullable)
    - `invalidation_at` (integer, nullable)
    - `reporting_published_at` (integer, nullable)
  - `milestones` (array) (default: [])
    - `@type` (string) (default: "ProzorroMilestone")
    - `id` (string, required)
    - `code` (string, nullable)
    - `milestone_type` (string, nullable)
    - `description` (string, nullable)
    - `duration_days` (integer, nullable)
    - `duration_type` (string, nullable)
    - `percentage` (number, nullable)
    - `sequence_number` (integer, nullable)
    - `related_lot` (string, nullable)
    - `date_at` (integer, nullable)
    - `due_at` (integer, nullable)
  - `complaints` (array) (default: [])
    - `@type` (string) (default: "ProzorroComplaint")
    - `id` (string, required)
    - `complaint_id` (string, nullable)
    - `complaint_type` (string, nullable)
    - `status` (string, nullable)
    - `description` (string, nullable)
    - `author` (object, nullable) (see schema ProzorroOrganization)
    - `value` (object, nullable) (see schema ProzorroValue)
    - `related_lot` (string, nullable)
    - `bid_id` (string, nullable)
    - `is_accepted` (boolean, nullable)
    - `review_place` (string, nullable)
    - `tenderer_action` (string, nullable)
    - `date_at` (integer, nullable)
    - `submitted_at` (integer, nullable)
    - `accepted_at` (integer, nullable)
    - `decided_at` (integer, nullable)
    - `review_at` (integer, nullable)
    - `tenderer_action_at` (integer, nullable)
    - `objections` (array) (default: [])
    - `posts` (array) (default: [])
    - `documents` (array) (default: [])
  - `documents` (array) (default: [])
    - `@type` (string) (default: "ProzorroDocument")
    - `id` (string, required)
    - `title_en` (string, nullable)
    - `description` (string, nullable)
    - `url` (string, nullable)
    - `mime_type` (string, nullable)
    - `document_type` (string, nullable)
    - `document_of` (string, nullable)
    - `related_item` (string, nullable)
    - `language` (string, nullable)
    - `author` (string, nullable)
    - `confidentiality` (string, nullable)
    - `hash` (string, nullable)
    - `published_at` (integer, nullable)
    - `modified_at` (integer, nullable)
- `contracts` (array) (default: [])
  - `@type` (string) (default: "ProzorroContract")
  - `id` (string, required)
  - `contract_id` (string, nullable)
  - `contract_number` (string, nullable)
  - `status` (string, nullable)
  - `title_en` (string, nullable)
  - `description` (string, nullable)
  - `description_en` (string, nullable)
  - `award_id` (string, nullable)
  - `suppliers` (array) (default: [])
    - `@type` (string) (default: "ProzorroOrganization")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `identifier` (object, nullable) (see schema ProzorroIdentifier)
    - `address` (object, nullable) (see schema ProzorroAddress)
    - `contact` (object, nullable) (see schema ProzorroContact)
    - `additional_contacts` (array) (default: [])
    - `kind` (string, nullable)
    - `scale` (string, nullable)
  - `value` (object, nullable)
    - `@type` (string) (default: "ProzorroValue")
    - `amount` (number, nullable)
    - `amount_net` (number, nullable)
    - `currency` (string, nullable)
    - `vat_included` (boolean, nullable)
  - `date_at` (integer, nullable)
  - `signed_at` (integer, nullable)
  - `period` (object, nullable)
    - `@type` (string) (default: "ProzorroPeriod")
    - `start_at` (integer, nullable)
    - `end_at` (integer, nullable)
    - `should_start_after_at` (integer, nullable)
    - `clarifications_until_at` (integer, nullable)
    - `invalidation_at` (integer, nullable)
    - `reporting_published_at` (integer, nullable)
  - `line_items` (array) (default: [])
    - `@type` (string) (default: "ProzorroItem")
    - `id` (string, required)
    - `description` (string, nullable)
    - `description_en` (string, nullable)
    - `classification` (object, nullable) (see schema ProzorroClassification)
    - `additional_classifications` (array) (default: [])
    - `quantity` (number, nullable)
    - `unit` (object, nullable) (see schema ProzorroUnit)
    - `delivery_address` (object, nullable) (see schema ProzorroAddress)
    - `delivery_period` (object, nullable) (see schema ProzorroPeriod)
    - `related_lot` (string, nullable)
    - `category` (string, nullable)
    - `profile` (string, nullable)
    - `product` (string, nullable)
  - `documents` (array) (default: [])
    - `@type` (string) (default: "ProzorroDocument")
    - `id` (string, required)
    - `title_en` (string, nullable)
    - `description` (string, nullable)
    - `url` (string, nullable)
    - `mime_type` (string, nullable)
    - `document_type` (string, nullable)
    - `document_of` (string, nullable)
    - `related_item` (string, nullable)
    - `language` (string, nullable)
    - `author` (string, nullable)
    - `confidentiality` (string, nullable)
    - `hash` (string, nullable)
    - `published_at` (integer, nullable)
    - `modified_at` (integer, nullable)
- `cancellations` (array) (default: [])
  - `@type` (string) (default: "ProzorroCancellation")
  - `id` (string, required)
  - `status` (string, nullable)
  - `reason` (string, nullable)
  - `reason_type` (string, nullable)
  - `cancellation_of` (string, nullable)
  - `related_lot` (string, nullable)
  - `date_at` (integer, nullable)
  - `complaint_period` (object, nullable)
    - `@type` (string) (default: "ProzorroPeriod")
    - `start_at` (integer, nullable)
    - `end_at` (integer, nullable)
    - `should_start_after_at` (integer, nullable)
    - `clarifications_until_at` (integer, nullable)
    - `invalidation_at` (integer, nullable)
    - `reporting_published_at` (integer, nullable)
  - `documents` (array) (default: [])
    - `@type` (string) (default: "ProzorroDocument")
    - `id` (string, required)
    - `title_en` (string, nullable)
    - `description` (string, nullable)
    - `url` (string, nullable)
    - `mime_type` (string, nullable)
    - `document_type` (string, nullable)
    - `document_of` (string, nullable)
    - `related_item` (string, nullable)
    - `language` (string, nullable)
    - `author` (string, nullable)
    - `confidentiality` (string, nullable)
    - `hash` (string, nullable)
    - `published_at` (integer, nullable)
    - `modified_at` (integer, nullable)
  - `complaints` (array) (default: [])
    - `@type` (string) (default: "ProzorroComplaint")
    - `id` (string, required)
    - `complaint_id` (string, nullable)
    - `complaint_type` (string, nullable)
    - `status` (string, nullable)
    - `description` (string, nullable)
    - `author` (object, nullable) (see schema ProzorroOrganization)
    - `value` (object, nullable) (see schema ProzorroValue)
    - `related_lot` (string, nullable)
    - `bid_id` (string, nullable)
    - `is_accepted` (boolean, nullable)
    - `review_place` (string, nullable)
    - `tenderer_action` (string, nullable)
    - `date_at` (integer, nullable)
    - `submitted_at` (integer, nullable)
    - `accepted_at` (integer, nullable)
    - `decided_at` (integer, nullable)
    - `review_at` (integer, nullable)
    - `tenderer_action_at` (integer, nullable)
    - `objections` (array) (default: [])
    - `posts` (array) (default: [])
    - `documents` (array) (default: [])
- `documents` (array) (default: [])
  - `@type` (string) (default: "ProzorroDocument")
  - `id` (string, required)
  - `title_en` (string, nullable)
  - `description` (string, nullable)
  - `url` (string, nullable)
  - `mime_type` (string, nullable)
  - `document_type` (string, nullable)
  - `document_of` (string, nullable)
  - `related_item` (string, nullable)
  - `language` (string, nullable)
  - `author` (string, nullable)
  - `confidentiality` (string, nullable)
  - `hash` (string, nullable)
  - `published_at` (integer, nullable)
  - `modified_at` (integer, nullable)
- `questions` (array) (default: [])
  - `@type` (string) (default: "ProzorroQuestion")
  - `id` (string, required)
  - `description` (string, nullable)
  - `answer` (string, nullable)
  - `question_of` (string, nullable)
  - `related_item` (string, nullable)
  - `asked_at` (integer, nullable)
  - `answered_at` (integer, nullable)
- `complaints` (array) (default: [])
  - `@type` (string) (default: "ProzorroComplaint")
  - `id` (string, required)
  - `complaint_id` (string, nullable)
  - `complaint_type` (string, nullable)
  - `status` (string, nullable)
  - `description` (string, nullable)
  - `author` (object, nullable)
    - `@type` (string) (default: "ProzorroOrganization")
    - `name` (string, nullable)
    - `name_en` (string, nullable)
    - `identifier` (object, nullable)
      - `@type` (string) (default: "ProzorroIdentifier")
      - `scheme` (string, nullable)
      - `id` (string, nullable)
      - `legal_name` (string, nullable)
      - `legal_name_en` (string, nullable)
      - `url` (string, nullable)
    - `address` (object, nullable)
      - `@type` (string) (default: "ProzorroAddress")
      - `street` (string, nullable)
      - `locality` (string, nullable)
      - `region` (string, nullable)
      - `postal_code` (string, nullable)
      - `country_name` (string, nullable)
    - `contact` (object, nullable)
      - `@type` (string) (default: "ProzorroContact")
      - `name` (string, nullable)
      - `name_en` (string, nullable)
      - `email` (string, nullable)
      - `telephone` (string, nullable)
      - `fax` (string, nullable)
      - `url` (string, nullable)
      - `available_language` (string, nullable)
    - `additional_contacts` (array) (default: [])
    - `kind` (string, nullable)
    - `scale` (string, nullable)
  - `value` (object, nullable)
    - `@type` (string) (default: "ProzorroValue")
    - `amount` (number, nullable)
    - `amount_net` (number, nullable)
    - `currency` (string, nullable)
    - `vat_included` (boolean, nullable)
  - `related_lot` (string, nullable)
  - `bid_id` (string, nullable)
  - `is_accepted` (boolean, nullable)
  - `review_place` (string, nullable)
  - `tenderer_action` (string, nullable)
  - `date_at` (integer, nullable)
  - `submitted_at` (integer, nullable)
  - `accepted_at` (integer, nullable)
  - `decided_at` (integer, nullable)
  - `review_at` (integer, nullable)
  - `tenderer_action_at` (integer, nullable)
  - `objections` (array) (default: [])
    - `@type` (string) (default: "ProzorroObjection")
    - `id` (string, required)
    - `description` (string, nullable)
    - `classification` (object, nullable) (see schema ProzorroClassification)
    - `relates_to` (string, nullable)
    - `related_item` (string, nullable)
    - `sequence_number` (integer, nullable)
    - `arguments` (array) (default: [])
    - `requested_remedies` (array) (default: [])
  - `posts` (array) (default: [])
    - `@type` (string) (default: "ProzorroPost")
    - `id` (string, required)
    - `description` (string, nullable)
    - `author` (string, nullable)
    - `related_objection` (string, nullable)
    - `published_at` (integer, nullable)
  - `documents` (array) (default: [])
    - `@type` (string) (default: "ProzorroDocument")
    - `id` (string, required)
    - `title_en` (string, nullable)
    - `description` (string, nullable)
    - `url` (string, nullable)
    - `mime_type` (string, nullable)
    - `document_type` (string, nullable)
    - `document_of` (string, nullable)
    - `related_item` (string, nullable)
    - `language` (string, nullable)
    - `author` (string, nullable)
    - `confidentiality` (string, nullable)
    - `hash` (string, nullable)
    - `published_at` (integer, nullable)
    - `modified_at` (integer, nullable)
- `milestones` (array) (default: [])
  - `@type` (string) (default: "ProzorroMilestone")
  - `id` (string, required)
  - `code` (string, nullable)
  - `milestone_type` (string, nullable)
  - `description` (string, nullable)
  - `duration_days` (integer, nullable)
  - `duration_type` (string, nullable)
  - `percentage` (number, nullable)
  - `sequence_number` (integer, nullable)
  - `related_lot` (string, nullable)
  - `date_at` (integer, nullable)
  - `due_at` (integer, nullable)
- `criteria` (array) (default: [])
  - `@type` (string) (default: "ProzorroCriterion")
  - `id` (string, required)
  - `description` (string, nullable)
  - `source` (string, nullable)
  - `relates_to` (string, nullable)
  - `related_item` (string, nullable)
  - `classification` (object, nullable)
    - `@type` (string) (default: "ProzorroClassification")
    - `scheme` (string, nullable)
    - `code` (string, required)
    - `description` (string, nullable)
  - `legislation` (array) (default: [])
    - `@type` (string) (default: "ProzorroLegislation")
    - `legislation_type` (string, nullable)
    - `article` (string, nullable)
    - `identifier` (object, nullable) (see schema ProzorroIdentifier)
    - `version` (string, nullable)
  - `requirement_groups` (array) (default: [])
    - `@type` (string) (default: "ProzorroRequirementGroup")
    - `id` (string, required)
    - `description` (string, nullable)
    - `requirements` (array) (default: [])
- `config` (object, nullable)
  - `@type` (string) (default: "ProzorroConfig")
  - `has_auction` (boolean, nullable)
  - `has_awarding_order` (boolean, nullable)
  - `has_value_restriction` (boolean, nullable)
  - `value_currency_equality` (boolean, nullable)
  - `min_bids_number` (integer, nullable)
  - `has_prequalification` (boolean, nullable)
  - `has_pre_selection_agreement` (boolean, nullable)
  - `has_tender_complaints` (boolean, nullable)
  - `has_award_complaints` (boolean, nullable)
  - `has_cancellation_complaints` (boolean, nullable)
  - `has_qualification_complaints` (boolean, nullable)
  - `is_restricted` (boolean, nullable)
  - `has_value_estimation` (boolean, nullable)
  - `has_enquiries` (boolean, nullable)
  - `has_multi_sourcing` (boolean, nullable)
  - `clarification_until_duration` (integer, nullable)
  - `tender_complain_regulation` (integer, nullable)
  - `award_complain_duration` (integer, nullable)
  - `cancellation_complain_duration` (integer, nullable)
  - `qualification_complain_duration` (integer, nullable)
  - `qualification_duration` (integer, nullable)
  - `min_tendering_duration` (integer, nullable)
  - `enquiry_period_regulation` (integer, nullable)
  - `min_enquiries_duration` (integer, nullable)

## Errors

### 422 — Validation Error

The request body did not validate

What to do: Check the fields against this schema. A URN with the wrong prefix is the most common cause.

- `detail` (array)
  - `loc` (array, required)
  - `msg` (string, required)
  - `type` (string, required)
  - `input` (any)
  - `ctx` (object)

### 408

The request ran past its time limit

What to do: Raise `timeout` in the request body, up to the maximum this endpoint documents. Lowering `count` or turning off the `with_*` flags also helps, because less work finishes sooner.

### 412

No tender with this number or uuid on Prozorro

What to do: Retrying will not help: either the entity does not exist, or the input points at a different one.

### 429

Too many requests: a rate limit or a usage window is exhausted

What to do: When the response carries an X-Retry-After header, wait that many seconds and retry: the same number is in the body as `detail.retry_after`, and the limit clears once that window passes. The message in the body names the limit that was hit.

### 500

Something broke on our side

What to do: Retrying will not help. If it keeps happening, send us the X-Request-ID from the response headers.

### 529

Rate limit reached, or the endpoint is overloaded

What to do: Wait at least 30 seconds, then retry.

## Response envelope

Success: Array of objects (may be empty if no results)

Error: Error may coexist with partial results if it occurs mid-execution. Check X-Error header and status code.

Every response carries these headers:

- `X-Error` — Error message text (present only on error)
- `X-Request-ID` — Unique request identifier
- `X-Execution-Time` — Execution time in seconds
- `X-Result-Count` — How many records the body carries. 0 means an empty result, which is a normal answer and not by itself an error. A non-zero count can come back together with X-Error when the failure happened partway through — read this header and X-Error independently.
- `X-Total-Available-Results` — How many records exist for this query, when the endpoint can say. On a `dry_run` request this is the answer and the body is empty. It saturates: the endpoint's documented maximum means 'at least that many', any smaller number is exact.
- `X-Warning` — Present when the request body carried keys this endpoint does not document. They were ignored, so any filter you meant to apply through them did not apply. Check the spelling against this schema and retry.
- `X-Retry-After` — Seconds to wait before retrying. Present only on 429.

