Conjecture.OpenApi 0.29.0

dotnet add package Conjecture.OpenApi --version 0.29.0
                    
NuGet\Install-Package Conjecture.OpenApi -Version 0.29.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Conjecture.OpenApi" Version="0.29.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Conjecture.OpenApi" Version="0.29.0" />
                    
Directory.Packages.props
<PackageReference Include="Conjecture.OpenApi" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Conjecture.OpenApi --version 0.29.0
                    
#r "nuget: Conjecture.OpenApi, 0.29.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Conjecture.OpenApi@0.29.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Conjecture.OpenApi&version=0.29.0
                    
Install as a Cake Addin
#tool nuget:?package=Conjecture.OpenApi&version=0.29.0
                    
Install as a Cake Tool

Conjecture.OpenApi

OpenAPI-driven strategy generation for Conjecture property-based testing. Loads an OpenAPI 3 document (file, URI, or FileInfo) and produces JsonElement strategies for path parameters, query parameters, request bodies, and response bodies, so you can fuzz any HTTP endpoint that has a published spec.

Install

dotnet add package Conjecture.Core
dotnet add package Conjecture.OpenApi

Usage

using System.Text.Json;
using Conjecture.Core;
using Conjecture.OpenApi;

OpenApiDocument doc = await Strategy.FromOpenApi("openapi.json");

Strategy<JsonElement> idParam = doc.PathParameter("get", "/orders/{id}", "id");
Strategy<JsonElement> orderBody = doc.RequestBody("post", "/orders");
Strategy<JsonElement> okResponse = doc.ResponseBody("get", "/orders/{id}", statusCode: 200);

JsonElement sampleBody = orderBody.Sample();

Pair with Conjecture.AspNetCoreAspNetCoreRequestBuilder.FromOpenApi(doc) substitutes the route-discovery step with the OpenAPI document, useful when the contract is canonical and the routing isn't.

Types

Type Role
OpenApiDocument Loaded spec; produces strategies for parameters and bodies.
OpenApiDocument.PathParameter(method, path, name) Strategy for a path placeholder.
OpenApiDocument.QueryParameter(method, path, name) Strategy for a query parameter.
OpenApiDocument.RequestBody(method, path) Strategy for the request body.
OpenApiDocument.ResponseBody(method, path, statusCode) Strategy for the response body of a status code.
Strategy.FromOpenApi(string \| FileInfo \| Uri) Loads the spec and returns an OpenApiDocument.
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Conjecture.OpenApi:

Package Downloads
Conjecture.AspNetCore

Property-based testing for ASP.NET Core minimal APIs and MVC controllers via metadata-driven request synthesis.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.29.0 128 5/9/2026
0.28.0 133 5/9/2026
0.27.1 207 4/28/2026
0.26.0 132 4/27/2026
0.25.0 125 4/27/2026
0.24.0 128 4/26/2026
0.23.0 122 4/26/2026
0.22.0 100 4/26/2026
0.21.0 100 4/26/2026
0.20.0 105 4/25/2026