Skip to main content

Documentation for the cpp-boost-beast-client Generator

METADATA​

PropertyValueNotes
generator namecpp-boost-beast-clientpass this to the generate command after -g
generator stabilitySTABLE
generator typeCLIENT
generator languageC++
generator default templating enginemustache
helpTxtGenerates 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.

OptionDescriptionValuesDefault
apiPackageC++ namespace for apis (convention: name.space.api).org.openapitools.client.api
compileWithValidationEmit 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
exportMacroC++ export macro placed before public classes and functions. When non-empty, ApiExport.h is generated for Windows DLL export/import handling.
formatAssertionPolicyFormat handling in composition branch matching. Only 'annotation' is supported: format metadata never affects match counts.
annotation
Formats are annotations and do not affect validation
annotation
inferConditionalSseOperationsInfer conditional SSE for dual JSON/SSE operations only when the request selector and event model are unambiguous. Enabled by default.true
modelPackageC++ namespace for models (convention: name.space.model).org.openapitools.client.model
packageNameC++ package and library name.CppBoostBeastOpenAPIClient
preserveAdditionalPropertiesRetain 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
sseEventTypeMappingsComma-separated operationId=Model mappings for the JSON schema of each SSE event data payload.null
sseOperationIdsComma-separated operationIds whose JSON request body conditionally selects text/event-stream (default request property: stream).null
sseRequestPropertyMappingsComma-separated operationId=property mappings for the boolean request property that selects SSE.null
sseSchemaModeSSE 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
Schema describes the media representation; callback receives SseEvent
jsonEventData
Schema describes each JSON event data payload
representation
tolerateNonNullableNullsTreat 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/AliasImports
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/AliasInstantiated 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​

NameSupportedDefined By
BasePath✗ToolingExtension
Authorizations✗ToolingExtension
UserAgent✗ToolingExtension
MockServer✗ToolingExtension

Data Type Feature​

NameSupportedDefined 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​

NameSupportedDefined By
Readme✓ToolingExtension
Model✓ToolingExtension
Api✓ToolingExtension

Global Feature​

NameSupportedDefined 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​

NameSupportedDefined By
Path✓OAS2,OAS3
Query✓OAS2,OAS3
Header✓OAS2,OAS3
Body✓OAS2
FormUnencoded✓OAS2
FormMultipart✓OAS2
Cookie✓OAS3

Schema Support Feature​

NameSupportedDefined By
Simple✓OAS2,OAS3
Composite✓OAS2,OAS3
Polymorphism✓OAS2,OAS3
Union✓OAS3
allOf✓OAS2,OAS3
anyOf✓OAS3
oneOf✓OAS3
not✓OAS3

Security Feature​

NameSupportedDefined 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​

NameSupportedDefined By
JSON✓OAS2,OAS3
XML✓OAS2,OAS3
PROTOBUF✗ToolingExtension
Custom✗OAS2,OAS3