--- title: Documentation for the cpp-restsdk Generator --- ## METADATA | Property | Value | Notes | | -------- | ----- | ----- | | generator name | cpp-restsdk | 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 C++ API client with C++ REST SDK (https://github.com/Microsoft/cpprestsdk). | | ## CONFIG OPTIONS These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to [configuration docs](https://openapi-generator.tech/docs/configuration) for more details. | Option | Description | Values | Default | | ------ | ----------- | ------ | ------- | |apiPackage|C++ namespace for apis (convention: name.space.api).| |org.openapitools.client.api| |declspec|C++ preprocessor to place before the class name for handling dllexport/dllimport.| || |defaultInclude|The default include statement that should be placed in all headers for including things like the declspec (convention: #include "Commons.h" | || |generateGMocksForApis|Generate Google Mock classes for APIs.| |null| |modelPackage|C++ namespace for models (convention: name.space.model).| |org.openapitools.client.model| |packageName|C++ package (library) name.| |CppRestOpenAPIClient| |packageVersion|C++ package version.| |1.0.0| |reservedWordPrefix|Prefix to prepend to reserved words in order to avoid conflicts| |r_| |variableNameFirstCharacterUppercase|Make first character of variable name uppercase (eg. value -> Value)| |true| ## IMPORT MAPPING | Type/Alias | Imports | | ---------- | ------- | |HttpContent|#include "HttpContent.h"| |Object|#include "Object.h"| |std::map|#include <map>| |std::string|#include <string>| |std::vector|#include <vector>| |utility::datetime|#include <cpprest/details/basic_types.h>| |utility::string_t|#include <cpprest/details/basic_types.h>| ## INSTANTIATION TYPES | Type/Alias | Instantiated By | | ---------- | --------------- | ## LANGUAGE PRIMITIVES ## RESERVED WORDS ## 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