Offer
An offer the investor has received from a broker, plus the investor's response state. Which optional fields are populated depends on the offer's status: pre-response offers expose only the anonymized teaser and response deadline; accepted offers additionally expose the broker's contact card and available capabilities.
- idType: stringrequired
Unique offer identifier.
- statusType: stringrequired
Offer state:
"unanswered","accepted","rejected","expired","removed", or"closed". - uriType: stringrequired
Opaque canonical Propstreet entity URI for deep linking.
- acceptedType: null | stringFormat: date-time
Utc When the investor accepted the teaser (UTC).
- acceptType: null | string
Message Free-form message the investor included with their acceptance.
- brokerType: object · OfferBroker nullable
Broker contact. Populated for accepted and established offers; null otherwise.
- nameType: stringrequired
Broker's full display name.
- companyType: null | string
Name Broker's company name.
- jobType: null | string
Title Broker's job title.
- capabilitiesType: array string[]
Capability flags indicating what actions are available for this offer. Possible values: chat (messaging with the broker is available).
- communicatedType: null | stringFormat: date-time
Utc When the teaser was first delivered to the investor (UTC).
- deadlineType: null | stringFormat: date-time
Utc Deadline for the investor to respond (UTC).
- teaserType: object · InvestorTeaser nullable
Anonymized teaser content (asset mix, price/yield/area ranges, zoning, tags).
- idType: stringrequired
Stable teaser identifier.
- avgType: object · YearsRange nullable
Contract Length Average remaining contract length across tenants (years).
- categoriesType: array object[] · InvestorTeaserCategory[]
Asset-category mix (e.g. office 70%, retail 30%).
A single entry in the teaser's category mix.
- conversionsType: array string[] | null
Alternative use categories the broker suggests as viable for the property (e.g. office that could be converted to residential). Non-binding broker hints. Values: residential, office, retail, industrial, social_infrastructure, hotel, land, special_purpose.
- countryType: null | string
ISO 3166-1 alpha-2 country code.
- investmentType: object · PriceRange nullable
Size Total investment size range (ticket size).
- isType: null | boolean
Pre Market True when this teaser is pre-market.
- leasableType: object · AreaRange nullable
Units Leasable area range (sqm).
- localityType: null | string
Locality (city / municipality).
- noiType: object · PriceRange nullable
Net operating income range.
- parcelType: object · AreaRange nullable
Area Parcel (land) area range (sqm).
- propertyType: object · UnitRange nullable
Count Number of properties in the portfolio (range).
- rentalType: object · PriceRange nullable
Income Annualised rental income range.
- rentedType: object · PercentRange nullable
Percent Occupied-space percentage range.
- tagsType: array string[] | null
Teaser tags applied by the broker (e.g. green_building, value_add, triple_net, long_leases, core_plus). See documentation for the full list.
- tenureType: null | string
Property tenure: freehold or leasehold.
- titleType: null | string
Human-readable display title, composed from the teaser's asset categories and locality in the caller's UI language (e.g.
"Industrial, Tullinge (SE)"). Safe to use as a row heading or link label when presenting the teaser. Null when categories and locality are both unknown. - totalType: object · PriceRange nullable
Costs Total operating costs range.
- yearType: object · YearRange nullable
Built Range of year built across the portfolio.
- yieldType: object · PercentRange nullable
Gross yield range.
- zoningType: array string[] | null
Categories Zoning categories (permitted uses). Values: residential, office, retail, industrial, social_infrastructure, hotel, land, special_purpose.
- zoningType: object · AreaRange nullable
Gfa Permitted gross floor area range (sqm).