Skip to content

Commit bb3c46c

Browse files
authored
Add auth key support for CRUD API to skill. Closes dotnet#1663 (dotnet#1664)
* Add auth key support for CRUD API to skill. Closes dotnet#1663 Increment skill version Update examples to use v3.0.0 schema * Address PR review comments - Update winget version pin to 3.0.0 - Update GitHub Actions version pins to 3.0.0 - Tighten API Key auth wording: headerName/queryParameterName must be specified - Clarify API Key auth applies to all actions (no per-action support)
1 parent 29f2807 commit bb3c46c

8 files changed

Lines changed: 85 additions & 50 deletions

File tree

skills/dev-proxy/SKILL.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: dev-proxy
33
metadata:
4-
version: 1.0.0
4+
version: 1.1.0
55
description: "Simulate API failures, mock responses, test rate limiting, and analyze API traffic using Dev Proxy's plugin-based proxy engine. WHEN: 'mock API responses', 'simulate API errors', 'test rate limiting', 'test error handling', 'mock OpenAI responses', 'test AI app', 'analyze API usage', 'configure Dev Proxy', 'install Dev Proxy', 'set up Dev Proxy', 'use Dev Proxy in CI/CD', 'chaos testing for APIs', 'run Dev Proxy in background', 'detached mode', 'run Dev Proxy detached'."
66
---
77

