Refitter 0.1.3-alpha

This is a prerelease version of Refitter.
There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global Refitter --version 0.1.3-alpha
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local Refitter --version 0.1.3-alpha
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Refitter&version=0.1.3-alpha&prerelease
nuke :add-package Refitter --version 0.1.3-alpha

Build Smoke Tests

Refitter

Refitter is a CLI tool for generating a C# REST API Client using the Refit library.

Usage:

To generate code from an OpenAPI specifications file, run the following:

$ refitter [path to OpenAPI spec file]

This will generate a file called Output.cs which contains the Refit interface and contract classes generated using NSwag

Here's an example generated output from the Swagger Petstore example

using Refit;
using System.Threading.Tasks;
using System.Collections.Generic;

public interface ISwaggerPetstoreOpenAPI30
{
    [Put("/pet")]
    Task<Pet> UpdatePet([Body]Pet body);

    [Post("/pet")]
    Task<Pet> AddPet([Body]Pet body);

    [Get("/pet/findByStatus")]
    Task<ICollection<Pet>> FindPetsByStatus();

    [Get("/pet/findByTags")]
    Task<ICollection<Pet>> FindPetsByTags();

    [Get("/pet/{petId}")]
    Task<Pet> GetPetById(long? petId);

    [Post("/pet/{petId}")]
    Task UpdatePetWithForm(long? petId);

    [Delete("/pet/{petId}")]
    Task DeletePet(long? petId);

    [Post("/pet/{petId}/uploadImage")]
    Task<ApiResponse> UploadFile(long? petId, [Body]FileParameter body);

    [Get("/store/inventory")]
    Task<IDictionary<string, int>> GetInventory();

    [Post("/store/order")]
    Task<Order> PlaceOrder([Body]Order body);

    [Get("/store/order/{orderId}")]
    Task<Order> GetOrderById(long? orderId);

    [Delete("/store/order/{orderId}")]
    Task DeleteOrder(long? orderId);

    [Post("/user")]
    Task CreateUser([Body]User body);

    [Post("/user/createWithList")]
    Task<User> CreateUsersWithListInput([Body]ICollection<User> body);

    [Get("/user/login")]
    Task<string> LoginUser();

    [Get("/user/logout")]
    Task LogoutUser();

    [Get("/user/{username}")]
    Task<User> GetUserByName(string username);

    [Put("/user/{username}")]
    Task UpdateUser(string username, [Body]User body);

    [Delete("/user/{username}")]
    Task DeleteUser(string username);
}

System requirements

.NET 7.0

For tips and tricks on software development, check out my blog

If you find this useful and feel a bit generous then feel free to buy me a coffee ☕

Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
1.1.1-preview.46 34 6/28/2024
1.1.0.45-preview 64 6/25/2024
1.0.2 147,186 6/13/2024
1.0.1 48,197 6/7/2024
1.0.0 244,177 5/3/2024
0.9.9.44-preview 78 4/29/2024
0.9.9 8,039 3/7/2024
0.9.8 3,052 2/27/2024
0.9.7 71,928 2/7/2024
0.9.6 206 1/29/2024
0.9.5 36,592 1/15/2024
0.9.4.43-preview 78 1/15/2024
0.9.4 32,032 1/12/2024
0.9.3.42-preview 113 1/10/2024
0.9.2 20,064 1/10/2024
0.9.1 3,849 1/9/2024
0.9.0 3,047 1/9/2024
0.8.7.41-preview 113 1/3/2024
0.8.7.40-preview 90 12/20/2023
0.8.7 54,978 12/18/2023
0.8.6.39-preview 108 12/14/2023
0.8.6.38-preview 122 12/14/2023
0.8.6 3,495 12/11/2023
0.8.5 53,287 11/23/2023
0.8.4 339 11/7/2023
0.8.3 216 10/31/2023
0.8.2 387 10/9/2023
0.8.1 845 10/4/2023
0.8.0 1,715 9/23/2023
0.7.5 2,699 9/7/2023
0.7.4 315 9/6/2023
0.7.3.37-preview 175 8/25/2023
0.7.3.36-preview 194 8/25/2023
0.7.3.35-preview 208 8/21/2023
0.7.3.34-preview 212 8/15/2023
0.7.3.33-preview 209 8/12/2023
0.7.3 1,978 8/26/2023
0.7.2.32-preview 169 8/7/2023
0.7.2 3,727 8/7/2023
0.7.1.31-preview 205 8/2/2023
0.7.1.30-preview 159 8/2/2023
0.7.1.29-preview 212 8/1/2023
0.7.1 672 8/3/2023
0.7.0.28-preview 130 7/28/2023
0.7.0.27-preview 236 7/28/2023
0.7.0.26-preview 213 7/27/2023
0.7.0.23-preview 197 7/27/2023
0.7.0.22-preview 249 7/27/2023
0.7.0.21-preview 187 7/27/2023
0.7.0.20-preview 231 7/27/2023
0.7.0 389 7/31/2023
0.6.3 1,149 7/22/2023
0.6.2 11,135 6/22/2023
0.6.1 306 6/20/2023
0.6.0 678 6/15/2023
0.5.30 461 6/12/2023
0.5.29 117 6/12/2023
0.5.28 130 6/10/2023
0.5.27 182 5/24/2023
0.5.26 261 5/11/2023
0.5.25 169 5/10/2023
0.5.3 176 5/5/2023
0.5.2 142 5/2/2023
0.5.1 139 5/2/2023
0.5.0 187 4/28/2023
0.4.2 178 4/24/2023
0.4.1 400 4/3/2023
0.4.0 283 3/24/2023
0.3.17 5,167 3/24/2023
0.3.16 226 3/22/2023
0.3.4 189 3/22/2023
0.3.3 276 3/17/2023
0.3.2 244 3/16/2023
0.3.1 219 3/14/2023
0.3.0 208 3/14/2023
0.2.4-alpha 227 3/1/2023
0.2.3-alpha 135 2/27/2023
0.2.2-alpha 177 2/25/2023
0.2.1-alpha 202 2/25/2023
0.2.0-alpha 169 2/24/2023
0.1.5-alpha 208 2/18/2023
0.1.4-alpha 249 2/17/2023
0.1.3-alpha 230 2/17/2023
0.1.2-alpha 199 2/17/2023