create-zuplo-api 7.0.2 → 7.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +4 -4
- package/dist/templates/ai-gateway/README-template.md +3 -1
- package/dist/templates/ai-gateway/config/ai.oas.json +3 -3
- package/dist/templates/default/docs/public/banner-dark.svg +0 -1
- package/dist/templates/default/docs/public/banner.svg +0 -1
- package/dist/templates/default-empty/docs/public/banner-dark.svg +0 -1
- package/dist/templates/default-empty/docs/public/banner.svg +0 -1
- package/package.json +1 -1
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
This project is a Zuplo AI Gateway. It exposes the canonical AI Gateway
|
|
4
4
|
operations (`/v1/chat/completions`, `/v1/messages`, `/v1/responses`, and
|
|
5
|
-
`/v1/embeddings`) through `aiGatewayHandlerV2` under `/{app_id}
|
|
5
|
+
`/v1/embeddings`) through `aiGatewayHandlerV2` under `/{app_id}/*`. Only paths
|
|
6
|
+
whose suffix is a supported `/v1/...` operation succeed; other paths under
|
|
7
|
+
`/{app_id}` return 404.
|
|
6
8
|
|
|
7
9
|
Each route invokes `ai-gateway-configuration-executor-v2-inbound`, which loads
|
|
8
10
|
the application's configuration from the `app_id` path segment and runs its
|
|
@@ -3,16 +3,16 @@
|
|
|
3
3
|
"info": {
|
|
4
4
|
"version": "1.0.0",
|
|
5
5
|
"title": "AI Gateway API",
|
|
6
|
-
"description": "A unified API gateway for multiple AI providers.
|
|
6
|
+
"description": "A unified API gateway for multiple AI providers. OpenAI-compatible ops are served under /{app_id}/v1/*; other paths under /{app_id} are rejected."
|
|
7
7
|
},
|
|
8
8
|
"paths": {
|
|
9
|
-
"/:app_id/
|
|
9
|
+
"/:app_id/(.*)": {
|
|
10
10
|
"x-zuplo-path": {
|
|
11
11
|
"pathMode": "url-pattern"
|
|
12
12
|
},
|
|
13
13
|
"get,post,delete": {
|
|
14
14
|
"summary": "AI Gateway catch-all",
|
|
15
|
-
"description": "Routes AI requests under /{app_id}
|
|
15
|
+
"description": "Routes AI requests under /{app_id}/* to the AI Gateway handler. The configuration executor loads the application configuration from the app_id path segment. Only paths whose suffix is a supported /v1/... operation succeed (/v1/chat/completions, /v1/embeddings, /v1/messages, /v1/responses and its sub-resources); anything else under /{app_id} returns 404.",
|
|
16
16
|
"operationId": "aiGatewayCatchAll",
|
|
17
17
|
"responses": {
|
|
18
18
|
"200": {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
<svg width="757" height="270" viewBox="0 0 757 270" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
-
<title>Zuplo API documentation banner</title>
|
|
3
2
|
<g clip-path="url(#clip0_162_322)">
|
|
4
3
|
<rect width="757" height="270" rx="8" fill="#181822"/>
|
|
5
4
|
<g filter="url(#filter0_f_162_322)">
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
<svg width="757" height="270" viewBox="0 0 757 270" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
-
<title>Zuplo API documentation banner</title>
|
|
3
2
|
<g clip-path="url(#clip0_162_213)">
|
|
4
3
|
<rect width="757" height="270" rx="8" fill="#FAFAFA"/>
|
|
5
4
|
<g filter="url(#filter0_f_162_213)">
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
<svg width="757" height="270" viewBox="0 0 757 270" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
-
<title>Zuplo API documentation banner</title>
|
|
3
2
|
<g clip-path="url(#clip0_162_322)">
|
|
4
3
|
<rect width="757" height="270" rx="8" fill="#181822"/>
|
|
5
4
|
<g filter="url(#filter0_f_162_322)">
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
<svg width="757" height="270" viewBox="0 0 757 270" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
-
<title>Zuplo API documentation banner</title>
|
|
3
2
|
<g clip-path="url(#clip0_162_213)">
|
|
4
3
|
<rect width="757" height="270" rx="8" fill="#FAFAFA"/>
|
|
5
4
|
<g filter="url(#filter0_f_162_213)">
|