@@ -79,7 +79,7 @@ A quick reference. All configuration details are in [references/configuration.md
7979

8080
```json
8181
{
82-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
82+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
8383
"plugins": [
8484
{
8585
"name": "PluginName",
@@ -90,7 +90,7 @@ A quick reference. All configuration details are in [references/configuration.md
9090
],
9191
"urlsToWatch": ["https://api.contoso.com/*"],
9292
"pluginConfig": {
93-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/pluginname.schema.json"
93+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/pluginname.schema.json"
9494
}
9595
}
9696
```

skills/dev-proxy/references/analyze-api-usage.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ Use `OpenApiSpecGeneratorPlugin` to reverse-engineer OpenAPI specs from intercep
4040

4141
```json
4242
{
43-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
43+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
4444
"plugins": [
4545
{
4646
"name": "OpenApiSpecGeneratorPlugin",
@@ -56,7 +56,7 @@ Use `OpenApiSpecGeneratorPlugin` to reverse-engineer OpenAPI specs from intercep
5656
],
5757
"urlsToWatch": ["https://api.contoso.com/*"],
5858
"openApiSpecGeneratorPlugin": {
59-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/openapispecgeneratorplugin.schema.json",
59+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/openapispecgeneratorplugin.schema.json",
6060
"specVersion": "v3_0",
6161
"specFormat": "Json",
6262
"includeOptionsRequests": false,
@@ -349,7 +349,7 @@ Reporter plugins format report output. Always place them AFTER reporting plugins
349349

350350
```json
351351
{
352-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
352+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
353353
"plugins": [
354354
{ "name": "ExecutionSummaryPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "executionSummaryPlugin" },
355355
{ "name": "GraphMinimalPermissionsPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "graphMinimalPermissionsPlugin" },
@@ -369,7 +369,7 @@ Reporter plugins format report output. Always place them AFTER reporting plugins
369369

370370
```json
371371
{
372-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
372+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
373373
"plugins": [
374374
{ "name": "ApiCenterOnboardingPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "apiCenterOnboardingPlugin" },
375375
{ "name": "ApiCenterProductionVersionPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "apiCenterProductionVersionPlugin" },
@@ -385,7 +385,7 @@ Reporter plugins format report output. Always place them AFTER reporting plugins
385385

386386
```json
387387
{
388-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
388+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
389389
"plugins": [
390390
{ "name": "UrlDiscoveryPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll" },
391391
{ "name": "OpenApiSpecGeneratorPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "openApiSpecGeneratorPlugin" },

skills/dev-proxy/references/ci-cd-integration.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ Access via `${{ steps.<step-id>.outputs.proxy-url }}`.
6363
```yaml
6464
- uses: dev-proxy-tools/actions/setup@v1
6565
with:
66-
version: 2.4.0
66+
version: 3.0.0
6767
```
6868

6969
### Multiple Recording Sessions
@@ -103,7 +103,7 @@ jobs:
103103
104104
- uses: dev-proxy-tools/actions/setup@v1
105105
with:
106-
version: 2.4.0
106+
version: 3.0.0
107107
108108
- id: start-proxy
109109
uses: dev-proxy-tools/actions/start@v1
@@ -182,7 +182,7 @@ No dedicated actions — use script tasks with the Dev Proxy API.
182182
```yaml
183183
variables:
184184
- name: DEV_PROXY_VERSION
185-
value: v2.4.0
185+
value: v3.0.0
186186
187187
steps:
188188
- task: Cache@2
@@ -233,7 +233,7 @@ pool:
233233
234234
variables:
235235
- name: DEV_PROXY_VERSION
236-
value: v2.4.0
236+
value: v3.0.0
237237
- name: LOG_FILE
238238
value: devproxy.log
239239
@@ -300,7 +300,7 @@ For any CI system, follow these steps:
300300
### 1. Install with Pinned Version
301301

302302
```bash
303-
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)" -- v2.4.0
303+
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)" -- v3.0.0
304304
```
305305

306306
### 2. Start in Background with Logging

skills/dev-proxy/references/configuration.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ A configuration file follows a specific property order: `$schema`, then `plugins
1010

1111
```json
1212
{
13-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
13+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
1414
"plugins": [
1515
{
1616
"name": "RetryAfterPlugin",
@@ -28,7 +28,7 @@ A configuration file follows a specific property order: `$schema`, then `plugins
2828
"https://jsonplaceholder.typicode.com/*"
2929
],
3030
"genericRandomErrorPlugin": {
31-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/genericrandomerrorplugin.schema.json",
31+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/genericrandomerrorplugin.schema.json",
3232
"errorsFile": "devproxy-errors.json",
3333
"rate": 50
3434
},

skills/dev-proxy/references/installation.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,13 @@ Or with PowerShell:
6363
Pass the version to the setup script:
6464

6565
```bash
66-
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)" -- v2.4.0
66+
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)" -- v3.0.0
6767
```
6868

6969
With winget:
7070

7171
```console
72-
winget install DevProxy.DevProxy --version 2.4.0 --silent
72+
winget install DevProxy.DevProxy --version 3.0.0 --silent
7373
```
7474

7575
## First Run Setup

skills/dev-proxy/references/mock-api-responses.md

Lines changed: 46 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ The most common mocking plugin. Returns predefined responses matched by URL, HTT
2020

2121
```json
2222
{
23-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
23+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
2424
"plugins": [
2525
{
2626
"name": "MockResponsePlugin",
@@ -31,7 +31,7 @@ The most common mocking plugin. Returns predefined responses matched by URL, HTT
3131
],
3232
"urlsToWatch": ["https://api.contoso.com/*"],
3333
"mocksPlugin": {
34-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/mockresponseplugin.schema.json",
34+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/mockresponseplugin.schema.json",
3535
"mocksFile": "mocks.json",
3636
"blockUnmockedRequests": false
3737
}
@@ -46,7 +46,7 @@ CLI overrides: `--no-mocks` to disable, `--mocks-file <path>` to change mock fil
4646

4747
```json
4848
{
49-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/mockresponseplugin.mocksfile.schema.json",
49+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/mockresponseplugin.mocksfile.schema.json",
5050
"mocks": [
5151
{
5252
"request": {
@@ -174,7 +174,7 @@ Creates a fully functional CRUD API backed by an in-memory JSON data store. Supp
174174

175175
```json
176176
{
177-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
177+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
178178
"plugins": [
179179
{
180180
"name": "CrudApiPlugin",
@@ -184,7 +184,7 @@ Creates a fully functional CRUD API backed by an in-memory JSON data store. Supp
184184
}
185185
],
186186
"customersApi": {
187-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/crudapiplugin.schema.json",
187+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/crudapiplugin.schema.json",
188188
"apiFile": "customers-api.json"
189189
}
190190
}
@@ -194,7 +194,7 @@ Creates a fully functional CRUD API backed by an in-memory JSON data store. Supp
194194

195195
```json
196196
{
197-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/crudapiplugin.apifile.schema.json",
197+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/crudapiplugin.apifile.schema.json",
198198
"baseUrl": "https://api.contoso.com/v1/customers",
199199
"dataFile": "customers-data.json",
200200
"actions": [
@@ -226,9 +226,44 @@ Creates a fully functional CRUD API backed by an in-memory JSON data store. Supp
226226
- The data file must be a JSON array (can be empty: `[]`).
227227
- Data persists in memory during the Dev Proxy session.
228228

229-
### Entra Auth for CRUD APIs
229+
### Auth for CRUD APIs
230230

231-
Set `"auth": "entra"` in the API file:
231+
CRUD APIs support two built-in authentication modes: API Key and Entra. Set the `auth` property in the API definition file to `"apiKey"` or `"entra"`.
232+
233+
#### API Key Auth
234+
235+
Set `"auth": "apiKey"` and provide `apiKeyAuthConfig`:
236+
237+
```json
238+
{
239+
"baseUrl": "https://api.contoso.com/v1/customers",
240+
"dataFile": "customers-data.json",
241+
"auth": "apiKey",
242+
"apiKeyAuthConfig": {
243+
"apiKey": "my-secret-key",
244+
"headerName": "X-API-Key",
245+
"queryParameterName": "code"
246+
},
247+
"actions": [
248+
{ "action": "getAll" },
249+
{ "action": "create" }
250+
]
251+
}
252+
```
253+
254+
Dev Proxy checks the header first, then the query parameter. If either matches, the request is authorized.
255+
256+
| Property | Required | Default | Description |
257+
|----------|----------|---------|-------------|
258+
| `apiKey` | Yes || The valid API key that must be present in the request |
259+
| `headerName` | No || HTTP header name to read the API key from |
260+
| `queryParameterName` | No || Query parameter name to read the API key from |
261+
262+
At least one of `headerName` or `queryParameterName` must be specified — omitting both means no request can be authorized. API Key auth applies to all actions and cannot be configured per-action.
263+
264+
#### Entra Auth
265+
266+
Set `"auth": "entra"` and provide `entraAuthConfig`:
232267

233268
```json
234269
{
@@ -266,7 +301,7 @@ Mocks STDIO communication for MCP servers and STDIO-based apps. Use with `devpro
266301

267302
```json
268303
{
269-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
304+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
270305
"plugins": [
271306
{
272307
"name": "MockStdioResponsePlugin",
@@ -276,7 +311,7 @@ Mocks STDIO communication for MCP servers and STDIO-based apps. Use with `devpro
276311
}
277312
],
278313
"mockStdioResponsePlugin": {
279-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/mockstdioresponseplugin.schema.json",
314+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/mockstdioresponseplugin.schema.json",
280315
"mocksFile": "stdio-mocks.json",
281316
"blockUnmockedRequests": false
282317
}
@@ -287,7 +322,7 @@ Mocks STDIO communication for MCP servers and STDIO-based apps. Use with `devpro
287322

288323
```json
289324
{
290-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/mockstdioresponseplugin.mocksfile.schema.json",
325+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/mockstdioresponseplugin.mocksfile.schema.json",
291326
"mocks": [
292327
{
293328
"request": { "bodyFragment": "initialize" },

skills/dev-proxy/references/test-api-resilience.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Randomly fails requests with errors from a configured file. Works with any API.
1010

1111
```json
1212
{
13-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
13+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
1414
"plugins": [
1515
{
1616
"name": "GenericRandomErrorPlugin",
@@ -21,7 +21,7 @@ Randomly fails requests with errors from a configured file. Works with any API.
2121
],
2222
"urlsToWatch": ["https://api.contoso.com/*"],
2323
"genericRandomErrorPlugin": {
24-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/genericrandomerrorplugin.schema.json",
24+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/genericrandomerrorplugin.schema.json",
2525
"errorsFile": "errors.json",
2626
"rate": 50,
2727
"retryAfterInSeconds": 5
@@ -41,7 +41,7 @@ CLI: `devproxy --failure-rate 80` overrides `rate`.
4141

4242
```json
4343
{
44-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/genericrandomerrorplugin.errorsfile.schema.json",
44+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/genericrandomerrorplugin.errorsfile.schema.json",
4545
"errors": [
4646
{
4747
"statusCode": 429,
@@ -70,7 +70,7 @@ When `addDynamicRetryAfter: true`, Dev Proxy auto-calculates the Retry-After val
7070

7171
```json
7272
{
73-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/genericrandomerrorplugin.errorsfile.schema.json",
73+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/genericrandomerrorplugin.errorsfile.schema.json",
7474
"errors": [
7575
{ "statusCode": 400, "body": { "error": { "code": "BadRequest", "message": "The request was malformed or contains invalid parameters." } } },
7676
{ "statusCode": 401, "body": { "error": { "code": "Unauthorized", "message": "Authentication required." } } },
@@ -89,7 +89,7 @@ When `addDynamicRetryAfter: true`, Dev Proxy auto-calculates the Retry-After val
8989

9090
```json
9191
{
92-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/genericrandomerrorplugin.errorsfile.schema.json",
92+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/genericrandomerrorplugin.errorsfile.schema.json",
9393
"errors": [
9494
{ "statusCode": 429, "headers": [{ "name": "Retry-After", "value": "@dynamic" }, { "name": "Content-Type", "value": "application/json" }], "body": { "error": { "message": "Rate limit reached for default-gpt-4 in organization org-xxx on tokens per min.", "type": "tokens", "param": null, "code": "rate_limit_exceeded" } }, "addDynamicRetryAfter": true },
9595
{ "statusCode": 429, "body": { "error": { "message": "The engine is currently overloaded, please try again later.", "type": "server_error", "param": null, "code": null } } },
@@ -105,7 +105,7 @@ Fails Microsoft Graph requests with Graph-specific error responses. Supports bat
105105

106106
```json
107107
{
108-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
108+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
109109
"plugins": [
110110
{
111111
"name": "GraphRandomErrorPlugin",
@@ -119,7 +119,7 @@ Fails Microsoft Graph requests with Graph-specific error responses. Supports bat
119119
"https://graph.microsoft.com/beta/*"
120120
],
121121
"graphRandomErrorPlugin": {
122-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/graphrandomerrorplugin.schema.json",
122+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/graphrandomerrorplugin.schema.json",
123123
"allowedErrors": [429, 500, 502, 503, 504, 507],
124124
"rate": 50
125125
}
@@ -163,7 +163,7 @@ Simulates rate-limit behavior with configurable headers, thresholds, and respons
163163

164164
```json
165165
{
166-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
166+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
167167
"plugins": [
168168
{
169169
"name": "RateLimitingPlugin",
@@ -173,7 +173,7 @@ Simulates rate-limit behavior with configurable headers, thresholds, and respons
173173
}
174174
],
175175
"rateLimiting": {
176-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/ratelimitingplugin.schema.json",
176+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/ratelimitingplugin.schema.json",
177177
"costPerRequest": 2,
178178
"rateLimit": 120,
179179
"resetTimeWindowSeconds": 60,
@@ -271,7 +271,7 @@ Adds random delay to responses. Works with both HTTP and STDIO.
271271

272272
```json
273273
{
274-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
274+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
275275
"plugins": [
276276
{
277277
"name": "LatencyPlugin",
@@ -281,7 +281,7 @@ Adds random delay to responses. Works with both HTTP and STDIO.
281281
}
282282
],
283283
"latencyPlugin": {
284-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/latencyplugin.schema.json",
284+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/latencyplugin.schema.json",
285285
"minMs": 200,
286286
"maxMs": 10000
287287
}
@@ -311,7 +311,7 @@ devproxy config get openai-throttling
311311

312312
```json
313313
{
314-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
314+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
315315
"plugins": [
316316
{ "name": "LatencyPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "latencyPlugin" },
317317
{ "name": "RateLimitingPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "rateLimiting" },
@@ -328,7 +328,7 @@ devproxy config get openai-throttling
328328

329329
```json
330330
{
331-
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.4.0/rc.schema.json",
331+
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
332332
"plugins": [
333333
{ "name": "RetryAfterPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll" },
334334
{ "name": "GraphRandomErrorPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "graphRandomErrorPlugin" },

0 commit comments

Comments
 (0)