---
title: "View Quotes for an Opportunity"
method: POST
path: "/api/v2/quotes"
tags: ["CRM Integration"]
---

# View Quotes for an Opportunity

`POST /api/v2/quotes`

Retrieves a URL that redirects the user to the **My Proposals** page for a specific opportunity, showing all associated quotes.

## Request body

- ViewQuotesRequest
  - `dealhub_user_id` string, required — ID of user in the DealHub system (as returned from Authentication request).
  - `external_opportunity_id` string, required — CRM opportunity ID.
  - `opportunity_info` OpportunityInfo — A schema representing the data that can be sent to create or update an opportunity and its related quote.
    - `external_opportunity_name` string, required — CRM opportunity name.
    - `opportunity_owner` UserInformation — A list of fields required to create a user in DealHub.
      - `type` 'partner', required — The type of user, which must be 'partner'.
      - `user_id` string, required — The external ID of the user in the PRM system.
      - `login` string, required — Login of the user.
      - `email` string, email, required — The user's email to receive notifications.
      - `name` string, required — The user's first and last name.
      - `position` string — The user's position or job title.
      - `phone` string — The user's phone number.
      - `mobile` string — The user's mobile phone number.
      - `company` string — The user's company name.
      - `street` string — The user's street address.
      - `city` string — The user's city.
      - `state` string — The user's state or province.
      - `country` string — The user's country.
      - `postal_code` string — The user's postal code.
      - `profile_img` string, uri — A URL to the user's profile image.
    - `external_quote_id` string — CRM quote ID.
    - `external_customer_id` string, required — CRM customer ID (buyer account).
    - `customer_name` string, required — CRM customer name.
    - `customer_shipping_address` Address
      - `street` string — Street name.
      - `city` string — City name.
      - `state` string — State name.
      - `country` string — Country name.
      - `postal_code` string — Postal code.
    - `customer_billing_address` Address
      - `street` string — Street name.
      - `city` string — City name.
      - `state` string — State name.
      - `country` string — Country name.
      - `postal_code` string — Postal code.
    - `customer_contacts` Contact[] — List of customer contacts.
      - `salutation` string — Salutation (e.g., Mr., Ms.).
      - `first_name` string, required — First name of the contact.
      - `last_name` string, required — Last name of the contact.
      - `title` string — Job title of the contact.
      - `email` string, email, required — Primary email of the contact.
      - `phone` string — Phone number of the contact.
      - `account_name` string — Name of the contact's company.
      - `mailing_address` string — Postal address of the contact person.
      - `primary_contact` boolean — Flag indicating if this is the primary contact.
    - `geo_code` string, required — Geographic code.
    - `currency` string, required — The currency ISO code. This is immutable once an opportunity/quote is created.
    - `custom_fields` CustomField[] — A list of custom fields, where each object contains a key/value pair. This parameter supports the following data types: * `Numeric`: A single numeric value. An empty value will be treated as `0`. * `Text`: The value is captured and presented to the user exactly as received. The `value` field must be an array with a single string. * `Text list`: Can contain one or more values. This can be used in two modes: * Single-select: Only one value can be chosen from the list. * Multi-select: Multiple values from the list can be selected. * `UTC`: A date and time value. The format must be `yyyy-mm-dd`. An empty value will be treated as `NULL`.
      - `entries` object
      - `empty` boolean
    - `repeatable_groups` object[] — Used for subscription renewals. The system will attempt to render this data into the playbook; items that cannot be rendered will be ignored without error.
      - `group_id` string, required
      - `questions` object[], required

## Response `200`

Success. The response contains the URL for redirection.

- RedirectResponse
  - `url` string, uri — The URL to which the user's browser should be redirected.
  - `errors` object[]

## Other responses

- `400` — Bad Request.
- `403` — Unauthenticated.

---

[API](https://skmtc.net/dealhub/apis/quote-api.md) · [All operations](https://skmtc.net/dealhub/apis/quote-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dealhub/quote-api/versions/c30f5b9fbfab/schema)
