spec: update v2 reference docs (#9678)

* spec: update v2 reference docs

* fix missing spec for Functions

* fix dart specs

* Add more enrichments

* update reference docs

* update API

Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>
This commit is contained in:
Stojan DimitrovskiandCopple authored and GitHub committed 2022-10-21 14:11:07 +02:00
1 parent 3393701472
commit e2ab4fe590
35 files changed
+163408 -174764

No files matched your search

+247 -141
View File
@@ -397,147 +397,6 @@ POST https://api.supabase.com/v1/projects
```
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
</Tabs>
<br />
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
### List all functions {#list-all-functions}
```
GET https://api.supabase.com/v1/projects/{ref}/functions
```
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
#### Path Parameters
<ul className="method-list-group">
<li className="method-list-item">
<h4 className="method-list-item-label">
<span className="method-list-item-label-name">
ref
</span>
<span className="method-list-item-label-badge">
required
</span>
<span className="method-list-item-validation">
</span>
</h4>
<div class="method-list-item-description">
Project ref
</div>
</li>
</ul>
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
#### Responses
<Tabs>
<TabItem value="200">
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
```json
{
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": [
"ACTIVE",
"REMOVED",
"THROTTLED"
],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
}
},
"required": [
"id",
"slug",
"name",
"status",
"version",
"created_at",
"updated_at"
]
}
}
}
```
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
<TabItem value="403">
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
<TabItem value="500">
Failed to retrieve project's functions
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
@@ -706,6 +565,147 @@ Failed to create project's function
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
</Tabs>
<br />
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
### List all functions {#list-all-functions}
```
GET https://api.supabase.com/v1/projects/{ref}/functions
```
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
#### Path Parameters
<ul className="method-list-group">
<li className="method-list-item">
<h4 className="method-list-item-label">
<span className="method-list-item-label-name">
ref
</span>
<span className="method-list-item-label-badge">
required
</span>
<span className="method-list-item-validation">
</span>
</h4>
<div class="method-list-item-description">
Project ref
</div>
</li>
</ul>
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
#### Responses
<Tabs>
<TabItem value="200">
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
```json
{
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": [
"ACTIVE",
"REMOVED",
"THROTTLED"
],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
}
},
"required": [
"id",
"slug",
"name",
"status",
"version",
"created_at",
"updated_at"
]
}
}
}
```
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
<TabItem value="403">
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
<TabItem value="500">
Failed to retrieve project's functions
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
@@ -1490,6 +1490,112 @@ Failed to delete secrets with given names
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
</Tabs>
<br />
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
### Generate TypeScript types {#generate-typescript-types}
```
GET https://api.supabase.com/v1/projects/{ref}/types/typescript
```
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
#### Path Parameters
<ul className="method-list-group">
<li className="method-list-item">
<h4 className="method-list-item-label">
<span className="method-list-item-label-name">
ref
</span>
<span className="method-list-item-label-badge">
required
</span>
<span className="method-list-item-validation">
</span>
</h4>
<div class="method-list-item-description">
Project ref
</div>
</li>
</ul>
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
#### Responses
<Tabs>
<TabItem value="200">
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
```json
{
"schema": {
"type": "object",
"properties": {
"types": {
"type": "string"
}
},
"required": [
"types"
]
}
}
```
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
<TabItem value="403">
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
<TabItem value="500">
Failed to generate TypeScript types
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY IF THIS IS VERSION "next" -->
</TabItem>
+21 -13
View File
@@ -44,7 +44,7 @@ download.tsdoc.v2:
###############################################################################
# Transform docs into working files
###############################################################################
transform: dereference.api.v0 dereference.auth.v1 dereference.storage.v0 dereference.tsdoc.v2 combine.tsdoc.v1 combine.tsdoc.v2
transform: dereference.api.v0 dereference.auth.v1 dereference.storage.v0 dereference.tsdoc.v1 dereference.tsdoc.v2 combine.tsdoc.v1 combine.tsdoc.v2
dereference.api.v0:
npx swagger-cli bundle --dereference --outfile $(REPO_DIR)/transforms/api_v0_openapi_deparsed.json $(REPO_DIR)/api_v0_openapi.json
@@ -55,22 +55,30 @@ dereference.auth.v1:
dereference.storage.v0:
npx swagger-cli bundle --dereference --outfile $(REPO_DIR)/transforms/storage_v0_openapi_deparsed.json $(REPO_DIR)/storage_v0_openapi.json
dereference.tsdoc.v1:
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:functions:v1
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:gotrue:v1
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:postgrest:v1
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:realtime:v1
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:storage:v1
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:supabase:v1
dereference.tsdoc.v2:
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:functions
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:gotrue
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:postgrest
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:realtime
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:storage
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:supabase
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:functions:v2
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:gotrue:v2
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:postgrest:v2
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:realtime:v2
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:storage:v2
cd $(REPO_DIR)/parser && npm run tsdoc:dereference:supabase:v2
combine.tsdoc.v1:
jq -s '{ name: "Combined Specs", children: [.[0], .[1], .[2], .[3], .[4], .[5]] }' \
$(REPO_DIR)/enrichments/tsdoc_v1/supabase.json \
$(REPO_DIR)/enrichments/tsdoc_v1/gotrue.json \
$(REPO_DIR)/enrichments/tsdoc_v1/postgrest.json \
$(REPO_DIR)/enrichments/tsdoc_v1/realtime.json \
$(REPO_DIR)/enrichments/tsdoc_v1/storage.json \
$(REPO_DIR)/enrichments/tsdoc_v1/functions.json \
$(REPO_DIR)/enrichments/tsdoc_v1/supabase_dereferenced.json \
$(REPO_DIR)/enrichments/tsdoc_v1/gotrue_dereferenced.json \
$(REPO_DIR)/enrichments/tsdoc_v1/postgrest_dereferenced.json \
$(REPO_DIR)/enrichments/tsdoc_v1/realtime_dereferenced.json \
$(REPO_DIR)/enrichments/tsdoc_v1/storage_dereferenced.json \
$(REPO_DIR)/enrichments/tsdoc_v1/functions_dereferenced.json \
> $(REPO_DIR)/enrichments/tsdoc_v1/combined.json
combine.tsdoc.v2:
+295 -82
View File
@@ -96,37 +96,6 @@
}
},
"/v1/projects/{ref}/functions": {
"get": {
"operationId": "getFunctions",
"summary": "List all functions",
"description": "Returns all functions you've previously added to the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": { "$ref": "#/components/schemas/FunctionResponse" }
}
}
}
},
"403": { "description": "" },
"500": { "description": "Failed to retrieve project's functions" }
},
"tags": ["projects"],
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }, { "bearer": [] }]
},
"post": {
"operationId": "createFunction",
"summary": "Create a function",
@@ -157,7 +126,48 @@
"500": { "description": "Failed to create project's function" }
},
"tags": ["projects"],
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }, { "bearer": [] }]
"security": [
{ "apiKeyHeader": [], "apiKeyParam": [] },
{ "bearer": [] },
{ "apiKeyHeader": [], "apiKeyParam": [] },
{ "bearer": [] }
]
},
"get": {
"operationId": "getFunctions",
"summary": "List all functions",
"description": "Returns all functions you've previously added to the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": { "$ref": "#/components/schemas/FunctionResponse" }
}
}
}
},
"403": { "description": "" },
"500": { "description": "Failed to retrieve project's functions" }
},
"tags": ["projects"],
"security": [
{ "apiKeyHeader": [], "apiKeyParam": [] },
{ "bearer": [] },
{ "apiKeyHeader": [], "apiKeyParam": [] },
{ "bearer": [] }
]
}
},
"/v1/projects/{ref}/functions/{function_slug}": {
@@ -270,6 +280,201 @@
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }, { "bearer": [] }]
}
},
"/v1/projects/{ref}/custom-hostname": {
"get": {
"operationId": "getCustomHostnameConfig",
"summary": "Gets project's custom hostname config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/UpdateCustomHostnameResponse" }
}
}
},
"500": { "description": "Failed to retrieve project's custom hostname config" }
},
"tags": ["custom hostname (beta)"],
"security": [{ "bearer": [] }]
},
"delete": {
"operationId": "remove",
"summary": "Deletes a project's custom hostname configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"responses": {
"200": { "description": "" },
"500": { "description": "Failed to delete project custom hostname configuration" }
},
"tags": ["custom hostname (beta)"],
"security": [{ "bearer": [] }]
}
},
"/v1/projects/{ref}/custom-hostname/initialize": {
"post": {
"operationId": "createCustomHostnameConfig",
"summary": "Updates project's custom hostname configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/UpdateCustomHostnameBody" }
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/UpdateCustomHostnameResponse" }
}
}
},
"500": { "description": "Failed to update project custom hostname configuration" }
},
"tags": ["custom hostname (beta)"],
"security": [{ "bearer": [] }]
}
},
"/v1/projects/{ref}/custom-hostname/reverify": {
"post": {
"operationId": "reverify",
"summary": "Attempts to verify the DNS configuration for project's custom hostname configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/UpdateCustomHostnameResponse" }
}
}
},
"500": { "description": "Failed to verify project custom hostname configuration" }
},
"tags": ["custom hostname (beta)"],
"security": [{ "bearer": [] }]
}
},
"/v1/projects/{ref}/custom-hostname/activate": {
"post": {
"operationId": "activate",
"summary": "Activates a custom hostname for a project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/UpdateCustomHostnameResponse" }
}
}
},
"500": { "description": "Failed to activate project custom hostname configuration" }
},
"tags": ["custom hostname (beta)"],
"security": [{ "bearer": [] }]
}
},
"/v1/projects/{ref}/pgsodium": {
"get": {
"operationId": "getConfig",
"summary": "Gets project's pgsodium config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"responses": {
"200": {
"description": "",
"content": { "application/json": { "schema": { "type": "object" } } }
},
"403": { "description": "" },
"500": { "description": "Failed to retrieve project's pgsodium config" }
},
"tags": ["pgsodium (beta)"],
"security": [{ "bearer": [] }]
},
"put": {
"operationId": "updateConfig",
"summary": "Updates project's pgsodium config. Updating the root_key can cause all data encrypted with the older key to become inaccessible.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/UpdatePgsodiumConfigBody" }
}
}
},
"responses": {
"200": {
"description": "",
"content": { "application/json": { "schema": { "type": "object" } } }
},
"403": { "description": "" },
"500": { "description": "Failed to update project's pgsodium config" }
},
"tags": ["pgsodium (beta)"],
"security": [{ "bearer": [] }]
}
},
"/v1/projects/{ref}/secrets": {
"get": {
"operationId": "getSecrets",
@@ -365,11 +570,18 @@
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }, { "bearer": [] }]
}
},
"/v1/projects/{ref}/pgsodium": {
"/v1/projects/{ref}/types/typescript": {
"get": {
"operationId": "getConfig",
"summary": "Gets project's pgsodium config",
"operationId": "getTypescriptTypes",
"summary": "Generate TypeScript types",
"description": "Returns the TypeScript types of your schema for use with supabase-js.",
"parameters": [
{
"name": "included_schemas",
"required": false,
"in": "query",
"schema": { "default": "public", "type": "string" }
},
{
"name": "ref",
"required": true,
@@ -381,44 +593,17 @@
"responses": {
"200": {
"description": "",
"content": { "application/json": { "schema": { "type": "object" } } }
},
"403": { "description": "" },
"500": { "description": "Failed to retrieve project's pgsodium config" }
},
"tags": ["pgsodium (beta)"],
"security": [{ "bearer": [] }]
},
"put": {
"operationId": "updateConfig",
"summary": "Updates project's pgsodium config. Updating the root_key can cause all data encrypted with the older key to become inaccessible.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/UpdatePgsodiumConfigBody" }
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/TypescriptResponse" }
}
}
}
},
"responses": {
"200": {
"description": "",
"content": { "application/json": { "schema": { "type": "object" } } }
},
"403": { "description": "" },
"500": { "description": "Failed to update project's pgsodium config" }
"500": { "description": "Failed to generate TypeScript types" }
},
"tags": ["pgsodium (beta)"],
"security": [{ "bearer": [] }]
"tags": ["projects"],
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }, { "bearer": [] }]
}
}
},
@@ -480,6 +665,16 @@
"properties": { "name": { "type": "string" } },
"required": ["name"]
},
"CreateFunctionBody": {
"type": "object",
"properties": {
"slug": { "type": "string", "pattern": "/^[A-Za-z0-9_-]+$/" },
"name": { "type": "string" },
"body": { "type": "string" },
"verify_jwt": { "type": "boolean" }
},
"required": ["slug", "name", "body"]
},
"FunctionResponse": {
"type": "object",
"properties": {
@@ -494,16 +689,6 @@
},
"required": ["id", "slug", "name", "status", "version", "created_at", "updated_at"]
},
"CreateFunctionBody": {
"type": "object",
"properties": {
"slug": { "type": "string", "pattern": "/^[A-Za-z0-9_-]+$/" },
"name": { "type": "string" },
"body": { "type": "string" },
"verify_jwt": { "type": "boolean" }
},
"required": ["slug", "name", "body"]
},
"FunctionSlugResponse": {
"type": "object",
"properties": {
@@ -527,6 +712,34 @@
"verify_jwt": { "type": "boolean" }
}
},
"UpdateCustomHostnameResponse": {
"type": "object",
"properties": {
"status": {
"enum": [
"1_not_started",
"2_initiated",
"3_challenge_verified",
"4_origin_setup_completed",
"5_services_reconfigured"
],
"type": "string"
},
"custom_hostname": { "type": "string" },
"data": { "type": "object" }
},
"required": ["status", "custom_hostname", "data"]
},
"UpdateCustomHostnameBody": {
"type": "object",
"properties": { "custom_hostname": { "type": "string" } },
"required": ["custom_hostname"]
},
"UpdatePgsodiumConfigBody": {
"type": "object",
"properties": { "root_key": { "type": "string" } },
"required": ["root_key"]
},
"SecretResponse": {
"type": "object",
"properties": { "name": { "type": "string" }, "value": { "type": "string" } },
@@ -540,10 +753,10 @@
},
"required": ["name", "value"]
},
"UpdatePgsodiumConfigBody": {
"TypescriptResponse": {
"type": "object",
"properties": { "root_key": { "type": "string" } },
"required": ["root_key"]
"properties": { "types": { "type": "string" } },
"required": ["types"]
}
}
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,613 @@
{
"id": 0,
"name": "@supabase/functions-js",
"kind": 1,
"kindString": "Project",
"flags": {},
"originalName": "",
"children": [
{
"id": 1,
"name": "FunctionsClient",
"kind": 128,
"kindString": "Class",
"flags": {},
"children": [
{
"id": 2,
"name": "constructor",
"kind": 512,
"kindString": "Constructor",
"flags": {},
"sources": [
{
"fileName": "src/index.ts",
"line": 9,
"character": 2
}
],
"signatures": [
{
"id": 3,
"name": "new FunctionsClient",
"kind": 16384,
"kindString": "Constructor signature",
"flags": {},
"parameters": [
{
"id": 4,
"name": "url",
"kind": 32768,
"kindString": "Parameter",
"flags": {},
"type": {
"type": "intrinsic",
"name": "string"
}
},
{
"id": 5,
"name": "__namedParameters",
"kind": 32768,
"kindString": "Parameter",
"flags": {},
"type": {
"type": "reflection",
"declaration": {
"id": 6,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 8,
"name": "customFetch",
"kind": 1024,
"kindString": "Property",
"flags": {
"isOptional": true
},
"sources": [
{
"fileName": "src/index.ts",
"line": 16,
"character": 6
}
],
"type": {
"type": "reflection",
"declaration": {
"id": 9,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 10,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"parameters": [
{
"id": 11,
"name": "input",
"kind": 32768,
"kindString": "Parameter",
"flags": {},
"type": {
"type": "reference",
"qualifiedName": "RequestInfo",
"package": "typescript",
"name": "RequestInfo"
}
},
{
"id": 12,
"name": "init",
"kind": 32768,
"kindString": "Parameter",
"flags": {
"isOptional": true
},
"type": {
"type": "reference",
"qualifiedName": "RequestInit",
"package": "typescript",
"name": "RequestInit"
}
}
],
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"qualifiedName": "Response",
"package": "typescript",
"name": "Response"
}
],
"qualifiedName": "Promise",
"package": "typescript",
"name": "Promise"
}
}
]
}
}
},
{
"id": 7,
"name": "headers",
"kind": 1024,
"kindString": "Property",
"flags": {
"isOptional": true
},
"sources": [
{
"fileName": "src/index.ts",
"line": 15,
"character": 6
}
],
"type": {
"type": "reference",
"typeArguments": [
{
"type": "intrinsic",
"name": "string"
},
{
"type": "intrinsic",
"name": "string"
}
],
"qualifiedName": "Record",
"package": "typescript",
"name": "Record"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [8, 7]
}
]
}
},
"defaultValue": "{}"
}
],
"type": {
"type": "reference",
"id": 1,
"name": "FunctionsClient"
}
}
]
},
{
"id": 15,
"name": "fetch",
"kind": 1024,
"kindString": "Property",
"flags": {
"isProtected": true
},
"sources": [
{
"fileName": "src/index.ts",
"line": 7,
"character": 12
}
],
"type": {
"type": "reflection",
"declaration": {
"id": 16,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"signatures": [
{
"id": 17,
"name": "__type",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"parameters": [
{
"id": 18,
"name": "input",
"kind": 32768,
"kindString": "Parameter",
"flags": {},
"type": {
"type": "reference",
"qualifiedName": "RequestInfo",
"package": "typescript",
"name": "RequestInfo"
}
},
{
"id": 19,
"name": "init",
"kind": 32768,
"kindString": "Parameter",
"flags": {
"isOptional": true
},
"type": {
"type": "reference",
"qualifiedName": "RequestInit",
"package": "typescript",
"name": "RequestInit"
}
}
],
"type": {
"type": "reference",
"typeArguments": [
{
"type": "reference",
"qualifiedName": "Response",
"package": "typescript",
"name": "Response"
}
],
"qualifiedName": "Promise",
"package": "typescript",
"name": "Promise"
}
}
]
}
}
},
{
"id": 14,
"name": "headers",
"kind": 1024,
"kindString": "Property",
"flags": {
"isProtected": true
},
"sources": [
{
"fileName": "src/index.ts",
"line": 6,
"character": 12
}
],
"type": {
"type": "reference",
"typeArguments": [
{
"type": "intrinsic",
"name": "string"
},
{
"type": "intrinsic",
"name": "string"
}
],
"qualifiedName": "Record",
"package": "typescript",
"name": "Record"
}
},
{
"id": 13,
"name": "url",
"kind": 1024,
"kindString": "Property",
"flags": {
"isProtected": true
},
"sources": [
{
"fileName": "src/index.ts",
"line": 5,
"character": 12
}
],
"type": {
"type": "intrinsic",
"name": "string"
}
},
{
"id": 23,
"name": "invoke",
"kind": 2048,
"kindString": "Method",
"flags": {},
"sources": [
{
"fileName": "src/index.ts",
"line": 40,
"character": 8
}
],
"signatures": [
{
"id": 24,
"name": "invoke",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"comment": {
"shortText": "Invokes a function"
},
"typeParameter": [
{
"id": 25,
"name": "T",
"kind": 131072,
"kindString": "Type parameter",
"flags": {},
"default": {
"type": "intrinsic",
"name": "any"
}
}
],
"parameters": [
{
"id": 26,
"name": "functionName",
"kind": 32768,
"kindString": "Parameter",
"flags": {},
"comment": {
"shortText": "the name of the function to invoke"
},
"type": {
"type": "intrinsic",
"name": "string"
}
},
{
"id": 27,
"name": "invokeOptions",
"kind": 32768,
"kindString": "Parameter",
"flags": {
"isOptional": true
},
"comment": {
"shortText": "object with the following properties\n`headers`: object representing the headers to send with the request\n`body`: the body of the request\n`responseType`: how the response should be parsed. The default is `json`\n"
},
"type": {
"type": "reference",
"name": "FunctionInvokeOptions"
}
}
],
"type": {
"type": "reference",
"typeArguments": [
{
"type": "union",
"types": [
{
"type": "reflection",
"declaration": {
"id": 28,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 29,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"sources": [
{
"fileName": "src/index.ts",
"line": 43,
"character": 15
}
],
"type": {
"type": "reference",
"id": 25,
"name": "T"
}
},
{
"id": 30,
"name": "error",
"kind": 1024,
"kindString": "Property",
"flags": {},
"sources": [
{
"fileName": "src/index.ts",
"line": 43,
"character": 24
}
],
"type": {
"type": "literal",
"value": null
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [29, 30]
}
]
}
},
{
"type": "reflection",
"declaration": {
"id": 31,
"name": "__type",
"kind": 65536,
"kindString": "Type literal",
"flags": {},
"children": [
{
"id": 32,
"name": "data",
"kind": 1024,
"kindString": "Property",
"flags": {},
"sources": [
{
"fileName": "src/index.ts",
"line": 43,
"character": 42
}
],
"type": {
"type": "literal",
"value": null
}
},
{
"id": 33,
"name": "error",
"kind": 1024,
"kindString": "Property",
"flags": {},
"sources": [
{
"fileName": "src/index.ts",
"line": 43,
"character": 54
}
],
"type": {
"type": "reference",
"qualifiedName": "Error",
"package": "typescript",
"name": "Error"
}
}
],
"groups": [
{
"title": "Properties",
"kind": 1024,
"children": [32, 33]
}
]
}
}
]
}
],
"qualifiedName": "Promise",
"package": "typescript",
"name": "Promise"
}
}
]
},
{
"id": 20,
"name": "setAuth",
"kind": 2048,
"kindString": "Method",
"flags": {},
"sources": [
{
"fileName": "src/index.ts",
"line": 28,
"character": 2
}
],
"signatures": [
{
"id": 21,
"name": "setAuth",
"kind": 4096,
"kindString": "Call signature",
"flags": {},
"comment": {
"shortText": "Updates the authorization header",
"tags": [
{
"tag": "params",
"text": "token - the new jwt token sent in the authorisation header\n"
}
]
},
"parameters": [
{
"id": 22,
"name": "token",
"kind": 32768,
"kindString": "Parameter",
"flags": {},
"type": {
"type": "intrinsic",
"name": "string"
}
}
],
"type": {
"type": "intrinsic",
"name": "void"
}
}
]
}
],
"groups": [
{
"title": "Constructors",
"kind": 512,
"children": [2]
},
{
"title": "Properties",
"kind": 1024,
"children": [15, 14, 13]
},
{
"title": "Methods",
"kind": 2048,
"children": [23, 20]
}
],
"sources": [
{
"fileName": "src/index.ts",
"line": 4,
"character": 13
}
]
}
],
"groups": [
{
"title": "Classes",
"kind": 128,
"children": [1]
}
],
"sources": [
{
"fileName": "src/index.ts",
"line": 1,
"character": 0
}
]
}
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+10 -10
View File
@@ -13,7 +13,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/StorageClient.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/StorageClient.ts",
"children": [
{
"id": 313,
@@ -1524,7 +1524,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/index.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/index.ts",
"children": [
{
"id": 381,
@@ -1630,7 +1630,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/lib/StorageBucketApi.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/lib/StorageBucketApi.ts",
"children": [
{
"id": 107,
@@ -3003,7 +3003,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/lib/StorageFileApi.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/lib/StorageFileApi.ts",
"children": [
{
"id": 170,
@@ -6066,7 +6066,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/lib/constants.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/lib/constants.ts",
"children": [
{
"id": 4,
@@ -6143,7 +6143,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/lib/fetch.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/lib/fetch.ts",
"children": [
{
"id": 7,
@@ -7175,7 +7175,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/lib/helpers.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/lib/helpers.ts",
"children": [
{
"id": 69,
@@ -7277,7 +7277,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/lib/index.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/lib/index.ts",
"children": [
{
"id": 305,
@@ -7393,7 +7393,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/lib/types.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/lib/types.ts",
"children": [
{
"id": 74,
@@ -8183,7 +8183,7 @@
"flags": {
"isExported": true
},
"originalName": "/home/runner/work/storage-js/storage-js/src/lib/version.ts",
"originalName": "/Users/copple/Projects/Supabase/storage-js/src/lib/version.ts",
"children": [
{
"id": 2,
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+12 -6
View File
@@ -5,12 +5,18 @@
"types": "./index.tsx",
"license": "MIT",
"scripts": {
"tsdoc:dereference:functions": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/functions.json --output ../enrichments/tsdoc_v2/functions_dereferenced.json",
"tsdoc:dereference:gotrue": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/gotrue.json --output ../enrichments/tsdoc_v2/gotrue_dereferenced.json",
"tsdoc:dereference:postgrest": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/postgrest.json --output ../enrichments/tsdoc_v2/postgrest_dereferenced.json",
"tsdoc:dereference:realtime": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/realtime.json --output ../enrichments/tsdoc_v2/realtime_dereferenced.json",
"tsdoc:dereference:storage": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/storage.json --output ../enrichments/tsdoc_v2/storage_dereferenced.json",
"tsdoc:dereference:supabase": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/supabase.json --output ../enrichments/tsdoc_v2/supabase_dereferenced.json"
"tsdoc:dereference:functions:v1": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v1/functions.json --output ../enrichments/tsdoc_v1/functions_dereferenced.json",
"tsdoc:dereference:gotrue:v1": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v1/gotrue.json --output ../enrichments/tsdoc_v1/gotrue_dereferenced.json",
"tsdoc:dereference:postgrest:v1": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v1/postgrest.json --output ../enrichments/tsdoc_v1/postgrest_dereferenced.json",
"tsdoc:dereference:realtime:v1": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v1/realtime.json --output ../enrichments/tsdoc_v1/realtime_dereferenced.json",
"tsdoc:dereference:storage:v1": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v1/storage.json --output ../enrichments/tsdoc_v1/storage_dereferenced.json",
"tsdoc:dereference:supabase:v1": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v1/supabase.json --output ../enrichments/tsdoc_v1/supabase_dereferenced.json",
"tsdoc:dereference:functions:v2": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/functions.json --output ../enrichments/tsdoc_v2/functions_dereferenced.json",
"tsdoc:dereference:gotrue:v2": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/gotrue.json --output ../enrichments/tsdoc_v2/gotrue_dereferenced.json",
"tsdoc:dereference:postgrest:v2": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/postgrest.json --output ../enrichments/tsdoc_v2/postgrest_dereferenced.json",
"tsdoc:dereference:realtime:v2": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/realtime.json --output ../enrichments/tsdoc_v2/realtime_dereferenced.json",
"tsdoc:dereference:storage:v2": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/storage.json --output ../enrichments/tsdoc_v2/storage_dereferenced.json",
"tsdoc:dereference:supabase:v2": "ts-node ./tsdoc.ts dereference --input ../enrichments/tsdoc_v2/supabase.json --output ../enrichments/tsdoc_v2/supabase_dereferenced.json"
},
"dependencies": {},
"devDependencies": {
+65 -1
View File
@@ -886,7 +886,7 @@
},
"path": { "type": "string", "example": "folder/cat.png" },
"signedURL": {
"type": ["string", "null"],
"type": ["null", "string"],
"example": "/object/sign/avatars/folder/cat.png?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1cmwiOiJhdmF0YXJzL2ZvbGRlci9jYXQucG5nIiwiaWF0IjoxNjE3NzI2MjczLCJleHAiOjE2MTc3MjcyNzN9.s7Gt8ME80iREVxPhH01ZNv8oUn4XtaWsmiQ5csiUHn4"
}
},
@@ -1165,6 +1165,70 @@
}
}
}
},
"/render/authenticated/{bucketName}/{wildcard}": {
"get": {
"summary": "Render an authenticated image with the given transformations",
"tags": ["object"],
"parameters": [
{
"schema": { "type": "string", "example": "avatars" },
"example": "avatars",
"in": "path",
"name": "bucketName",
"required": true
},
{
"schema": { "type": "string", "example": "folder/cat.png" },
"example": "folder/cat.png",
"in": "path",
"name": "*",
"required": true
}
],
"responses": {
"4XX": {
"description": "Error response",
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/def-1", "description": "Error response" }
}
}
}
}
}
},
"/render/public/{bucketName}/{wildcard}": {
"get": {
"summary": "Render a public image with the given transformations",
"tags": ["object"],
"parameters": [
{
"schema": { "type": "string", "example": "avatars" },
"example": "avatars",
"in": "path",
"name": "bucketName",
"required": true
},
{
"schema": { "type": "string", "example": "folder/cat.png" },
"example": "folder/cat.png",
"in": "path",
"name": "*",
"required": true
}
],
"responses": {
"4XX": {
"description": "Error response",
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/def-1", "description": "Error response" }
}
}
}
}
}
}
},
"tags": [
+3 -3
View File
@@ -1526,7 +1526,7 @@ pages:
.lte():
description: |
Finds all rows whose value on the stated `column` is less than or equal to the specified `value`.
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.lte'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.lte'
examples:
- name: With `select()`
isSpotlight: true
@@ -1569,7 +1569,7 @@ pages:
.like():
description: |
Finds all rows whose value in the stated `column` matches the supplied `pattern` (case sensitive).
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.like'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.like'
examples:
- name: With `select()`
isSpotlight: true
@@ -1940,7 +1940,7 @@ pages:
```
.rangeLte():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.rangeLte'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeLte'
examples:
- name: With `select()`
isSpotlight: true
+5 -5
View File
@@ -7,7 +7,7 @@ info:
Supabase Dart.
definition: ../../spec/enrichments/tsdoc_v1/combined.json
definition: ../../spec/enrichments/tsdoc_v2/combined.json
slugPrefix: '/'
specUrl: https://github.com/supabase/supabase/edit/master/spec/supabase_dart_v1.yml
libraries:
@@ -855,7 +855,7 @@ pages:
description: |
Retrieves the details of all Storage buckets within an existing product.
title: 'listBuckets()'
$ref: '@supabase/storage-js."lib/StorageBucketApi".StorageBucketApi.listBuckets'
$ref: '@supabase/storage-js.packages/StorageBucketApi.default.listBuckets'
notes: |
- Policy permissions required:
- `buckets` permissions: `select`
@@ -874,7 +874,7 @@ pages:
description: |
Retrieves the details of an existing Storage bucket.
title: 'getBucket()'
$ref: '@supabase/storage-js."lib/StorageBucketApi".StorageBucketApi.getBucket'
$ref: '@supabase/storage-js.packages/StorageBucketApi.default.getBucket'
notes: |
- Policy permissions required:
- `buckets` permissions: `select`
@@ -964,7 +964,7 @@ pages:
description: |
Uploads a file to an existing bucket.
title: 'from.upload()'
$ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.upload'
$ref: '@supabase/storage-js.packages/StorageFileApi.default.upload'
notes: |
- Policy permissions required:
- `buckets` permissions: none
@@ -1579,7 +1579,7 @@ pages:
.like():
description: |
Finds all rows whose value in the stated `column` matches the supplied `pattern` (case sensitive).
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.like'
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.lte'
examples:
- name: With `select()`
isSpotlight: true
+34 -34
View File
@@ -638,7 +638,7 @@ pages:
select():
title: 'Fetch data: select()'
$ref: '@supabase/postgrest-js.PostgrestQueryBuilder.select'
$ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.select'
notes: |
- By default, Supabase projects will return a maximum of 1,000 rows. This setting can be changed in Project API Settings. It's recommended that you keep it low to limit the payload size of accidental or malicious requests. You can use `range()` queries to paginate through your data.
- `select()` can be combined with [Modifiers](/docs/reference/javascript/using-modifiers)
@@ -774,7 +774,7 @@ pages:
insert():
title: 'Create data: insert()'
$ref: '@supabase/postgrest-js.PostgrestQueryBuilder.insert'
$ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.insert'
notes: |
- By default, every time you run `insert()`, the client library will make a `select` to return the full record.
This is convenient, but it can also cause problems if your Policies are not configured to allow the `select` operation.
@@ -825,7 +825,7 @@ pages:
update():
title: 'Modify data: update()'
$ref: '@supabase/postgrest-js.PostgrestQueryBuilder.update'
$ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.update'
notes: |
- `update()` should always be combined with [Filters](/docs/reference/javascript/using-filters) to target the item(s) you wish to update.
examples:
@@ -859,7 +859,7 @@ pages:
upsert():
title: 'Upsert data: upsert()'
$ref: '@supabase/postgrest-js.PostgrestQueryBuilder.upsert'
$ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.upsert'
notes: |
- Primary keys should be included in the data payload in order for an update to work correctly.
- Primary keys must be natural, not surrogate. There are however, [workarounds](https://github.com/PostgREST/postgrest/issues/1118) for surrogate primary keys.
@@ -912,7 +912,7 @@ pages:
delete():
title: 'Delete data: delete()'
$ref: '@supabase/postgrest-js.PostgrestQueryBuilder.delete'
$ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.delete'
notes: |
- `delete()` should always be combined with [filters](/docs/reference/javascript/using-filters) to target the item(s) you wish to delete.
- If you use `delete()` with filters and you have
@@ -942,7 +942,7 @@ pages:
select 'Hello world';
$$ language sql;
```
$ref: '@supabase/postgrest-js.PostgrestClient.rpc'
$ref: '@supabase/postgrest-js."lib/PostgrestRpcBuilder".PostgrestRpcBuilder.rpc'
examples:
- name: Call a Postgres function without arguments
isSpotlight: true
@@ -1457,7 +1457,7 @@ pages:
If a Postgres function returns a table response, you can also apply modifiers to the `rpc()` function.
limit():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.limit'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.limit'
examples:
- name: With `select()`
isSpotlight: true
@@ -1479,7 +1479,7 @@ pages:
```
order():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.order'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.order'
examples:
- name: With `select()`
isSpotlight: true
@@ -1509,7 +1509,7 @@ pages:
.order('name', { ascending: false })
```
range():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.range'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.range'
examples:
- name: With `select()`
isSpotlight: true
@@ -1522,7 +1522,7 @@ pages:
```
single():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.single'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.single'
examples:
- name: With `select()`
isSpotlight: true
@@ -1536,7 +1536,7 @@ pages:
```
maybeSingle():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.maybeSingle'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.maybeSingle'
examples:
- name: With `select()`
isSpotlight: true
@@ -1604,7 +1604,7 @@ pages:
```
.or():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.or'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.or'
notes: |
- `.or()` expects you to use the raw [PostgREST syntax](https://postgrest.org/en/stable/api.html#horizontal-filtering-rows) for the filter names and values.
@@ -1643,7 +1643,7 @@ pages:
```
.not():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.not'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.not'
notes: |
- `.not()` expects you to use the raw [PostgREST syntax](https://postgrest.org/en/stable/api.html#horizontal-filtering-rows) for the filter names and values.
@@ -1690,7 +1690,7 @@ pages:
```
.match():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.match'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.match'
examples:
- name: With `select()`
isSpotlight: true
@@ -1727,7 +1727,7 @@ pages:
```
.eq():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.eq'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.eq'
examples:
- name: With `select()`
isSpotlight: true
@@ -1764,7 +1764,7 @@ pages:
```
.neq():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.neq'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.neq'
examples:
- name: With `select()`
isSpotlight: true
@@ -1801,7 +1801,7 @@ pages:
```
.gt():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.gt'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.gt'
examples:
- name: With `select()`
isSpotlight: true
@@ -1838,7 +1838,7 @@ pages:
```
.gte():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.gte'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.gte'
examples:
- name: With `select()`
isSpotlight: true
@@ -1875,7 +1875,7 @@ pages:
```
.lt():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.lt'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.lt'
examples:
- name: With `select()`
isSpotlight: true
@@ -1912,7 +1912,7 @@ pages:
```
.lte():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.lte'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.lte'
examples:
- name: With `select()`
isSpotlight: true
@@ -1949,7 +1949,7 @@ pages:
```
.like():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.like'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.like'
examples:
- name: With `select()`
isSpotlight: true
@@ -1986,7 +1986,7 @@ pages:
```
.ilike():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.ilike'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.ilike'
examples:
- name: With `select()`
isSpotlight: true
@@ -2023,7 +2023,7 @@ pages:
```
.is():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.is'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.is'
examples:
- name: With `select()`
isSpotlight: true
@@ -2060,7 +2060,7 @@ pages:
```
.in():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.in'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.in'
examples:
- name: With `select()`
isSpotlight: true
@@ -2097,7 +2097,7 @@ pages:
```
.contains():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.contains'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.contains'
notes: |
- `.contains()` can work on array columns or range columns.
It is very useful for finding rows where a tag array contains all the values in the filter array.
@@ -2144,7 +2144,7 @@ pages:
```
.containedBy():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.containedBy'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.containedBy'
notes: |
- `.containedBy()` can work on array columns or range columns.
@@ -2190,7 +2190,7 @@ pages:
```
.rangeLt():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.rangeLt'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeLt'
examples:
- name: With `select()`
isSpotlight: true
@@ -2227,7 +2227,7 @@ pages:
```
.rangeGt():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.rangeGt'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeGt'
examples:
- name: With `select()`
isSpotlight: true
@@ -2264,7 +2264,7 @@ pages:
```
.rangeGte():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.rangeGte'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeGte'
examples:
- name: With `select()`
isSpotlight: true
@@ -2301,7 +2301,7 @@ pages:
```
.rangeLte():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.rangeLte'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeLte'
examples:
- name: With `select()`
isSpotlight: true
@@ -2338,7 +2338,7 @@ pages:
```
.rangeAdjacent():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.rangeAdjacent'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeAdjacent'
examples:
- name: With `select()`
isSpotlight: true
@@ -2375,7 +2375,7 @@ pages:
```
.overlaps():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.overlaps'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.overlaps'
notes: |
- `.overlaps()` can work on array columns or range columns.
@@ -2421,7 +2421,7 @@ pages:
```
.textSearch():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.textSearch'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.textSearch'
examples:
- name: Text search
js: |
@@ -2480,7 +2480,7 @@ pages:
```
.filter():
$ref: '@supabase/postgrest-js.PostgrestFilterBuilder.filter'
$ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.filter'
notes: |
- `.filter()` expects you to use the raw [PostgREST syntax](https://postgrest.org/en/stable/api.html#horizontal-filtering-rows) for the filter names and values, so it should only be used as an escape hatch in case other filters don't work.
```js
+1 -1
View File
@@ -4825,7 +4825,7 @@ pages:
title: 'invoke()'
description: |
Invoke a Supabase Function.
$ref: '@supabase/functions-js.index.FunctionsClient.invoke'
$ref: '@supabase/functions-js.FunctionsClient.invoke'
notes: |
- Requires an Authorization header.
- Invoke params generally match the [Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) spec.
+568 -168
View File
@@ -228,91 +228,6 @@
}
},
"/v1/projects/{ref}/functions": {
"get": {
"operationId": "getFunctions",
"summary": "List all functions",
"description": "Returns all functions you've previously added to the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": ["ACTIVE", "REMOVED", "THROTTLED"],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
}
},
"required": [
"id",
"slug",
"name",
"status",
"version",
"created_at",
"updated_at"
]
}
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's functions"
}
},
"tags": ["projects"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
},
"post": {
"operationId": "createFunction",
"summary": "Create a function",
@@ -412,6 +327,105 @@
},
"tags": ["projects"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
},
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
},
"get": {
"operationId": "getFunctions",
"summary": "List all functions",
"description": "Returns all functions you've previously added to the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": ["ACTIVE", "REMOVED", "THROTTLED"],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
}
},
"required": [
"id",
"slug",
"name",
"status",
"version",
"created_at",
"updated_at"
]
}
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's functions"
}
},
"tags": ["projects"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
},
{
"apiKeyHeader": [],
"apiKeyParam": []
@@ -689,6 +703,389 @@
]
}
},
"/v1/projects/{ref}/custom-hostname": {
"get": {
"operationId": "getCustomHostnameConfig",
"summary": "Gets project's custom hostname config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"status": {
"enum": [
"1_not_started",
"2_initiated",
"3_challenge_verified",
"4_origin_setup_completed",
"5_services_reconfigured"
],
"type": "string"
},
"custom_hostname": {
"type": "string"
},
"data": {
"type": "object"
}
},
"required": ["status", "custom_hostname", "data"]
}
}
}
},
"500": {
"description": "Failed to retrieve project's custom hostname config"
}
},
"tags": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "remove",
"summary": "Deletes a project's custom hostname configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"500": {
"description": "Failed to delete project custom hostname configuration"
}
},
"tags": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname/initialize": {
"post": {
"operationId": "createCustomHostnameConfig",
"summary": "Updates project's custom hostname configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"custom_hostname": {
"type": "string"
}
},
"required": ["custom_hostname"]
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"status": {
"enum": [
"1_not_started",
"2_initiated",
"3_challenge_verified",
"4_origin_setup_completed",
"5_services_reconfigured"
],
"type": "string"
},
"custom_hostname": {
"type": "string"
},
"data": {
"type": "object"
}
},
"required": ["status", "custom_hostname", "data"]
}
}
}
},
"500": {
"description": "Failed to update project custom hostname configuration"
}
},
"tags": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname/reverify": {
"post": {
"operationId": "reverify",
"summary": "Attempts to verify the DNS configuration for project's custom hostname configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"status": {
"enum": [
"1_not_started",
"2_initiated",
"3_challenge_verified",
"4_origin_setup_completed",
"5_services_reconfigured"
],
"type": "string"
},
"custom_hostname": {
"type": "string"
},
"data": {
"type": "object"
}
},
"required": ["status", "custom_hostname", "data"]
}
}
}
},
"500": {
"description": "Failed to verify project custom hostname configuration"
}
},
"tags": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname/activate": {
"post": {
"operationId": "activate",
"summary": "Activates a custom hostname for a project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"status": {
"enum": [
"1_not_started",
"2_initiated",
"3_challenge_verified",
"4_origin_setup_completed",
"5_services_reconfigured"
],
"type": "string"
},
"custom_hostname": {
"type": "string"
},
"data": {
"type": "object"
}
},
"required": ["status", "custom_hostname", "data"]
}
}
}
},
"500": {
"description": "Failed to activate project custom hostname configuration"
}
},
"tags": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/pgsodium": {
"get": {
"operationId": "getConfig",
"summary": "Gets project's pgsodium config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's pgsodium config"
}
},
"tags": ["pgsodium (beta)"],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "updateConfig",
"summary": "Updates project's pgsodium config. Updating the root_key can cause all data encrypted with the older key to become inaccessible.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"root_key": {
"type": "string"
}
},
"required": ["root_key"]
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's pgsodium config"
}
},
"tags": ["pgsodium (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/secrets": {
"get": {
"operationId": "getSecrets",
@@ -870,11 +1267,21 @@
]
}
},
"/v1/projects/{ref}/pgsodium": {
"/v1/projects/{ref}/types/typescript": {
"get": {
"operationId": "getConfig",
"summary": "Gets project's pgsodium config",
"operationId": "getTypescriptTypes",
"summary": "Generate TypeScript types",
"description": "Returns the TypeScript types of your schema for use with supabase-js.",
"parameters": [
{
"name": "included_schemas",
"required": false,
"in": "query",
"schema": {
"default": "public",
"type": "string"
}
},
{
"name": "ref",
"required": true,
@@ -893,7 +1300,13 @@
"content": {
"application/json": {
"schema": {
"type": "object"
"type": "object",
"properties": {
"types": {
"type": "string"
}
},
"required": ["types"]
}
}
}
@@ -902,68 +1315,15 @@
"description": ""
},
"500": {
"description": "Failed to retrieve project's pgsodium config"
"description": "Failed to generate TypeScript types"
}
},
"tags": ["pgsodium (beta)"],
"tags": ["projects"],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "updateConfig",
"summary": "Updates project's pgsodium config. Updating the root_key can cause all data encrypted with the older key to become inaccessible.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"root_key": {
"type": "string"
}
},
"required": ["root_key"]
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
"apiKeyHeader": [],
"apiKeyParam": []
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's pgsodium config"
}
},
"tags": ["pgsodium (beta)"],
"security": [
{
"bearer": []
}
@@ -1078,6 +1438,25 @@
},
"required": ["name"]
},
"CreateFunctionBody": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"pattern": "/^[A-Za-z0-9_-]+$/"
},
"name": {
"type": "string"
},
"body": {
"type": "string"
},
"verify_jwt": {
"type": "boolean"
}
},
"required": ["slug", "name", "body"]
},
"FunctionResponse": {
"type": "object",
"properties": {
@@ -1109,25 +1488,6 @@
},
"required": ["id", "slug", "name", "status", "version", "created_at", "updated_at"]
},
"CreateFunctionBody": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"pattern": "/^[A-Za-z0-9_-]+$/"
},
"name": {
"type": "string"
},
"body": {
"type": "string"
},
"verify_jwt": {
"type": "boolean"
}
},
"required": ["slug", "name", "body"]
},
"FunctionSlugResponse": {
"type": "object",
"properties": {
@@ -1176,6 +1536,46 @@
}
}
},
"UpdateCustomHostnameResponse": {
"type": "object",
"properties": {
"status": {
"enum": [
"1_not_started",
"2_initiated",
"3_challenge_verified",
"4_origin_setup_completed",
"5_services_reconfigured"
],
"type": "string"
},
"custom_hostname": {
"type": "string"
},
"data": {
"type": "object"
}
},
"required": ["status", "custom_hostname", "data"]
},
"UpdateCustomHostnameBody": {
"type": "object",
"properties": {
"custom_hostname": {
"type": "string"
}
},
"required": ["custom_hostname"]
},
"UpdatePgsodiumConfigBody": {
"type": "object",
"properties": {
"root_key": {
"type": "string"
}
},
"required": ["root_key"]
},
"SecretResponse": {
"type": "object",
"properties": {
@@ -1201,14 +1601,14 @@
},
"required": ["name", "value"]
},
"UpdatePgsodiumConfigBody": {
"TypescriptResponse": {
"type": "object",
"properties": {
"root_key": {
"types": {
"type": "string"
}
},
"required": ["root_key"]
"required": ["types"]
}
}
}
@@ -1345,7 +1345,7 @@
"example": "folder/cat.png"
},
"signedURL": {
"type": ["string", "null"],
"type": ["null", "string"],
"example": "/object/sign/avatars/folder/cat.png?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1cmwiOiJhdmF0YXJzL2ZvbGRlci9jYXQucG5nIiwiaWF0IjoxNjE3NzI2MjczLCJleHAiOjE2MTc3MjcyNzN9.s7Gt8ME80iREVxPhH01ZNv8oUn4XtaWsmiQ5csiUHn4"
}
},
@@ -1824,6 +1824,114 @@
}
}
}
},
"/render/authenticated/{bucketName}/{wildcard}": {
"get": {
"summary": "Render an authenticated image with the given transformations",
"tags": ["object"],
"parameters": [
{
"schema": {
"type": "string",
"example": "avatars"
},
"example": "avatars",
"in": "path",
"name": "bucketName",
"required": true
},
{
"schema": {
"type": "string",
"example": "folder/cat.png"
},
"example": "folder/cat.png",
"in": "path",
"name": "*",
"required": true
}
],
"responses": {
"4XX": {
"description": "Error response",
"content": {
"application/json": {
"schema": {
"description": "Error response",
"type": "object",
"properties": {
"statusCode": {
"type": "string"
},
"error": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": ["statusCode", "error", "message"],
"title": "errorSchema"
}
}
}
}
}
}
},
"/render/public/{bucketName}/{wildcard}": {
"get": {
"summary": "Render a public image with the given transformations",
"tags": ["object"],
"parameters": [
{
"schema": {
"type": "string",
"example": "avatars"
},
"example": "avatars",
"in": "path",
"name": "bucketName",
"required": true
},
{
"schema": {
"type": "string",
"example": "folder/cat.png"
},
"example": "folder/cat.png",
"in": "path",
"name": "*",
"required": true
}
],
"responses": {
"4XX": {
"description": "Error response",
"content": {
"application/json": {
"schema": {
"description": "Error response",
"type": "object",
"properties": {
"statusCode": {
"type": "string"
},
"error": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": ["statusCode", "error", "message"],
"title": "errorSchema"
}
}
}
}
}
}
}
},
"tags": [