* Adds get/setIsString interface to IJsonSchemaValidationProperties * Adds get/set isNumber interface in IJsonSchemaValidationProperties * Adds get/set isAnyType in IJsonSchemaValidationProperties * Adds and uses ModelUtils.isAnyType, adds setTypeProperties * Adds missing descriptions of isAnyType parameters * Uses ModelUtils.isAnyType * Samples regenerated * Moves isArray handling higher up in fromProperty * Moves isAnyTypeSchema handling higher up in fromProperty * Moves isFreeFormObject handling higher up in fromProperty * Refactors fromProperties, updates tests * Fixes the fromProperty refactor, tests now pass * Uses setTypeProperties to set isNumber, isNull, isArray, and isUnboundedInteger * Sets isAnyType in setTypeProperties * Sets isMap in setTypeProperties * Sets property.isPrimitiveType in isFreeFormObject, tweaks if condition order * Adds fix for JavaClientCodegenTest.testJdkHttpClientWithAndWithoutDiscriminator * Refactors fromProperty * Adds updatePropertyForObject updatePropertyForAnyType * Sets binary and file types to not be strings * Updates samples * Adds updatePropertyForString * Adds testComposedPropertyTypes * Fixes python test * Samples updated * Switches all isAnyTypeSchema usages to ModelUtils.isAnyType * Refactors model enum handling higher up * Moves m.dataType assignent higher into fromModel * Moves m.isNullable setting higher into isModel * Adds updateModelForComposedSchema * Further fromModel refactoring, all schema checks are now at the same indentation level * Further refactors fromModel, adds isTypeObjectSchema block * Moves addVars into anyType or objectType blocks in fromModel * Turns off isNullable n isAnyType array * Fixes typescript CodegenParameers * Adds updatePropertyForAnyType to typescript-axios so property.isNullable will be false for AnyType * Adds testComposedModelTypes * Updates ComposedAnyType schema * Fixes tests for JavaJAXRSCXF by adding updateModelForObject method * Updates go and csharp to handle object model differently * Adds updateModelForAnyType * Fixes name reference * Adds testComposedResponseTypes * Refactoring fromResponse * Further refactoring of fromResponse * Uses setTypeProperties in fromResponse * Tests now pass for testComposedResponseTypes * Sets COdegenResponse dataType using getTypeDeclaration * Begins refactoring of fromRequestBody * Adds updateResponseBodyForPrimitiveType * Adds all needed type if else blocks in fromRequestBody * Fixes JavaJAXRSCXFExtServerCodegenTests * Fixes RubyClientCodegenTests * Adds fixes for clients that need custom isMap for body parameters * Ruby broken, samples regened, debugging * Adds updateRequestBodyForArray, renames updateRequest.. methods * Samples regenerated * Removes changes from Ruby generator * Reverts RubyClientCodegen.java * Reverts changes to GoClientCodegen.java * Reverts PowerShellClientCodegen.java * Reverts CrystalClientCodegen.java * Removes updateRequestBodyForObject from JavaCXFServerCodegen.java * Adds comment about refed models * Tweaks made to fromProperties to add an explanatory comment * Updates RustServer to have ByteArray request bodies not be strings * Sets types in fromFormProperty * Adds testComposedRequestBodyTypes * Fixes when validation syncing is done in syncValidationProperties * Removes redundant validation code from fromParameter * Moves parameter inX setting higher up before schema logic in fromParameter * More refactoring in fromParameter, uses early return to reduce levels of indentation * Removes setParameterBooleanFlagWithCodegenProperty from updateRequestBodyForArray * Removes setParameterBooleanFlagWithCodegenProperty from updateRequestBodyForObject * Removes setParameterBooleanFlagWithCodegenProperty from updateRequestBodyForPrimitiveType * Removes setParameterBooleanFlagWithCodegenProperty from updateRequestBodyForMap * Removes setParameterBooleanFlagWithCodegenProperty from addBodyModelSchema * Removes setParameterBooleanFlagWithCodegenProperty from fromFormProperty * Refactors parameter array handling code into fromFormProperty * Simplifies fromRequestBodyToFormParameters * Removes setParameterBooleanFlagWithCodegenProperty from fromParameter * Adds deprecated docstring to setParameterBooleanFlagWithCodegenProperty * Refactors ModelUtils.isFileSchema out of string schema check * Removes ModelUtils.isFileSchema from RustServer updateRequestBodyForString * Improves comment text * Fixes RustServer uuid type setting for CodegenParameter * Removes unneeded parens * Fixes array property examples * Removes unused code * Renames variable to itemsProperty * Adds testComposedRequestQueryParamTypes * Adds updatePropertyForAnyType to rustserver will not have changed model properties * Hoists arrayInnerProperty._enum into parameter for html2 generator * Moves turning string type off into the codegen files * Adds two more missing locations in rustserver * Moves addVarsRequiredVarsAdditionalProps into anytype and objecttype handling * More refactoring of where addVarsRequiredVarsAdditionalProps is used * Samples regenerated
Org.OpenAPITools - the C# library for the OpenAPI Petstore
This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: " \
This C# SDK is automatically generated by the OpenAPI Generator project:
- API version: 1.0.0
- SDK version: 1.0.0
- Build package: org.openapitools.codegen.languages.CSharpClientCodegen
Frameworks supported
- .NET 4.0 or later
- Windows Phone 7.1 (Mango)
Dependencies
- RestSharp - 105.1.0 or later
- Json.NET - 7.0.0 or later
- JsonSubTypes - 1.2.0 or later
The DLLs included in the package may not be the latest version. We recommend using NuGet to obtain the latest version of the packages:
Install-Package RestSharp
Install-Package Newtonsoft.Json
Install-Package JsonSubTypes
NOTE: RestSharp versions greater than 105.1.0 have a bug which causes file uploads to fail. See RestSharp#742
Installation
Run the following command to generate the DLL
- [Mac/Linux]
/bin/sh build.sh
- [Windows]
build.bat
Then include the DLL (under the bin
folder) in the C# project, and use the namespaces:
using Org.OpenAPITools.Api;
using Org.OpenAPITools.Client;
using Org.OpenAPITools.Model;
Packaging
A .nuspec
is included with the project. You can follow the Nuget quickstart to create and publish packages.
This .nuspec
uses placeholders from the .csproj
, so build the .csproj
directly:
nuget pack -Build -OutputDirectory out Org.OpenAPITools.csproj
Then, publish to a local feed or other host and consume the new package via Nuget as usual.
Getting Started
using System.Collections.Generic;
using System.Diagnostics;
using Org.OpenAPITools.Api;
using Org.OpenAPITools.Client;
using Org.OpenAPITools.Model;
namespace Example
{
public class Example
{
public static void Main()
{
Configuration.Default.BasePath = "http://petstore.swagger.io:80/v2";
var apiInstance = new AnotherFakeApi(Configuration.Default);
var modelClient = new ModelClient(); // ModelClient | client model
try
{
// To test special tags
ModelClient result = apiInstance.Call123TestSpecialTags(modelClient);
Debug.WriteLine(result);
}
catch (ApiException e)
{
Debug.Print("Exception when calling AnotherFakeApi.Call123TestSpecialTags: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
Documentation for API Endpoints
All URIs are relative to http://petstore.swagger.io:80/v2
Class | Method | HTTP request | Description |
---|---|---|---|
AnotherFakeApi | Call123TestSpecialTags | PATCH /another-fake/dummy | To test special tags |
DefaultApi | FooGet | GET /foo | |
FakeApi | FakeHealthGet | GET /fake/health | Health check endpoint |
FakeApi | FakeHttpSignatureTest | GET /fake/http-signature-test | test http signature authentication |
FakeApi | FakeOuterBooleanSerialize | POST /fake/outer/boolean | |
FakeApi | FakeOuterCompositeSerialize | POST /fake/outer/composite | |
FakeApi | FakeOuterNumberSerialize | POST /fake/outer/number | |
FakeApi | FakeOuterStringSerialize | POST /fake/outer/string | |
FakeApi | FakePropertyEnumIntegerSerialize | POST /fake/property/enum-int | |
FakeApi | TestBodyWithBinary | PUT /fake/body-with-binary | |
FakeApi | TestBodyWithFileSchema | PUT /fake/body-with-file-schema | |
FakeApi | TestBodyWithQueryParams | PUT /fake/body-with-query-params | |
FakeApi | TestClientModel | PATCH /fake | To test "client" model |
FakeApi | TestEndpointParameters | POST /fake | Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 |
FakeApi | TestEnumParameters | GET /fake | To test enum parameters |
FakeApi | TestGroupParameters | DELETE /fake | Fake endpoint to test group parameters (optional) |
FakeApi | TestInlineAdditionalProperties | POST /fake/inline-additionalProperties | test inline additionalProperties |
FakeApi | TestJsonFormData | GET /fake/jsonFormData | test json serialization of form data |
FakeApi | TestQueryParameterCollectionFormat | PUT /fake/test-query-parameters | |
FakeClassnameTags123Api | TestClassname | PATCH /fake_classname_test | To test class name in snake case |
PetApi | AddPet | POST /pet | Add a new pet to the store |
PetApi | DeletePet | DELETE /pet/{petId} | Deletes a pet |
PetApi | FindPetsByStatus | GET /pet/findByStatus | Finds Pets by status |
PetApi | FindPetsByTags | GET /pet/findByTags | Finds Pets by tags |
PetApi | GetPetById | GET /pet/{petId} | Find pet by ID |
PetApi | UpdatePet | PUT /pet | Update an existing pet |
PetApi | UpdatePetWithForm | POST /pet/{petId} | Updates a pet in the store with form data |
PetApi | UploadFile | POST /pet/{petId}/uploadImage | uploads an image |
PetApi | UploadFileWithRequiredFile | POST /fake/{petId}/uploadImageWithRequiredFile | uploads an image (required) |
StoreApi | DeleteOrder | DELETE /store/order/{order_id} | Delete purchase order by ID |
StoreApi | GetInventory | GET /store/inventory | Returns pet inventories by status |
StoreApi | GetOrderById | GET /store/order/{order_id} | Find purchase order by ID |
StoreApi | PlaceOrder | POST /store/order | Place an order for a pet |
UserApi | CreateUser | POST /user | Create user |
UserApi | CreateUsersWithArrayInput | POST /user/createWithArray | Creates list of users with given input array |
UserApi | CreateUsersWithListInput | POST /user/createWithList | Creates list of users with given input array |
UserApi | DeleteUser | DELETE /user/{username} | Delete user |
UserApi | GetUserByName | GET /user/{username} | Get user by user name |
UserApi | LoginUser | GET /user/login | Logs user into the system |
UserApi | LogoutUser | GET /user/logout | Logs out current logged in user session |
UserApi | UpdateUser | PUT /user/{username} | Updated user |
Documentation for Models
- Model.AdditionalPropertiesClass
- Model.Animal
- Model.ApiResponse
- Model.ArrayOfArrayOfNumberOnly
- Model.ArrayOfNumberOnly
- Model.ArrayTest
- Model.Capitalization
- Model.Cat
- Model.CatAllOf
- Model.Category
- Model.ClassModel
- Model.DeprecatedObject
- Model.Dog
- Model.DogAllOf
- Model.EnumArrays
- Model.EnumClass
- Model.EnumTest
- Model.File
- Model.FileSchemaTestClass
- Model.Foo
- Model.FormatTest
- Model.HasOnlyReadOnly
- Model.HealthCheckResult
- Model.InlineResponseDefault
- Model.List
- Model.MapTest
- Model.MixedPropertiesAndAdditionalPropertiesClass
- Model.Model200Response
- Model.ModelClient
- Model.Name
- Model.NullableClass
- Model.NumberOnly
- Model.ObjectWithDeprecatedFields
- Model.Order
- Model.OuterComposite
- Model.OuterEnum
- Model.OuterEnumDefaultValue
- Model.OuterEnumInteger
- Model.OuterEnumIntegerDefaultValue
- Model.OuterObjectWithEnumProperty
- Model.Pet
- Model.ReadOnlyFirst
- Model.Return
- Model.SpecialModelName
- Model.Tag
- Model.User
Documentation for Authorization
api_key
-
Type: API key
-
API key parameter name: api_key
-
Location: HTTP header
api_key_query
-
Type: API key
-
API key parameter name: api_key_query
-
Location: URL query string
bearer_test
- Type: HTTP bearer authentication
http_basic_test
- Type: HTTP basic authentication
http_signature_test
petstore_auth
- Type: OAuth
- Flow: implicit
- Authorization URL: http://petstore.swagger.io/api/oauth/dialog
- Scopes:
- write:pets: modify pets in your account
- read:pets: read your pets