* fix validation with discriminator using parent instead * add new files * add new workflow * fix
Org.OpenAPITools - the C# library for the Echo Server API
Echo Server API
This C# SDK is automatically generated by the OpenAPI Generator project:
- API version: 0.1.0
 - SDK version: 1.0.0
 - Build package: org.openapitools.codegen.languages.CSharpClientCodegen
 
Frameworks supported
Dependencies
- RestSharp - 106.13.0 or later
 - Json.NET - 13.0.2 or later
 - JsonSubTypes - 1.8.0 or later
 - System.ComponentModel.Annotations - 5.0.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
Install-Package System.ComponentModel.Annotations
NOTE: RestSharp versions greater than 105.1.0 have a bug which causes file uploads to fail. See RestSharp#742. NOTE: RestSharp for .Net Core creates a new socket for each api call, which can lead to a socket exhaustion problem. See RestSharp#1406.
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.
Usage
To use the API client with a HTTP proxy, setup a System.Net.WebProxy
Configuration c = new Configuration();
System.Net.WebProxy webProxy = new System.Net.WebProxy("http://myProxyUrl:80/");
webProxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
c.Proxy = webProxy;
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 config = new Configuration();
            config.BasePath = "http://localhost:3000";
            var apiInstance = new BodyApi(config);
            try
            {
                // Test binary (gif) response body
                System.IO.Stream result = apiInstance.TestBinaryGif();
                Debug.WriteLine(result);
            }
            catch (ApiException e)
            {
                Debug.Print("Exception when calling BodyApi.TestBinaryGif: " + e.Message );
                Debug.Print("Status Code: "+ e.ErrorCode);
                Debug.Print(e.StackTrace);
            }
        }
    }
}
Documentation for API Endpoints
All URIs are relative to http://localhost:3000
| Class | Method | HTTP request | Description | 
|---|---|---|---|
| BodyApi | TestBinaryGif | POST /binary/gif | Test binary (gif) response body | 
| BodyApi | TestBodyApplicationOctetstreamBinary | POST /body/application/octetstream/binary | Test body parameter(s) | 
| BodyApi | TestEchoBodyFreeFormObjectResponseString | POST /echo/body/FreeFormObject/response_string | Test free form object | 
| BodyApi | TestEchoBodyPet | POST /echo/body/Pet | Test body parameter(s) | 
| BodyApi | TestEchoBodyPetResponseString | POST /echo/body/Pet/response_string | Test empty response body | 
| BodyApi | TestEchoBodyTagResponseString | POST /echo/body/Tag/response_string | Test empty json (request body) | 
| FormApi | TestFormIntegerBooleanString | POST /form/integer/boolean/string | Test form parameter(s) | 
| HeaderApi | TestHeaderIntegerBooleanString | GET /header/integer/boolean/string | Test header parameter(s) | 
| PathApi | TestsPathStringPathStringIntegerPathInteger | GET /path/string/{path_string}/integer/{path_integer} | Test path parameter(s) | 
| QueryApi | TestEnumRefString | GET /query/enum_ref_string | Test query parameter(s) | 
| QueryApi | TestQueryDatetimeDateString | GET /query/datetime/date/string | Test query parameter(s) | 
| QueryApi | TestQueryIntegerBooleanString | GET /query/integer/boolean/string | Test query parameter(s) | 
| QueryApi | TestQueryStyleDeepObjectExplodeTrueObject | GET /query/style_deepObject/explode_true/object | Test query parameter(s) | 
| QueryApi | TestQueryStyleDeepObjectExplodeTrueObjectAllOf | GET /query/style_deepObject/explode_true/object/allOf | Test query parameter(s) | 
| QueryApi | TestQueryStyleFormExplodeTrueArrayString | GET /query/style_form/explode_true/array_string | Test query parameter(s) | 
| QueryApi | TestQueryStyleFormExplodeTrueObject | GET /query/style_form/explode_true/object | Test query parameter(s) | 
| QueryApi | TestQueryStyleFormExplodeTrueObjectAllOf | GET /query/style_form/explode_true/object/allOf | Test query parameter(s) | 
Documentation for Models
- Model.Bird
 - Model.Category
 - Model.DataQuery
 - Model.DefaultValue
 - Model.NumberPropertiesOnly
 - Model.Pet
 - Model.Query
 - Model.StringEnumRef
 - Model.Tag
 - Model.TestQueryStyleDeepObjectExplodeTrueObjectAllOfQueryObjectParameter
 - Model.TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter
 
Documentation for Authorization
Endpoints do not require authorization.