Documentation for the cpp-boost-beast-client Generator
METADATA
| Property | Value | Notes |
|---|---|---|
| generator name | cpp-boost-beast-client | pass this to the generate command after -g |
| generator stability | STABLE | |
| generator type | CLIENT | |
| generator language | C++ | |
| generator default templating engine | mustache | |
| helpTxt | Generates a cpp-boost-beast client. |
CONFIG OPTIONS
These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to configuration docs for more details.
| Option | Description | Values | Default |
|---|---|---|---|
| apiPackage | C++ namespace for apis (convention: name.space.api). | org.openapitools.client.api | |
| compileWithValidation | Emit schema-validation IR and kValidateOnDecode=true in generated ValidationTypes.h (default). Set to false to omit the IR for high-throughput clients. Representation diagnostics (non-finite destinations, integer range, required properties) remain active. | true | |
| exportMacro | C++ export macro placed before public classes and functions. When non-empty, ApiExport.h is generated for Windows DLL export/import handling. | ||
| formatAssertionPolicy | Format handling in composition branch matching. Only 'annotation' is supported: format metadata never affects match counts. |
| annotation |
| inferConditionalSseOperations | Infer conditional SSE for dual JSON/SSE operations only when the request selector and event model are unambiguous. Enabled by default. | true | |
| modelPackage | C++ namespace for models (convention: name.space.model). | org.openapitools.client.model | |
| packageName | C++ package and library name. | CppBoostBeastOpenAPIClient | |
| preserveAdditionalProperties | Retain undeclared JSON object members in generated object models and re-emit them. Composition validation accepts such members while decoding; set to false for strict additionalProperties handling. | false | |
| sseEventTypeMappings | Comma-separated operationId=Model mappings for the JSON schema of each SSE event data payload. | null | |
| sseOperationIds | Comma-separated operationIds whose JSON request body conditionally selects text/event-stream (default request property: stream). | null | |
| sseRequestPropertyMappings | Comma-separated operationId=property mappings for the boolean request property that selects SSE. | null | |
| sseSchemaMode | SSE schema interpretation mode for text/event-stream responses. 'representation' (default): the response schema describes the media representation; callbacks receive an owning SseEvent with raw data, event, id, and retry metadata. 'jsonEventData': decode each complete event data payload against the response schema and pass both the typed value and SseEvent metadata to the callback. Use x-sse-event-data-schema for per-operation typed decoding. |
| representation |
| tolerateNonNullableNulls | Treat explicit JSON null values as absent for generated model properties whose schemas do not allow null. Enabled by default to tolerate non-conforming server responses while preserving required-key presence checks; set to false for strict schema decoding. Non-null values remain fully validated. | true |
IMPORT MAPPING
| Type/Alias | Imports |
|---|---|
| AnyType | #include "AnyType.h" |
| Null | #include <cstddef> |
| boost::json::value | #include <boost/json.hpp> |
| int32_t | #include <cstdint> |
| int64_t | #include <cstdint> |
| std::map | #include <map> |
| std::monostate | #include <variant> |
| std::nullptr_t | #include <cstddef> |
| std::optional | #include <optional> |
| std::shared_ptr | #include <memory> |
| std::string | #include <string> |
| std::variant | #include <variant> |
| std::vector | #include <vector> |
INSTANTIATION TYPES
| Type/Alias | Instantiated By |
|---|
LANGUAGE PRIMITIVES
- bool
- char
- double
- float
- int
- long
- std::int32_t
- std::int64_t
RESERVED WORDS
- NULL
- alignas
- alignof
- and
- and_eq
- asm
- auto
- bitand
- bitor
- bool
- break
- case
- catch
- char
- char16_t
- char32_t
- class
- compl
- concept
- const
- const_cast
- constexpr
- continue
- decltype
- default
- delete
- do
- double
- dynamic_cast
- else
- enum
- explicit
- export
- extern
- false
- float
- for
- friend
- goto
- if
- inline
- int
- linux
- long
- mutable
- namespace
- new
- noexcept
- not
- not_eq
- nullptr
- operator
- or
- or_eq
- private
- protected
- public
- register
- reinterpret_cast
- requires
- return
- short
- signed
- sizeof
- static
- static_assert
- static_cast
- struct
- switch
- template
- this
- thread_local
- throw
- true
- try
- typedef
- typeid
- typename
- union
- unsigned
- using
- virtual
- void
- volatile
- wchar_t
- while
- xor
- xor_eq
FEATURE SET
Client Modification Feature
| Name | Supported | Defined By |
|---|---|---|
| BasePath | ✗ | ToolingExtension |
| Authorizations | ✗ | ToolingExtension |
| UserAgent | ✗ | ToolingExtension |
| MockServer | ✗ | ToolingExtension |
Data Type Feature
| Name | Supported | Defined By |
|---|---|---|
| Custom | ✗ | OAS2,OAS3 |
| Int32 | ✓ | OAS2,OAS3 |
| Int64 | ✓ | OAS2,OAS3 |
| Float | ✓ | OAS2,OAS3 |
| Double | ✓ | OAS2,OAS3 |
| Decimal | ✗ | ToolingExtension |
| String | ✓ | OAS2,OAS3 |
| Byte | ✗ | OAS2,OAS3 |
| Binary | ✗ | OAS2,OAS3 |
| Boolean | ✓ | OAS2,OAS3 |
| Date | ✗ | OAS2,OAS3 |
| DateTime | ✗ | OAS2,OAS3 |
| Password | ✗ | OAS2,OAS3 |
| File | ✓ | OAS2 |
| Uuid | ✗ | |
| Array | ✓ | OAS2,OAS3 |
| Null | ✓ | OAS3 |
| AnyType | ✓ | OAS2,OAS3 |
| Object | ✓ | OAS2,OAS3 |
| Maps | ✓ | ToolingExtension |
| CollectionFormat | ✓ | OAS2 |
| CollectionFormatMulti | ✓ | OAS2 |
| Enum | ✓ | OAS2,OAS3 |
| ArrayOfEnum | ✓ | ToolingExtension |
| ArrayOfModel | ✓ | ToolingExtension |
| ArrayOfCollectionOfPrimitives | ✓ | ToolingExtension |
| ArrayOfCollectionOfModel | ✓ | ToolingExtension |
| ArrayOfCollectionOfEnum | ✓ | ToolingExtension |
| MapOfEnum | ✓ | ToolingExtension |
| MapOfModel | ✓ | ToolingExtension |
| MapOfCollectionOfPrimitives | ✓ | ToolingExtension |
| MapOfCollectionOfModel | ✓ | ToolingExtension |
| MapOfCollectionOfEnum | ✓ | ToolingExtension |
Documentation Feature
| Name | Supported | Defined By |
|---|---|---|
| Readme | ✓ | ToolingExtension |
| Model | ✓ | ToolingExtension |
| Api | ✓ | ToolingExtension |
Global Feature
| Name | Supported | Defined By |
|---|---|---|
| Host | ✓ | OAS2,OAS3 |
| BasePath | ✓ | OAS2,OAS3 |
| Info | ✓ | OAS2,OAS3 |
| Schemes | ✗ | OAS2,OAS3 |
| PartialSchemes | ✓ | OAS2,OAS3 |
| Consumes | ✓ | OAS2 |
| Produces | ✓ | OAS2 |
| ExternalDocumentation | ✓ | OAS2,OAS3 |
| Examples | ✓ | OAS2,OAS3 |
| XMLStructureDefinitions | ✗ | OAS2,OAS3 |
| MultiServer | ✓ | OAS3 |
| ParameterizedServer | ✗ | OAS3 |
| ParameterStyling | ✓ | OAS3 |
| Callbacks | ✓ | OAS3 |
| LinkObjects | ✓ | OAS3 |
Parameter Feature
| Name | Supported | Defined By |
|---|---|---|
| Path | ✓ | OAS2,OAS3 |
| Query | ✓ | OAS2,OAS3 |
| Header | ✓ | OAS2,OAS3 |
| Body | ✓ | OAS2 |
| FormUnencoded | ✓ | OAS2 |
| FormMultipart | ✓ | OAS2 |
| Cookie | ✓ | OAS3 |
Schema Support Feature
| Name | Supported | Defined By |
|---|---|---|
| Simple | ✓ | OAS2,OAS3 |
| Composite | ✓ | OAS2,OAS3 |
| Polymorphism | ✓ | OAS2,OAS3 |
| Union | ✓ | OAS3 |
| allOf | ✓ | OAS2,OAS3 |
| anyOf | ✓ | OAS3 |
| oneOf | ✓ | OAS3 |
| not | ✓ | OAS3 |
Security Feature
| Name | Supported | Defined By |
|---|---|---|
| BasicAuth | ✗ | OAS2,OAS3 |
| ApiKey | ✗ | OAS2,OAS3 |
| OpenIDConnect | ✗ | OAS3 |
| BearerToken | ✗ | OAS3 |
| OAuth2_Implicit | ✗ | OAS2,OAS3 |
| OAuth2_Password | ✗ | OAS2,OAS3 |
| OAuth2_ClientCredentials | ✗ | OAS2,OAS3 |
| OAuth2_AuthorizationCode | ✗ | OAS2,OAS3 |
| SignatureAuth | ✗ | OAS3 |
| AWSV4Signature | ✗ | ToolingExtension |
Wire Format Feature
| Name | Supported | Defined By |
|---|---|---|
| JSON | ✓ | OAS2,OAS3 |
| XML | ✓ | OAS2,OAS3 |
| PROTOBUF | ✗ | ToolingExtension |
| Custom | ✗ | OAS2,OAS3 |