Skip to content

Commit fd15fb5

Browse files
Adds v1.2.1 schemas (#1424)
1 parent f7a87a2 commit fd15fb5

36 files changed

+1676
-0
lines changed
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
{
2+
"$schema": "https://json-schema.org/draft/2020-12/schema",
3+
"title": "Dev Proxy ApiCenterMinimalPermissionsPlugin config schema",
4+
"type": "object",
5+
"properties": {
6+
"$schema": {
7+
"type": "string",
8+
"description": "The JSON schema reference for validation."
9+
},
10+
"resourceGroupName": {
11+
"type": "string",
12+
"description": "Name of the resource group where the Azure API Center is located."
13+
},
14+
"serviceName": {
15+
"type": "string",
16+
"description": "Name of the Azure API Center instance that Dev Proxy should use to check if the APIs used in the app are registered."
17+
},
18+
"subscriptionId": {
19+
"type": "string",
20+
"description": "ID of the Azure subscription where the Azure API Center instance is located."
21+
},
22+
"workspace": {
23+
"type": "string",
24+
"description": "Name of the Azure API Center workspace to use. Default is 'default'.",
25+
"default": "default"
26+
}
27+
},
28+
"required": [
29+
"resourceGroupName",
30+
"serviceName",
31+
"subscriptionId"
32+
],
33+
"additionalProperties": false
34+
}
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
{
2+
"$schema": "https://json-schema.org/draft/2020-12/schema",
3+
"title": "Dev Proxy ApiCenterOnboardingPlugin config schema",
4+
"type": "object",
5+
"properties": {
6+
"$schema": {
7+
"type": "string",
8+
"description": "The JSON schema reference for validation."
9+
},
10+
"createApicEntryForNewApis": {
11+
"type": "boolean",
12+
"description": "Set to true to have Dev Proxy create new API entries for APIs detected but not yet registered in API Center. When false, Dev Proxy only lists unregistered APIs. Default is true."
13+
},
14+
"resourceGroupName": {
15+
"type": "string",
16+
"description": "Name of the resource group where the Azure API Center is located."
17+
},
18+
"serviceName": {
19+
"type": "string",
20+
"description": "Name of the Azure API Center instance that Dev Proxy should use to check if the APIs used in the app are registered."
21+
},
22+
"subscriptionId": {
23+
"type": "string",
24+
"description": "ID of the Azure subscription where the Azure API Center instance is located."
25+
},
26+
"workspace": {
27+
"type": "string",
28+
"description": "Name of the Azure API Center workspace to use. Default is 'default'."
29+
}
30+
},
31+
"required": [
32+
"resourceGroupName",
33+
"serviceName",
34+
"subscriptionId"
35+
],
36+
"additionalProperties": false
37+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
{
2+
"$schema": "https://json-schema.org/draft/2020-12/schema",
3+
"title": "Dev Proxy ApiCenterProductionVersionPlugin config schema",
4+
"type": "object",
5+
"properties": {
6+
"$schema": {
7+
"type": "string",
8+
"description": "The JSON schema reference for validation."
9+
},
10+
"resourceGroupName": {
11+
"type": "string",
12+
"description": "Name of the resource group where the Azure API Center is located."
13+
},
14+
"serviceName": {
15+
"type": "string",
16+
"description": "Name of the Azure API Center instance that Dev Proxy should use to check if the APIs used in the app are registered."
17+
},
18+
"subscriptionId": {
19+
"type": "string",
20+
"description": "ID of the Azure subscription where the Azure API Center instance is located."
21+
},
22+
"workspace": {
23+
"type": "string",
24+
"description": "Name of the Azure API Center workspace to use. Default is 'default'."
25+
}
26+
},
27+
"required": [
28+
"resourceGroupName",
29+
"serviceName",
30+
"subscriptionId"
31+
],
32+
"additionalProperties": false
33+
}
Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
{
2+
"$schema": "https://json-schema.org/draft/2020-12/schema",
3+
"title": "Dev Proxy AuthPlugin config schema",
4+
"type": "object",
5+
"properties": {
6+
"$schema": {
7+
"type": "string",
8+
"description": "The JSON schema reference for validation."
9+
},
10+
"apiKey": {
11+
"type": "object",
12+
"description": "Configuration for API key authentication and authorization.",
13+
"properties": {
14+
"allowedKeys": {
15+
"type": "array",
16+
"items": {
17+
"type": "string"
18+
},
19+
"description": "List of allowed API keys."
20+
},
21+
"parameters": {
22+
"type": "array",
23+
"description": "List of parameters that contain the API key.",
24+
"items": {
25+
"type": "object",
26+
"properties": {
27+
"in": {
28+
"type": "string",
29+
"enum": [
30+
"header",
31+
"query",
32+
"cookie"
33+
],
34+
"description": "Where the parameter is expected to be found. Allowed values: header, query, cookie."
35+
},
36+
"name": {
37+
"type": "string",
38+
"description": "Name of the parameter."
39+
}
40+
},
41+
"required": [
42+
"in",
43+
"name"
44+
]
45+
}
46+
}
47+
},
48+
"required": [
49+
"allowedKeys",
50+
"parameters"
51+
]
52+
},
53+
"oauth2": {
54+
"type": "object",
55+
"description": "Configuration for OAuth2 authentication and authorization.",
56+
"properties": {
57+
"metadataUrl": {
58+
"type": "string",
59+
"description": "URL to the OpenID Connect metadata document."
60+
},
61+
"allowedApplications": {
62+
"type": "array",
63+
"items": {
64+
"type": "string"
65+
},
66+
"description": "List of allowed application IDs. Leave empty to not validate the application (appid or azp claim) for which the token is issued."
67+
},
68+
"allowedAudiences": {
69+
"type": "array",
70+
"items": {
71+
"type": "string"
72+
},
73+
"description": "List of allowed audiences. Leave empty to not validate the audience (aud claim) for which the token is issued."
74+
},
75+
"allowedPrincipals": {
76+
"type": "array",
77+
"items": {
78+
"type": "string"
79+
},
80+
"description": "List of allowed principals. Leave empty to not validate the principal (oid claim) for which the token is issued."
81+
},
82+
"allowedTenants": {
83+
"type": "array",
84+
"items": {
85+
"type": "string"
86+
},
87+
"description": "List of allowed tenants. Leave empty to not validate the tenant (tid claim) for which the token is issued."
88+
},
89+
"issuer": {
90+
"type": "string",
91+
"description": "Allowed token issuer. Leave empty to not validate the token issuer."
92+
},
93+
"roles": {
94+
"type": "array",
95+
"items": {
96+
"type": "string"
97+
},
98+
"description": "List of allowed roles. Leave empty to not validate the roles (roles claim) on the token."
99+
},
100+
"scopes": {
101+
"type": "array",
102+
"items": {
103+
"type": "string"
104+
},
105+
"description": "List of allowed scopes. Leave empty to not validate the scopes (scp claim) on the token."
106+
},
107+
"validateLifetime": {
108+
"type": "boolean",
109+
"description": "Set to false to disable validating the token lifetime. Default is true."
110+
},
111+
"validateSigningKey": {
112+
"type": "boolean",
113+
"description": "Set to false to disable validating the token signature. Default is true."
114+
}
115+
},
116+
"required": [
117+
"metadataUrl"
118+
]
119+
},
120+
"type": {
121+
"type": "string",
122+
"enum": [
123+
"apiKey",
124+
"oauth2"
125+
],
126+
"description": "Type of authentication and authorization that Dev Proxy should use. Allowed values: apiKey, oauth2."
127+
}
128+
},
129+
"required": [
130+
"type"
131+
],
132+
"additionalProperties": false
133+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"$schema": "https://json-schema.org/draft/2020-12/schema",
3+
"title": "Dev Proxy CachingGuidancePlugin config schema",
4+
"type": "object",
5+
"properties": {
6+
"$schema": {
7+
"type": "string",
8+
"description": "The JSON schema reference for validation."
9+
},
10+
"cacheThresholdSeconds": {
11+
"type": "integer",
12+
"description": "The number of seconds between the same request that triggers the guidance warning. Default is 5."
13+
}
14+
},
15+
"additionalProperties": false
16+
}

0 commit comments

Comments
 (0)