* add bearer auth API to echo-api * run generate-samples.sh * add resttemplate echo-api sample * add bearer auth test * remove @Ignore
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";
// Configure HTTP basic authorization: http_auth
config.Username = "YOUR_USERNAME";
config.Password = "YOUR_PASSWORD";
var apiInstance = new AuthApi(config);
try
{
// To test HTTP basic authentication
string result = apiInstance.TestAuthHttpBasic();
Debug.WriteLine(result);
}
catch (ApiException e)
{
Debug.Print("Exception when calling AuthApi.TestAuthHttpBasic: " + 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 |
---|---|---|---|
AuthApi | TestAuthHttpBasic | POST /auth/http/basic | To test HTTP basic authentication |
AuthApi | TestAuthHttpBearer | POST /auth/http/bearer | To test HTTP bearer authentication |
BodyApi | TestBinaryGif | POST /binary/gif | Test binary (gif) response body |
BodyApi | TestBodyApplicationOctetstreamBinary | POST /body/application/octetstream/binary | Test body parameter(s) |
BodyApi | TestBodyMultipartFormdataArrayOfBinary | POST /body/application/octetstream/array_of_binary | Test array of binary in multipart mime |
BodyApi | TestEchoBodyAllOfPet | POST /echo/body/allOf/Pet | 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) |
FormApi | TestFormOneof | POST /form/oneof | Test form parameter(s) for oneOf schema |
HeaderApi | TestHeaderIntegerBooleanStringEnums | GET /header/integer/boolean/string/enums | Test header parameter(s) |
PathApi | TestsPathStringPathStringIntegerPathIntegerEnumNonrefStringPathEnumRefStringPath | GET /path/string/{path_string}/integer/{path_integer}/{enum_nonref_string_path}/{enum_ref_string_path} | 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
Authentication schemes defined for the API:
http_auth
- Type: HTTP basic authentication
http_bearer_auth
- Type: Bearer Authentication