You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
When documenting an API I ran into a bug where the Redocly CLI build docs, or the open source HTML Element properly renders the code examples for a oneOf/discriminator requestBody but fails to present the schema, properties, and descriptions.
Expected behavior
I expect the schema definition, with properties and description.
Minimal reproducible OpenAPI snippet(if possible)
openapi: 3.1.0info:
title: Simple Consentdescription:
Foo barversion: 0.0.1paths:
'/ping-post/post':
post:
operationId: postsummary: Transact a lead saledescription: | Use the following API after a successful Ping response (see above) to transact a sale of a lead to Modernize Home Services, by sending full details the lead along with a PingToken.requestBody:
$ref: '#/components/requestBodies/Post'responses:
'200':
$ref: '#/components/responses/SuccessfulPost'components:
schemas:
Status:
type: stringenum:
- ACCEPTED
- REJECTED
- ERRORTagId:
type: stringexample: "204670250"description: | The tagId is unique to your publisher account and authorizes you to send leads for particular services. tagID=204670250 is used only for the Staging environment. Once we confirm stage tests and you move to using the production API, this value must be replaced with the tagID value given to you by your account manager. **NOTE:** Test submissions are not billable.ServiceType:
type: stringdescription: "The type of home service being requested, e.g., Windows Installation."example: "WINDOWS"enum:
- ALERTS_MEDICAL
- BATH_REMODEL
- BATHROOM_REFACING
- DRAINS
- DUMPSTER_RENTAL
- FULL_SERVICE_JUNK_REMOVAL
- GUTTER_COVERS
- GUTTERS
- GUTTER_CLEANING
- HOME_SECURITY
- HOT_TUBS
- HVAC
- LABOR_SERVICES
- MOVING
- PLUMBING
- ROOFING_ASPHALT
- ROOFING_CEDAR_SHAKE
- ROOFING_COMPOSITE
- ROOFING_METAL
- ROOFING_NATURAL_SLATE
- ROOFING_TAR_TORCHDOWN
- ROOFING_TILE
- SEWER
- SIDING_ALUMINIUM
- SIDING_BRICKFACE
- SIDING_COMPOSITE_WOOD
- SIDING_STONEFACE
- SIDING_VINYL
- SOLAR
- STAIR_LIFTS
- TREE_SERVICES
- WALK_IN_TUBS
- WATER_MAIN
- WATER_HEATERS
- WATER_TREATMENT
- WINDOWS
- WALK_IN_SHOWERSPostalCode:
type: stringdescription: 5-digit US zip codeexample: "99751"NumberOfWindows:
type: stringexample: "6-9"description: | If more than 9 windows, use `6-9`enum:
- 1
- 2
- 3-5
- 6-9BuyTimeFrame:
type: stringexample: "Immediately"enum:
- Immediately
- 1-6 months
- Don't KnowOwnHome:
type: booleanexample: truedescription: | If not the owner, but is authorized to make improvements, use `Yes`enum:
- true
- falseHomePhoneConsent:
type: booleanexample: falsedescription: | **PING ONLY.** Indicates whether you gathered consent prior to pinging Modernize Home Services. Leave blank or use false if you did not acquire consent.enum:
- true
- falsePartnerSourceId:
type: stringdescription: | Value to identify campaigns by marketing efforts or channels on the publisher side. Helps Modernize track and report quality back to publisherexample: "CampaignA"PublisherSubId:
type: stringdescription: | Publisher's own transaction-level identifier for the lead.example: "12345"ConsentKeys:
type: arrayitems:
type: stringexample:
- "67c3eb4a9e844c6439037345"
- "e6678asdf76589eff90b7c54"
- "eaf593eb4a9e8c64390332ef"
- "83528asdf76589eff90ba6309"
- "64448asdf33869eff90baaa54"description: "An array of unique consent key identifiers for reference."HomePhoneConsentLanguage:
type: stringdescription: | **POST ONLY.** Complete, URL-encoded string of of consent language displayed to consumer. Send on Posts only.example: "<consent language goes here>"FirstName:
type: stringexample: "Grizzly"description: First nameLastName:
type: stringexample: "Bear"description: Last nameStreetAddress:
type: stringexample: "9305 Nimbus Ave"description: AddressCity:
type: stringexample: "Kobuk"description: CityState:
type: stringexample: "AK"description: State (USPS abbreviation)HomePhone:
type: stringexample: "5039065030"description: Phone (10-digit US, no special chars)Email:
type: stringexample: "[email protected]"description: EmailTrustedFormToken:
type: stringexample: "https://cert.trustedform.com/5d9f37382eca1518c752db469cacb6668049c8d3"description: | TrustedForm token or token URL **\*** **\*** A compliance certification token is required on all leads. You must pass either or both of LeadIDToken (Jornaya) or TrustedFormToken (ActiveProspect) for a lead to be accepted.LeadIDToken:
type: stringexample: "EAF0AAF2-55CD-08A7-DE78-C5A090B3A57B"description: | 32-char Jornaya LeadiD Token **\*** **\*** A compliance certification token is required on all leads. You must pass either or both of LeadIDToken (Jornaya) or TrustedFormToken (ActiveProspect) for a lead to be accepted.BasePostDetails:
type: objectproperties:
tagId:
$ref: '#/components/schemas/TagId'serviceType:
$ref: '#/components/schemas/ServiceType'postalCode:
$ref: '#/components/schemas/PostalCode'buyTimeframe:
$ref: '#/components/schemas/BuyTimeFrame'ownHome:
$ref: '#/components/schemas/OwnHome'publisherSubId:
$ref: '#/components/schemas/PublisherSubId'partnerSourceId:
$ref: '#/components/schemas/PartnerSourceId'homePhoneConsentLanguage:
$ref: '#/components/schemas/HomePhoneConsentLanguage'firstName:
$ref: '#/components/schemas/FirstName'lastName:
$ref: '#/components/schemas/LastName'address:
$ref: '#/components/schemas/StreetAddress'city:
$ref: '#/components/schemas/City'state:
$ref: '#/components/schemas/State'homePhone:
$ref: '#/components/schemas/HomePhone'email:
$ref: '#/components/schemas/Email'consentKeys:
$ref: '#/components/schemas/ConsentKeys'trustedFormToken:
$ref: '#/components/schemas/TrustedFormToken'leadIDToken:
$ref: '#/components/schemas/LeadIDToken'required:
- tagId
- buyTimeframe
- ownHome
- serviceType
- postalCode
- homePhoneConsentLanguage
- partnerSourceId
- publisherSubId
- firstName
- lastName
- address
- city
- state
- homePhone
- email
- consentKeysoneOf:
- required:
- leadIDToken
- required:
- trustedFormTokengAlertsMedicalPost:
allOf:
- $ref: '#/components/schemas/BasePostDetails'
- type: objectproperties:
medicalAlertProtection:
type: stringenum:
- Home
- OnTheGo
- BothwhoseMedicalAlert:
type: stringenum:
- Myself
- SomebodyElseBathRemodelPost:
allOf:
- $ref: '#/components/schemas/BasePostDetails'
- type: objectproperties:
optIn1:
type: booleanenum:
- true
- falseBathroomRefacingPost:
allOf:
- $ref: '#/components/schemas/BasePostDetails'DrainsPost:
allOf:
- $ref: '#/components/schemas/BasePostDetails'
- type: objectproperties:
drainageIssue:
type: stringenum:
- Pumps
- Garbage disposal
- Leadresponses:
SuccessfulPost:
description: 'Accepted Post Response'content:
'application/json':
schema:
type: objectproperties:
STATUS:
$ref: '#/components/schemas/Status'GDCKEY:
type: stringrequestBodies:
Post:
description: 'Post Lead with Consent'content:
'application/json':
schema:
discriminator:
propertyName: serviceTypemapping:
ALERTS_MEDICAL: '#/components/schemas/AlertsMedicalPost'BATH_REMODEL: '#/components/schemas/BathRemodelPost'BATHROOM_REFACING: '#/components/schemas/BathroomRefacingPost'DRAINS: '#/components/schemas/DrainsPost'oneOf:
- $ref: '#/components/schemas/AlertsMedicalPost'
- $ref: '#/components/schemas/BathRemodelPost'
- $ref: '#/components/schemas/BathroomRefacingPost'
- $ref: '#/components/schemas/DrainsPost'
Screenshots
Additional context
N/A
The text was updated successfully, but these errors were encountered:
Describe the bug
When documenting an API I ran into a bug where the Redocly CLI build docs, or the open source HTML Element properly renders the code examples for a
oneOf/discriminator
requestBody but fails to present the schema, properties, and descriptions.Expected behavior
I expect the schema definition, with properties and description.
Minimal reproducible OpenAPI snippet(if possible)
Screenshots
Additional context
N/A
The text was updated successfully, but these errors were encountered: