# Makes uiNodeAttributes polymorph - op: remove path: /components/schemas/uiNodeAttributes/type - op: add path: /components/schemas/uiNodeAttributes/discriminator value: propertyName: node_type mapping: input: "#/components/schemas/uiNodeInputAttributes" text: "#/components/schemas/uiNodeTextAttributes" img: "#/components/schemas/uiNodeImageAttributes" a: "#/components/schemas/uiNodeAnchorAttributes" script: "#/components/schemas/uiNodeScriptAttributes" div: "#/components/schemas/uiNodeDivisionAttributes" - op: add path: /components/schemas/uiNodeAttributes/oneOf value: - "$ref": "#/components/schemas/uiNodeInputAttributes" - "$ref": "#/components/schemas/uiNodeTextAttributes" - "$ref": "#/components/schemas/uiNodeImageAttributes" - "$ref": "#/components/schemas/uiNodeAnchorAttributes" - "$ref": "#/components/schemas/uiNodeScriptAttributes" - "$ref": "#/components/schemas/uiNodeDivisionAttributes" - op: replace path: /components/schemas/uiNodeDivisionAttributes/properties/node_type/enum value: - div - op: replace path: /components/schemas/uiNodeInputAttributes/properties/node_type/enum value: - input - op: replace path: /components/schemas/uiNodeTextAttributes/properties/node_type/enum value: - text - op: replace path: /components/schemas/uiNodeImageAttributes/properties/node_type/enum value: - img - op: replace path: /components/schemas/uiNodeAnchorAttributes/properties/node_type/enum value: - a - op: replace path: /components/schemas/uiNodeScriptAttributes/properties/node_type/enum value: - script # Makes the uiNodeInputAttributes value attribute polymorph - op: add path: /components/schemas/uiNodeInputAttributes/properties/value/nullable value: true - op: replace path: /components/schemas/flowError/properties/error value: type: object - op: remove path: "#/components/schemas/identityTraits/type" - op: add path: /components/schemas/continueWith/discriminator value: propertyName: action mapping: show_verification_ui: "#/components/schemas/continueWithVerificationUi" set_ory_session_token: "#/components/schemas/continueWithSetOrySessionToken" show_settings_ui: "#/components/schemas/continueWithSettingsUi" show_recovery_ui: "#/components/schemas/continueWithRecoveryUi" redirect_browser_to: "#/components/schemas/continueWithRedirectBrowserTo" show_pin_entry_ui: "#/components/schemas/continueWithDeviceAuthnPinEntryUi" - op: add path: /components/schemas/continueWith/oneOf value: - "$ref": "#/components/schemas/continueWithVerificationUi" - "$ref": "#/components/schemas/continueWithSetOrySessionToken" - "$ref": "#/components/schemas/continueWithSettingsUi" - "$ref": "#/components/schemas/continueWithRecoveryUi" - "$ref": "#/components/schemas/continueWithRedirectBrowserTo" - "$ref": "#/components/schemas/continueWithDeviceAuthnPinEntryUi" # DeviceAuthn: constrain UserVerification to its known values. go-swagger renders # the `type UserVerification string` alias as a plain string, so the enum is # pinned here. The valid values are pin, platform, and none. - op: add path: /components/schemas/UserVerification/enum value: - pin - platform - none # DeviceAuthn: constrain KeyState and DeviceType to their known values, for the # same reason as UserVerification above. - op: add path: /components/schemas/KeyState/enum value: - initial - confirmed - locked - op: add path: /components/schemas/DeviceType/enum value: - Android - iOS # Without explicit variable names, generators derive the "iOS" identifier as # I_OS / IOs. The names apply verbatim in every generated language. - op: add path: /components/schemas/DeviceType/x-enum-varnames value: - ANDROID - IOS # DeviceAuthn: the at-rest pin_secret ciphertext is server-internal and must # never be returned to clients. Mark it write-only so the SDK and docs flag it # as not-readable (Swagger 2.0 cannot express writeOnly, so this lands in the # OpenAPI 3.0 spec only). - op: add path: /components/schemas/PINConfig/properties/pin_secret/writeOnly value: true # DeviceAuthn: attach a description to the `data` property. go-swagger # drops a description next to a bare $ref, so wrap the $ref in allOf to keep the # reference and carry the description. - op: replace path: /components/schemas/continueWithDeviceAuthnPinEntryUi/properties/data value: description: >- The one-time HPKE-sealed pin_secret material the device opens to bind the user's PIN after a PIN-protected DeviceAuthn enrollment or secret rotation. allOf: - "$ref": "#/components/schemas/continueWithDeviceAuthnPinEntryUiData"