diff --git a/.gitignore b/.gitignore index 13b307e65..41c0fd941 100644 --- a/.gitignore +++ b/.gitignore @@ -85,3 +85,9 @@ pg_dump.sql # Benchmark Results bench_results + +# Node Modules (Portal DBTypeScript SDK) +node_modules + +# JWKS file +jwks.json \ No newline at end of file diff --git a/deleteme.md b/deleteme.md new file mode 100644 index 000000000..e69de29bb diff --git a/portal-db/Makefile b/portal-db/Makefile index 09c6fadf4..bc85efbce 100644 --- a/portal-db/Makefile +++ b/portal-db/Makefile @@ -19,24 +19,7 @@ GREEN := \033[0;32m JWT_ROLE ?= portal_db_admin JWT_EMAIL ?= john@doe.com - -SECOND_GOAL := $(word 2,$(MAKECMDGOALS)) - -ifeq ($(SECOND_GOAL),admin) - JWT_ROLE := portal_db_admin -endif - -ifeq ($(SECOND_GOAL),reader) - JWT_ROLE := portal_db_reader -endif - -ifdef ROLE - JWT_ROLE := $(ROLE) -endif - -ifdef EMAIL - JWT_EMAIL := $(EMAIL) -endif +JWT_EXPIRES ?= 1h # ============================================================================ # HELP @@ -58,7 +41,7 @@ help: ## Show all available targets @grep -h -E '^(postgrest-hydrate-testdata|hydrate-services|hydrate-applications|hydrate-gateways|hydrate-prod|dehydrate-reset-db):.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "$(CYAN)%-30s$(RESET) %s\n", $$1, $$2}' @echo "" @echo "$(BOLD)=== ๐Ÿ” Authentication & Testing ===$(RESET)" - @grep -h -E '^(test-postgrest-auth|test-postgrest-portal-app-creation|postgrest-gen-jwt):.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "$(CYAN)%-30s$(RESET) %s\n", $$1, $$2}' + @grep -h -E '^(test-postgrest-auth|test-postgrest-portal-app-creation|postgrest-gen-jwt|grove-download-jwks|check-jwks):.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "$(CYAN)%-30s$(RESET) %s\n", $$1, $$2}' @echo "" @echo "$(BOLD)=== ๐Ÿ“ API Generation ===$(RESET)" @grep -h -E '^(postgrest-generate-openapi|postgrest-swagger-ui|postgrest-generate-sdks|postgrest-generate-all):.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "$(CYAN)%-30s$(RESET) %s\n", $$1, $$2}' @@ -81,8 +64,10 @@ quickstart: ## Quick start guide for Portal DB (shows commands to run) @echo "$(CYAN) make postgrest-hydrate-testdata$(RESET)" @echo "" @echo "$(BOLD)Step 3: Generate JWT tokens$(RESET)" - @echo "$(CYAN) make postgrest-gen-jwt admin$(RESET)" - @echo " # Optionally, generate reader token: $(CYAN)make postgrest-gen-jwt reader$(RESET)" + @echo "$(CYAN) make postgrest-gen-jwt$(RESET) # Defaults to admin role" + @echo " # Optionally, generate reader token: $(CYAN)JWT_ROLE=reader make postgrest-gen-jwt$(RESET)" + @echo " # With custom email: $(CYAN)JWT_EMAIL=user@example.com make postgrest-gen-jwt$(RESET)" + @echo " # With custom expiry: $(CYAN)JWT_EXPIRES=24h make postgrest-gen-jwt$(RESET)" @echo "" @echo "$(BOLD)Step 4: Export JWT token$(RESET)" @echo "$(YELLOW) # Copy the export commands from the previous output$(RESET)" @@ -128,7 +113,7 @@ quickstart: ## Quick start guide for Portal DB (shows commands to run) # ============================================================================ .PHONY: portal-db-up -portal-db-up: ## Start all Portal DB services +portal-db-up: check-jwks ## Start all Portal DB services @echo "๐Ÿš€ Starting all Portal DB services..." docker compose up -d @echo "โœ… Services started!" @@ -137,6 +122,14 @@ portal-db-up: ## Start all Portal DB services @echo "" @echo "๐Ÿ”ง You can connect to the database using:" @echo " $(CYAN)psql 'postgresql://postgres:portal_password@localhost:5435/portal_db'$(RESET)" + @echo "" + @echo "๐Ÿ” To test the API with authentication:" + @echo " 1. Generate a JWT token:" + @echo " $(CYAN)make postgrest-gen-jwt$(RESET)" + @echo " 2. Export the token (copy from output above):" + @echo " $(CYAN)export POSTGREST_JWT_TOKEN=\"eyJ...\"$(RESET)" + @echo " 3. Make an authenticated request:" + @echo " $(CYAN)curl -H \"Authorization: Bearer \$$POSTGREST_JWT_TOKEN\" \"http://localhost:3000/networks\" | jq '.'$(RESET)" .PHONY: portal-db-down portal-db-down: ## Stop all Portal DB services @@ -166,6 +159,11 @@ postgrest-swagger-ui: postgrest-generate-openapi ## Start Swagger UI to view Ope -v $(PWD)/api/openapi/openapi.json:/openapi.json:ro \ swaggerapi/swagger-ui +.PHONY: postgrest-generate-sdks +postgrest-generate-sdks: postgrest-generate-openapi ## Generate Go and TypeScript SDKs from OpenAPI specification + @echo "๐Ÿ”ง Generating Go and TypeScript SDKs from OpenAPI specification..." + cd api/codegen && ./generate-sdks.sh + # ============================================================================ # AUTHENTICATION & TESTING # ============================================================================ @@ -198,16 +196,34 @@ test-postgrest-portal-app-creation: _require-postgrest-api ## Test portal applic cd api/scripts && ./test-postgrest-portal-app-creation.sh .PHONY: postgrest-gen-jwt -postgrest-gen-jwt: _require-postgrest-api ## Generate JWT token +postgrest-gen-jwt: _require-postgrest-api ## Generate JWT token (use JWT_ROLE=admin JWT_EMAIL=user@example.com JWT_EXPIRES=24h to customize) @echo "๐Ÿ”‘ Generating JWT token..." - cd api/scripts && ./postgrest-gen-jwt.sh $(JWT_ROLE) $(JWT_EMAIL) - -.PHONY: admin reader -admin: - @: - -reader: - @: + cd api/scripts && ./postgrest-gen-jwt.sh --role $(JWT_ROLE) --email $(JWT_EMAIL) --expires $(JWT_EXPIRES) + +.PHONY: grove-download-jwks +grove-download-jwks: ## ๐ŸŒฟ GROVE EMPLOYEES ONLY - Download JWKS from 1Password to api/jwks.json + @echo "๐ŸŒฟ $(BOLD)GROVE EMPLOYEES ONLY$(RESET)" + @echo "๐Ÿ” Downloading JWKS from 1Password..." + @if ! command -v op >/dev/null 2>&1; then \ + echo "โŒ 1Password CLI (op) is not installed. Please install it first:"; \ + echo " brew install 1password-cli"; \ + exit 1; \ + fi + @op item get 6hh3pjg7m2qdpkg26kf6gzmjs4 --format json | jq -r '.fields[] | select(.id == "notesPlain") | .value' | jq '.' > api/jwks.json + @echo "โœ… JWKS downloaded to api/jwks.json" + +.PHONY: check-jwks +check-jwks: ## Check if api/jwks.json exists, show instructions if missing + @if [ ! -f api/jwks.json ]; then \ + echo "โŒ $(YELLOW)api/jwks.json not found!$(RESET)"; \ + echo ""; \ + echo "$(BOLD)๐ŸŒฟ GROVE EMPLOYEES: Download the JWKS file from 1Password:$(RESET)"; \ + echo " $(CYAN)make grove-download-jwks$(RESET)"; \ + echo ""; \ + echo "$(YELLOW)Note: Requires 1Password CLI (op) to be installed and authenticated.$(RESET)"; \ + exit 1; \ + fi + @echo "โœ… api/jwks.json found" # ============================================================================ # DATA HYDRATION diff --git a/portal-db/api/README.md b/portal-db/api/README.md index a3ff2ad88..8f80ceed3 100644 --- a/portal-db/api/README.md +++ b/portal-db/api/README.md @@ -10,9 +10,11 @@ PostgREST automatically generates a REST API from the PostgreSQL database schema - [Walkthrough](#walkthrough) - [Authentication](#authentication) - [Auth Summary](#auth-summary) - - [Database Roles Roles](#database-roles-roles) + - [JWKS Configuration](#jwks-configuration) + - [Database Roles](#database-roles) + - [Row-Level Security (RLS)](#row-level-security-rls) - [Testing auth locally](#testing-auth-locally) - - [JWT Generation](#jwt-generation) + - [JWT Generation (Backend/Internal Use)](#jwt-generation-backendinternal-use) - [How it Works](#how-it-works) - [๐Ÿ“š Resources](#-resources) @@ -65,22 +67,57 @@ make postgrest-swagger-ui ## Authentication -The PostgREST API is authenticated via the SQL migration in [002_postgrest_init.sql](../schema/002_postgrest_init.sql). +The PostgREST API uses **dual JWT authentication** to support both internal services and frontend users. ### Auth Summary -1. SSL Certs to connect to the DB -2. JWT to authenticate into the DB as a `portal_db_*` user -3. Top level roles authenticated into the DB subject to RLS (e.g. `portal_db_admin` or `portal_db_reader`) -4. Portal Application roles defined within the tables (see `rbac` of each table) +PostgREST authenticates requests using JWTs (JSON Web Tokens) with two different signing methods: -### Database Roles Roles +1. **Backend/Internal JWTs (HS256)** - For backend services and engineers + - Algorithm: HMAC-SHA256 (symmetric key) + - Use case: Internal tools, backend services, admin operations + - Roles: `portal_db_admin`, `portal_db_reader` + - Generated locally via `make postgrest-gen-jwt` + +2. **Auth0 User JWTs (RS256)** - For frontend users + - Algorithm: RSA-SHA256 (asymmetric key) + - Use case: Frontend application users authenticated via Auth0 + - Role: `authenticated_user` (with user-scoped RLS policies) + - Generated by Auth0 at https://auth.grove.city/ + +Both JWT types are verified using a **JWKS (JSON Web Key Set)** file that contains: +- HS256 symmetric key for backend JWTs (no `kid` in header) +- RS256 public key from Auth0 (with `kid="1a2b3c4d5e6f7g8h9i0j"` in header) + +### JWKS Configuration + +The JWKS file (`api/jwks.json`) is **gitignored** and contains sensitive key material. + +**๐ŸŒฟ GROVE EMPLOYEES ONLY:** +```bash +# Download JWKS from 1Password (requires 1Password CLI) +make grove-download-jwks +``` + +This command fetches the production JWKS file containing both the internal HS256 secret and the Auth0 RS256 public key. + +### Database Roles - `authenticator` - "Chameleon" role used exclusively by PostgREST for JWT authentication (no direct API access) -- `portal_db_admin` - JWT-backed role with read/write access (subject to RLS) -- `portal_db_reader` - JWT-backed role with read-only access (subject to RLS) +- `portal_db_admin` - JWT-backed role with full read/write access (backend services) +- `portal_db_reader` - JWT-backed role with read-only access (backend services) +- `authenticated_user` - JWT-backed role for Auth0 users with user-scoped RLS policies (see [004_grove_portal_access.sql](../schema/004_grove_portal_access.sql)) - `anon` - Default unauthenticated role with no privileges +### Row-Level Security (RLS) + +Frontend users authenticated via Auth0 are subject to **Row-Level Security** policies: +- Users can only access `portal_accounts` and `portal_applications` they have explicit RBAC permissions for +- Permission levels: `legacy_read` (SELECT) and `legacy_write` (INSERT/UPDATE/DELETE) +- Unauthorized access returns an empty array `[]` (by design, to prevent information leakage) + +See [004_grove_portal_access.sql](../schema/004_grove_portal_access.sql) for RLS policy details. + ### Testing auth locally Run `make` from the `portal-db` directory shows the following scripts which can be used to test things locally: @@ -92,16 +129,27 @@ test-postgrest-portal-app-creation Test portal application creation and retrieva postgrest-gen-jwt Generate JWT token ``` -### JWT Generation +### JWT Generation (Backend/Internal Use) + +The `postgrest-gen-jwt` script generates HS256 JWTs for backend services and internal development: ```bash -# Admin JWT -make postgrest-gen-jwt admin +# Generate admin JWT (full read/write access) +make postgrest-gen-jwt -# Reader JWT -make postgrest-gen-jwt reader +# Generate reader JWT (read-only access) +JWT_ROLE=portal_db_reader make postgrest-gen-jwt + +# Customize email, expiration +JWT_EMAIL=user@example.com JWT_EXPIRES=24h make postgrest-gen-jwt + +# Token-only output (for scripting) +export POSTGREST_JWT_TOKEN=$(cd api/scripts && ./postgrest-gen-jwt.sh --token-only) +curl -H "Authorization: Bearer $POSTGREST_JWT_TOKEN" http://localhost:3000/networks ``` +See `./api/scripts/postgrest-gen-jwt.sh --help` for full documentation. + ## How it Works **PostgREST** introspects PostgreSQL schema and auto-generates REST endpoints: diff --git a/portal-db/api/codegen/codegen-client.yaml b/portal-db/api/codegen/codegen-client.yaml new file mode 100644 index 000000000..1935e80fa --- /dev/null +++ b/portal-db/api/codegen/codegen-client.yaml @@ -0,0 +1,10 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/oapi-codegen/oapi-codegen/HEAD/configuration-schema.json +package: portaldb +output: ../../sdk/go/client.go +generate: + client: true + models: false + embedded-spec: true +output-options: + skip-fmt: false + skip-prune: false diff --git a/portal-db/api/codegen/codegen-models.yaml b/portal-db/api/codegen/codegen-models.yaml new file mode 100644 index 000000000..b540a8fb0 --- /dev/null +++ b/portal-db/api/codegen/codegen-models.yaml @@ -0,0 +1,9 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/oapi-codegen/oapi-codegen/HEAD/configuration-schema.json +package: portaldb +output: ../../sdk/go/models.go +generate: + models: true + embedded-spec: false +output-options: + skip-fmt: false + skip-prune: false diff --git a/portal-db/api/codegen/generate-openapi.sh b/portal-db/api/codegen/generate-openapi.sh index bd75927c7..3ac00297b 100755 --- a/portal-db/api/codegen/generate-openapi.sh +++ b/portal-db/api/codegen/generate-openapi.sh @@ -62,10 +62,43 @@ while [ $attempt -le $max_attempts ]; do ((attempt++)) done -# Fetch OpenAPI specification +# Fetch OpenAPI specification (Swagger 2.0 format from PostgREST) echo -e "${BLUE}๐Ÿ“ฅ Fetching OpenAPI specification...${RESET}" -if curl -s -f -H "Accept: application/openapi+json" ${AUTH_HEADER:+-H "$AUTH_HEADER"} "$POSTGREST_URL/" -o "$OUTPUT_FILE"; then - echo -e "${GREEN}โœ… OpenAPI specification saved to: ${CYAN}$OUTPUT_FILE${RESET}" +SWAGGER_FILE="${OUTPUT_FILE%.json}-swagger.json" + +if curl -s -f -H "Accept: application/openapi+json" ${AUTH_HEADER:+-H "$AUTH_HEADER"} "$POSTGREST_URL/" -o "$SWAGGER_FILE"; then + echo -e "${GREEN}โœ… Swagger 2.0 specification fetched${RESET}" + + # Convert Swagger 2.0 to OpenAPI 3.x + echo -e "${BLUE}๐Ÿ”„ Converting Swagger 2.0 to OpenAPI 3.x...${RESET}" + + # Check if swagger2openapi is available + if ! command -v swagger2openapi >/dev/null 2>&1; then + echo -e "${BLUE}๐Ÿ“ฆ Installing swagger2openapi converter...${RESET}" + if command -v npm >/dev/null 2>&1; then + npm install -g swagger2openapi + else + echo -e "${RED}โŒ npm not found. Please install Node.js and npm first.${RESET}" + echo " - Mac: brew install node" + echo " - Or download from: https://nodejs.org/" + exit 1 + fi + fi + + if ! swagger2openapi "$SWAGGER_FILE" -o "$OUTPUT_FILE"; then + echo -e "${RED}โŒ Failed to convert Swagger 2.0 to OpenAPI 3.x${RESET}" + exit 1 + fi + + # Fix boolean format issues in the converted spec + echo -e "${BLUE}๐Ÿ”ง Fixing boolean format issues...${RESET}" + sed -i.bak 's/"format": "boolean",//g' "$OUTPUT_FILE" + rm -f "${OUTPUT_FILE}.bak" + + # Clean up temporary Swagger file + rm -f "$SWAGGER_FILE" + + echo -e "${GREEN}โœ… OpenAPI 3.x specification saved to: ${CYAN}$OUTPUT_FILE${RESET}" # Pretty print the JSON if command -v jq >/dev/null 2>&1; then diff --git a/portal-db/api/codegen/generate-sdks.sh b/portal-db/api/codegen/generate-sdks.sh new file mode 100755 index 000000000..4889aeeae --- /dev/null +++ b/portal-db/api/codegen/generate-sdks.sh @@ -0,0 +1,382 @@ +#!/bin/bash + +# Generate Go and TypeScript SDKs from OpenAPI specification +# This script generates both Go and TypeScript SDKs for the Portal DB API +# - Go SDK: Uses oapi-codegen for client and models generation +# - TypeScript SDK: Uses openapi-typescript for type generation and openapi-fetch for runtime client + +set -e + +# Configuration +OPENAPI_DIR="../openapi" +OPENAPI_V3_FILE="$OPENAPI_DIR/openapi.json" +GO_OUTPUT_DIR="../../sdk/go" +TS_OUTPUT_DIR="../../sdk/typescript" +CONFIG_MODELS="./codegen-models.yaml" +CONFIG_CLIENT="./codegen-client.yaml" + +# Colors for output +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +BLUE='\033[0;34m' +NC='\033[0m' # No Color + +echo "๐Ÿ”ง Generating Go and TypeScript SDKs from OpenAPI specification..." + +# ============================================================================ +# PHASE 1: ENVIRONMENT VALIDATION +# ============================================================================ + +echo "" +echo -e "${BLUE}๐Ÿ“‹ Phase 1: Environment Validation${NC}" + +# Check if Go is installed +if ! command -v go >/dev/null 2>&1; then + echo -e "${RED}โŒ Go is not installed. Please install Go first.${NC}" + echo " - Mac: brew install go" + echo " - Or download from: https://golang.org/" + exit 1 +fi + +echo -e "${GREEN}โœ… Go is installed: $(go version)${NC}" + +# Check if oapi-codegen is installed +if ! command -v oapi-codegen >/dev/null 2>&1; then + echo "๐Ÿ“ฆ Installing oapi-codegen..." + go install github.com/oapi-codegen/oapi-codegen/v2/cmd/oapi-codegen@latest + + # Verify installation + if ! command -v oapi-codegen >/dev/null 2>&1; then + echo -e "${RED}โŒ Failed to install oapi-codegen. Please check your Go installation.${NC}" + exit 1 + fi +fi + +echo -e "${GREEN}โœ… oapi-codegen is available: $(oapi-codegen -version 2>/dev/null || echo 'installed')${NC}" + +# Check if Node.js and npm are installed for TypeScript SDK generation +if ! command -v node >/dev/null 2>&1; then + echo -e "${RED}โŒ Node.js is not installed. Please install Node.js first.${NC}" + echo " - Mac: brew install node" + echo " - Or download from: https://nodejs.org/" + exit 1 +fi + +echo -e "${GREEN}โœ… Node.js is installed: $(node --version)${NC}" + +if ! command -v npm >/dev/null 2>&1; then + echo -e "${RED}โŒ npm is not installed. Please install npm first.${NC}" + exit 1 +fi + +echo -e "${GREEN}โœ… npm is installed: $(npm --version)${NC}" + +# Check if openapi-typescript is installed (npx will auto-install if needed) +# We'll use npx to run it, which handles installation automatically +echo -e "${GREEN}โœ… Using npx for openapi-typescript (will auto-install if needed)${NC}" + +# Check if configuration files exist +for config_file in "$CONFIG_MODELS" "$CONFIG_CLIENT"; do + if [ ! -f "$config_file" ]; then + echo -e "${RED}โŒ Configuration file not found: $config_file${NC}" + echo " This should have been created as a permanent file." + exit 1 + fi +done + +echo -e "${GREEN}โœ… Configuration files found: models, client${NC}" + +# ============================================================================ +# PHASE 2: OPENAPI SPEC GENERATION +# ============================================================================ + +echo "" +echo -e "${BLUE}๐Ÿ“‹ Phase 2: OpenAPI Spec Generation${NC}" + +# Generate OpenAPI specification using the dedicated script +echo "๐Ÿ“ Generating OpenAPI specification..." +if ! ./generate-openapi.sh; then + echo -e "${RED}โŒ Failed to generate OpenAPI specification${NC}" + exit 1 +fi + +echo -e "${GREEN}โœ… OpenAPI specification ready: $OPENAPI_V3_FILE${NC}" + +# ============================================================================ +# PHASE 3: SDK GENERATION +# ============================================================================ + +echo "" +echo -e "${BLUE}๐Ÿ“‹ Phase 3: SDK Generation${NC}" + +echo "๐Ÿน Generating Go SDK in separate files for better readability..." + +# Clean previous generated files +echo "๐Ÿงน Cleaning previous generated files..." +rm -f "$GO_OUTPUT_DIR/models.go" "$GO_OUTPUT_DIR/client.go" + +# Generate models file (data types and structures) +echo " Generating models.go..." +if ! oapi-codegen -config "$CONFIG_MODELS" "$OPENAPI_V3_FILE"; then + echo -e "${RED}โŒ Failed to generate models${NC}" + exit 1 +fi + +# Generate client file (API client and methods) +echo " Generating client.go..." +if ! oapi-codegen -config "$CONFIG_CLIENT" "$OPENAPI_V3_FILE"; then + echo -e "${RED}โŒ Failed to generate client${NC}" + exit 1 +fi + +echo -e "${GREEN}โœ… Go SDK generated successfully in separate files${NC}" + +echo "" +echo "๐Ÿ”ท Generating TypeScript SDK with openapi-typescript..." + +# Create TypeScript output directory if it doesn't exist +mkdir -p "$TS_OUTPUT_DIR" + +# Clean previous generated TypeScript files +echo "๐Ÿงน Cleaning previous TypeScript generated files..." +rm -f "$TS_OUTPUT_DIR/types.ts" + +# Generate TypeScript types using openapi-typescript +echo " Generating TypeScript types from OpenAPI spec..." +if ! npx --yes openapi-typescript "$OPENAPI_V3_FILE" -o "$TS_OUTPUT_DIR/types.ts"; then + echo -e "${RED}โŒ Failed to generate TypeScript types${NC}" + exit 1 +fi + +echo -e "${GREEN}โœ… TypeScript types generated successfully${NC}" + +# ============================================================================ +# PHASE 4: MODULE SETUP +# ============================================================================ + +echo "" +echo -e "${BLUE}๐Ÿ“‹ Phase 4: Module Setup${NC}" + +# Navigate to SDK directory for module setup +cd "$GO_OUTPUT_DIR" + +# Run go mod tidy to resolve dependencies +echo "๐Ÿ”ง Resolving dependencies..." +if ! go mod tidy; then + echo -e "${RED}โŒ Failed to resolve Go dependencies${NC}" + cd - >/dev/null + exit 1 +fi + +echo -e "${GREEN}โœ… Go dependencies resolved${NC}" + +# Test compilation +echo "๐Ÿ” Validating generated code compilation..." +if ! go build ./...; then + echo -e "${RED}โŒ Generated code does not compile${NC}" + cd - >/dev/null + exit 1 +fi + +echo -e "${GREEN}โœ… Generated code compiles successfully${NC}" + +# Return to scripts directory +cd - >/dev/null + +# TypeScript module setup +echo "" +echo "๐Ÿ”ท Setting up TypeScript module..." + +# Navigate to TypeScript SDK directory +cd "$TS_OUTPUT_DIR" + +# Create package.json if it doesn't exist +if [ ! -f "package.json" ]; then + echo "๐Ÿ“ฆ Creating package.json..." + cat > package.json << 'EOF' +{ + "name": "@grove/portal-db-sdk", + "version": "1.0.0", + "description": "TypeScript SDK for Grove Portal DB API", + "type": "module", + "main": "client.ts", + "types": "types.ts", + "scripts": { + "type-check": "tsc --noEmit" + }, + "keywords": ["grove", "portal", "db", "api", "sdk", "typescript"], + "author": "Grove Team", + "license": "MIT", + "dependencies": { + "openapi-fetch": "^0.12.2" + }, + "devDependencies": { + "typescript": "^5.0.0", + "openapi-typescript": "^7.4.3" + }, + "peerDependencies": { + "typescript": ">=5.0.0" + } +} +EOF +fi + +# Create a client.ts file that uses openapi-fetch +if [ ! -f "client.ts" ]; then + echo "๐Ÿ“ Creating client.ts..." + cat > client.ts << 'EOF' +/** + * Grove Portal DB API Client + * + * This client uses openapi-fetch for type-safe API requests. + * It's lightweight with zero dependencies beyond native fetch. + * + * @example + * ```typescript + * import createClient from './client'; + * + * const client = createClient({ baseUrl: 'http://localhost:3000' }); + * + * // GET request with full type safety + * const { data, error } = await client.GET('/portal_accounts'); + * + * // POST request with typed body + * const { data, error } = await client.POST('/portal_accounts', { + * body: { + * portal_plan_type: 'PLAN_FREE', + * // ... other fields + * } + * }); + * ``` + */ +import createClient from 'openapi-fetch'; +import type { paths } from './types'; + +export type { paths } from './types'; + +/** + * Create a new API client instance + * + * @param options - Client configuration options + * @param options.baseUrl - Base URL for the API (default: http://localhost:3000) + * @param options.headers - Default headers to include with every request + * @returns Type-safe API client + */ +export default function createPortalDBClient(options?: { + baseUrl?: string; + headers?: HeadersInit; +}) { + return createClient({ + baseUrl: options?.baseUrl || 'http://localhost:3000', + headers: options?.headers, + }); +} + +// Re-export for convenience +export { createClient }; +EOF +fi + +# Create tsconfig.json if it doesn't exist +if [ ! -f "tsconfig.json" ]; then + echo "๐Ÿ”ง Creating tsconfig.json..." + cat > tsconfig.json << 'EOF' +{ + "compilerOptions": { + "target": "ES2020", + "module": "ESNext", + "lib": ["ES2020", "DOM"], + "moduleResolution": "Bundler", + "noUncheckedIndexedAccess": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "strict": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "declaration": true, + "declarationMap": true + }, + "include": ["*.ts"], + "exclude": ["node_modules", "dist"] +} +EOF +fi + +echo -e "${GREEN}โœ… TypeScript module setup completed${NC}" + +# Install dependencies if package-lock.json doesn't exist +if [ ! -f "package-lock.json" ]; then + echo "๐Ÿ“ฆ Installing dependencies..." + if npm install; then + echo -e "${GREEN}โœ… Dependencies installed successfully${NC}" + else + echo -e "${YELLOW}โš ๏ธ Failed to install dependencies, but SDK was generated${NC}" + echo " Run 'npm install' in $TS_OUTPUT_DIR to install dependencies" + fi +else + echo -e "${GREEN}โœ… Dependencies already installed${NC}" +fi + +# Return to scripts directory +cd - >/dev/null + +# ============================================================================ +# SUCCESS SUMMARY +# ============================================================================ + +echo "" +echo -e "${GREEN}๐ŸŽ‰ SDK generation completed successfully!${NC}" +echo "" +echo -e "${BLUE}๐Ÿ“ Generated Files:${NC}" +echo " API Docs: $OPENAPI_V3_FILE" +echo " Go SDK: $GO_OUTPUT_DIR" +echo " TypeScript: $TS_OUTPUT_DIR" +echo "" +echo -e "${BLUE}๐Ÿน Go SDK:${NC}" +echo " Module: github.com/buildwithgrove/path/portal-db/sdk/go" +echo " Package: portaldb" +echo " Files:" +echo " โ€ข models.go - Generated data models and types (updated)" +echo " โ€ข client.go - Generated SDK client and methods (updated)" +echo " โ€ข go.mod - Go module definition (permanent)" +echo " โ€ข README.md - Documentation (permanent)" +echo "" +echo -e "${BLUE}๐Ÿ”ท TypeScript SDK:${NC}" +echo " Package: @grove/portal-db-sdk" +echo " Runtime: openapi-fetch (minimal dependency, uses native fetch)" +echo " Files:" +echo " โ€ข types.ts - Generated TypeScript types from OpenAPI spec (updated)" +echo " โ€ข client.ts - Typed fetch client wrapper (permanent)" +echo " โ€ข package.json - Node.js package definition (permanent)" +echo " โ€ข tsconfig.json - TypeScript configuration (permanent)" +echo "" +echo -e "${BLUE}๐Ÿ“š API Documentation:${NC}" +echo " โ€ข openapi.json - OpenAPI 3.x specification (updated)" +echo "" +echo -e "${BLUE}๐Ÿš€ Next Steps:${NC}" +echo "" +echo -e "${BLUE}Go SDK:${NC}" +echo " 1. Review generated models: cat $GO_OUTPUT_DIR/models.go | head -50" +echo " 2. Review generated client: cat $GO_OUTPUT_DIR/client.go | head -50" +echo " 3. Import in your project: go get github.com/buildwithgrove/path/portal-db/sdk/go" +echo " 4. Check documentation: cat $GO_OUTPUT_DIR/README.md" +echo "" +echo -e "${BLUE}TypeScript SDK:${NC}" +echo " 1. Review generated types: cat $TS_OUTPUT_DIR/types.ts | head -50" +echo " 2. Review client wrapper: cat $TS_OUTPUT_DIR/client.ts" +echo " 3. Copy to your project or publish as npm package" +echo " 4. Import client: import createClient from './client'" +echo " 5. Use with type safety:" +echo " const client = createClient({ baseUrl: 'http://localhost:3000' });" +echo " const { data, error } = await client.GET('/portal_accounts');" +echo "" +echo -e "${BLUE}๐Ÿ’ก Tips:${NC}" +echo " โ€ข Go: Full client with methods, types separated for readability" +echo " โ€ข TypeScript: openapi-fetch provides full type safety with minimal overhead" +echo " โ€ข Both SDKs update automatically when you run this script" +echo " โ€ข Run after database schema changes to stay in sync" +echo " โ€ข TypeScript SDK uses openapi-fetch (1 dependency, tree-shakeable)" +echo " โ€ข All request/response types are inferred from the OpenAPI spec" +echo "" +echo -e "${GREEN}โœจ Happy coding!${NC}" \ No newline at end of file diff --git a/portal-db/api/openapi/openapi.json b/portal-db/api/openapi/openapi.json index b6f233bef..39317408f 100644 --- a/portal-db/api/openapi/openapi.json +++ b/portal-db/api/openapi/openapi.json @@ -1,34 +1,13 @@ { - "swagger": "2.0", + "openapi": "3.0.0", "info": { "description": "", "title": "standard public schema", "version": "12.0.2 (a4e00ff)" }, - "host": "localhost:3000", - "basePath": "/", - "schemes": [ - "http" - ], - "consumes": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json", - "text/csv" - ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json", - "text/csv" - ], "paths": { "/": { "get": { - "produces": [ - "application/openapi+json", - "application/json" - ], "responses": { "200": { "description": "OK" @@ -44,50 +23,78 @@ "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.service_fallbacks.service_fallback_id" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.service_fallback_id" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.service_id" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.service_id" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.fallback_url" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.fallback_url" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.created_at" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.created_at" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.updated_at" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.updated_at" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/service_fallbacks" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/service_fallbacks" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/service_fallbacks" + }, + "type": "array" + } }, - "type": "array" + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/service_fallbacks" + }, + "type": "array" + } + }, + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/service_fallbacks" + }, + "type": "array" + } + } } }, "206": { @@ -102,15 +109,15 @@ "post": { "parameters": [ { - "$ref": "#/parameters/body.service_fallbacks" - }, - { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/preferPost" + "$ref": "#/components/parameters/preferPost" } ], + "requestBody": { + "$ref": "#/components/requestBodies/service_fallbacks" + }, "responses": { "201": { "description": "Created" @@ -124,22 +131,22 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.service_fallbacks.service_fallback_id" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.service_fallback_id" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.service_id" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.service_id" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.fallback_url" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.fallback_url" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.created_at" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.created_at" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.updated_at" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -155,27 +162,27 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.service_fallbacks.service_fallback_id" - }, - { - "$ref": "#/parameters/rowFilter.service_fallbacks.service_id" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.service_fallback_id" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.fallback_url" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.service_id" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.created_at" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.fallback_url" }, { - "$ref": "#/parameters/rowFilter.service_fallbacks.updated_at" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.created_at" }, { - "$ref": "#/parameters/body.service_fallbacks" + "$ref": "#/components/parameters/rowFilter.service_fallbacks.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/service_fallbacks" + }, "responses": { "204": { "description": "No Content" @@ -191,50 +198,78 @@ "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_application_rbac.id" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.id" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.portal_application_id" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.portal_application_id" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.portal_user_id" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.portal_user_id" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.created_at" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.created_at" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.updated_at" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.updated_at" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/portal_application_rbac" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_application_rbac" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_application_rbac" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_application_rbac" + }, + "type": "array" + } }, - "type": "array" + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_application_rbac" + }, + "type": "array" + } + } } }, "206": { @@ -249,15 +284,15 @@ "post": { "parameters": [ { - "$ref": "#/parameters/body.portal_application_rbac" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/select" - }, - { - "$ref": "#/parameters/preferPost" + "$ref": "#/components/parameters/preferPost" } ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_application_rbac" + }, "responses": { "201": { "description": "Created" @@ -271,22 +306,22 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_application_rbac.id" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.id" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.portal_application_id" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.portal_application_id" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.portal_user_id" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.portal_user_id" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.created_at" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.created_at" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.updated_at" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -302,27 +337,27 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_application_rbac.id" - }, - { - "$ref": "#/parameters/rowFilter.portal_application_rbac.portal_application_id" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.id" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.portal_user_id" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.portal_application_id" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.created_at" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.portal_user_id" }, { - "$ref": "#/parameters/rowFilter.portal_application_rbac.updated_at" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.created_at" }, { - "$ref": "#/parameters/body.portal_application_rbac" + "$ref": "#/components/parameters/rowFilter.portal_application_rbac.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_application_rbac" + }, "responses": { "204": { "description": "No Content" @@ -338,53 +373,81 @@ "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_plans.portal_plan_type" + "$ref": "#/components/parameters/rowFilter.portal_plans.portal_plan_type" }, { - "$ref": "#/parameters/rowFilter.portal_plans.portal_plan_type_description" + "$ref": "#/components/parameters/rowFilter.portal_plans.portal_plan_type_description" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_usage_limit" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_usage_limit" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_usage_limit_interval" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_usage_limit_interval" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_rate_limit_rps" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_rate_limit_rps" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_application_limit" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_application_limit" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/portal_plans" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_plans" + }, + "type": "array" + } }, - "type": "array" + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_plans" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_plans" + }, + "type": "array" + } + }, + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_plans" + }, + "type": "array" + } + } } }, "206": { @@ -399,15 +462,15 @@ "post": { "parameters": [ { - "$ref": "#/parameters/body.portal_plans" - }, - { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/preferPost" + "$ref": "#/components/parameters/preferPost" } ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_plans" + }, "responses": { "201": { "description": "Created" @@ -421,25 +484,25 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_plans.portal_plan_type" + "$ref": "#/components/parameters/rowFilter.portal_plans.portal_plan_type" }, { - "$ref": "#/parameters/rowFilter.portal_plans.portal_plan_type_description" + "$ref": "#/components/parameters/rowFilter.portal_plans.portal_plan_type_description" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_usage_limit" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_usage_limit" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_usage_limit_interval" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_usage_limit_interval" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_rate_limit_rps" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_rate_limit_rps" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_application_limit" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_application_limit" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -455,30 +518,30 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_plans.portal_plan_type" + "$ref": "#/components/parameters/rowFilter.portal_plans.portal_plan_type" }, { - "$ref": "#/parameters/rowFilter.portal_plans.portal_plan_type_description" + "$ref": "#/components/parameters/rowFilter.portal_plans.portal_plan_type_description" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_usage_limit" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_usage_limit" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_usage_limit_interval" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_usage_limit_interval" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_rate_limit_rps" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_rate_limit_rps" }, { - "$ref": "#/parameters/rowFilter.portal_plans.plan_application_limit" + "$ref": "#/components/parameters/rowFilter.portal_plans.plan_application_limit" }, { - "$ref": "#/parameters/body.portal_plans" - }, - { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_plans" + }, "responses": { "204": { "description": "No Content" @@ -490,81 +553,302 @@ ] } }, + "/portal_users": { + "get": { + "parameters": [ + { + "$ref": "#/components/parameters/rowFilter.portal_users.portal_user_id" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.portal_user_email" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.signed_up" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.portal_admin" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.deleted_at" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.created_at" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.updated_at" + }, + { + "$ref": "#/components/parameters/select" + }, + { + "$ref": "#/components/parameters/order" + }, + { + "$ref": "#/components/parameters/range" + }, + { + "$ref": "#/components/parameters/rangeUnit" + }, + { + "$ref": "#/components/parameters/offset" + }, + { + "$ref": "#/components/parameters/limit" + }, + { + "$ref": "#/components/parameters/preferCount" + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_users" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_users" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_users" + }, + "type": "array" + } + }, + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_users" + }, + "type": "array" + } + } + } + }, + "206": { + "description": "Partial Content" + } + }, + "summary": "Users who can access the portal and belong to multiple accounts", + "tags": [ + "portal_users" + ] + }, + "post": { + "parameters": [ + { + "$ref": "#/components/parameters/select" + }, + { + "$ref": "#/components/parameters/preferPost" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_users" + }, + "responses": { + "201": { + "description": "Created" + } + }, + "summary": "Users who can access the portal and belong to multiple accounts", + "tags": [ + "portal_users" + ] + }, + "delete": { + "parameters": [ + { + "$ref": "#/components/parameters/rowFilter.portal_users.portal_user_id" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.portal_user_email" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.signed_up" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.portal_admin" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.deleted_at" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.created_at" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.updated_at" + }, + { + "$ref": "#/components/parameters/preferReturn" + } + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Users who can access the portal and belong to multiple accounts", + "tags": [ + "portal_users" + ] + }, + "patch": { + "parameters": [ + { + "$ref": "#/components/parameters/rowFilter.portal_users.portal_user_id" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.portal_user_email" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.signed_up" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.portal_admin" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.deleted_at" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.created_at" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_users.updated_at" + }, + { + "$ref": "#/components/parameters/preferReturn" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_users" + }, + "responses": { + "204": { + "description": "No Content" + } + }, + "summary": "Users who can access the portal and belong to multiple accounts", + "tags": [ + "portal_users" + ] + } + }, "/portal_applications": { "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_id" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_id" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_account_id" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_name" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_name" }, { - "$ref": "#/parameters/rowFilter.portal_applications.emoji" + "$ref": "#/components/parameters/rowFilter.portal_applications.emoji" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_user_limit" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_user_limit" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_user_limit_interval" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_user_limit_interval" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_user_limit_rps" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_user_limit_rps" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_description" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_description" }, { - "$ref": "#/parameters/rowFilter.portal_applications.favorite_service_ids" + "$ref": "#/components/parameters/rowFilter.portal_applications.favorite_service_ids" }, { - "$ref": "#/parameters/rowFilter.portal_applications.secret_key_hash" + "$ref": "#/components/parameters/rowFilter.portal_applications.secret_key_hash" }, { - "$ref": "#/parameters/rowFilter.portal_applications.secret_key_required" + "$ref": "#/components/parameters/rowFilter.portal_applications.secret_key_required" }, { - "$ref": "#/parameters/rowFilter.portal_applications.deleted_at" + "$ref": "#/components/parameters/rowFilter.portal_applications.deleted_at" }, { - "$ref": "#/parameters/rowFilter.portal_applications.created_at" + "$ref": "#/components/parameters/rowFilter.portal_applications.created_at" }, { - "$ref": "#/parameters/rowFilter.portal_applications.updated_at" + "$ref": "#/components/parameters/rowFilter.portal_applications.updated_at" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/portal_applications" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_applications" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_applications" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_applications" + }, + "type": "array" + } }, - "type": "array" + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_applications" + }, + "type": "array" + } + } } }, "206": { @@ -579,15 +863,15 @@ "post": { "parameters": [ { - "$ref": "#/parameters/body.portal_applications" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/select" - }, - { - "$ref": "#/parameters/preferPost" + "$ref": "#/components/parameters/preferPost" } ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_applications" + }, "responses": { "201": { "description": "Created" @@ -601,49 +885,49 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_id" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_id" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_account_id" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_name" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_name" }, { - "$ref": "#/parameters/rowFilter.portal_applications.emoji" + "$ref": "#/components/parameters/rowFilter.portal_applications.emoji" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_user_limit" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_user_limit" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_user_limit_interval" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_user_limit_interval" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_user_limit_rps" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_user_limit_rps" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_description" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_description" }, { - "$ref": "#/parameters/rowFilter.portal_applications.favorite_service_ids" + "$ref": "#/components/parameters/rowFilter.portal_applications.favorite_service_ids" }, { - "$ref": "#/parameters/rowFilter.portal_applications.secret_key_hash" + "$ref": "#/components/parameters/rowFilter.portal_applications.secret_key_hash" }, { - "$ref": "#/parameters/rowFilter.portal_applications.secret_key_required" + "$ref": "#/components/parameters/rowFilter.portal_applications.secret_key_required" }, { - "$ref": "#/parameters/rowFilter.portal_applications.deleted_at" + "$ref": "#/components/parameters/rowFilter.portal_applications.deleted_at" }, { - "$ref": "#/parameters/rowFilter.portal_applications.created_at" + "$ref": "#/components/parameters/rowFilter.portal_applications.created_at" }, { - "$ref": "#/parameters/rowFilter.portal_applications.updated_at" + "$ref": "#/components/parameters/rowFilter.portal_applications.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -659,54 +943,54 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_id" - }, - { - "$ref": "#/parameters/rowFilter.portal_applications.portal_account_id" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_id" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_name" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_applications.emoji" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_name" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_user_limit" + "$ref": "#/components/parameters/rowFilter.portal_applications.emoji" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_user_limit_interval" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_user_limit" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_user_limit_rps" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_user_limit_interval" }, { - "$ref": "#/parameters/rowFilter.portal_applications.portal_application_description" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_user_limit_rps" }, { - "$ref": "#/parameters/rowFilter.portal_applications.favorite_service_ids" + "$ref": "#/components/parameters/rowFilter.portal_applications.portal_application_description" }, { - "$ref": "#/parameters/rowFilter.portal_applications.secret_key_hash" + "$ref": "#/components/parameters/rowFilter.portal_applications.favorite_service_ids" }, { - "$ref": "#/parameters/rowFilter.portal_applications.secret_key_required" + "$ref": "#/components/parameters/rowFilter.portal_applications.secret_key_hash" }, { - "$ref": "#/parameters/rowFilter.portal_applications.deleted_at" + "$ref": "#/components/parameters/rowFilter.portal_applications.secret_key_required" }, { - "$ref": "#/parameters/rowFilter.portal_applications.created_at" + "$ref": "#/components/parameters/rowFilter.portal_applications.deleted_at" }, { - "$ref": "#/parameters/rowFilter.portal_applications.updated_at" + "$ref": "#/components/parameters/rowFilter.portal_applications.created_at" }, { - "$ref": "#/parameters/body.portal_applications" + "$ref": "#/components/parameters/rowFilter.portal_applications.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_applications" + }, "responses": { "204": { "description": "No Content" @@ -722,89 +1006,117 @@ "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.services.service_id" + "$ref": "#/components/parameters/rowFilter.services.service_id" }, { - "$ref": "#/parameters/rowFilter.services.service_name" + "$ref": "#/components/parameters/rowFilter.services.service_name" }, { - "$ref": "#/parameters/rowFilter.services.compute_units_per_relay" + "$ref": "#/components/parameters/rowFilter.services.compute_units_per_relay" }, { - "$ref": "#/parameters/rowFilter.services.service_domains" + "$ref": "#/components/parameters/rowFilter.services.service_domains" }, { - "$ref": "#/parameters/rowFilter.services.service_owner_address" + "$ref": "#/components/parameters/rowFilter.services.service_owner_address" }, { - "$ref": "#/parameters/rowFilter.services.network_id" + "$ref": "#/components/parameters/rowFilter.services.network_id" }, { - "$ref": "#/parameters/rowFilter.services.active" + "$ref": "#/components/parameters/rowFilter.services.active" }, { - "$ref": "#/parameters/rowFilter.services.beta" + "$ref": "#/components/parameters/rowFilter.services.beta" }, { - "$ref": "#/parameters/rowFilter.services.coming_soon" + "$ref": "#/components/parameters/rowFilter.services.coming_soon" }, { - "$ref": "#/parameters/rowFilter.services.quality_fallback_enabled" + "$ref": "#/components/parameters/rowFilter.services.quality_fallback_enabled" }, { - "$ref": "#/parameters/rowFilter.services.hard_fallback_enabled" + "$ref": "#/components/parameters/rowFilter.services.hard_fallback_enabled" }, { - "$ref": "#/parameters/rowFilter.services.svg_icon" + "$ref": "#/components/parameters/rowFilter.services.svg_icon" }, { - "$ref": "#/parameters/rowFilter.services.public_endpoint_url" + "$ref": "#/components/parameters/rowFilter.services.public_endpoint_url" }, { - "$ref": "#/parameters/rowFilter.services.status_endpoint_url" + "$ref": "#/components/parameters/rowFilter.services.status_endpoint_url" }, { - "$ref": "#/parameters/rowFilter.services.status_query" + "$ref": "#/components/parameters/rowFilter.services.status_query" }, { - "$ref": "#/parameters/rowFilter.services.deleted_at" + "$ref": "#/components/parameters/rowFilter.services.deleted_at" }, { - "$ref": "#/parameters/rowFilter.services.created_at" + "$ref": "#/components/parameters/rowFilter.services.created_at" }, { - "$ref": "#/parameters/rowFilter.services.updated_at" + "$ref": "#/components/parameters/rowFilter.services.updated_at" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/services" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/services" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/services" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/services" + }, + "type": "array" + } }, - "type": "array" + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/services" + }, + "type": "array" + } + } } }, "206": { @@ -819,15 +1131,15 @@ "post": { "parameters": [ { - "$ref": "#/parameters/body.services" - }, - { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/preferPost" + "$ref": "#/components/parameters/preferPost" } ], + "requestBody": { + "$ref": "#/components/requestBodies/services" + }, "responses": { "201": { "description": "Created" @@ -841,61 +1153,61 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.services.service_id" + "$ref": "#/components/parameters/rowFilter.services.service_id" }, { - "$ref": "#/parameters/rowFilter.services.service_name" + "$ref": "#/components/parameters/rowFilter.services.service_name" }, { - "$ref": "#/parameters/rowFilter.services.compute_units_per_relay" + "$ref": "#/components/parameters/rowFilter.services.compute_units_per_relay" }, { - "$ref": "#/parameters/rowFilter.services.service_domains" + "$ref": "#/components/parameters/rowFilter.services.service_domains" }, { - "$ref": "#/parameters/rowFilter.services.service_owner_address" + "$ref": "#/components/parameters/rowFilter.services.service_owner_address" }, { - "$ref": "#/parameters/rowFilter.services.network_id" + "$ref": "#/components/parameters/rowFilter.services.network_id" }, { - "$ref": "#/parameters/rowFilter.services.active" + "$ref": "#/components/parameters/rowFilter.services.active" }, { - "$ref": "#/parameters/rowFilter.services.beta" + "$ref": "#/components/parameters/rowFilter.services.beta" }, { - "$ref": "#/parameters/rowFilter.services.coming_soon" + "$ref": "#/components/parameters/rowFilter.services.coming_soon" }, { - "$ref": "#/parameters/rowFilter.services.quality_fallback_enabled" + "$ref": "#/components/parameters/rowFilter.services.quality_fallback_enabled" }, { - "$ref": "#/parameters/rowFilter.services.hard_fallback_enabled" + "$ref": "#/components/parameters/rowFilter.services.hard_fallback_enabled" }, { - "$ref": "#/parameters/rowFilter.services.svg_icon" + "$ref": "#/components/parameters/rowFilter.services.svg_icon" }, { - "$ref": "#/parameters/rowFilter.services.public_endpoint_url" + "$ref": "#/components/parameters/rowFilter.services.public_endpoint_url" }, { - "$ref": "#/parameters/rowFilter.services.status_endpoint_url" + "$ref": "#/components/parameters/rowFilter.services.status_endpoint_url" }, { - "$ref": "#/parameters/rowFilter.services.status_query" + "$ref": "#/components/parameters/rowFilter.services.status_query" }, { - "$ref": "#/parameters/rowFilter.services.deleted_at" + "$ref": "#/components/parameters/rowFilter.services.deleted_at" }, { - "$ref": "#/parameters/rowFilter.services.created_at" + "$ref": "#/components/parameters/rowFilter.services.created_at" }, { - "$ref": "#/parameters/rowFilter.services.updated_at" + "$ref": "#/components/parameters/rowFilter.services.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -911,66 +1223,66 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.services.service_id" + "$ref": "#/components/parameters/rowFilter.services.service_id" }, { - "$ref": "#/parameters/rowFilter.services.service_name" + "$ref": "#/components/parameters/rowFilter.services.service_name" }, { - "$ref": "#/parameters/rowFilter.services.compute_units_per_relay" + "$ref": "#/components/parameters/rowFilter.services.compute_units_per_relay" }, { - "$ref": "#/parameters/rowFilter.services.service_domains" + "$ref": "#/components/parameters/rowFilter.services.service_domains" }, { - "$ref": "#/parameters/rowFilter.services.service_owner_address" + "$ref": "#/components/parameters/rowFilter.services.service_owner_address" }, { - "$ref": "#/parameters/rowFilter.services.network_id" + "$ref": "#/components/parameters/rowFilter.services.network_id" }, { - "$ref": "#/parameters/rowFilter.services.active" + "$ref": "#/components/parameters/rowFilter.services.active" }, { - "$ref": "#/parameters/rowFilter.services.beta" + "$ref": "#/components/parameters/rowFilter.services.beta" }, { - "$ref": "#/parameters/rowFilter.services.coming_soon" + "$ref": "#/components/parameters/rowFilter.services.coming_soon" }, { - "$ref": "#/parameters/rowFilter.services.quality_fallback_enabled" + "$ref": "#/components/parameters/rowFilter.services.quality_fallback_enabled" }, { - "$ref": "#/parameters/rowFilter.services.hard_fallback_enabled" + "$ref": "#/components/parameters/rowFilter.services.hard_fallback_enabled" }, { - "$ref": "#/parameters/rowFilter.services.svg_icon" + "$ref": "#/components/parameters/rowFilter.services.svg_icon" }, { - "$ref": "#/parameters/rowFilter.services.public_endpoint_url" + "$ref": "#/components/parameters/rowFilter.services.public_endpoint_url" }, { - "$ref": "#/parameters/rowFilter.services.status_endpoint_url" + "$ref": "#/components/parameters/rowFilter.services.status_endpoint_url" }, { - "$ref": "#/parameters/rowFilter.services.status_query" + "$ref": "#/components/parameters/rowFilter.services.status_query" }, { - "$ref": "#/parameters/rowFilter.services.deleted_at" + "$ref": "#/components/parameters/rowFilter.services.deleted_at" }, { - "$ref": "#/parameters/rowFilter.services.created_at" + "$ref": "#/components/parameters/rowFilter.services.created_at" }, { - "$ref": "#/parameters/rowFilter.services.updated_at" + "$ref": "#/components/parameters/rowFilter.services.updated_at" }, { - "$ref": "#/parameters/body.services" - }, - { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/services" + }, "responses": { "204": { "description": "No Content" @@ -986,80 +1298,108 @@ "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.organization_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.organization_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_plan_type" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_plan_type" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.user_account_name" + "$ref": "#/components/parameters/rowFilter.portal_accounts.user_account_name" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.internal_account_name" + "$ref": "#/components/parameters/rowFilter.portal_accounts.internal_account_name" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_user_limit" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_user_limit" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_user_limit_interval" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_user_limit_interval" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_user_limit_rps" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_user_limit_rps" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.billing_type" + "$ref": "#/components/parameters/rowFilter.portal_accounts.billing_type" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.stripe_subscription_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.stripe_subscription_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.gcp_account_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.gcp_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.gcp_entitlement_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.gcp_entitlement_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.deleted_at" + "$ref": "#/components/parameters/rowFilter.portal_accounts.deleted_at" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.created_at" + "$ref": "#/components/parameters/rowFilter.portal_accounts.created_at" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.updated_at" + "$ref": "#/components/parameters/rowFilter.portal_accounts.updated_at" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/portal_accounts" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_accounts" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_accounts" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_accounts" + }, + "type": "array" + } }, - "type": "array" + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_accounts" + }, + "type": "array" + } + } } }, "206": { @@ -1074,15 +1414,15 @@ "post": { "parameters": [ { - "$ref": "#/parameters/body.portal_accounts" - }, - { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/preferPost" + "$ref": "#/components/parameters/preferPost" } ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_accounts" + }, "responses": { "201": { "description": "Created" @@ -1096,52 +1436,52 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.organization_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.organization_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_plan_type" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_plan_type" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.user_account_name" + "$ref": "#/components/parameters/rowFilter.portal_accounts.user_account_name" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.internal_account_name" + "$ref": "#/components/parameters/rowFilter.portal_accounts.internal_account_name" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_user_limit" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_user_limit" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_user_limit_interval" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_user_limit_interval" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_user_limit_rps" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_user_limit_rps" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.billing_type" + "$ref": "#/components/parameters/rowFilter.portal_accounts.billing_type" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.stripe_subscription_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.stripe_subscription_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.gcp_account_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.gcp_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.gcp_entitlement_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.gcp_entitlement_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.deleted_at" + "$ref": "#/components/parameters/rowFilter.portal_accounts.deleted_at" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.created_at" + "$ref": "#/components/parameters/rowFilter.portal_accounts.created_at" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.updated_at" + "$ref": "#/components/parameters/rowFilter.portal_accounts.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -1157,57 +1497,57 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_id" - }, - { - "$ref": "#/parameters/rowFilter.portal_accounts.organization_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_plan_type" + "$ref": "#/components/parameters/rowFilter.portal_accounts.organization_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.user_account_name" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_plan_type" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.internal_account_name" + "$ref": "#/components/parameters/rowFilter.portal_accounts.user_account_name" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_user_limit" + "$ref": "#/components/parameters/rowFilter.portal_accounts.internal_account_name" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_user_limit_interval" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_user_limit" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.portal_account_user_limit_rps" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_user_limit_interval" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.billing_type" + "$ref": "#/components/parameters/rowFilter.portal_accounts.portal_account_user_limit_rps" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.stripe_subscription_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.billing_type" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.gcp_account_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.stripe_subscription_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.gcp_entitlement_id" + "$ref": "#/components/parameters/rowFilter.portal_accounts.gcp_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.deleted_at" + "$ref": "#/components/parameters/rowFilter.portal_accounts.gcp_entitlement_id" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.created_at" + "$ref": "#/components/parameters/rowFilter.portal_accounts.deleted_at" }, { - "$ref": "#/parameters/rowFilter.portal_accounts.updated_at" + "$ref": "#/components/parameters/rowFilter.portal_accounts.created_at" }, { - "$ref": "#/parameters/body.portal_accounts" + "$ref": "#/components/parameters/rowFilter.portal_accounts.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_accounts" + }, "responses": { "204": { "description": "No Content" @@ -1223,50 +1563,78 @@ "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.organizations.organization_id" + "$ref": "#/components/parameters/rowFilter.organizations.organization_id" }, { - "$ref": "#/parameters/rowFilter.organizations.organization_name" + "$ref": "#/components/parameters/rowFilter.organizations.organization_name" }, { - "$ref": "#/parameters/rowFilter.organizations.deleted_at" + "$ref": "#/components/parameters/rowFilter.organizations.deleted_at" }, { - "$ref": "#/parameters/rowFilter.organizations.created_at" + "$ref": "#/components/parameters/rowFilter.organizations.created_at" }, { - "$ref": "#/parameters/rowFilter.organizations.updated_at" + "$ref": "#/components/parameters/rowFilter.organizations.updated_at" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/organizations" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/organizations" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/organizations" + }, + "type": "array" + } }, - "type": "array" + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/organizations" + }, + "type": "array" + } + }, + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/organizations" + }, + "type": "array" + } + } } }, "206": { @@ -1281,15 +1649,15 @@ "post": { "parameters": [ { - "$ref": "#/parameters/body.organizations" - }, - { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/preferPost" + "$ref": "#/components/parameters/preferPost" } ], + "requestBody": { + "$ref": "#/components/requestBodies/organizations" + }, "responses": { "201": { "description": "Created" @@ -1303,22 +1671,22 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.organizations.organization_id" + "$ref": "#/components/parameters/rowFilter.organizations.organization_id" }, { - "$ref": "#/parameters/rowFilter.organizations.organization_name" + "$ref": "#/components/parameters/rowFilter.organizations.organization_name" }, { - "$ref": "#/parameters/rowFilter.organizations.deleted_at" + "$ref": "#/components/parameters/rowFilter.organizations.deleted_at" }, { - "$ref": "#/parameters/rowFilter.organizations.created_at" + "$ref": "#/components/parameters/rowFilter.organizations.created_at" }, { - "$ref": "#/parameters/rowFilter.organizations.updated_at" + "$ref": "#/components/parameters/rowFilter.organizations.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -1334,27 +1702,27 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.organizations.organization_id" - }, - { - "$ref": "#/parameters/rowFilter.organizations.organization_name" + "$ref": "#/components/parameters/rowFilter.organizations.organization_id" }, { - "$ref": "#/parameters/rowFilter.organizations.deleted_at" + "$ref": "#/components/parameters/rowFilter.organizations.organization_name" }, { - "$ref": "#/parameters/rowFilter.organizations.created_at" + "$ref": "#/components/parameters/rowFilter.organizations.deleted_at" }, { - "$ref": "#/parameters/rowFilter.organizations.updated_at" + "$ref": "#/components/parameters/rowFilter.organizations.created_at" }, { - "$ref": "#/parameters/body.organizations" + "$ref": "#/components/parameters/rowFilter.organizations.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/organizations" + }, "responses": { "204": { "description": "No Content" @@ -1370,38 +1738,66 @@ "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.networks.network_id" + "$ref": "#/components/parameters/rowFilter.networks.network_id" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/networks" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/networks" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/networks" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/networks" + }, + "type": "array" + } }, - "type": "array" + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/networks" + }, + "type": "array" + } + } } }, "206": { @@ -1416,15 +1812,15 @@ "post": { "parameters": [ { - "$ref": "#/parameters/body.networks" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/select" - }, - { - "$ref": "#/parameters/preferPost" + "$ref": "#/components/parameters/preferPost" } ], + "requestBody": { + "$ref": "#/components/requestBodies/networks" + }, "responses": { "201": { "description": "Created" @@ -1438,10 +1834,10 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.networks.network_id" + "$ref": "#/components/parameters/rowFilter.networks.network_id" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -1457,15 +1853,15 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.networks.network_id" - }, - { - "$ref": "#/parameters/body.networks" + "$ref": "#/components/parameters/rowFilter.networks.network_id" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/networks" + }, "responses": { "204": { "description": "No Content" @@ -1477,79 +1873,204 @@ ] } }, - "/portal_account_rbac": { + "/portal_workers_account_data": { "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_account_rbac.id" + "$ref": "#/components/parameters/rowFilter.portal_workers_account_data.portal_account_id" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_workers_account_data.user_account_name" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_workers_account_data.portal_plan_type" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_workers_account_data.billing_type" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.portal_account_id" + "$ref": "#/components/parameters/rowFilter.portal_workers_account_data.portal_account_user_limit" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.portal_user_id" + "$ref": "#/components/parameters/rowFilter.portal_workers_account_data.gcp_entitlement_id" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.role_name" + "$ref": "#/components/parameters/rowFilter.portal_workers_account_data.owner_email" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.user_joined_account" + "$ref": "#/components/parameters/rowFilter.portal_workers_account_data.owner_user_id" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/portal_account_rbac" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_workers_account_data" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_workers_account_data" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_workers_account_data" + }, + "type": "array" + } }, - "type": "array" + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_workers_account_data" + }, + "type": "array" + } + } } }, "206": { "description": "Partial Content" } }, - "summary": "User roles and permissions for specific portal accounts", + "summary": "Account data for portal-workers billing operations with owner email. Filter using WHERE portal_plan_type = 'PLAN_UNLIMITED' AND billing_type = 'stripe'", "tags": [ - "portal_account_rbac" + "portal_workers_account_data" ] - }, - "post": { + } + }, + "/portal_account_rbac": { + "get": { "parameters": [ { - "$ref": "#/parameters/body.portal_account_rbac" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.id" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.portal_account_id" }, { - "$ref": "#/parameters/preferPost" - } - ], - "responses": { - "201": { + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.portal_user_id" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.role_name" + }, + { + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.user_joined_account" + }, + { + "$ref": "#/components/parameters/select" + }, + { + "$ref": "#/components/parameters/order" + }, + { + "$ref": "#/components/parameters/range" + }, + { + "$ref": "#/components/parameters/rangeUnit" + }, + { + "$ref": "#/components/parameters/offset" + }, + { + "$ref": "#/components/parameters/limit" + }, + { + "$ref": "#/components/parameters/preferCount" + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_account_rbac" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_account_rbac" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_account_rbac" + }, + "type": "array" + } + }, + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/portal_account_rbac" + }, + "type": "array" + } + } + } + }, + "206": { + "description": "Partial Content" + } + }, + "summary": "User roles and permissions for specific portal accounts", + "tags": [ + "portal_account_rbac" + ] + }, + "post": { + "parameters": [ + { + "$ref": "#/components/parameters/select" + }, + { + "$ref": "#/components/parameters/preferPost" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_account_rbac" + }, + "responses": { + "201": { "description": "Created" } }, @@ -1561,22 +2082,22 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_account_rbac.id" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.id" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.portal_account_id" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.portal_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.portal_user_id" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.portal_user_id" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.role_name" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.role_name" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.user_joined_account" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.user_joined_account" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -1592,27 +2113,27 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.portal_account_rbac.id" - }, - { - "$ref": "#/parameters/rowFilter.portal_account_rbac.portal_account_id" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.id" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.portal_user_id" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.portal_account_id" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.role_name" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.portal_user_id" }, { - "$ref": "#/parameters/rowFilter.portal_account_rbac.user_joined_account" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.role_name" }, { - "$ref": "#/parameters/body.portal_account_rbac" + "$ref": "#/components/parameters/rowFilter.portal_account_rbac.user_joined_account" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/portal_account_rbac" + }, "responses": { "204": { "description": "No Content" @@ -1628,50 +2149,78 @@ "get": { "parameters": [ { - "$ref": "#/parameters/rowFilter.service_endpoints.endpoint_id" + "$ref": "#/components/parameters/rowFilter.service_endpoints.endpoint_id" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.service_id" + "$ref": "#/components/parameters/rowFilter.service_endpoints.service_id" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.endpoint_type" + "$ref": "#/components/parameters/rowFilter.service_endpoints.endpoint_type" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.created_at" + "$ref": "#/components/parameters/rowFilter.service_endpoints.created_at" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.updated_at" + "$ref": "#/components/parameters/rowFilter.service_endpoints.updated_at" }, { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/order" + "$ref": "#/components/parameters/order" }, { - "$ref": "#/parameters/range" + "$ref": "#/components/parameters/range" }, { - "$ref": "#/parameters/rangeUnit" + "$ref": "#/components/parameters/rangeUnit" }, { - "$ref": "#/parameters/offset" + "$ref": "#/components/parameters/offset" }, { - "$ref": "#/parameters/limit" + "$ref": "#/components/parameters/limit" }, { - "$ref": "#/parameters/preferCount" + "$ref": "#/components/parameters/preferCount" } ], "responses": { "200": { "description": "OK", - "schema": { - "items": { - "$ref": "#/definitions/service_endpoints" + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/service_endpoints" + }, + "type": "array" + } }, - "type": "array" + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "items": { + "$ref": "#/components/schemas/service_endpoints" + }, + "type": "array" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "items": { + "$ref": "#/components/schemas/service_endpoints" + }, + "type": "array" + } + }, + "text/csv": { + "schema": { + "items": { + "$ref": "#/components/schemas/service_endpoints" + }, + "type": "array" + } + } } }, "206": { @@ -1686,15 +2235,15 @@ "post": { "parameters": [ { - "$ref": "#/parameters/body.service_endpoints" - }, - { - "$ref": "#/parameters/select" + "$ref": "#/components/parameters/select" }, { - "$ref": "#/parameters/preferPost" + "$ref": "#/components/parameters/preferPost" } ], + "requestBody": { + "$ref": "#/components/requestBodies/service_endpoints" + }, "responses": { "201": { "description": "Created" @@ -1708,22 +2257,22 @@ "delete": { "parameters": [ { - "$ref": "#/parameters/rowFilter.service_endpoints.endpoint_id" + "$ref": "#/components/parameters/rowFilter.service_endpoints.endpoint_id" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.service_id" + "$ref": "#/components/parameters/rowFilter.service_endpoints.service_id" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.endpoint_type" + "$ref": "#/components/parameters/rowFilter.service_endpoints.endpoint_type" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.created_at" + "$ref": "#/components/parameters/rowFilter.service_endpoints.created_at" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.updated_at" + "$ref": "#/components/parameters/rowFilter.service_endpoints.updated_at" }, { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], "responses": { @@ -1739,27 +2288,27 @@ "patch": { "parameters": [ { - "$ref": "#/parameters/rowFilter.service_endpoints.endpoint_id" + "$ref": "#/components/parameters/rowFilter.service_endpoints.endpoint_id" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.service_id" + "$ref": "#/components/parameters/rowFilter.service_endpoints.service_id" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.endpoint_type" + "$ref": "#/components/parameters/rowFilter.service_endpoints.endpoint_type" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.created_at" + "$ref": "#/components/parameters/rowFilter.service_endpoints.created_at" }, { - "$ref": "#/parameters/rowFilter.service_endpoints.updated_at" + "$ref": "#/components/parameters/rowFilter.service_endpoints.updated_at" }, { - "$ref": "#/parameters/body.service_endpoints" - }, - { - "$ref": "#/parameters/preferReturn" + "$ref": "#/components/parameters/preferReturn" } ], + "requestBody": { + "$ref": "#/components/requestBodies/service_endpoints" + }, "responses": { "204": { "description": "No Content" @@ -1775,18 +2324,15 @@ "get": { "parameters": [ { - "format": "text", "in": "query", "name": "", "required": true, - "type": "string" + "schema": { + "type": "string", + "format": "text" + } } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], "responses": { "200": { "description": "OK" @@ -1799,31 +2345,12 @@ "post": { "parameters": [ { - "in": "body", - "name": "args", - "required": true, - "schema": { - "properties": { - "": { - "format": "text", - "type": "string" - } - }, - "required": [ - "" - ], - "type": "object" - } - }, - { - "$ref": "#/parameters/preferParams" + "$ref": "#/components/parameters/preferParams" } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], + "requestBody": { + "$ref": "#/components/requestBodies/Args2" + }, "responses": { "200": { "description": "OK" @@ -1838,18 +2365,15 @@ "get": { "parameters": [ { - "format": "text", "in": "query", "name": "", "required": true, - "type": "string" + "schema": { + "type": "string", + "format": "text" + } } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], "responses": { "200": { "description": "OK" @@ -1862,31 +2386,12 @@ "post": { "parameters": [ { - "in": "body", - "name": "args", - "required": true, - "schema": { - "properties": { - "": { - "format": "text", - "type": "string" - } - }, - "required": [ - "" - ], - "type": "object" - } - }, - { - "$ref": "#/parameters/preferParams" + "$ref": "#/components/parameters/preferParams" } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], + "requestBody": { + "$ref": "#/components/requestBodies/Args2" + }, "responses": { "200": { "description": "OK" @@ -1901,18 +2406,15 @@ "get": { "parameters": [ { - "format": "bytea", "in": "query", "name": "", "required": true, - "type": "string" + "schema": { + "type": "string", + "format": "bytea" + } } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], "responses": { "200": { "description": "OK" @@ -1925,31 +2427,12 @@ "post": { "parameters": [ { - "in": "body", - "name": "args", - "required": true, - "schema": { - "properties": { - "": { - "format": "bytea", - "type": "string" - } - }, - "required": [ - "" - ], - "type": "object" - } - }, - { - "$ref": "#/parameters/preferParams" + "$ref": "#/components/parameters/preferParams" } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], + "requestBody": { + "$ref": "#/components/requestBodies/Args" + }, "responses": { "200": { "description": "OK" @@ -1964,18 +2447,15 @@ "get": { "parameters": [ { - "format": "bytea", "in": "query", "name": "", "required": true, - "type": "string" + "schema": { + "type": "string", + "format": "bytea" + } } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], "responses": { "200": { "description": "OK" @@ -1988,31 +2468,12 @@ "post": { "parameters": [ { - "in": "body", - "name": "args", - "required": true, - "schema": { - "properties": { - "": { - "format": "bytea", - "type": "string" - } - }, - "required": [ - "" - ], - "type": "object" - } - }, - { - "$ref": "#/parameters/preferParams" + "$ref": "#/components/parameters/preferParams" } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], + "requestBody": { + "$ref": "#/components/requestBodies/Args" + }, "responses": { "200": { "description": "OK" @@ -2027,18 +2488,15 @@ "get": { "parameters": [ { - "format": "text", "in": "query", "name": "", "required": true, - "type": "string" + "schema": { + "type": "string", + "format": "text" + } } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], "responses": { "200": { "description": "OK" @@ -2051,31 +2509,12 @@ "post": { "parameters": [ { - "in": "body", - "name": "args", - "required": true, - "schema": { - "properties": { - "": { - "format": "text", - "type": "string" - } - }, - "required": [ - "" - ], - "type": "object" - } - }, - { - "$ref": "#/parameters/preferParams" + "$ref": "#/components/parameters/preferParams" } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], + "requestBody": { + "$ref": "#/components/requestBodies/Args2" + }, "responses": { "200": { "description": "OK" @@ -2088,11 +2527,6 @@ }, "/rpc/gen_random_uuid": { "get": { - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], "responses": { "200": { "description": "OK" @@ -2105,22 +2539,34 @@ "post": { "parameters": [ { - "in": "body", - "name": "args", - "required": true, - "schema": { - "type": "object" - } - }, - { - "$ref": "#/parameters/preferParams" + "$ref": "#/components/parameters/preferParams" } ], - "produces": [ - "application/json", - "application/vnd.pgrst.object+json;nulls=stripped", - "application/vnd.pgrst.object+json" - ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "type": "object" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "type": "object" + } + }, + "text/csv": { + "schema": { + "type": "object" + } + } + }, + "required": true + }, "responses": { "200": { "description": "OK" @@ -2132,1291 +2578,2010 @@ } } }, - "definitions": { - "service_fallbacks": { - "description": "Fallback URLs for services when primary endpoints fail", - "required": [ - "service_fallback_id", - "service_id", - "fallback_url" - ], - "properties": { - "service_fallback_id": { - "description": "Note:\nThis is a Primary Key.", - "format": "integer", - "type": "integer" - }, - "service_id": { - "description": "Note:\nThis is a Foreign Key to `services.service_id`.", - "format": "character varying", - "maxLength": 42, - "type": "string" - }, - "fallback_url": { - "format": "character varying", - "maxLength": 255, - "type": "string" - }, - "created_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" - }, - "updated_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" + "externalDocs": { + "description": "PostgREST Documentation", + "url": "https://postgrest.org/en/v12.0/api.html" + }, + "servers": [ + { + "url": "http://localhost:3000" + } + ], + "components": { + "parameters": { + "preferParams": { + "name": "Prefer", + "description": "Preference", + "required": false, + "in": "header", + "schema": { + "type": "string", + "enum": [ + "params=single-object" + ] } }, - "type": "object" - }, - "portal_application_rbac": { - "description": "User access controls for specific applications", - "required": [ - "id", - "portal_application_id", - "portal_user_id" - ], - "properties": { - "id": { - "description": "Note:\nThis is a Primary Key.", - "format": "integer", - "type": "integer" - }, - "portal_application_id": { - "description": "Note:\nThis is a Foreign Key to `portal_applications.portal_application_id`.", - "format": "character varying", - "maxLength": 36, - "type": "string" - }, - "portal_user_id": { - "description": "Note:\nThis is a Foreign Key to `portal_users.portal_user_id`.", - "format": "character varying", - "maxLength": 36, - "type": "string" - }, - "created_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" - }, - "updated_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" + "preferReturn": { + "name": "Prefer", + "description": "Preference", + "required": false, + "in": "header", + "schema": { + "type": "string", + "enum": [ + "return=representation", + "return=minimal", + "return=none" + ] } }, - "type": "object" - }, - "portal_plans": { - "description": "Available subscription plans for Portal Accounts", - "required": [ - "portal_plan_type" - ], - "properties": { - "portal_plan_type": { - "description": "Note:\nThis is a Primary Key.", - "format": "character varying", - "maxLength": 42, - "type": "string" - }, - "portal_plan_type_description": { - "format": "character varying", - "maxLength": 420, - "type": "string" - }, - "plan_usage_limit": { - "description": "Maximum usage allowed within the interval", - "format": "integer", - "type": "integer" - }, - "plan_usage_limit_interval": { + "preferCount": { + "name": "Prefer", + "description": "Preference", + "required": false, + "in": "header", + "schema": { + "type": "string", "enum": [ - "day", - "month", - "year" - ], - "format": "public.plan_interval", - "type": "string" - }, - "plan_rate_limit_rps": { - "description": "Rate limit in requests per second", - "format": "integer", - "type": "integer" - }, - "plan_application_limit": { - "format": "integer", - "type": "integer" + "count=none" + ] } }, - "type": "object" - }, - "portal_applications": { - "description": "Applications created within portal accounts with their own rate limits and settings", - "required": [ - "portal_application_id", - "portal_account_id" - ], - "properties": { - "portal_application_id": { - "default": "gen_random_uuid()", - "description": "Note:\nThis is a Primary Key.", - "format": "character varying", - "maxLength": 36, - "type": "string" - }, - "portal_account_id": { - "description": "Note:\nThis is a Foreign Key to `portal_accounts.portal_account_id`.", - "format": "character varying", - "maxLength": 36, - "type": "string" - }, - "portal_application_name": { - "format": "character varying", - "maxLength": 42, - "type": "string" - }, - "emoji": { - "format": "character varying", - "maxLength": 16, - "type": "string" - }, - "portal_application_user_limit": { - "format": "integer", - "type": "integer" - }, - "portal_application_user_limit_interval": { + "preferPost": { + "name": "Prefer", + "description": "Preference", + "required": false, + "in": "header", + "schema": { + "type": "string", "enum": [ - "day", - "month", - "year" - ], - "format": "public.plan_interval", - "type": "string" - }, - "portal_application_user_limit_rps": { - "format": "integer", - "type": "integer" - }, - "portal_application_description": { - "format": "character varying", - "maxLength": 255, - "type": "string" - }, - "favorite_service_ids": { - "format": "character varying[]", - "items": { - "type": "string" - }, - "type": "array" - }, - "secret_key_hash": { - "description": "Hashed secret key for application authentication", - "format": "character varying", - "maxLength": 255, + "return=representation", + "return=minimal", + "return=none", + "resolution=ignore-duplicates", + "resolution=merge-duplicates" + ] + } + }, + "select": { + "name": "select", + "description": "Filtering Columns", + "required": false, + "in": "query", + "schema": { "type": "string" - }, - "secret_key_required": { - "default": false, - "format": "boolean", - "type": "boolean" - }, - "deleted_at": { - "format": "timestamp with time zone", + } + }, + "on_conflict": { + "name": "on_conflict", + "description": "On Conflict", + "required": false, + "in": "query", + "schema": { "type": "string" - }, - "created_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", + } + }, + "order": { + "name": "order", + "description": "Ordering", + "required": false, + "in": "query", + "schema": { "type": "string" - }, - "updated_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", + } + }, + "range": { + "name": "Range", + "description": "Limiting and Pagination", + "required": false, + "in": "header", + "schema": { "type": "string" } }, - "type": "object" - }, - "services": { - "description": "Supported blockchain services from the Pocket Network", - "required": [ - "service_id", - "service_name", - "service_domains" - ], - "properties": { - "service_id": { - "description": "Note:\nThis is a Primary Key.", - "format": "character varying", - "maxLength": 42, + "rangeUnit": { + "name": "Range-Unit", + "description": "Limiting and Pagination", + "required": false, + "in": "header", + "schema": { + "type": "string", + "default": "items" + } + }, + "offset": { + "name": "offset", + "description": "Limiting and Pagination", + "required": false, + "in": "query", + "schema": { "type": "string" - }, - "service_name": { - "format": "character varying", - "maxLength": 169, + } + }, + "limit": { + "name": "limit", + "description": "Limiting and Pagination", + "required": false, + "in": "query", + "schema": { "type": "string" - }, - "compute_units_per_relay": { - "description": "Cost in compute units for each relay", - "format": "integer", - "type": "integer" - }, - "service_domains": { - "description": "Valid domains for this service", - "format": "character varying[]", - "items": { + } + }, + "rowFilter.service_fallbacks.service_fallback_id": { + "name": "service_fallback_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.service_fallbacks.service_id": { + "name": "service_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.service_fallbacks.fallback_url": { + "name": "fallback_url", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.service_fallbacks.created_at": { + "name": "created_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.service_fallbacks.updated_at": { + "name": "updated_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_application_rbac.id": { + "name": "id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_application_rbac.portal_application_id": { + "name": "portal_application_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_application_rbac.portal_user_id": { + "name": "portal_user_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_application_rbac.created_at": { + "name": "created_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_application_rbac.updated_at": { + "name": "updated_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_plans.portal_plan_type": { + "name": "portal_plan_type", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_plans.portal_plan_type_description": { + "name": "portal_plan_type_description", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_plans.plan_usage_limit": { + "name": "plan_usage_limit", + "description": "Maximum usage allowed within the interval", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_plans.plan_usage_limit_interval": { + "name": "plan_usage_limit_interval", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "public.plan_interval" + } + }, + "rowFilter.portal_plans.plan_rate_limit_rps": { + "name": "plan_rate_limit_rps", + "description": "Rate limit in requests per second", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_plans.plan_application_limit": { + "name": "plan_application_limit", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_users.portal_user_id": { + "name": "portal_user_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_users.portal_user_email": { + "name": "portal_user_email", + "description": "Unique email address for the user", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_users.signed_up": { + "name": "signed_up", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "boolean" + } + }, + "rowFilter.portal_users.portal_admin": { + "name": "portal_admin", + "description": "Whether user has admin privileges across the portal", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "boolean" + } + }, + "rowFilter.portal_users.deleted_at": { + "name": "deleted_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_users.created_at": { + "name": "created_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_users.updated_at": { + "name": "updated_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_applications.portal_application_id": { + "name": "portal_application_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_applications.portal_account_id": { + "name": "portal_account_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_applications.portal_application_name": { + "name": "portal_application_name", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_applications.emoji": { + "name": "emoji", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_applications.portal_application_user_limit": { + "name": "portal_application_user_limit", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_applications.portal_application_user_limit_interval": { + "name": "portal_application_user_limit_interval", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "public.plan_interval" + } + }, + "rowFilter.portal_applications.portal_application_user_limit_rps": { + "name": "portal_application_user_limit_rps", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_applications.portal_application_description": { + "name": "portal_application_description", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_applications.favorite_service_ids": { + "name": "favorite_service_ids", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying[]" + } + }, + "rowFilter.portal_applications.secret_key_hash": { + "name": "secret_key_hash", + "description": "Hashed secret key for application authentication", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_applications.secret_key_required": { + "name": "secret_key_required", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "boolean" + } + }, + "rowFilter.portal_applications.deleted_at": { + "name": "deleted_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_applications.created_at": { + "name": "created_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_applications.updated_at": { + "name": "updated_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.services.service_id": { + "name": "service_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.services.service_name": { + "name": "service_name", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.services.compute_units_per_relay": { + "name": "compute_units_per_relay", + "description": "Cost in compute units for each relay", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.services.service_domains": { + "name": "service_domains", + "description": "Valid domains for this service", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying[]" + } + }, + "rowFilter.services.service_owner_address": { + "name": "service_owner_address", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.services.network_id": { + "name": "network_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.services.active": { + "name": "active", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "boolean" + } + }, + "rowFilter.services.beta": { + "name": "beta", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "boolean" + } + }, + "rowFilter.services.coming_soon": { + "name": "coming_soon", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "boolean" + } + }, + "rowFilter.services.quality_fallback_enabled": { + "name": "quality_fallback_enabled", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "boolean" + } + }, + "rowFilter.services.hard_fallback_enabled": { + "name": "hard_fallback_enabled", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "boolean" + } + }, + "rowFilter.services.svg_icon": { + "name": "svg_icon", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "text" + } + }, + "rowFilter.services.public_endpoint_url": { + "name": "public_endpoint_url", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.services.status_endpoint_url": { + "name": "status_endpoint_url", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.services.status_query": { + "name": "status_query", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "text" + } + }, + "rowFilter.services.deleted_at": { + "name": "deleted_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.services.created_at": { + "name": "created_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.services.updated_at": { + "name": "updated_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_accounts.portal_account_id": { + "name": "portal_account_id", + "description": "Unique identifier for the portal account", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_accounts.organization_id": { + "name": "organization_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_accounts.portal_plan_type": { + "name": "portal_plan_type", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_accounts.user_account_name": { + "name": "user_account_name", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_accounts.internal_account_name": { + "name": "internal_account_name", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_accounts.portal_account_user_limit": { + "name": "portal_account_user_limit", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_accounts.portal_account_user_limit_interval": { + "name": "portal_account_user_limit_interval", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "public.plan_interval" + } + }, + "rowFilter.portal_accounts.portal_account_user_limit_rps": { + "name": "portal_account_user_limit_rps", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_accounts.billing_type": { + "name": "billing_type", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_accounts.stripe_subscription_id": { + "name": "stripe_subscription_id", + "description": "Stripe subscription identifier for billing", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_accounts.gcp_account_id": { + "name": "gcp_account_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_accounts.gcp_entitlement_id": { + "name": "gcp_entitlement_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_accounts.deleted_at": { + "name": "deleted_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_accounts.created_at": { + "name": "created_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.portal_accounts.updated_at": { + "name": "updated_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.organizations.organization_id": { + "name": "organization_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.organizations.organization_name": { + "name": "organization_name", + "description": "Name of the organization", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.organizations.deleted_at": { + "name": "deleted_at", + "description": "Soft delete timestamp", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.organizations.created_at": { + "name": "created_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.organizations.updated_at": { + "name": "updated_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.networks.network_id": { + "name": "network_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_workers_account_data.portal_account_id": { + "name": "portal_account_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_workers_account_data.user_account_name": { + "name": "user_account_name", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_workers_account_data.portal_plan_type": { + "name": "portal_plan_type", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_workers_account_data.billing_type": { + "name": "billing_type", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_workers_account_data.portal_account_user_limit": { + "name": "portal_account_user_limit", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_workers_account_data.gcp_entitlement_id": { + "name": "gcp_entitlement_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_workers_account_data.owner_email": { + "name": "owner_email", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_workers_account_data.owner_user_id": { + "name": "owner_user_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_account_rbac.id": { + "name": "id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.portal_account_rbac.portal_account_id": { + "name": "portal_account_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_account_rbac.portal_user_id": { + "name": "portal_user_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_account_rbac.role_name": { + "name": "role_name", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.portal_account_rbac.user_joined_account": { + "name": "user_joined_account", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "boolean" + } + }, + "rowFilter.service_endpoints.endpoint_id": { + "name": "endpoint_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "integer" + } + }, + "rowFilter.service_endpoints.service_id": { + "name": "service_id", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "character varying" + } + }, + "rowFilter.service_endpoints.endpoint_type": { + "name": "endpoint_type", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "public.endpoint_type" + } + }, + "rowFilter.service_endpoints.created_at": { + "name": "created_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + }, + "rowFilter.service_endpoints.updated_at": { + "name": "updated_at", + "required": false, + "in": "query", + "schema": { + "type": "string", + "format": "timestamp with time zone" + } + } + }, + "requestBodies": { + "portal_accounts": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/portal_accounts" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/portal_accounts" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/portal_accounts" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/portal_accounts" + } + } + }, + "description": "portal_accounts" + }, + "networks": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/networks" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/networks" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/networks" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/networks" + } + } + }, + "description": "networks" + }, + "portal_users": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/portal_users" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/portal_users" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/portal_users" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/portal_users" + } + } + }, + "description": "portal_users" + }, + "service_endpoints": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/service_endpoints" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/service_endpoints" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/service_endpoints" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/service_endpoints" + } + } + }, + "description": "service_endpoints" + }, + "Args": { + "content": { + "application/json": { + "schema": { + "properties": { + "": { + "format": "bytea", + "type": "string" + } + }, + "required": [ + "" + ], + "type": "object" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "properties": { + "": { + "format": "bytea", + "type": "string" + } + }, + "required": [ + "" + ], + "type": "object" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "properties": { + "": { + "format": "bytea", + "type": "string" + } + }, + "required": [ + "" + ], + "type": "object" + } + }, + "text/csv": { + "schema": { + "properties": { + "": { + "format": "bytea", + "type": "string" + } + }, + "required": [ + "" + ], + "type": "object" + } + } + }, + "required": true + }, + "portal_applications": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/portal_applications" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/portal_applications" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/portal_applications" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/portal_applications" + } + } + }, + "description": "portal_applications" + }, + "portal_account_rbac": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/portal_account_rbac" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/portal_account_rbac" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/portal_account_rbac" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/portal_account_rbac" + } + } + }, + "description": "portal_account_rbac" + }, + "service_fallbacks": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/service_fallbacks" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/service_fallbacks" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/service_fallbacks" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/service_fallbacks" + } + } + }, + "description": "service_fallbacks" + }, + "portal_application_rbac": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/portal_application_rbac" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/portal_application_rbac" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/portal_application_rbac" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/portal_application_rbac" + } + } + }, + "description": "portal_application_rbac" + }, + "portal_plans": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/portal_plans" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/portal_plans" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/portal_plans" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/portal_plans" + } + } + }, + "description": "portal_plans" + }, + "services": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/services" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/services" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/services" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/services" + } + } + }, + "description": "services" + }, + "organizations": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/organizations" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "$ref": "#/components/schemas/organizations" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "$ref": "#/components/schemas/organizations" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/organizations" + } + } + }, + "description": "organizations" + }, + "Args2": { + "content": { + "application/json": { + "schema": { + "properties": { + "": { + "format": "text", + "type": "string" + } + }, + "required": [ + "" + ], + "type": "object" + } + }, + "application/vnd.pgrst.object+json;nulls=stripped": { + "schema": { + "properties": { + "": { + "format": "text", + "type": "string" + } + }, + "required": [ + "" + ], + "type": "object" + } + }, + "application/vnd.pgrst.object+json": { + "schema": { + "properties": { + "": { + "format": "text", + "type": "string" + } + }, + "required": [ + "" + ], + "type": "object" + } + }, + "text/csv": { + "schema": { + "properties": { + "": { + "format": "text", + "type": "string" + } + }, + "required": [ + "" + ], + "type": "object" + } + } + }, + "required": true + } + }, + "schemas": { + "service_fallbacks": { + "description": "Fallback URLs for services when primary endpoints fail", + "required": [ + "service_fallback_id", + "service_id", + "fallback_url" + ], + "properties": { + "service_fallback_id": { + "description": "Note:\nThis is a Primary Key.", + "format": "integer", + "type": "integer" + }, + "service_id": { + "description": "Note:\nThis is a Foreign Key to `services.service_id`.", + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "fallback_url": { + "format": "character varying", + "maxLength": 255, + "type": "string" + }, + "created_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + }, + "updated_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + } + }, + "type": "object" + }, + "portal_application_rbac": { + "description": "User access controls for specific applications", + "required": [ + "id", + "portal_application_id", + "portal_user_id" + ], + "properties": { + "id": { + "description": "Note:\nThis is a Primary Key.", + "format": "integer", + "type": "integer" + }, + "portal_application_id": { + "description": "Note:\nThis is a Foreign Key to `portal_applications.portal_application_id`.", + "format": "character varying", + "maxLength": 36, + "type": "string" + }, + "portal_user_id": { + "description": "Note:\nThis is a Foreign Key to `portal_users.portal_user_id`.", + "format": "character varying", + "maxLength": 36, + "type": "string" + }, + "created_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + }, + "updated_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + } + }, + "type": "object" + }, + "portal_plans": { + "description": "Available subscription plans for Portal Accounts", + "required": [ + "portal_plan_type" + ], + "properties": { + "portal_plan_type": { + "description": "Note:\nThis is a Primary Key.", + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "portal_plan_type_description": { + "format": "character varying", + "maxLength": 420, + "type": "string" + }, + "plan_usage_limit": { + "description": "Maximum usage allowed within the interval", + "format": "integer", + "type": "integer" + }, + "plan_usage_limit_interval": { + "enum": [ + "day", + "month", + "year" + ], + "format": "public.plan_interval", + "type": "string" + }, + "plan_rate_limit_rps": { + "description": "Rate limit in requests per second", + "format": "integer", + "type": "integer" + }, + "plan_application_limit": { + "format": "integer", + "type": "integer" + } + }, + "type": "object" + }, + "portal_users": { + "description": "Users who can access the portal and belong to multiple accounts", + "required": [ + "portal_user_id", + "portal_user_email" + ], + "properties": { + "portal_user_id": { + "description": "Note:\nThis is a Primary Key.", + "format": "character varying", + "maxLength": 36, + "type": "string" + }, + "portal_user_email": { + "description": "Unique email address for the user", + "format": "character varying", + "maxLength": 255, + "type": "string" + }, + "signed_up": { + "default": false, + "type": "boolean" + }, + "portal_admin": { + "default": false, + "description": "Whether user has admin privileges across the portal", + "type": "boolean" + }, + "deleted_at": { + "format": "timestamp with time zone", + "type": "string" + }, + "created_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + }, + "updated_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + } + }, + "type": "object" + }, + "portal_applications": { + "description": "Applications created within portal accounts with their own rate limits and settings", + "required": [ + "portal_application_id", + "portal_account_id" + ], + "properties": { + "portal_application_id": { + "default": "gen_random_uuid()", + "description": "Note:\nThis is a Primary Key.", + "format": "character varying", + "maxLength": 36, + "type": "string" + }, + "portal_account_id": { + "description": "Note:\nThis is a Foreign Key to `portal_accounts.portal_account_id`.", + "format": "character varying", + "maxLength": 36, + "type": "string" + }, + "portal_application_name": { + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "emoji": { + "format": "character varying", + "maxLength": 16, + "type": "string" + }, + "portal_application_user_limit": { + "format": "integer", + "type": "integer" + }, + "portal_application_user_limit_interval": { + "enum": [ + "day", + "month", + "year" + ], + "format": "public.plan_interval", + "type": "string" + }, + "portal_application_user_limit_rps": { + "format": "integer", + "type": "integer" + }, + "portal_application_description": { + "format": "character varying", + "maxLength": 255, + "type": "string" + }, + "favorite_service_ids": { + "format": "character varying[]", + "items": { + "type": "string" + }, + "type": "array" + }, + "secret_key_hash": { + "description": "Hashed secret key for application authentication", + "format": "character varying", + "maxLength": 255, + "type": "string" + }, + "secret_key_required": { + "default": false, + "type": "boolean" + }, + "deleted_at": { + "format": "timestamp with time zone", + "type": "string" + }, + "created_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + }, + "updated_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + } + }, + "type": "object" + }, + "services": { + "description": "Supported blockchain services from the Pocket Network", + "required": [ + "service_id", + "service_name", + "service_domains" + ], + "properties": { + "service_id": { + "description": "Note:\nThis is a Primary Key.", + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "service_name": { + "format": "character varying", + "maxLength": 169, + "type": "string" + }, + "compute_units_per_relay": { + "description": "Cost in compute units for each relay", + "format": "integer", + "type": "integer" + }, + "service_domains": { + "description": "Valid domains for this service", + "format": "character varying[]", + "items": { + "type": "string" + }, + "type": "array" + }, + "service_owner_address": { + "format": "character varying", + "maxLength": 50, + "type": "string" + }, + "network_id": { + "description": "Note:\nThis is a Foreign Key to `networks.network_id`.", + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "active": { + "default": false, + "type": "boolean" + }, + "beta": { + "default": false, + "type": "boolean" + }, + "coming_soon": { + "default": false, + "type": "boolean" + }, + "quality_fallback_enabled": { + "default": false, + "type": "boolean" + }, + "hard_fallback_enabled": { + "default": false, + "type": "boolean" + }, + "svg_icon": { + "format": "text", + "type": "string" + }, + "public_endpoint_url": { + "format": "character varying", + "maxLength": 169, + "type": "string" + }, + "status_endpoint_url": { + "format": "character varying", + "maxLength": 169, + "type": "string" + }, + "status_query": { + "format": "text", + "type": "string" + }, + "deleted_at": { + "format": "timestamp with time zone", + "type": "string" + }, + "created_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + }, + "updated_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + } + }, + "type": "object" + }, + "portal_accounts": { + "description": "Multi-tenant accounts with plans and billing integration", + "required": [ + "portal_account_id", + "portal_plan_type" + ], + "properties": { + "portal_account_id": { + "default": "gen_random_uuid()", + "description": "Unique identifier for the portal account\n\nNote:\nThis is a Primary Key.", + "format": "character varying", + "maxLength": 36, + "type": "string" + }, + "organization_id": { + "description": "Note:\nThis is a Foreign Key to `organizations.organization_id`.", + "format": "integer", + "type": "integer" + }, + "portal_plan_type": { + "description": "Note:\nThis is a Foreign Key to `portal_plans.portal_plan_type`.", + "format": "character varying", + "maxLength": 42, "type": "string" }, - "type": "array" - }, - "service_owner_address": { - "format": "character varying", - "maxLength": 50, - "type": "string" - }, - "network_id": { - "description": "Note:\nThis is a Foreign Key to `networks.network_id`.", - "format": "character varying", - "maxLength": 42, - "type": "string" - }, - "active": { - "default": false, - "format": "boolean", - "type": "boolean" - }, - "beta": { - "default": false, - "format": "boolean", - "type": "boolean" - }, - "coming_soon": { - "default": false, - "format": "boolean", - "type": "boolean" - }, - "quality_fallback_enabled": { - "default": false, - "format": "boolean", - "type": "boolean" - }, - "hard_fallback_enabled": { - "default": false, - "format": "boolean", - "type": "boolean" - }, - "svg_icon": { - "format": "text", - "type": "string" - }, - "public_endpoint_url": { - "format": "character varying", - "maxLength": 169, - "type": "string" - }, - "status_endpoint_url": { - "format": "character varying", - "maxLength": 169, - "type": "string" - }, - "status_query": { - "format": "text", - "type": "string" - }, - "deleted_at": { - "format": "timestamp with time zone", - "type": "string" - }, - "created_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" + "user_account_name": { + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "internal_account_name": { + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "portal_account_user_limit": { + "format": "integer", + "type": "integer" + }, + "portal_account_user_limit_interval": { + "enum": [ + "day", + "month", + "year" + ], + "format": "public.plan_interval", + "type": "string" + }, + "portal_account_user_limit_rps": { + "format": "integer", + "type": "integer" + }, + "billing_type": { + "format": "character varying", + "maxLength": 20, + "type": "string" + }, + "stripe_subscription_id": { + "description": "Stripe subscription identifier for billing", + "format": "character varying", + "maxLength": 255, + "type": "string" + }, + "gcp_account_id": { + "format": "character varying", + "maxLength": 255, + "type": "string" + }, + "gcp_entitlement_id": { + "format": "character varying", + "maxLength": 255, + "type": "string" + }, + "deleted_at": { + "format": "timestamp with time zone", + "type": "string" + }, + "created_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + }, + "updated_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + } }, - "updated_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" - } + "type": "object" }, - "type": "object" - }, - "portal_accounts": { - "description": "Multi-tenant accounts with plans and billing integration", - "required": [ - "portal_account_id", - "portal_plan_type" - ], - "properties": { - "portal_account_id": { - "default": "gen_random_uuid()", - "description": "Unique identifier for the portal account\n\nNote:\nThis is a Primary Key.", - "format": "character varying", - "maxLength": 36, - "type": "string" - }, - "organization_id": { - "description": "Note:\nThis is a Foreign Key to `organizations.organization_id`.", - "format": "integer", - "type": "integer" - }, - "portal_plan_type": { - "description": "Note:\nThis is a Foreign Key to `portal_plans.portal_plan_type`.", - "format": "character varying", - "maxLength": 42, - "type": "string" - }, - "user_account_name": { - "format": "character varying", - "maxLength": 42, - "type": "string" - }, - "internal_account_name": { - "format": "character varying", - "maxLength": 42, - "type": "string" - }, - "portal_account_user_limit": { - "format": "integer", - "type": "integer" - }, - "portal_account_user_limit_interval": { - "enum": [ - "day", - "month", - "year" - ], - "format": "public.plan_interval", - "type": "string" - }, - "portal_account_user_limit_rps": { - "format": "integer", - "type": "integer" - }, - "billing_type": { - "format": "character varying", - "maxLength": 20, - "type": "string" - }, - "stripe_subscription_id": { - "description": "Stripe subscription identifier for billing", - "format": "character varying", - "maxLength": 255, - "type": "string" - }, - "gcp_account_id": { - "format": "character varying", - "maxLength": 255, - "type": "string" - }, - "gcp_entitlement_id": { - "format": "character varying", - "maxLength": 255, - "type": "string" - }, - "deleted_at": { - "format": "timestamp with time zone", - "type": "string" - }, - "created_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" + "organizations": { + "description": "Companies or customer groups that can be attached to Portal Accounts", + "required": [ + "organization_id", + "organization_name" + ], + "properties": { + "organization_id": { + "description": "Note:\nThis is a Primary Key.", + "format": "integer", + "type": "integer" + }, + "organization_name": { + "description": "Name of the organization", + "format": "character varying", + "maxLength": 69, + "type": "string" + }, + "deleted_at": { + "description": "Soft delete timestamp", + "format": "timestamp with time zone", + "type": "string" + }, + "created_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + }, + "updated_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + } }, - "updated_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" - } + "type": "object" }, - "type": "object" - }, - "organizations": { - "description": "Companies or customer groups that can be attached to Portal Accounts", - "required": [ - "organization_id", - "organization_name" - ], - "properties": { - "organization_id": { - "description": "Note:\nThis is a Primary Key.", - "format": "integer", - "type": "integer" - }, - "organization_name": { - "description": "Name of the organization", - "format": "character varying", - "maxLength": 69, - "type": "string" - }, - "deleted_at": { - "description": "Soft delete timestamp", - "format": "timestamp with time zone", - "type": "string" - }, - "created_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" + "networks": { + "description": "Supported blockchain networks (Pocket mainnet, testnet, etc.)", + "required": [ + "network_id" + ], + "properties": { + "network_id": { + "description": "Note:\nThis is a Primary Key.", + "format": "character varying", + "maxLength": 42, + "type": "string" + } }, - "updated_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" - } - }, - "type": "object" - }, - "networks": { - "description": "Supported blockchain networks (Pocket mainnet, testnet, etc.)", - "required": [ - "network_id" - ], - "properties": { - "network_id": { - "description": "Note:\nThis is a Primary Key.", - "format": "character varying", - "maxLength": 42, - "type": "string" - } + "type": "object" }, - "type": "object" - }, - "portal_account_rbac": { - "description": "User roles and permissions for specific portal accounts", - "required": [ - "id", - "portal_account_id", - "portal_user_id", - "role_name" - ], - "properties": { - "id": { - "description": "Note:\nThis is a Primary Key.", - "format": "integer", - "type": "integer" - }, - "portal_account_id": { - "description": "Note:\nThis is a Foreign Key to `portal_accounts.portal_account_id`.", - "format": "character varying", - "maxLength": 36, - "type": "string" - }, - "portal_user_id": { - "description": "Note:\nThis is a Foreign Key to `portal_users.portal_user_id`.", - "format": "character varying", - "maxLength": 36, - "type": "string" - }, - "role_name": { - "format": "character varying", - "maxLength": 20, - "type": "string" + "portal_workers_account_data": { + "description": "Account data for portal-workers billing operations with owner email. Filter using WHERE portal_plan_type = 'PLAN_UNLIMITED' AND billing_type = 'stripe'", + "properties": { + "portal_account_id": { + "description": "Note:\nThis is a Primary Key.", + "format": "character varying", + "maxLength": 36, + "type": "string" + }, + "user_account_name": { + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "portal_plan_type": { + "description": "Note:\nThis is a Foreign Key to `portal_plans.portal_plan_type`.", + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "billing_type": { + "format": "character varying", + "maxLength": 20, + "type": "string" + }, + "portal_account_user_limit": { + "format": "integer", + "type": "integer" + }, + "gcp_entitlement_id": { + "format": "character varying", + "maxLength": 255, + "type": "string" + }, + "owner_email": { + "format": "character varying", + "maxLength": 255, + "type": "string" + }, + "owner_user_id": { + "description": "Note:\nThis is a Primary Key.", + "format": "character varying", + "maxLength": 36, + "type": "string" + } }, - "user_joined_account": { - "default": false, - "format": "boolean", - "type": "boolean" - } + "type": "object" }, - "type": "object" - }, - "service_endpoints": { - "description": "Available endpoint types for each service", - "required": [ - "endpoint_id", - "service_id" - ], - "properties": { - "endpoint_id": { - "description": "Note:\nThis is a Primary Key.", - "format": "integer", - "type": "integer" - }, - "service_id": { - "description": "Note:\nThis is a Foreign Key to `services.service_id`.", - "format": "character varying", - "maxLength": 42, - "type": "string" - }, - "endpoint_type": { - "enum": [ - "cometBFT", - "cosmos", - "REST", - "JSON-RPC", - "WSS", - "gRPC" - ], - "format": "public.endpoint_type", - "type": "string" - }, - "created_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" + "portal_account_rbac": { + "description": "User roles and permissions for specific portal accounts", + "required": [ + "id", + "portal_account_id", + "portal_user_id", + "role_name" + ], + "properties": { + "id": { + "description": "Note:\nThis is a Primary Key.", + "format": "integer", + "type": "integer" + }, + "portal_account_id": { + "description": "Note:\nThis is a Foreign Key to `portal_accounts.portal_account_id`.", + "format": "character varying", + "maxLength": 36, + "type": "string" + }, + "portal_user_id": { + "description": "Note:\nThis is a Foreign Key to `portal_users.portal_user_id`.", + "format": "character varying", + "maxLength": 36, + "type": "string" + }, + "role_name": { + "format": "character varying", + "maxLength": 20, + "type": "string" + }, + "user_joined_account": { + "default": false, + "type": "boolean" + } }, - "updated_at": { - "default": "CURRENT_TIMESTAMP", - "format": "timestamp with time zone", - "type": "string" - } + "type": "object" }, - "type": "object" - } - }, - "parameters": { - "preferParams": { - "name": "Prefer", - "description": "Preference", - "required": false, - "enum": [ - "params=single-object" - ], - "in": "header", - "type": "string" - }, - "preferReturn": { - "name": "Prefer", - "description": "Preference", - "required": false, - "enum": [ - "return=representation", - "return=minimal", - "return=none" - ], - "in": "header", - "type": "string" - }, - "preferCount": { - "name": "Prefer", - "description": "Preference", - "required": false, - "enum": [ - "count=none" - ], - "in": "header", - "type": "string" - }, - "preferPost": { - "name": "Prefer", - "description": "Preference", - "required": false, - "enum": [ - "return=representation", - "return=minimal", - "return=none", - "resolution=ignore-duplicates", - "resolution=merge-duplicates" - ], - "in": "header", - "type": "string" - }, - "select": { - "name": "select", - "description": "Filtering Columns", - "required": false, - "in": "query", - "type": "string" - }, - "on_conflict": { - "name": "on_conflict", - "description": "On Conflict", - "required": false, - "in": "query", - "type": "string" - }, - "order": { - "name": "order", - "description": "Ordering", - "required": false, - "in": "query", - "type": "string" - }, - "range": { - "name": "Range", - "description": "Limiting and Pagination", - "required": false, - "in": "header", - "type": "string" - }, - "rangeUnit": { - "name": "Range-Unit", - "description": "Limiting and Pagination", - "required": false, - "default": "items", - "in": "header", - "type": "string" - }, - "offset": { - "name": "offset", - "description": "Limiting and Pagination", - "required": false, - "in": "query", - "type": "string" - }, - "limit": { - "name": "limit", - "description": "Limiting and Pagination", - "required": false, - "in": "query", - "type": "string" - }, - "body.service_fallbacks": { - "name": "service_fallbacks", - "description": "service_fallbacks", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/service_fallbacks" - } - }, - "rowFilter.service_fallbacks.service_fallback_id": { - "name": "service_fallback_id", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.service_fallbacks.service_id": { - "name": "service_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.service_fallbacks.fallback_url": { - "name": "fallback_url", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.service_fallbacks.created_at": { - "name": "created_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.service_fallbacks.updated_at": { - "name": "updated_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "body.portal_application_rbac": { - "name": "portal_application_rbac", - "description": "portal_application_rbac", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/portal_application_rbac" - } - }, - "rowFilter.portal_application_rbac.id": { - "name": "id", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.portal_application_rbac.portal_application_id": { - "name": "portal_application_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_application_rbac.portal_user_id": { - "name": "portal_user_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_application_rbac.created_at": { - "name": "created_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.portal_application_rbac.updated_at": { - "name": "updated_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "body.portal_plans": { - "name": "portal_plans", - "description": "portal_plans", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/portal_plans" - } - }, - "rowFilter.portal_plans.portal_plan_type": { - "name": "portal_plan_type", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_plans.portal_plan_type_description": { - "name": "portal_plan_type_description", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_plans.plan_usage_limit": { - "name": "plan_usage_limit", - "description": "Maximum usage allowed within the interval", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.portal_plans.plan_usage_limit_interval": { - "name": "plan_usage_limit_interval", - "required": false, - "format": "public.plan_interval", - "in": "query", - "type": "string" - }, - "rowFilter.portal_plans.plan_rate_limit_rps": { - "name": "plan_rate_limit_rps", - "description": "Rate limit in requests per second", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.portal_plans.plan_application_limit": { - "name": "plan_application_limit", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "body.portal_applications": { - "name": "portal_applications", - "description": "portal_applications", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/portal_applications" - } - }, - "rowFilter.portal_applications.portal_application_id": { - "name": "portal_application_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.portal_account_id": { - "name": "portal_account_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.portal_application_name": { - "name": "portal_application_name", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.emoji": { - "name": "emoji", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.portal_application_user_limit": { - "name": "portal_application_user_limit", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.portal_application_user_limit_interval": { - "name": "portal_application_user_limit_interval", - "required": false, - "format": "public.plan_interval", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.portal_application_user_limit_rps": { - "name": "portal_application_user_limit_rps", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.portal_application_description": { - "name": "portal_application_description", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.favorite_service_ids": { - "name": "favorite_service_ids", - "required": false, - "format": "character varying[]", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.secret_key_hash": { - "name": "secret_key_hash", - "description": "Hashed secret key for application authentication", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.secret_key_required": { - "name": "secret_key_required", - "required": false, - "format": "boolean", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.deleted_at": { - "name": "deleted_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.created_at": { - "name": "created_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.portal_applications.updated_at": { - "name": "updated_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "body.services": { - "name": "services", - "description": "services", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/services" - } - }, - "rowFilter.services.service_id": { - "name": "service_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.services.service_name": { - "name": "service_name", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.services.compute_units_per_relay": { - "name": "compute_units_per_relay", - "description": "Cost in compute units for each relay", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.services.service_domains": { - "name": "service_domains", - "description": "Valid domains for this service", - "required": false, - "format": "character varying[]", - "in": "query", - "type": "string" - }, - "rowFilter.services.service_owner_address": { - "name": "service_owner_address", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.services.network_id": { - "name": "network_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.services.active": { - "name": "active", - "required": false, - "format": "boolean", - "in": "query", - "type": "string" - }, - "rowFilter.services.beta": { - "name": "beta", - "required": false, - "format": "boolean", - "in": "query", - "type": "string" - }, - "rowFilter.services.coming_soon": { - "name": "coming_soon", - "required": false, - "format": "boolean", - "in": "query", - "type": "string" - }, - "rowFilter.services.quality_fallback_enabled": { - "name": "quality_fallback_enabled", - "required": false, - "format": "boolean", - "in": "query", - "type": "string" - }, - "rowFilter.services.hard_fallback_enabled": { - "name": "hard_fallback_enabled", - "required": false, - "format": "boolean", - "in": "query", - "type": "string" - }, - "rowFilter.services.svg_icon": { - "name": "svg_icon", - "required": false, - "format": "text", - "in": "query", - "type": "string" - }, - "rowFilter.services.public_endpoint_url": { - "name": "public_endpoint_url", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.services.status_endpoint_url": { - "name": "status_endpoint_url", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.services.status_query": { - "name": "status_query", - "required": false, - "format": "text", - "in": "query", - "type": "string" - }, - "rowFilter.services.deleted_at": { - "name": "deleted_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.services.created_at": { - "name": "created_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.services.updated_at": { - "name": "updated_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "body.portal_accounts": { - "name": "portal_accounts", - "description": "portal_accounts", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/portal_accounts" - } - }, - "rowFilter.portal_accounts.portal_account_id": { - "name": "portal_account_id", - "description": "Unique identifier for the portal account", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.organization_id": { - "name": "organization_id", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.portal_plan_type": { - "name": "portal_plan_type", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.user_account_name": { - "name": "user_account_name", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.internal_account_name": { - "name": "internal_account_name", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.portal_account_user_limit": { - "name": "portal_account_user_limit", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.portal_account_user_limit_interval": { - "name": "portal_account_user_limit_interval", - "required": false, - "format": "public.plan_interval", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.portal_account_user_limit_rps": { - "name": "portal_account_user_limit_rps", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.billing_type": { - "name": "billing_type", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.stripe_subscription_id": { - "name": "stripe_subscription_id", - "description": "Stripe subscription identifier for billing", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.gcp_account_id": { - "name": "gcp_account_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.gcp_entitlement_id": { - "name": "gcp_entitlement_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.deleted_at": { - "name": "deleted_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.created_at": { - "name": "created_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.portal_accounts.updated_at": { - "name": "updated_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "body.organizations": { - "name": "organizations", - "description": "organizations", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/organizations" - } - }, - "rowFilter.organizations.organization_id": { - "name": "organization_id", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.organizations.organization_name": { - "name": "organization_name", - "description": "Name of the organization", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.organizations.deleted_at": { - "name": "deleted_at", - "description": "Soft delete timestamp", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.organizations.created_at": { - "name": "created_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.organizations.updated_at": { - "name": "updated_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "body.networks": { - "name": "networks", - "description": "networks", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/networks" - } - }, - "rowFilter.networks.network_id": { - "name": "network_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "body.portal_account_rbac": { - "name": "portal_account_rbac", - "description": "portal_account_rbac", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/portal_account_rbac" - } - }, - "rowFilter.portal_account_rbac.id": { - "name": "id", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.portal_account_rbac.portal_account_id": { - "name": "portal_account_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_account_rbac.portal_user_id": { - "name": "portal_user_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_account_rbac.role_name": { - "name": "role_name", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.portal_account_rbac.user_joined_account": { - "name": "user_joined_account", - "required": false, - "format": "boolean", - "in": "query", - "type": "string" - }, - "body.service_endpoints": { - "name": "service_endpoints", - "description": "service_endpoints", - "required": false, - "in": "body", - "schema": { - "$ref": "#/definitions/service_endpoints" + "service_endpoints": { + "description": "Available endpoint types for each service", + "required": [ + "endpoint_id", + "service_id" + ], + "properties": { + "endpoint_id": { + "description": "Note:\nThis is a Primary Key.", + "format": "integer", + "type": "integer" + }, + "service_id": { + "description": "Note:\nThis is a Foreign Key to `services.service_id`.", + "format": "character varying", + "maxLength": 42, + "type": "string" + }, + "endpoint_type": { + "enum": [ + "cometBFT", + "cosmos", + "REST", + "JSON-RPC", + "WSS", + "gRPC" + ], + "format": "public.endpoint_type", + "type": "string" + }, + "created_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + }, + "updated_at": { + "default": "CURRENT_TIMESTAMP", + "format": "timestamp with time zone", + "type": "string" + } + }, + "type": "object" } - }, - "rowFilter.service_endpoints.endpoint_id": { - "name": "endpoint_id", - "required": false, - "format": "integer", - "in": "query", - "type": "string" - }, - "rowFilter.service_endpoints.service_id": { - "name": "service_id", - "required": false, - "format": "character varying", - "in": "query", - "type": "string" - }, - "rowFilter.service_endpoints.endpoint_type": { - "name": "endpoint_type", - "required": false, - "format": "public.endpoint_type", - "in": "query", - "type": "string" - }, - "rowFilter.service_endpoints.created_at": { - "name": "created_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" - }, - "rowFilter.service_endpoints.updated_at": { - "name": "updated_at", - "required": false, - "format": "timestamp with time zone", - "in": "query", - "type": "string" } - }, - "externalDocs": { - "description": "PostgREST Documentation", - "url": "https://postgrest.org/en/v12.0/api.html" } } diff --git a/portal-db/api/postgrest.conf b/portal-db/api/postgrest.conf index ed155abcc..eb993dafe 100644 --- a/portal-db/api/postgrest.conf +++ b/portal-db/api/postgrest.conf @@ -54,6 +54,22 @@ openapi-server-proxy-uri = "http://localhost:3000" # https://postgrest.org/en/stable/references/configuration.html#server-cors-allowed-origins server-cors-allowed-origins = "" +# ============================================================================ +# REQUEST CONFIGURATION +# ============================================================================ + +# Transaction end behavior - commit changes after each request +# https://postgrest.org/en/stable/references/configuration.html#db-tx-end +db-tx-end = "commit" + +# ============================================================================ +# CONNECTION POOL CONFIGURATION +# ============================================================================ + +# Maximum number of connections in the database pool +# https://postgrest.org/en/stable/references/configuration.html#db-pool +db-pool = 10 + # ============================================================================ # LOGGING CONFIGURATION # ============================================================================ @@ -63,58 +79,65 @@ server-cors-allowed-origins = "" log-level = "info" # ============================================================================ -# JWT AUTHENTICATION CONFIGURATION +# JWT AUTHENTICATION CONFIGURATION - DUAL KEY SETUP # ============================================================================ -# +# JWT role claim key - specifies which JWT claim contains the database role +# https://postgrest.org/en/stable/references/configuration.html#jwt-role-claim-key +# Both JWT types use the standard ".role" claim +jwt-role-claim-key = ".role" + # JWT VERIFICATION PROCESS (handled automatically by PostgREST): # 1. Client sends: Authorization: Bearer # 2. PostgREST extracts token from header -# 3. PostgREST verifies signature using jwt-secret below +# 3. PostgREST verifies signature using jwt-secret JWKS below # 4. If valid, PostgREST extracts claims from JWT payload # 5. PostgREST looks for role claim (specified by jwt-role-claim-key) # 6. PostgREST executes: SET ROLE ; # 7. PostgREST sets JWT claims as transaction-scoped settings # -# Example JWT payload generated by api/scripts/postgrest-gen-jwt.sh: -# { -# "role": "portal_db_admin", <- Used for SET ROLE command -# "email": "john@doe.com", <- Available via current_setting() -# "exp": 1758126390 <- Token expiration -# } - -# Secret for JWT token verification (32+ characters required) -# https://postgrest.org/en/stable/references/configuration.html#jwt-secret -# TODO_PRODUCTION: Use a secure random secret in production! -# MUST match the secret used in api/scripts/postgrest-gen-jwt.sh for token generation -jwt-secret = "supersecretjwtsecretforlocaldevelopment123456789" - -# JWT role claim key - specifies which JWT claim contains the database role -# https://postgrest.org/en/stable/references/configuration.html#jwt-role-claim-key -# The "." prefix indicates JSON path: payload.role -> "portal_db_admin" or "portal_db_reader" -jwt-role-claim-key = ".role" - -# JWT audience claim verification (optional security hardening) -# https://postgrest.org/en/stable/references/configuration.html#jwt-aud -# Ensures JWTs are intended specifically for this PostgREST API -jwt-aud = "postgrest" - -# ============================================================================ -# REQUEST CONFIGURATION -# ============================================================================ - -# Transaction end behavior - commit changes after each request -# https://postgrest.org/en/stable/references/configuration.html#db-tx-end -db-tx-end = "commit" - -# Pre-request hook to set statement timeout (prevents long-running queries) -# https://postgrest.org/en/stable/references/configuration.html#db-pre-request -# Uncomment in production to prevent runaway queries from blocking resources -# db-pre-request = "SET statement_timeout = '10s';" - -# ============================================================================ -# CONNECTION POOL CONFIGURATION -# ============================================================================ +# DUAL JWT SUPPORT: +# This configuration supports TWO types of JWTs simultaneously: +# +# 1. Backend/Internal JWTs (HS256): +# - Algorithm: HS256 (symmetric key) +# - No 'kid' in header +# - Example payload: +# { +# "role": "portal_db_admin", +# "email": "engineer@example.com", +# "exp": 1758126390 +# } +# +# 2. Auth0 User JWTs (RS256): +# - Generated by Auth0 +# - Algorithm: RS256 (asymmetric key) +# - 'kid': "1a2b3c4d5e6f7g8h9i0j" in header +# - Example payload: +# { +# "role": "authenticated_user", +# "sub": "auth0|1a2b3c4d5e6f7g8h9i0j", +# "aud": "https://api.eggs.town/", +# "exp": 1760197313 +# } +# +# PostgREST automatically routes to the correct key based on JWT header: +# - No 'kid' -> Uses HS256 key +# - kid="1a2b3c4d5e6f7g8h9i0j" -> Uses Auth0 RS256 key -# Maximum number of connections in the database pool -# https://postgrest.org/en/stable/references/configuration.html#db-pool -db-pool = 10 +# JWKS (JSON Web Key Set) containing both HS256 and RS256 keys +# https://postgrest.org/en/stable/references/configuration.html#jwt-secret +# +# IMPORTANT: The JWKS file contains: +# 1. HS256 key (no kid) for backend/internal JWTs +# - The 'k' value is the base64url encoding of the LITERAL SECRET STRING +# - NOT the decoded bytes of a base64 secret, but the string itself as ASCII bytes +# - Example: If JWT generator uses "mySecret123" as the HMAC key, +# then k = base64url("mySecret123") = "bXlTZWNyZXQxMjM" +# +# 2. RS256 key (kid="1a2b3c4d5e6f7g8h9i0j") for Auth0 user JWTs +# - Standard RSA public key in JWK format from Auth0 JWKS endpoint +# +# File location: Mounted in Docker at /etc/postgrest/jwks.json (see docker-compose.yml) +# Security: jwks.json is gitignored and contains all sensitive key material +# - /etc/postgrest/jwks.json is mounted in Docker from portal-db/api/jwks.json +jwt-secret = "@/etc/postgrest/jwks.json" diff --git a/portal-db/api/scripts/postgrest-gen-jwt.sh b/portal-db/api/scripts/postgrest-gen-jwt.sh index a97c0f0e9..31b3587ac 100755 --- a/portal-db/api/scripts/postgrest-gen-jwt.sh +++ b/portal-db/api/scripts/postgrest-gen-jwt.sh @@ -9,10 +9,13 @@ # Reference: https://docs.postgrest.org/en/v13/tutorials/tut1.html # # Usage: -# ./postgrest-gen-jwt.sh # portal_db_admin role, sample email -# ./postgrest-gen-jwt.sh portal_db_reader user@email # custom role + email -# ./postgrest-gen-jwt.sh --token-only portal_db_admin user@email -# ./postgrest-gen-jwt.sh --help # display usage information +# ./postgrest-gen-jwt.sh # Use defaults (reads secret from .env) +# ./postgrest-gen-jwt.sh --role reader --email user@email # Custom role and email +# ./postgrest-gen-jwt.sh --expires 24h # 24 hour expiry +# ./postgrest-gen-jwt.sh --expires never # Never expires +# ./postgrest-gen-jwt.sh --token-only # Output token only (for scripting) +# ./postgrest-gen-jwt.sh --secret YOUR_SECRET # Provide custom JWT secret +# ./postgrest-gen-jwt.sh --help # Display usage information set -e @@ -21,53 +24,202 @@ CYAN='\033[0;36m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' +RED='\033[0;31m' BOLD='\033[1m' RESET='\033[0m' -# JWT secret from postgrest.conf (must match exactly) -# TODO_PRODUCTION: Extract JWT_SECRET from postgrest.conf automatically to maintain single source of truth and avoid drift between files -JWT_SECRET="${JWT_SECRET:-supersecretjwtsecretforlocaldevelopment123456789}" +# Determine the script directory and portal-db root +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +PORTAL_DB_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" -# Parse arguments -ROLE="${1:-portal_db_admin}" -EMAIL="${2:-john@doe.com}" -TOKEN_ONLY=false - -# Check for --token-only flag -if [[ "$1" == "--token-only" ]]; then - TOKEN_ONLY=true - ROLE="${2:-portal_db_admin}" - EMAIL="${3:-john@doe.com}" +# Try to load JWT secret from .env file +if [[ -f "$PORTAL_DB_ROOT/.env" ]]; then + # Source the .env file to get POSTGREST_JWT_SECRET + set -a + source "$PORTAL_DB_ROOT/.env" + set +a + + if [[ -n "$POSTGREST_JWT_SECRET" ]]; then + JWT_SECRET="$POSTGREST_JWT_SECRET" + fi fi -# Show help +# Default values +ROLE="portal_db_admin" +EMAIL="john@doe.com" +EXPIRES="1h" +TOKEN_ONLY=false + +# Show help function (defined early so it can be called during argument parsing) print_help() { - cat <<'EOF' -Usage: postgrest-gen-jwt.sh [ROLE] [EMAIL] - -Options: - --help, -h Show this help message and exit - --token-only ROLE [EMAIL] - Print only the JWT for scripting - -Role aliases: - admin Shortcut for portal_db_admin - reader Shortcut for portal_db_reader - -Positional arguments: - ROLE Database role to embed in the JWT (default: portal_db_admin) - EMAIL Email claim to embed in the JWT (default: john@doe.com) - -Examples: - ./postgrest-gen-jwt.sh - ./postgrest-gen-jwt.sh reader user@example.com - ./postgrest-gen-jwt.sh --token-only admin + cat < portal_db_admin + ${CYAN}reader${RESET} -> portal_db_reader + +${BOLD}DEPENDENCIES${RESET} + - openssl (for HMAC-SHA256 signing) + - base64 (for encoding) + - date (for expiration calculation) + +${BOLD}REFERENCE${RESET} + https://docs.postgrest.org/en/v13/tutorials/tut1.html + EOF } -if [[ "$ROLE" == "--help" || "$ROLE" == "-h" ]]; then - print_help - exit 0 +# Parse arguments +while [[ $# -gt 0 ]]; do + case "$1" in + --help|-h) + print_help + exit 0 + ;; + --token-only) + TOKEN_ONLY=true + shift + ;; + --role) + if [[ -z "$2" || "$2" == --* ]]; then + echo -e "${RED}${BOLD}Error: --role requires a value${RESET}" >&2 + echo "Run with --help for usage information" >&2 + exit 1 + fi + ROLE="$2" + shift 2 + ;; + --email) + if [[ -z "$2" || "$2" == --* ]]; then + echo -e "${RED}${BOLD}Error: --email requires a value${RESET}" >&2 + echo "Run with --help for usage information" >&2 + exit 1 + fi + EMAIL="$2" + shift 2 + ;; + --expires) + if [[ -z "$2" || "$2" == --* ]]; then + echo -e "${RED}${BOLD}Error: --expires requires a value${RESET}" >&2 + echo "Run with --help for usage information" >&2 + exit 1 + fi + EXPIRES="$2" + shift 2 + ;; + --secret) + if [[ -z "$2" || "$2" == --* ]]; then + echo -e "${RED}${BOLD}Error: --secret requires a value${RESET}" >&2 + echo "Run with --help for usage information" >&2 + exit 1 + fi + JWT_SECRET="$2" + shift 2 + ;; + *) + echo -e "${RED}${BOLD}Error: Unknown option '$1'${RESET}" >&2 + echo "Run with --help for usage information" >&2 + exit 1 + ;; + esac +done + +# Validate that JWT_SECRET is available +if [[ -z "$JWT_SECRET" ]]; then + echo -e "${RED}${BOLD}โŒ Error: JWT secret not found${RESET}" >&2 + echo "" >&2 + echo -e "${BOLD}The JWT secret must be provided via one of the following methods:${RESET}" >&2 + echo "" >&2 + echo -e " ${CYAN}1.${RESET} Use the ${CYAN}--secret${RESET} flag:" >&2 + echo -e " ${CYAN}./postgrest-gen-jwt.sh --secret YOUR_SECRET${RESET}" >&2 + echo "" >&2 + echo -e " ${CYAN}2.${RESET} Create a ${CYAN}.env${RESET} file at ${YELLOW}$PORTAL_DB_ROOT/.env${RESET} with:" >&2 + echo -e " ${CYAN}POSTGREST_JWT_SECRET=your_secret_here${RESET}" >&2 + echo "" >&2 + echo -e " ${CYAN}3.${RESET} Set the ${CYAN}JWT_SECRET${RESET} environment variable:" >&2 + echo -e " ${CYAN}JWT_SECRET=your_secret ./postgrest-gen-jwt.sh${RESET}" >&2 + echo "" >&2 + echo -e "${YELLOW}Note: The secret must match the one configured in postgrest.conf${RESET}" >&2 + echo -e "${YELLOW}Run with --help for more information${RESET}" >&2 + exit 1 fi # Allow short aliases for role names @@ -88,8 +240,41 @@ translate_role() { # Map alias after parsing the arguments ROLE=$(translate_role "$ROLE") -# Calculate expiration (1 hour from now) -EXP=$(date -v+1H +%s 2>/dev/null || date -d '+1 hour' +%s 2>/dev/null) +# Calculate expiration based on EXPIRES value +calculate_expiration() { + local duration="$1" + + if [[ "$duration" == "never" ]]; then + echo "never" + return + fi + + # Extract number and unit (e.g., "24h" -> 24 and h) + local num="${duration//[^0-9]/}" + local unit="${duration//[0-9]/}" + + # Default to hours if no unit specified + if [[ -z "$unit" ]]; then + unit="h" + fi + + case "$unit" in + h) + # Hours + date -v+${num}H +%s 2>/dev/null || date -d "+${num} hours" +%s 2>/dev/null + ;; + d) + # Days + date -v+${num}d +%s 2>/dev/null || date -d "+${num} days" +%s 2>/dev/null + ;; + *) + echo "Error: Invalid expiration format '$duration'. Use format like: 1h, 24h, 7d, or 'never'" >&2 + exit 1 + ;; + esac +} + +EXP=$(calculate_expiration "$EXPIRES") # ============================================================================ # JWT Generation @@ -102,11 +287,18 @@ base64url() { # Create JWT components HEADER=$(echo -n '{"alg":"HS256","typ":"JWT"}' | base64url) -PAYLOAD=$(echo -n "{\"role\":\"$ROLE\",\"email\":\"$EMAIL\",\"aud\":\"postgrest\",\"exp\":$EXP}" | base64url) + +# Create payload with or without exp claim +if [[ "$EXP" == "never" ]]; then + PAYLOAD=$(echo -n "{\"role\":\"$ROLE\",\"email\":\"$EMAIL\",\"aud\":\"postgrest\"}" | base64url) +else + PAYLOAD=$(echo -n "{\"role\":\"$ROLE\",\"email\":\"$EMAIL\",\"aud\":\"postgrest\",\"exp\":$EXP}" | base64url) +fi + SIGNATURE=$(echo -n "$HEADER.$PAYLOAD" | openssl dgst -sha256 -hmac "$JWT_SECRET" -binary | base64url) # Complete JWT token -JWT_TOKEN="$HEADER.$PAYLOAD.$SIGNATURE" +POSTGREST_JWT_TOKEN="$HEADER.$PAYLOAD.$SIGNATURE" # ============================================================================ # Output @@ -114,22 +306,28 @@ JWT_TOKEN="$HEADER.$PAYLOAD.$SIGNATURE" if [[ "$TOKEN_ONLY" == true ]]; then # Just output the token for scripting - echo "$JWT_TOKEN" + echo "$POSTGREST_JWT_TOKEN" else # Full colorized output echo -e "${GREEN}${BOLD}๐Ÿ”‘ JWT Token Generated${RESET}" echo -e "${GREEN}${BOLD}=======================${RESET}" echo -e "${BOLD}Role:${RESET} ${BLUE}$ROLE${RESET}" echo -e "${BOLD}Email:${RESET} ${BLUE}$EMAIL${RESET}" - echo -e "${BOLD}Expires:${RESET} ${BLUE}$(date -r $EXP 2>/dev/null || date -d @$EXP 2>/dev/null)${RESET}" + + if [[ "$EXP" == "never" ]]; then + echo -e "${BOLD}Expires:${RESET} ${YELLOW}Never (no expiration)${RESET}" + else + echo -e "${BOLD}Expires:${RESET} ${BLUE}$(date -r $EXP 2>/dev/null || date -d @$EXP 2>/dev/null)${RESET} ${CYAN}($EXPIRES)${RESET}" + fi + echo "" echo -e "${BOLD}Token:${RESET}" - echo -e "${YELLOW}$JWT_TOKEN${RESET}" + echo -e "${YELLOW}$POSTGREST_JWT_TOKEN${RESET}" echo "" echo -e "${BOLD}Export to shell:${RESET}" - echo -e "${CYAN}export JWT_TOKEN=\"$JWT_TOKEN\"${RESET}" + echo -e "${CYAN}export POSTGREST_JWT_TOKEN=\"$POSTGREST_JWT_TOKEN\"${RESET}" echo "" echo -e "${BOLD}Usage:${RESET}" - echo -e "${CYAN}curl http://localhost:3000/organizations -H \"Authorization: Bearer \$JWT_TOKEN\"${RESET}" + echo -e "${CYAN}curl http://localhost:3000/organizations -H \"Authorization: Bearer \$POSTGREST_JWT_TOKEN\"${RESET}" echo "" fi diff --git a/portal-db/api/scripts/set_authenticator_password.sql b/portal-db/api/scripts/set_authenticator_password.sql new file mode 100644 index 000000000..22549cca1 --- /dev/null +++ b/portal-db/api/scripts/set_authenticator_password.sql @@ -0,0 +1,31 @@ +-- ============================================================================ +-- Set Authenticator Password for Local Development +-- ============================================================================ +-- This script sets the password for the PostgREST authenticator role. +-- This is separate from the role creation to follow the principle of +-- configuring passwords outside of the main schema migrations. +-- +-- โš ๏ธ LOCAL DEVELOPMENT ONLY - NOT FOR PRODUCTION USE +-- +-- In production environments, database passwords should be managed through: +-- - Environment-specific secrets management (e.g., Kubernetes secrets) +-- - Cloud provider secret managers (e.g., GCP Secret Manager, AWS Secrets Manager) +-- - Proper credential rotation and security policies +-- +-- This script is only intended for local development convenience. +-- ============================================================================ + +-- Set password for the authenticator role (local development only) +ALTER ROLE authenticator WITH PASSWORD 'authenticator_password'; + +-- Verify the role exists and has the correct configuration +DO $$ +BEGIN + IF NOT EXISTS (SELECT 1 FROM pg_roles WHERE rolname = 'authenticator') THEN + RAISE EXCEPTION 'authenticator role does not exist'; + END IF; + + RAISE NOTICE 'LOCAL DEV: authenticator role password has been set for local development'; + RAISE NOTICE 'LOCAL DEV: โš ๏ธ This configuration is for LOCAL DEVELOPMENT ONLY'; +END +$$; diff --git a/portal-db/api/scripts/test-postgrest-portal-app-creation.sh b/portal-db/api/scripts/test-postgrest-portal-app-creation.sh deleted file mode 100755 index d67bab5f3..000000000 --- a/portal-db/api/scripts/test-postgrest-portal-app-creation.sh +++ /dev/null @@ -1,206 +0,0 @@ -#!/bin/bash - -# ๐Ÿงช Test Script for Portal Application Creation -# This script exercises the PostgREST endpoints for inserting a portal -# application and its RBAC membership using the admin role. - -set -e - -# ๐ŸŽจ Color codes for output -RED='\033[0;31m' -GREEN='\033[0;32m' -YELLOW='\033[1;33m' -BLUE='\033[0;34m' -PURPLE='\033[0;35m' -CYAN='\033[0;36m' -NC='\033[0m' # No Color - -# ๐Ÿ“ Function to print colored output -print_status() { - local color=$1 - local message=$2 - echo -e "${color}${message}${NC}" -} - -# ๐Ÿ” Function to validate PostgREST is running -validate_postgrest() { - print_status $BLUE "๐Ÿ” Checking if PostgREST is running..." - if ! curl -s http://localhost:3000/ > /dev/null 2>&1; then - print_status $RED "โŒ Error: PostgREST is not running on localhost:3000" - print_status $YELLOW "๐Ÿ’ก Start the services first: make portal-db-up" - exit 1 - fi - print_status $GREEN "โœ… PostgREST is running" -} - -# ๐Ÿ”‘ Function to generate JWT token -generate_jwt() { - print_status $BLUE "๐Ÿ”‘ Generating JWT token..." - JWT_TOKEN=$(./postgrest-gen-jwt.sh --token-only portal_db_admin admin@example.com 2>/dev/null) - if [ -z "$JWT_TOKEN" ]; then - print_status $RED "โŒ Error: Failed to generate JWT token" - exit 1 - fi - print_status $GREEN "โœ… JWT token generated" -} - -# ๐Ÿ“ฑ Function to create portal application -create_portal_app() { - print_status $BLUE "๐Ÿ“ฑ Creating new portal application..." - - TIMESTAMP=$(date +%s) - APP_NAME="Test App ${TIMESTAMP}" - - # Generate secret key and hash (hex encoded) - SECRET_KEY=$(openssl rand -hex 32) - SECRET_KEY_HASH=$(printf "%s" "$SECRET_KEY" | openssl dgst -sha256 | awk '{print $NF}' | tr -d '\n') - - CREATE_RESPONSE=$(curl -s -X POST http://localhost:3000/portal_applications \ - -H "Content-Type: application/json" \ - -H "Prefer: return=representation" \ - -H "Authorization: Bearer $JWT_TOKEN" \ - -d "{ - \"portal_account_id\": \"10000000-0000-0000-0000-000000000004\", - \"portal_application_name\": \"$APP_NAME\", - \"portal_application_description\": \"Test application created via automated test\", - \"emoji\": \"test\", - \"secret_key_hash\": \"$SECRET_KEY_HASH\", - \"secret_key_required\": false - }") - - if echo "$CREATE_RESPONSE" | jq -e '.[0]' >/dev/null 2>&1; then - APP_ID=$(echo "$CREATE_RESPONSE" | jq -r '.[0].portal_application_id') - else - print_status $RED "โŒ Error creating portal application:" - echo "$CREATE_RESPONSE" | jq '.' - exit 1 - fi - - if [ -z "$APP_ID" ] || [ "$APP_ID" = "null" ]; then - print_status $RED "โŒ Error: Could not extract application ID from response" - echo "$CREATE_RESPONSE" | jq '.' - exit 1 - fi - - print_status $GREEN "โœ… Portal application created successfully!" - print_status $CYAN " ๐Ÿ“ฑ Application ID: $APP_ID" - print_status $CYAN " ๐Ÿท๏ธ Application Name: $APP_NAME" - print_status $CYAN " ๐Ÿ”‘ Secret Key (store securely!): $SECRET_KEY" - - echo "" - print_status $PURPLE "๐Ÿ“‹ Full Create Response:" - echo "$CREATE_RESPONSE" | jq '.' -} - -# ๐Ÿ‘ฅ Function to grant user access via RBAC entry -create_portal_app_rbac() { - print_status $BLUE "๐Ÿ‘ฅ Assigning user to portal application..." - - RBAC_RESPONSE=$(curl -s -X POST http://localhost:3000/portal_application_rbac \ - -H "Content-Type: application/json" \ - -H "Prefer: return=representation" \ - -H "Authorization: Bearer $JWT_TOKEN" \ - -d "{ - \"portal_application_id\": \"$APP_ID\", - \"portal_user_id\": \"30000000-0000-0000-0000-000000000001\" - }") - - if echo "$RBAC_RESPONSE" | jq -e '.[0]' >/dev/null 2>&1; then - print_status $GREEN "โœ… Portal application RBAC entry created" - else - print_status $RED "โŒ Error creating RBAC entry:" - echo "$RBAC_RESPONSE" | jq '.' - exit 1 - fi -} - -# ๐Ÿ” Function to retrieve portal application -retrieve_portal_app() { - print_status $BLUE "๐Ÿ” Retrieving portal application by ID..." - - RETRIEVE_RESPONSE=$(curl -s -X GET \ - "http://localhost:3000/portal_applications?portal_application_id=eq.$APP_ID" \ - -H "Authorization: Bearer $JWT_TOKEN") - - # Check if we got results - APP_COUNT=$(echo "$RETRIEVE_RESPONSE" | jq '. | length') - if [ "$APP_COUNT" -eq "0" ]; then - print_status $RED "โŒ Error: Application not found in database" - exit 1 - fi - - print_status $GREEN "โœ… Portal application retrieved successfully!" - - echo "" - print_status $PURPLE "๐Ÿ“‹ Full Retrieve Response:" - echo "$RETRIEVE_RESPONSE" | jq '.' - - # Extract key fields for comparison - RETRIEVED_NAME=$(echo "$RETRIEVE_RESPONSE" | jq -r '.[0].portal_application_name') - RETRIEVED_DESCRIPTION=$(echo "$RETRIEVE_RESPONSE" | jq -r '.[0].portal_application_description') - RETRIEVED_EMOJI=$(echo "$RETRIEVE_RESPONSE" | jq -r '.[0].emoji') - - print_status $CYAN " ๐Ÿท๏ธ Retrieved Name: $RETRIEVED_NAME" - print_status $CYAN " ๐Ÿ“ Retrieved Description: $RETRIEVED_DESCRIPTION" - print_status $CYAN " ๐Ÿ˜Š Retrieved Emoji: $RETRIEVED_EMOJI" -} - -# ๐Ÿ” Function to test retrieval by name -retrieve_by_name() { - print_status $BLUE "๐Ÿ” Testing retrieval by application name..." - - # URL encode the app name - ENCODED_NAME=$(echo "$APP_NAME" | sed 's/ /%20/g') - - RETRIEVE_BY_NAME_RESPONSE=$(curl -s -X GET \ - "http://localhost:3000/portal_applications?portal_application_name=eq.$ENCODED_NAME" \ - -H "Authorization: Bearer $JWT_TOKEN") - - APP_COUNT_BY_NAME=$(echo "$RETRIEVE_BY_NAME_RESPONSE" | jq '. | length') - if [ "$APP_COUNT_BY_NAME" -eq "0" ]; then - print_status $RED "โŒ Error: Application not found by name" - exit 1 - fi - - print_status $GREEN "โœ… Portal application found by name!" - print_status $CYAN " Found $APP_COUNT_BY_NAME application(s) with name: $APP_NAME" -} - -# ๐Ÿ“Š Function to show test summary -show_summary() { - echo "" - print_status $PURPLE "======================================" - print_status $PURPLE "๐ŸŽ‰ TEST SUMMARY" - print_status $PURPLE "======================================" - print_status $GREEN "โœ… PostgREST API connectivity" - print_status $GREEN "โœ… JWT token generation" - print_status $GREEN "โœ… Portal application creation" - print_status $GREEN "โœ… Portal application retrieval by ID" - print_status $GREEN "โœ… Portal application retrieval by name" - print_status $PURPLE "======================================" - print_status $CYAN "๐Ÿ’ก Created application ID: $APP_ID" - print_status $CYAN "๐Ÿ’ก Application name: $APP_NAME" - print_status $CYAN "๐Ÿ’ก Secret key: $SECRET_KEY" - print_status $PURPLE "======================================" -} - -# ๐ŸŽฏ Main execution -main() { - print_status $PURPLE "๐Ÿงช Portal Application Creation Test" - print_status $PURPLE "====================================" - echo "" - - # Run all test steps - validate_postgrest - generate_jwt - create_portal_app - create_portal_app_rbac - retrieve_portal_app - retrieve_by_name - show_summary - - print_status $GREEN "๐ŸŽ‰ All tests passed successfully!" -} - -# ๐Ÿ Execute main function -main "$@" diff --git a/portal-db/docker-compose.yml b/portal-db/docker-compose.yml index 9b2d4fc35..ddcf08f70 100644 --- a/portal-db/docker-compose.yml +++ b/portal-db/docker-compose.yml @@ -41,12 +41,23 @@ services: volumes: # PostgreSQL data persistence (survives container restarts) - ./tmp/portal_db_data:/var/lib/postgresql/data - # Initialization scripts (run in alphabetical order on first startup) + + # 1. Initialization scripts (run in alphabetical order on first startup) # Documentation: https://hub.docker.com/_/postgres#initialization-scripts # 001_portal_init.sql: Initial PostgreSQL schema - ./schema/001_portal_init.sql:/docker-entrypoint-initdb.d/001_portal_init.sql:ro # 002_postgrest_init.sql: PostgREST API setup (roles, permissions, JWT) - ./schema/002_postgrest_init.sql:/docker-entrypoint-initdb.d/002_postgrest_init.sql:ro + # 003_grove_backend.sql: Grove backend queries + - ./schema/003_grove_backend.sql:/docker-entrypoint-initdb.d/003_grove_backend.sql:ro + # 004_grove_portal.sql: Grove portal queries + - ./schema/004_grove_portal_access.sql:/docker-entrypoint-initdb.d/004_grove_portal_access.sql:ro + + # 2. LOCAL DEV ONLY: mount set_authenticator_password.sql: Set authenticator password + # - Required to set the authenticator role's password to 'authenticator_password' for the local development environment. + # - In production environments, the password will be set by an admin outside of SQL migration files. + - ./api/scripts/set_authenticator_password.sql:/docker-entrypoint-initdb.d/999_set_authenticator_password.sql:ro + healthcheck: # Health check to ensure database is ready before starting PostgREST test: ["CMD", "pg_isready", "-U", "postgres", "-d", "portal_db"] @@ -70,6 +81,9 @@ services: # Mount PostgREST configuration file (see api/postgrest.conf) # Configuration docs: https://docs.postgrest.org/en/v13/references/configuration.html - ./api/postgrest.conf:/etc/postgrest/postgrest.conf:ro + # Mount JWKS (JSON Web Key Set) for dual JWT authentication + # Contains both HS256 (backend) and RS256 (Auth0) keys + - ./api/jwks.json:/etc/postgrest/jwks.json:ro command: ["postgrest", "/etc/postgrest/postgrest.conf"] depends_on: postgres: diff --git a/portal-db/schema/002_postgrest_init.sql b/portal-db/schema/002_postgrest_init.sql index 09e867174..65d1ecd17 100644 --- a/portal-db/schema/002_postgrest_init.sql +++ b/portal-db/schema/002_postgrest_init.sql @@ -83,7 +83,8 @@ GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE portal_accounts, portal_account_rbac, portal_applications, - portal_application_rbac + portal_application_rbac, + portal_users TO portal_db_admin; -- Read-only access to business data for reader role. @@ -108,6 +109,7 @@ ALTER TABLE portal_accounts ENABLE ROW LEVEL SECURITY; ALTER TABLE portal_account_rbac ENABLE ROW LEVEL SECURITY; ALTER TABLE portal_applications ENABLE ROW LEVEL SECURITY; ALTER TABLE portal_application_rbac ENABLE ROW LEVEL SECURITY; +ALTER TABLE portal_users ENABLE ROW LEVEL SECURITY; -- Organizations CREATE POLICY organizations_admin_all ON organizations @@ -168,3 +170,10 @@ CREATE POLICY portal_application_rbac_reader_select ON portal_application_rbac FOR SELECT TO portal_db_reader USING (TRUE); + +-- Portal users +CREATE POLICY portal_users_admin_all ON portal_users + FOR ALL + TO portal_db_admin + USING (TRUE) + WITH CHECK (TRUE); \ No newline at end of file diff --git a/portal-db/schema/003_grove_backend.sql b/portal-db/schema/003_grove_backend.sql new file mode 100644 index 000000000..1f42abd6b --- /dev/null +++ b/portal-db/schema/003_grove_backend.sql @@ -0,0 +1,34 @@ +-- ============================================================================ +-- Auxiliary Services Queries +-- ============================================================================ +-- This file contains custom views to support auxiliary services (portal-workers). + +-- ============================================================================ +-- PORTAL WORKERS ACCOUNT DATA VIEW +-- ============================================================================ + +-- View to get account data needed by portal-workers for billing operations +-- Returns accounts with owner email - generates proper types in SDK +-- Use WHERE clauses to filter by portal_plan_type and/or billing_type +CREATE VIEW portal_workers_account_data AS +SELECT + pa.portal_account_id, + pa.user_account_name, + pa.portal_plan_type, + pa.billing_type, + pa.portal_account_user_limit, + pa.gcp_entitlement_id, + pu.portal_user_email as owner_email, + pu.portal_user_id as owner_user_id +FROM portal_accounts pa +INNER JOIN portal_account_rbac par ON pa.portal_account_id = par.portal_account_id +INNER JOIN portal_users pu ON par.portal_user_id = pu.portal_user_id +WHERE + pa.deleted_at IS NULL + AND pu.deleted_at IS NULL + AND par.role_name = 'LEGACY_OWNER'; + +-- Grant select permissions to admin role only (admin has access to portal_users) +GRANT SELECT ON portal_workers_account_data TO portal_db_admin; + +COMMENT ON VIEW portal_workers_account_data IS 'Account data for portal-workers billing operations with owner email.'; diff --git a/portal-db/schema/004_grove_portal_access.sql b/portal-db/schema/004_grove_portal_access.sql new file mode 100644 index 000000000..fc4cafe38 --- /dev/null +++ b/portal-db/schema/004_grove_portal_access.sql @@ -0,0 +1,300 @@ +-- ============================================================================ +-- AUTH0 JWT INTEGRATION FOR FRONTEND USER ACCESS +-- ============================================================================ +-- This migration adds user-scoped access control for frontend users +-- authenticating via Auth0. Existing roles (portal_db_admin, portal_db_reader) +-- remain unchanged and are used by backend services. +-- +-- Overview: +-- - Creates 'authenticated_user' role for Auth0-authenticated frontend users +-- - Implements Row-Level Security (RLS) policies based on portal_account_rbac +-- - Users can only access portal accounts/applications they have RBAC permissions for +-- - Permission levels: 'legacy_read' (SELECT) and 'legacy_write' (INSERT/UPDATE/DELETE) +-- ============================================================================ + +-- ============================================================================ +-- ROLES +-- ============================================================================ + +-- New role for Auth0-authenticated frontend users +CREATE ROLE authenticated_user NOLOGIN; +COMMENT ON ROLE authenticated_user IS 'Role for Auth0-authenticated frontend users with user-scoped RLS policies'; + +-- Allow PostgREST authenticator to impersonate this role +GRANT authenticated_user TO authenticator; + +-- ============================================================================ +-- SCHEMA ACCESS +-- ============================================================================ + +-- Grant schema access +GRANT USAGE ON SCHEMA public, api TO authenticated_user; + +-- ============================================================================ +-- TABLE PERMISSIONS +-- ============================================================================ + +-- Grant table access (users will only be able to see/modify their own data via RLS) +GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE + portal_accounts, + portal_account_rbac, + portal_applications, + portal_users +TO authenticated_user; + +-- Grant access to public tables used by the UI (read-only, contains no sensitive data) +GRANT SELECT ON TABLE + services, + portal_plans, +TO authenticated_user; + +-- Grant access to portal_user_auth for JWT sub claim lookup +GRANT SELECT ON TABLE portal_user_auth TO authenticated_user; + +-- Grant sequence access for inserts +GRANT USAGE, SELECT ON ALL SEQUENCES IN SCHEMA public TO authenticated_user; + +-- ============================================================================ +-- HELPER FUNCTION: Extract portal_user_id from Auth0 JWT sub claim +-- ============================================================================ + +CREATE OR REPLACE FUNCTION api.current_portal_user_id() +RETURNS VARCHAR(36) AS $$ +DECLARE + auth_sub TEXT; + user_id VARCHAR(36); +BEGIN + -- Extract 'sub' claim from JWT (e.g., "auth0|6536b4a897072b320a2d41ea") + auth_sub := current_setting('request.jwt.claims', true)::json->>'sub'; + + IF auth_sub IS NULL THEN + RETURN NULL; + END IF; + + -- Look up portal_user_id from portal_user_auth + SELECT pua.portal_user_id INTO user_id + FROM portal_user_auth pua + WHERE pua.auth_provider_user_id = auth_sub + LIMIT 1; + + RETURN user_id; +END; +$$ LANGUAGE plpgsql STABLE SECURITY DEFINER; + +COMMENT ON FUNCTION api.current_portal_user_id() IS 'Extracts portal_user_id from Auth0 JWT sub claim by looking up auth_provider_user_id'; + +-- ============================================================================ +-- RLS POLICIES: portal_accounts (user-scoped access) +-- ============================================================================ + +-- Users can SELECT accounts they have RBAC access to +CREATE POLICY portal_accounts_user_select ON portal_accounts + FOR SELECT + TO authenticated_user + USING ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + WHERE par.portal_user_id = api.current_portal_user_id() + ) + ); + +-- Users can INSERT new accounts (WITH CHECK will verify they have write permission) +CREATE POLICY portal_accounts_user_insert ON portal_accounts + FOR INSERT + TO authenticated_user + WITH CHECK ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ); + +-- Users can UPDATE accounts where they have 'legacy_write' permission +CREATE POLICY portal_accounts_user_update ON portal_accounts + FOR UPDATE + TO authenticated_user + USING ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ) + WITH CHECK ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ); + +-- Users can DELETE accounts where they have 'legacy_write' permission +CREATE POLICY portal_accounts_user_delete ON portal_accounts + FOR DELETE + TO authenticated_user + USING ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ); + +-- ============================================================================ +-- RLS POLICIES: portal_applications (user-scoped access) +-- ============================================================================ +-- Note: Application access inherits from parent account permissions + +-- Users can SELECT applications if they have access to the parent account +CREATE POLICY portal_applications_user_select ON portal_applications + FOR SELECT + TO authenticated_user + USING ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + WHERE par.portal_user_id = api.current_portal_user_id() + ) + ); + +-- Users can INSERT applications if they have 'legacy_write' on parent account +CREATE POLICY portal_applications_user_insert ON portal_applications + FOR INSERT + TO authenticated_user + WITH CHECK ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ); + +-- Users can UPDATE applications if they have 'legacy_write' on parent account +CREATE POLICY portal_applications_user_update ON portal_applications + FOR UPDATE + TO authenticated_user + USING ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ) + WITH CHECK ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ); + +-- Users can DELETE applications if they have 'legacy_write' on parent account +CREATE POLICY portal_applications_user_delete ON portal_applications + FOR DELETE + TO authenticated_user + USING ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ); + +-- ============================================================================ +-- RLS POLICIES: portal_account_rbac (user-scoped access) +-- ============================================================================ + +-- Users can view their own RBAC entries +-- IMPORTANT: This policy must be simple to avoid infinite recursion when other +-- tables query portal_account_rbac. Users can only see RBAC rows that directly +-- reference their portal_user_id. +CREATE POLICY portal_account_rbac_user_select ON portal_account_rbac + FOR SELECT + TO authenticated_user + USING (portal_user_id = api.current_portal_user_id()); + +-- Users can INSERT RBAC entries if they have 'legacy_write' on the account +CREATE POLICY portal_account_rbac_user_insert ON portal_account_rbac + FOR INSERT + TO authenticated_user + WITH CHECK ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ); + +-- Users can UPDATE RBAC entries if they have 'legacy_write' on the account +CREATE POLICY portal_account_rbac_user_update ON portal_account_rbac + FOR UPDATE + TO authenticated_user + USING ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ) + WITH CHECK ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ); + +-- Users can DELETE RBAC entries if they have 'legacy_write' on the account +CREATE POLICY portal_account_rbac_user_delete ON portal_account_rbac + FOR DELETE + TO authenticated_user + USING ( + portal_account_id IN ( + SELECT par.portal_account_id + FROM portal_account_rbac par + JOIN rbac r ON r.role_name = par.role_name + WHERE par.portal_user_id = api.current_portal_user_id() + AND 'legacy_write' = ANY(r.permissions) + ) + ); + +-- ============================================================================ +-- RLS POLICIES: portal_users (self-access only) +-- ============================================================================ + +-- Users can view their own user record +CREATE POLICY portal_users_self_select ON portal_users + FOR SELECT + TO authenticated_user + USING (portal_user_id = api.current_portal_user_id()); + +-- Users can update their own record +CREATE POLICY portal_users_self_update ON portal_users + FOR UPDATE + TO authenticated_user + USING (portal_user_id = api.current_portal_user_id()) + WITH CHECK (portal_user_id = api.current_portal_user_id()); diff --git a/portal-db/sdk/go/README.md b/portal-db/sdk/go/README.md new file mode 100644 index 000000000..e28c93897 --- /dev/null +++ b/portal-db/sdk/go/README.md @@ -0,0 +1,201 @@ +# Portal DB Go SDK + +This Go SDK provides a type-safe client for the Portal DB API, generated using [oapi-codegen](https://github.com/oapi-codegen/oapi-codegen). + +## Installation + +```bash +go get github.com/buildwithgrove/path/portal-db/sdk/go +``` + +## Quick Start + +```go +package main + +import ( + "context" + "fmt" + "log" + + "github.com/buildwithgrove/path/portal-db/sdk/go" +) + +func main() { + // Create a new client with typed responses + client, err := portaldb.NewClientWithResponses("http://localhost:3000") + if err != nil { + log.Fatal(err) + } + + ctx := context.Background() + + // Example: Get public data + resp, err := client.GetNetworksWithResponse(ctx, &portaldb.GetNetworksParams{}) + if err != nil { + log.Fatal(err) + } + + if resp.StatusCode() == 200 && resp.JSON200 != nil { + networks := *resp.JSON200 + fmt.Printf("Found %d networks\n", len(networks)) + } +} +``` + +## Authentication + +For authenticated endpoints, add your JWT token to requests: + +```go +import ( + "context" + "net/http" + + "github.com/buildwithgrove/path/portal-db/sdk/go" +) + +func authenticatedExample() { + client, err := portaldb.NewClientWithResponses("http://localhost:3000") + if err != nil { + log.Fatal(err) + } + + // Add JWT token to requests + token := "your-jwt-token-here" + ctx := context.Background() + + // Use RequestEditorFn to add authentication header + requestEditor := func(ctx context.Context, req *http.Request) error { + req.Header.Set("Authorization", "Bearer "+token) + return nil + } + + // Make authenticated request + resp, err := client.GetPortalAccountsWithResponse( + ctx, + &portaldb.GetPortalAccountsParams{}, + requestEditor, + ) + if err != nil { + log.Fatal(err) + } + + if resp.StatusCode() == 200 && resp.JSON200 != nil { + accounts := *resp.JSON200 + fmt.Printf("Found %d accounts\n", len(accounts)) + } else { + fmt.Printf("Authentication failed: %d\n", resp.StatusCode()) + } +} +``` + +## Query Features + +The SDK supports PostgREST's powerful query features for filtering, selecting, and pagination: + +### Filtering and Selection + +```go +// Filter active services with specific fields +resp, err := client.GetServicesWithResponse(ctx, &portaldb.GetServicesParams{ + Active: func() *string { s := "eq.true"; return &s }(), + Select: func() *string { s := "service_id,service_name,active,network_id"; return &s }(), + Limit: func() *string { s := "3"; return &s }(), +}) +if err != nil { + log.Fatal(err) +} + +if resp.StatusCode() == 200 && resp.JSON200 != nil { + services := *resp.JSON200 + fmt.Printf("Found %d active services\n", len(services)) +} +``` + +### Specific Resource Lookup + +```go +// Get a specific service by ID +resp, err := client.GetServicesWithResponse(ctx, &portaldb.GetServicesParams{ + ServiceId: func() *string { s := "eq.ethereum-mainnet"; return &s }(), +}) +if err != nil { + log.Fatal(err) +} + +if resp.StatusCode() == 200 && resp.JSON200 != nil { + services := *resp.JSON200 + fmt.Printf("Found service: %s\n", (*services)[0].ServiceName) +} +``` + +## RPC Functions + +Access custom database functions via the RPC endpoint: + +```go +// Get current user info from JWT claims +resp, err := client.PostRpcMeWithResponse( + ctx, + &portaldb.PostRpcMeParams{}, + portaldb.PostRpcMeJSONRequestBody{}, + requestEditor, +) +if err != nil { + log.Fatal(err) +} + +if resp.StatusCode() == 200 { + fmt.Printf("User info: %s\n", string(resp.Body)) +} +``` + +## Error Handling + +```go +resp, err := client.GetNetworksWithResponse(ctx, &portaldb.GetNetworksParams{}) +if err != nil { + // Handle network/client errors + log.Printf("Client error: %v", err) + return +} + +switch resp.StatusCode() { +case 200: + // Success - access typed data + if resp.JSON200 != nil { + networks := *resp.JSON200 + fmt.Printf("Found %d networks\n", len(networks)) + } +case 401: + // Unauthorized + fmt.Println("Authentication required") +default: + // Other status codes + fmt.Printf("Unexpected status: %d\n", resp.StatusCode()) +} +``` + +## Development + +This SDK was generated from the OpenAPI specification served by PostgREST. + +To regenerate run the following make target while the PostgREST API is running: + +```bash +# From the portal-db directory +make generate-all +``` + +## Generated Files + +- `models.go` - Generated data models and type definitions +- `client.go` - Generated API client methods and HTTP logic +- `go.mod` - Go module definition +- `README.md` - This documentation + +## Related Documentation + +- **API Documentation**: [../../api/README.md](../../api/README.md) +- **OpenAPI Specification**: `../../api/openapi/openapi.json` diff --git a/portal-db/sdk/go/client.go b/portal-db/sdk/go/client.go new file mode 100644 index 000000000..a11f55306 --- /dev/null +++ b/portal-db/sdk/go/client.go @@ -0,0 +1,15535 @@ +// Package portaldb provides primitives to interact with the openapi HTTP API. +// +// Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.0 DO NOT EDIT. +package portaldb + +import ( + "bytes" + "compress/gzip" + "context" + "encoding/base64" + "encoding/json" + "fmt" + "io" + "net/http" + "net/url" + "path" + "strings" + + "github.com/getkin/kin-openapi/openapi3" + "github.com/oapi-codegen/runtime" +) + +// RequestEditorFn is the function signature for the RequestEditor callback function +type RequestEditorFn func(ctx context.Context, req *http.Request) error + +// Doer performs HTTP requests. +// +// The standard http.Client implements this interface. +type HttpRequestDoer interface { + Do(req *http.Request) (*http.Response, error) +} + +// Client which conforms to the OpenAPI3 specification for this service. +type Client struct { + // The endpoint of the server conforming to this interface, with scheme, + // https://api.deepmap.com for example. This can contain a path relative + // to the server, such as https://api.deepmap.com/dev-test, and all the + // paths in the swagger spec will be appended to the server. + Server string + + // Doer for performing requests, typically a *http.Client with any + // customized settings, such as certificate chains. + Client HttpRequestDoer + + // A list of callbacks for modifying requests which are generated before sending over + // the network. + RequestEditors []RequestEditorFn +} + +// ClientOption allows setting custom parameters during construction +type ClientOption func(*Client) error + +// Creates a new Client, with reasonable defaults +func NewClient(server string, opts ...ClientOption) (*Client, error) { + // create a client with sane default values + client := Client{ + Server: server, + } + // mutate client and add all optional params + for _, o := range opts { + if err := o(&client); err != nil { + return nil, err + } + } + // ensure the server URL always has a trailing slash + if !strings.HasSuffix(client.Server, "/") { + client.Server += "/" + } + // create httpClient, if not already present + if client.Client == nil { + client.Client = &http.Client{} + } + return &client, nil +} + +// WithHTTPClient allows overriding the default Doer, which is +// automatically created using http.Client. This is useful for tests. +func WithHTTPClient(doer HttpRequestDoer) ClientOption { + return func(c *Client) error { + c.Client = doer + return nil + } +} + +// WithRequestEditorFn allows setting up a callback function, which will be +// called right before sending the request. This can be used to mutate the request. +func WithRequestEditorFn(fn RequestEditorFn) ClientOption { + return func(c *Client) error { + c.RequestEditors = append(c.RequestEditors, fn) + return nil + } +} + +// The interface specification for the client above. +type ClientInterface interface { + // Get request + Get(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeleteNetworks request + DeleteNetworks(ctx context.Context, params *DeleteNetworksParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetNetworks request + GetNetworks(ctx context.Context, params *GetNetworksParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchNetworksWithBody request with any body + PatchNetworksWithBody(ctx context.Context, params *PatchNetworksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchNetworks(ctx context.Context, params *PatchNetworksParams, body PatchNetworksJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchNetworksWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostNetworksWithBody request with any body + PostNetworksWithBody(ctx context.Context, params *PostNetworksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostNetworks(ctx context.Context, params *PostNetworksParams, body PostNetworksJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostNetworksWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeleteOrganizations request + DeleteOrganizations(ctx context.Context, params *DeleteOrganizationsParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetOrganizations request + GetOrganizations(ctx context.Context, params *GetOrganizationsParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchOrganizationsWithBody request with any body + PatchOrganizationsWithBody(ctx context.Context, params *PatchOrganizationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchOrganizations(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostOrganizationsWithBody request with any body + PostOrganizationsWithBody(ctx context.Context, params *PostOrganizationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostOrganizations(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostOrganizationsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeletePortalAccountRbac request + DeletePortalAccountRbac(ctx context.Context, params *DeletePortalAccountRbacParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetPortalAccountRbac request + GetPortalAccountRbac(ctx context.Context, params *GetPortalAccountRbacParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchPortalAccountRbacWithBody request with any body + PatchPortalAccountRbacWithBody(ctx context.Context, params *PatchPortalAccountRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalAccountRbac(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostPortalAccountRbacWithBody request with any body + PostPortalAccountRbacWithBody(ctx context.Context, params *PostPortalAccountRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalAccountRbac(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeletePortalAccounts request + DeletePortalAccounts(ctx context.Context, params *DeletePortalAccountsParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetPortalAccounts request + GetPortalAccounts(ctx context.Context, params *GetPortalAccountsParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchPortalAccountsWithBody request with any body + PatchPortalAccountsWithBody(ctx context.Context, params *PatchPortalAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalAccounts(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostPortalAccountsWithBody request with any body + PostPortalAccountsWithBody(ctx context.Context, params *PostPortalAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalAccounts(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeletePortalApplicationRbac request + DeletePortalApplicationRbac(ctx context.Context, params *DeletePortalApplicationRbacParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetPortalApplicationRbac request + GetPortalApplicationRbac(ctx context.Context, params *GetPortalApplicationRbacParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchPortalApplicationRbacWithBody request with any body + PatchPortalApplicationRbacWithBody(ctx context.Context, params *PatchPortalApplicationRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalApplicationRbac(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostPortalApplicationRbacWithBody request with any body + PostPortalApplicationRbacWithBody(ctx context.Context, params *PostPortalApplicationRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalApplicationRbac(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeletePortalApplications request + DeletePortalApplications(ctx context.Context, params *DeletePortalApplicationsParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetPortalApplications request + GetPortalApplications(ctx context.Context, params *GetPortalApplicationsParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchPortalApplicationsWithBody request with any body + PatchPortalApplicationsWithBody(ctx context.Context, params *PatchPortalApplicationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalApplications(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostPortalApplicationsWithBody request with any body + PostPortalApplicationsWithBody(ctx context.Context, params *PostPortalApplicationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalApplications(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeletePortalPlans request + DeletePortalPlans(ctx context.Context, params *DeletePortalPlansParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetPortalPlans request + GetPortalPlans(ctx context.Context, params *GetPortalPlansParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchPortalPlansWithBody request with any body + PatchPortalPlansWithBody(ctx context.Context, params *PatchPortalPlansParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalPlans(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostPortalPlansWithBody request with any body + PostPortalPlansWithBody(ctx context.Context, params *PostPortalPlansParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalPlans(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalPlansWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeletePortalUsers request + DeletePortalUsers(ctx context.Context, params *DeletePortalUsersParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetPortalUsers request + GetPortalUsers(ctx context.Context, params *GetPortalUsersParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchPortalUsersWithBody request with any body + PatchPortalUsersWithBody(ctx context.Context, params *PatchPortalUsersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalUsers(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostPortalUsersWithBody request with any body + PostPortalUsersWithBody(ctx context.Context, params *PostPortalUsersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalUsers(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalUsersWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetPortalWorkersAccountData request + GetPortalWorkersAccountData(ctx context.Context, params *GetPortalWorkersAccountDataParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetRpcArmor request + GetRpcArmor(ctx context.Context, params *GetRpcArmorParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostRpcArmorWithBody request with any body + PostRpcArmorWithBody(ctx context.Context, params *PostRpcArmorParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcArmor(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcArmorWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcArmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetRpcDearmor request + GetRpcDearmor(ctx context.Context, params *GetRpcDearmorParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostRpcDearmorWithBody request with any body + PostRpcDearmorWithBody(ctx context.Context, params *PostRpcDearmorParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcDearmor(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetRpcGenRandomUuid request + GetRpcGenRandomUuid(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostRpcGenRandomUuidWithBody request with any body + PostRpcGenRandomUuidWithBody(ctx context.Context, params *PostRpcGenRandomUuidParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcGenRandomUuid(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetRpcGenSalt request + GetRpcGenSalt(ctx context.Context, params *GetRpcGenSaltParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostRpcGenSaltWithBody request with any body + PostRpcGenSaltWithBody(ctx context.Context, params *PostRpcGenSaltParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcGenSalt(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetRpcPgpArmorHeaders request + GetRpcPgpArmorHeaders(ctx context.Context, params *GetRpcPgpArmorHeadersParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostRpcPgpArmorHeadersWithBody request with any body + PostRpcPgpArmorHeadersWithBody(ctx context.Context, params *PostRpcPgpArmorHeadersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcPgpArmorHeaders(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetRpcPgpKeyId request + GetRpcPgpKeyId(ctx context.Context, params *GetRpcPgpKeyIdParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostRpcPgpKeyIdWithBody request with any body + PostRpcPgpKeyIdWithBody(ctx context.Context, params *PostRpcPgpKeyIdParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcPgpKeyId(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeleteServiceEndpoints request + DeleteServiceEndpoints(ctx context.Context, params *DeleteServiceEndpointsParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetServiceEndpoints request + GetServiceEndpoints(ctx context.Context, params *GetServiceEndpointsParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchServiceEndpointsWithBody request with any body + PatchServiceEndpointsWithBody(ctx context.Context, params *PatchServiceEndpointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchServiceEndpoints(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostServiceEndpointsWithBody request with any body + PostServiceEndpointsWithBody(ctx context.Context, params *PostServiceEndpointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostServiceEndpoints(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeleteServiceFallbacks request + DeleteServiceFallbacks(ctx context.Context, params *DeleteServiceFallbacksParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetServiceFallbacks request + GetServiceFallbacks(ctx context.Context, params *GetServiceFallbacksParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchServiceFallbacksWithBody request with any body + PatchServiceFallbacksWithBody(ctx context.Context, params *PatchServiceFallbacksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchServiceFallbacks(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostServiceFallbacksWithBody request with any body + PostServiceFallbacksWithBody(ctx context.Context, params *PostServiceFallbacksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostServiceFallbacks(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // DeleteServices request + DeleteServices(ctx context.Context, params *DeleteServicesParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetServices request + GetServices(ctx context.Context, params *GetServicesParams, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PatchServicesWithBody request with any body + PatchServicesWithBody(ctx context.Context, params *PatchServicesParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchServices(ctx context.Context, params *PatchServicesParams, body PatchServicesJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchServicesWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PatchServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + // PostServicesWithBody request with any body + PostServicesWithBody(ctx context.Context, params *PostServicesParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostServices(ctx context.Context, params *PostServicesParams, body PostServicesJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostServicesWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + + PostServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) +} + +func (c *Client) Get(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetRequest(c.Server) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeleteNetworks(ctx context.Context, params *DeleteNetworksParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeleteNetworksRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetNetworks(ctx context.Context, params *GetNetworksParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetNetworksRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchNetworksWithBody(ctx context.Context, params *PatchNetworksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchNetworksRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchNetworks(ctx context.Context, params *PatchNetworksParams, body PatchNetworksJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchNetworksRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchNetworksWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchNetworksRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchNetworksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostNetworksWithBody(ctx context.Context, params *PostNetworksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostNetworksRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostNetworks(ctx context.Context, params *PostNetworksParams, body PostNetworksJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostNetworksRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostNetworksWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostNetworksRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostNetworksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeleteOrganizations(ctx context.Context, params *DeleteOrganizationsParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeleteOrganizationsRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetOrganizations(ctx context.Context, params *GetOrganizationsParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetOrganizationsRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchOrganizationsWithBody(ctx context.Context, params *PatchOrganizationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchOrganizationsRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchOrganizations(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchOrganizationsRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostOrganizationsWithBody(ctx context.Context, params *PostOrganizationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostOrganizationsRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostOrganizations(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostOrganizationsRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostOrganizationsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeletePortalAccountRbac(ctx context.Context, params *DeletePortalAccountRbacParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeletePortalAccountRbacRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetPortalAccountRbac(ctx context.Context, params *GetPortalAccountRbacParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetPortalAccountRbacRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalAccountRbacWithBody(ctx context.Context, params *PatchPortalAccountRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalAccountRbacRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalAccountRbac(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalAccountRbacRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalAccountRbacWithBody(ctx context.Context, params *PostPortalAccountRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalAccountRbacRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalAccountRbac(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalAccountRbacRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeletePortalAccounts(ctx context.Context, params *DeletePortalAccountsParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeletePortalAccountsRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetPortalAccounts(ctx context.Context, params *GetPortalAccountsParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetPortalAccountsRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalAccountsWithBody(ctx context.Context, params *PatchPortalAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalAccountsRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalAccounts(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalAccountsRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalAccountsWithBody(ctx context.Context, params *PostPortalAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalAccountsRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalAccounts(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalAccountsRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeletePortalApplicationRbac(ctx context.Context, params *DeletePortalApplicationRbacParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeletePortalApplicationRbacRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetPortalApplicationRbac(ctx context.Context, params *GetPortalApplicationRbacParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetPortalApplicationRbacRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalApplicationRbacWithBody(ctx context.Context, params *PatchPortalApplicationRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalApplicationRbacRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalApplicationRbac(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalApplicationRbacRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalApplicationRbacWithBody(ctx context.Context, params *PostPortalApplicationRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalApplicationRbacRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalApplicationRbac(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalApplicationRbacRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeletePortalApplications(ctx context.Context, params *DeletePortalApplicationsParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeletePortalApplicationsRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetPortalApplications(ctx context.Context, params *GetPortalApplicationsParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetPortalApplicationsRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalApplicationsWithBody(ctx context.Context, params *PatchPortalApplicationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalApplicationsRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalApplications(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalApplicationsRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalApplicationsWithBody(ctx context.Context, params *PostPortalApplicationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalApplicationsRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalApplications(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalApplicationsRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeletePortalPlans(ctx context.Context, params *DeletePortalPlansParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeletePortalPlansRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetPortalPlans(ctx context.Context, params *GetPortalPlansParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetPortalPlansRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalPlansWithBody(ctx context.Context, params *PatchPortalPlansParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalPlansRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalPlans(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalPlansRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalPlansWithBody(ctx context.Context, params *PostPortalPlansParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalPlansRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalPlans(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalPlansRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalPlansWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeletePortalUsers(ctx context.Context, params *DeletePortalUsersParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeletePortalUsersRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetPortalUsers(ctx context.Context, params *GetPortalUsersParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetPortalUsersRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalUsersWithBody(ctx context.Context, params *PatchPortalUsersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalUsersRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalUsers(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalUsersRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalUsersWithBody(ctx context.Context, params *PostPortalUsersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalUsersRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalUsers(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalUsersRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalUsersWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetPortalWorkersAccountData(ctx context.Context, params *GetPortalWorkersAccountDataParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetPortalWorkersAccountDataRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetRpcArmor(ctx context.Context, params *GetRpcArmorParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetRpcArmorRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcArmorWithBody(ctx context.Context, params *PostRpcArmorParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcArmorRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcArmor(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcArmorRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcArmorWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcArmorRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcArmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcArmorRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetRpcDearmor(ctx context.Context, params *GetRpcDearmorParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetRpcDearmorRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcDearmorWithBody(ctx context.Context, params *PostRpcDearmorParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcDearmorRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcDearmor(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcDearmorRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcDearmorRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcDearmorRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetRpcGenRandomUuid(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetRpcGenRandomUuidRequest(c.Server) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcGenRandomUuidWithBody(ctx context.Context, params *PostRpcGenRandomUuidParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcGenRandomUuidRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcGenRandomUuid(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcGenRandomUuidRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcGenRandomUuidRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcGenRandomUuidRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetRpcGenSalt(ctx context.Context, params *GetRpcGenSaltParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetRpcGenSaltRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcGenSaltWithBody(ctx context.Context, params *PostRpcGenSaltParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcGenSaltRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcGenSalt(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcGenSaltRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcGenSaltRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcGenSaltRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetRpcPgpArmorHeaders(ctx context.Context, params *GetRpcPgpArmorHeadersParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetRpcPgpArmorHeadersRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcPgpArmorHeadersWithBody(ctx context.Context, params *PostRpcPgpArmorHeadersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcPgpArmorHeadersRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcPgpArmorHeaders(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcPgpArmorHeadersRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcPgpArmorHeadersRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcPgpArmorHeadersRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetRpcPgpKeyId(ctx context.Context, params *GetRpcPgpKeyIdParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetRpcPgpKeyIdRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcPgpKeyIdWithBody(ctx context.Context, params *PostRpcPgpKeyIdParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcPgpKeyIdRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcPgpKeyId(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcPgpKeyIdRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcPgpKeyIdRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostRpcPgpKeyIdRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeleteServiceEndpoints(ctx context.Context, params *DeleteServiceEndpointsParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeleteServiceEndpointsRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetServiceEndpoints(ctx context.Context, params *GetServiceEndpointsParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetServiceEndpointsRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServiceEndpointsWithBody(ctx context.Context, params *PatchServiceEndpointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServiceEndpointsRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServiceEndpoints(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServiceEndpointsRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServiceEndpointsWithBody(ctx context.Context, params *PostServiceEndpointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServiceEndpointsRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServiceEndpoints(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServiceEndpointsRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeleteServiceFallbacks(ctx context.Context, params *DeleteServiceFallbacksParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeleteServiceFallbacksRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetServiceFallbacks(ctx context.Context, params *GetServiceFallbacksParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetServiceFallbacksRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServiceFallbacksWithBody(ctx context.Context, params *PatchServiceFallbacksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServiceFallbacksRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServiceFallbacks(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServiceFallbacksRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServiceFallbacksWithBody(ctx context.Context, params *PostServiceFallbacksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServiceFallbacksRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServiceFallbacks(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServiceFallbacksRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) DeleteServices(ctx context.Context, params *DeleteServicesParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewDeleteServicesRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetServices(ctx context.Context, params *GetServicesParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetServicesRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServicesWithBody(ctx context.Context, params *PatchServicesParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServicesRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServices(ctx context.Context, params *PatchServicesParams, body PatchServicesJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServicesRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServicesWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServicesRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PatchServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPatchServicesRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServicesWithBody(ctx context.Context, params *PostServicesParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServicesRequestWithBody(c.Server, params, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServices(ctx context.Context, params *PostServicesParams, body PostServicesJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServicesRequest(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServicesWithApplicationVndPgrstObjectPlusJSONBody(ctx context.Context, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServicesRequestWithApplicationVndPgrstObjectPlusJSONBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) PostServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx context.Context, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewPostServicesRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(c.Server, params, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +// NewGetRequest generates requests for Get +func NewGetRequest(server string) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewDeleteNetworksRequest generates requests for DeleteNetworks +func NewDeleteNetworksRequest(server string, params *DeleteNetworksParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/networks") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.NetworkId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "network_id", runtime.ParamLocationQuery, *params.NetworkId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetNetworksRequest generates requests for GetNetworks +func NewGetNetworksRequest(server string, params *GetNetworksParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/networks") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.NetworkId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "network_id", runtime.ParamLocationQuery, *params.NetworkId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchNetworksRequest calls the generic PatchNetworks builder with application/json body +func NewPatchNetworksRequest(server string, params *PatchNetworksParams, body PatchNetworksJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchNetworksRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchNetworksRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchNetworks builder with application/vnd.pgrst.object+json body +func NewPatchNetworksRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchNetworksRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchNetworksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchNetworks builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchNetworksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchNetworksRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchNetworksRequestWithBody generates requests for PatchNetworks with any type of body +func NewPatchNetworksRequestWithBody(server string, params *PatchNetworksParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/networks") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.NetworkId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "network_id", runtime.ParamLocationQuery, *params.NetworkId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostNetworksRequest calls the generic PostNetworks builder with application/json body +func NewPostNetworksRequest(server string, params *PostNetworksParams, body PostNetworksJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostNetworksRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostNetworksRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostNetworks builder with application/vnd.pgrst.object+json body +func NewPostNetworksRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostNetworksRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostNetworksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostNetworks builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostNetworksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostNetworksRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostNetworksRequestWithBody generates requests for PostNetworks with any type of body +func NewPostNetworksRequestWithBody(server string, params *PostNetworksParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/networks") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeleteOrganizationsRequest generates requests for DeleteOrganizations +func NewDeleteOrganizationsRequest(server string, params *DeleteOrganizationsParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/organizations") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.OrganizationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "organization_id", runtime.ParamLocationQuery, *params.OrganizationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.OrganizationName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "organization_name", runtime.ParamLocationQuery, *params.OrganizationName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetOrganizationsRequest generates requests for GetOrganizations +func NewGetOrganizationsRequest(server string, params *GetOrganizationsParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/organizations") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.OrganizationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "organization_id", runtime.ParamLocationQuery, *params.OrganizationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.OrganizationName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "organization_name", runtime.ParamLocationQuery, *params.OrganizationName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchOrganizationsRequest calls the generic PatchOrganizations builder with application/json body +func NewPatchOrganizationsRequest(server string, params *PatchOrganizationsParams, body PatchOrganizationsJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchOrganizationsRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchOrganizations builder with application/vnd.pgrst.object+json body +func NewPatchOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchOrganizationsRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchOrganizations builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchOrganizationsRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchOrganizationsRequestWithBody generates requests for PatchOrganizations with any type of body +func NewPatchOrganizationsRequestWithBody(server string, params *PatchOrganizationsParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/organizations") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.OrganizationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "organization_id", runtime.ParamLocationQuery, *params.OrganizationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.OrganizationName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "organization_name", runtime.ParamLocationQuery, *params.OrganizationName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostOrganizationsRequest calls the generic PostOrganizations builder with application/json body +func NewPostOrganizationsRequest(server string, params *PostOrganizationsParams, body PostOrganizationsJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostOrganizationsRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostOrganizations builder with application/vnd.pgrst.object+json body +func NewPostOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostOrganizationsRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostOrganizations builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostOrganizationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostOrganizationsRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostOrganizationsRequestWithBody generates requests for PostOrganizations with any type of body +func NewPostOrganizationsRequestWithBody(server string, params *PostOrganizationsParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/organizations") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeletePortalAccountRbacRequest generates requests for DeletePortalAccountRbac +func NewDeletePortalAccountRbacRequest(server string, params *DeletePortalAccountRbacParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_account_rbac") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Id != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "id", runtime.ParamLocationQuery, *params.Id); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_id", runtime.ParamLocationQuery, *params.PortalUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.RoleName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "role_name", runtime.ParamLocationQuery, *params.RoleName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UserJoinedAccount != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "user_joined_account", runtime.ParamLocationQuery, *params.UserJoinedAccount); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetPortalAccountRbacRequest generates requests for GetPortalAccountRbac +func NewGetPortalAccountRbacRequest(server string, params *GetPortalAccountRbacParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_account_rbac") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Id != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "id", runtime.ParamLocationQuery, *params.Id); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_id", runtime.ParamLocationQuery, *params.PortalUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.RoleName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "role_name", runtime.ParamLocationQuery, *params.RoleName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UserJoinedAccount != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "user_joined_account", runtime.ParamLocationQuery, *params.UserJoinedAccount); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchPortalAccountRbacRequest calls the generic PatchPortalAccountRbac builder with application/json body +func NewPatchPortalAccountRbacRequest(server string, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalAccountRbacRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchPortalAccountRbac builder with application/vnd.pgrst.object+json body +func NewPatchPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalAccountRbacRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchPortalAccountRbac builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalAccountRbacRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchPortalAccountRbacRequestWithBody generates requests for PatchPortalAccountRbac with any type of body +func NewPatchPortalAccountRbacRequestWithBody(server string, params *PatchPortalAccountRbacParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_account_rbac") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Id != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "id", runtime.ParamLocationQuery, *params.Id); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_id", runtime.ParamLocationQuery, *params.PortalUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.RoleName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "role_name", runtime.ParamLocationQuery, *params.RoleName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UserJoinedAccount != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "user_joined_account", runtime.ParamLocationQuery, *params.UserJoinedAccount); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostPortalAccountRbacRequest calls the generic PostPortalAccountRbac builder with application/json body +func NewPostPortalAccountRbacRequest(server string, params *PostPortalAccountRbacParams, body PostPortalAccountRbacJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalAccountRbacRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostPortalAccountRbac builder with application/vnd.pgrst.object+json body +func NewPostPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalAccountRbacRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostPortalAccountRbac builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostPortalAccountRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalAccountRbacRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostPortalAccountRbacRequestWithBody generates requests for PostPortalAccountRbac with any type of body +func NewPostPortalAccountRbacRequestWithBody(server string, params *PostPortalAccountRbacParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_account_rbac") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeletePortalAccountsRequest generates requests for DeletePortalAccounts +func NewDeletePortalAccountsRequest(server string, params *DeletePortalAccountsParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_accounts") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.OrganizationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "organization_id", runtime.ParamLocationQuery, *params.OrganizationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalPlanType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type", runtime.ParamLocationQuery, *params.PortalPlanType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UserAccountName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "user_account_name", runtime.ParamLocationQuery, *params.UserAccountName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.InternalAccountName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "internal_account_name", runtime.ParamLocationQuery, *params.InternalAccountName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit", runtime.ParamLocationQuery, *params.PortalAccountUserLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimitInterval != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit_interval", runtime.ParamLocationQuery, *params.PortalAccountUserLimitInterval); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimitRps != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit_rps", runtime.ParamLocationQuery, *params.PortalAccountUserLimitRps); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.BillingType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "billing_type", runtime.ParamLocationQuery, *params.BillingType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.StripeSubscriptionId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "stripe_subscription_id", runtime.ParamLocationQuery, *params.StripeSubscriptionId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.GcpAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "gcp_account_id", runtime.ParamLocationQuery, *params.GcpAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.GcpEntitlementId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "gcp_entitlement_id", runtime.ParamLocationQuery, *params.GcpEntitlementId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetPortalAccountsRequest generates requests for GetPortalAccounts +func NewGetPortalAccountsRequest(server string, params *GetPortalAccountsParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_accounts") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.OrganizationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "organization_id", runtime.ParamLocationQuery, *params.OrganizationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalPlanType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type", runtime.ParamLocationQuery, *params.PortalPlanType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UserAccountName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "user_account_name", runtime.ParamLocationQuery, *params.UserAccountName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.InternalAccountName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "internal_account_name", runtime.ParamLocationQuery, *params.InternalAccountName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit", runtime.ParamLocationQuery, *params.PortalAccountUserLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimitInterval != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit_interval", runtime.ParamLocationQuery, *params.PortalAccountUserLimitInterval); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimitRps != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit_rps", runtime.ParamLocationQuery, *params.PortalAccountUserLimitRps); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.BillingType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "billing_type", runtime.ParamLocationQuery, *params.BillingType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.StripeSubscriptionId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "stripe_subscription_id", runtime.ParamLocationQuery, *params.StripeSubscriptionId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.GcpAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "gcp_account_id", runtime.ParamLocationQuery, *params.GcpAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.GcpEntitlementId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "gcp_entitlement_id", runtime.ParamLocationQuery, *params.GcpEntitlementId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchPortalAccountsRequest calls the generic PatchPortalAccounts builder with application/json body +func NewPatchPortalAccountsRequest(server string, params *PatchPortalAccountsParams, body PatchPortalAccountsJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalAccountsRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchPortalAccounts builder with application/vnd.pgrst.object+json body +func NewPatchPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalAccountsRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchPortalAccounts builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalAccountsRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchPortalAccountsRequestWithBody generates requests for PatchPortalAccounts with any type of body +func NewPatchPortalAccountsRequestWithBody(server string, params *PatchPortalAccountsParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_accounts") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.OrganizationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "organization_id", runtime.ParamLocationQuery, *params.OrganizationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalPlanType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type", runtime.ParamLocationQuery, *params.PortalPlanType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UserAccountName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "user_account_name", runtime.ParamLocationQuery, *params.UserAccountName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.InternalAccountName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "internal_account_name", runtime.ParamLocationQuery, *params.InternalAccountName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit", runtime.ParamLocationQuery, *params.PortalAccountUserLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimitInterval != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit_interval", runtime.ParamLocationQuery, *params.PortalAccountUserLimitInterval); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimitRps != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit_rps", runtime.ParamLocationQuery, *params.PortalAccountUserLimitRps); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.BillingType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "billing_type", runtime.ParamLocationQuery, *params.BillingType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.StripeSubscriptionId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "stripe_subscription_id", runtime.ParamLocationQuery, *params.StripeSubscriptionId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.GcpAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "gcp_account_id", runtime.ParamLocationQuery, *params.GcpAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.GcpEntitlementId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "gcp_entitlement_id", runtime.ParamLocationQuery, *params.GcpEntitlementId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostPortalAccountsRequest calls the generic PostPortalAccounts builder with application/json body +func NewPostPortalAccountsRequest(server string, params *PostPortalAccountsParams, body PostPortalAccountsJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalAccountsRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostPortalAccounts builder with application/vnd.pgrst.object+json body +func NewPostPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalAccountsRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostPortalAccounts builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostPortalAccountsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalAccountsRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostPortalAccountsRequestWithBody generates requests for PostPortalAccounts with any type of body +func NewPostPortalAccountsRequestWithBody(server string, params *PostPortalAccountsParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_accounts") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeletePortalApplicationRbacRequest generates requests for DeletePortalApplicationRbac +func NewDeletePortalApplicationRbacRequest(server string, params *DeletePortalApplicationRbacParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_application_rbac") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Id != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "id", runtime.ParamLocationQuery, *params.Id); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_id", runtime.ParamLocationQuery, *params.PortalApplicationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_id", runtime.ParamLocationQuery, *params.PortalUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetPortalApplicationRbacRequest generates requests for GetPortalApplicationRbac +func NewGetPortalApplicationRbacRequest(server string, params *GetPortalApplicationRbacParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_application_rbac") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Id != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "id", runtime.ParamLocationQuery, *params.Id); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_id", runtime.ParamLocationQuery, *params.PortalApplicationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_id", runtime.ParamLocationQuery, *params.PortalUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchPortalApplicationRbacRequest calls the generic PatchPortalApplicationRbac builder with application/json body +func NewPatchPortalApplicationRbacRequest(server string, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalApplicationRbacRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchPortalApplicationRbac builder with application/vnd.pgrst.object+json body +func NewPatchPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalApplicationRbacRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchPortalApplicationRbac builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalApplicationRbacRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchPortalApplicationRbacRequestWithBody generates requests for PatchPortalApplicationRbac with any type of body +func NewPatchPortalApplicationRbacRequestWithBody(server string, params *PatchPortalApplicationRbacParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_application_rbac") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Id != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "id", runtime.ParamLocationQuery, *params.Id); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_id", runtime.ParamLocationQuery, *params.PortalApplicationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_id", runtime.ParamLocationQuery, *params.PortalUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostPortalApplicationRbacRequest calls the generic PostPortalApplicationRbac builder with application/json body +func NewPostPortalApplicationRbacRequest(server string, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalApplicationRbacRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostPortalApplicationRbac builder with application/vnd.pgrst.object+json body +func NewPostPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalApplicationRbacRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostPortalApplicationRbac builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostPortalApplicationRbacRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalApplicationRbacRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostPortalApplicationRbacRequestWithBody generates requests for PostPortalApplicationRbac with any type of body +func NewPostPortalApplicationRbacRequestWithBody(server string, params *PostPortalApplicationRbacParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_application_rbac") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeletePortalApplicationsRequest generates requests for DeletePortalApplications +func NewDeletePortalApplicationsRequest(server string, params *DeletePortalApplicationsParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_applications") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalApplicationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_id", runtime.ParamLocationQuery, *params.PortalApplicationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_name", runtime.ParamLocationQuery, *params.PortalApplicationName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Emoji != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "emoji", runtime.ParamLocationQuery, *params.Emoji); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationUserLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_user_limit", runtime.ParamLocationQuery, *params.PortalApplicationUserLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationUserLimitInterval != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_user_limit_interval", runtime.ParamLocationQuery, *params.PortalApplicationUserLimitInterval); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationUserLimitRps != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_user_limit_rps", runtime.ParamLocationQuery, *params.PortalApplicationUserLimitRps); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationDescription != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_description", runtime.ParamLocationQuery, *params.PortalApplicationDescription); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FavoriteServiceIds != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "favorite_service_ids", runtime.ParamLocationQuery, *params.FavoriteServiceIds); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SecretKeyHash != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "secret_key_hash", runtime.ParamLocationQuery, *params.SecretKeyHash); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SecretKeyRequired != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "secret_key_required", runtime.ParamLocationQuery, *params.SecretKeyRequired); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetPortalApplicationsRequest generates requests for GetPortalApplications +func NewGetPortalApplicationsRequest(server string, params *GetPortalApplicationsParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_applications") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalApplicationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_id", runtime.ParamLocationQuery, *params.PortalApplicationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_name", runtime.ParamLocationQuery, *params.PortalApplicationName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Emoji != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "emoji", runtime.ParamLocationQuery, *params.Emoji); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationUserLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_user_limit", runtime.ParamLocationQuery, *params.PortalApplicationUserLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationUserLimitInterval != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_user_limit_interval", runtime.ParamLocationQuery, *params.PortalApplicationUserLimitInterval); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationUserLimitRps != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_user_limit_rps", runtime.ParamLocationQuery, *params.PortalApplicationUserLimitRps); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationDescription != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_description", runtime.ParamLocationQuery, *params.PortalApplicationDescription); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FavoriteServiceIds != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "favorite_service_ids", runtime.ParamLocationQuery, *params.FavoriteServiceIds); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SecretKeyHash != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "secret_key_hash", runtime.ParamLocationQuery, *params.SecretKeyHash); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SecretKeyRequired != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "secret_key_required", runtime.ParamLocationQuery, *params.SecretKeyRequired); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchPortalApplicationsRequest calls the generic PatchPortalApplications builder with application/json body +func NewPatchPortalApplicationsRequest(server string, params *PatchPortalApplicationsParams, body PatchPortalApplicationsJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalApplicationsRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchPortalApplications builder with application/vnd.pgrst.object+json body +func NewPatchPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalApplicationsRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchPortalApplications builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalApplicationsRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchPortalApplicationsRequestWithBody generates requests for PatchPortalApplications with any type of body +func NewPatchPortalApplicationsRequestWithBody(server string, params *PatchPortalApplicationsParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_applications") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalApplicationId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_id", runtime.ParamLocationQuery, *params.PortalApplicationId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_name", runtime.ParamLocationQuery, *params.PortalApplicationName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Emoji != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "emoji", runtime.ParamLocationQuery, *params.Emoji); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationUserLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_user_limit", runtime.ParamLocationQuery, *params.PortalApplicationUserLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationUserLimitInterval != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_user_limit_interval", runtime.ParamLocationQuery, *params.PortalApplicationUserLimitInterval); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationUserLimitRps != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_user_limit_rps", runtime.ParamLocationQuery, *params.PortalApplicationUserLimitRps); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalApplicationDescription != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_application_description", runtime.ParamLocationQuery, *params.PortalApplicationDescription); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FavoriteServiceIds != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "favorite_service_ids", runtime.ParamLocationQuery, *params.FavoriteServiceIds); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SecretKeyHash != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "secret_key_hash", runtime.ParamLocationQuery, *params.SecretKeyHash); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SecretKeyRequired != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "secret_key_required", runtime.ParamLocationQuery, *params.SecretKeyRequired); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostPortalApplicationsRequest calls the generic PostPortalApplications builder with application/json body +func NewPostPortalApplicationsRequest(server string, params *PostPortalApplicationsParams, body PostPortalApplicationsJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalApplicationsRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostPortalApplications builder with application/vnd.pgrst.object+json body +func NewPostPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalApplicationsRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostPortalApplications builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostPortalApplicationsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalApplicationsRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostPortalApplicationsRequestWithBody generates requests for PostPortalApplications with any type of body +func NewPostPortalApplicationsRequestWithBody(server string, params *PostPortalApplicationsParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_applications") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeletePortalPlansRequest generates requests for DeletePortalPlans +func NewDeletePortalPlansRequest(server string, params *DeletePortalPlansParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_plans") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalPlanType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type", runtime.ParamLocationQuery, *params.PortalPlanType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalPlanTypeDescription != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type_description", runtime.ParamLocationQuery, *params.PortalPlanTypeDescription); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanUsageLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_usage_limit", runtime.ParamLocationQuery, *params.PlanUsageLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanUsageLimitInterval != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_usage_limit_interval", runtime.ParamLocationQuery, *params.PlanUsageLimitInterval); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanRateLimitRps != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_rate_limit_rps", runtime.ParamLocationQuery, *params.PlanRateLimitRps); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanApplicationLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_application_limit", runtime.ParamLocationQuery, *params.PlanApplicationLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetPortalPlansRequest generates requests for GetPortalPlans +func NewGetPortalPlansRequest(server string, params *GetPortalPlansParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_plans") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalPlanType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type", runtime.ParamLocationQuery, *params.PortalPlanType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalPlanTypeDescription != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type_description", runtime.ParamLocationQuery, *params.PortalPlanTypeDescription); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanUsageLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_usage_limit", runtime.ParamLocationQuery, *params.PlanUsageLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanUsageLimitInterval != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_usage_limit_interval", runtime.ParamLocationQuery, *params.PlanUsageLimitInterval); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanRateLimitRps != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_rate_limit_rps", runtime.ParamLocationQuery, *params.PlanRateLimitRps); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanApplicationLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_application_limit", runtime.ParamLocationQuery, *params.PlanApplicationLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchPortalPlansRequest calls the generic PatchPortalPlans builder with application/json body +func NewPatchPortalPlansRequest(server string, params *PatchPortalPlansParams, body PatchPortalPlansJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalPlansRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchPortalPlans builder with application/vnd.pgrst.object+json body +func NewPatchPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalPlansRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchPortalPlans builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalPlansRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchPortalPlansRequestWithBody generates requests for PatchPortalPlans with any type of body +func NewPatchPortalPlansRequestWithBody(server string, params *PatchPortalPlansParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_plans") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalPlanType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type", runtime.ParamLocationQuery, *params.PortalPlanType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalPlanTypeDescription != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type_description", runtime.ParamLocationQuery, *params.PortalPlanTypeDescription); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanUsageLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_usage_limit", runtime.ParamLocationQuery, *params.PlanUsageLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanUsageLimitInterval != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_usage_limit_interval", runtime.ParamLocationQuery, *params.PlanUsageLimitInterval); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanRateLimitRps != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_rate_limit_rps", runtime.ParamLocationQuery, *params.PlanRateLimitRps); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PlanApplicationLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "plan_application_limit", runtime.ParamLocationQuery, *params.PlanApplicationLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostPortalPlansRequest calls the generic PostPortalPlans builder with application/json body +func NewPostPortalPlansRequest(server string, params *PostPortalPlansParams, body PostPortalPlansJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalPlansRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostPortalPlans builder with application/vnd.pgrst.object+json body +func NewPostPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalPlansRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostPortalPlans builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostPortalPlansRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalPlansRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostPortalPlansRequestWithBody generates requests for PostPortalPlans with any type of body +func NewPostPortalPlansRequestWithBody(server string, params *PostPortalPlansParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_plans") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeletePortalUsersRequest generates requests for DeletePortalUsers +func NewDeletePortalUsersRequest(server string, params *DeletePortalUsersParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_users") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_id", runtime.ParamLocationQuery, *params.PortalUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalUserEmail != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_email", runtime.ParamLocationQuery, *params.PortalUserEmail); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SignedUp != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "signed_up", runtime.ParamLocationQuery, *params.SignedUp); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAdmin != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_admin", runtime.ParamLocationQuery, *params.PortalAdmin); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetPortalUsersRequest generates requests for GetPortalUsers +func NewGetPortalUsersRequest(server string, params *GetPortalUsersParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_users") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_id", runtime.ParamLocationQuery, *params.PortalUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalUserEmail != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_email", runtime.ParamLocationQuery, *params.PortalUserEmail); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SignedUp != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "signed_up", runtime.ParamLocationQuery, *params.SignedUp); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAdmin != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_admin", runtime.ParamLocationQuery, *params.PortalAdmin); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchPortalUsersRequest calls the generic PatchPortalUsers builder with application/json body +func NewPatchPortalUsersRequest(server string, params *PatchPortalUsersParams, body PatchPortalUsersJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalUsersRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchPortalUsers builder with application/vnd.pgrst.object+json body +func NewPatchPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalUsersRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchPortalUsers builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchPortalUsersRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchPortalUsersRequestWithBody generates requests for PatchPortalUsers with any type of body +func NewPatchPortalUsersRequestWithBody(server string, params *PatchPortalUsersParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_users") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_id", runtime.ParamLocationQuery, *params.PortalUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalUserEmail != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_user_email", runtime.ParamLocationQuery, *params.PortalUserEmail); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SignedUp != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "signed_up", runtime.ParamLocationQuery, *params.SignedUp); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAdmin != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_admin", runtime.ParamLocationQuery, *params.PortalAdmin); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostPortalUsersRequest calls the generic PostPortalUsers builder with application/json body +func NewPostPortalUsersRequest(server string, params *PostPortalUsersParams, body PostPortalUsersJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalUsersRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostPortalUsers builder with application/vnd.pgrst.object+json body +func NewPostPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalUsersRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostPortalUsers builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostPortalUsersRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostPortalUsersRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostPortalUsersRequestWithBody generates requests for PostPortalUsers with any type of body +func NewPostPortalUsersRequestWithBody(server string, params *PostPortalUsersParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_users") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetPortalWorkersAccountDataRequest generates requests for GetPortalWorkersAccountData +func NewGetPortalWorkersAccountDataRequest(server string, params *GetPortalWorkersAccountDataParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/portal_workers_account_data") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.PortalAccountId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_id", runtime.ParamLocationQuery, *params.PortalAccountId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UserAccountName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "user_account_name", runtime.ParamLocationQuery, *params.UserAccountName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalPlanType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_plan_type", runtime.ParamLocationQuery, *params.PortalPlanType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.BillingType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "billing_type", runtime.ParamLocationQuery, *params.BillingType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PortalAccountUserLimit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "portal_account_user_limit", runtime.ParamLocationQuery, *params.PortalAccountUserLimit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.GcpEntitlementId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "gcp_entitlement_id", runtime.ParamLocationQuery, *params.GcpEntitlementId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.OwnerEmail != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "owner_email", runtime.ParamLocationQuery, *params.OwnerEmail); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.OwnerUserId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "owner_user_id", runtime.ParamLocationQuery, *params.OwnerUserId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewGetRpcArmorRequest generates requests for GetRpcArmor +func NewGetRpcArmorRequest(server string, params *GetRpcArmorParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/armor") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "", runtime.ParamLocationQuery, params.Empty); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewPostRpcArmorRequest calls the generic PostRpcArmor builder with application/json body +func NewPostRpcArmorRequest(server string, params *PostRpcArmorParams, body PostRpcArmorJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcArmorRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostRpcArmorRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostRpcArmor builder with application/vnd.pgrst.object+json body +func NewPostRpcArmorRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcArmorRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostRpcArmorRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostRpcArmor builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostRpcArmorRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcArmorRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostRpcArmorRequestWithBody generates requests for PostRpcArmor with any type of body +func NewPostRpcArmorRequestWithBody(server string, params *PostRpcArmorParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/armor") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetRpcDearmorRequest generates requests for GetRpcDearmor +func NewGetRpcDearmorRequest(server string, params *GetRpcDearmorParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/dearmor") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "", runtime.ParamLocationQuery, params.Empty); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewPostRpcDearmorRequest calls the generic PostRpcDearmor builder with application/json body +func NewPostRpcDearmorRequest(server string, params *PostRpcDearmorParams, body PostRpcDearmorJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcDearmorRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostRpcDearmorRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostRpcDearmor builder with application/vnd.pgrst.object+json body +func NewPostRpcDearmorRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcDearmorRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostRpcDearmorRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostRpcDearmor builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostRpcDearmorRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcDearmorRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostRpcDearmorRequestWithBody generates requests for PostRpcDearmor with any type of body +func NewPostRpcDearmorRequestWithBody(server string, params *PostRpcDearmorParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/dearmor") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetRpcGenRandomUuidRequest generates requests for GetRpcGenRandomUuid +func NewGetRpcGenRandomUuidRequest(server string) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/gen_random_uuid") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewPostRpcGenRandomUuidRequest calls the generic PostRpcGenRandomUuid builder with application/json body +func NewPostRpcGenRandomUuidRequest(server string, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcGenRandomUuidRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostRpcGenRandomUuidRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostRpcGenRandomUuid builder with application/vnd.pgrst.object+json body +func NewPostRpcGenRandomUuidRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcGenRandomUuidRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostRpcGenRandomUuidRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostRpcGenRandomUuid builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostRpcGenRandomUuidRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcGenRandomUuidRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostRpcGenRandomUuidRequestWithBody generates requests for PostRpcGenRandomUuid with any type of body +func NewPostRpcGenRandomUuidRequestWithBody(server string, params *PostRpcGenRandomUuidParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/gen_random_uuid") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetRpcGenSaltRequest generates requests for GetRpcGenSalt +func NewGetRpcGenSaltRequest(server string, params *GetRpcGenSaltParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/gen_salt") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "", runtime.ParamLocationQuery, params.Empty); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewPostRpcGenSaltRequest calls the generic PostRpcGenSalt builder with application/json body +func NewPostRpcGenSaltRequest(server string, params *PostRpcGenSaltParams, body PostRpcGenSaltJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcGenSaltRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostRpcGenSaltRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostRpcGenSalt builder with application/vnd.pgrst.object+json body +func NewPostRpcGenSaltRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcGenSaltRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostRpcGenSaltRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostRpcGenSalt builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostRpcGenSaltRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcGenSaltRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostRpcGenSaltRequestWithBody generates requests for PostRpcGenSalt with any type of body +func NewPostRpcGenSaltRequestWithBody(server string, params *PostRpcGenSaltParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/gen_salt") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetRpcPgpArmorHeadersRequest generates requests for GetRpcPgpArmorHeaders +func NewGetRpcPgpArmorHeadersRequest(server string, params *GetRpcPgpArmorHeadersParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/pgp_armor_headers") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "", runtime.ParamLocationQuery, params.Empty); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewPostRpcPgpArmorHeadersRequest calls the generic PostRpcPgpArmorHeaders builder with application/json body +func NewPostRpcPgpArmorHeadersRequest(server string, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcPgpArmorHeadersRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostRpcPgpArmorHeadersRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostRpcPgpArmorHeaders builder with application/vnd.pgrst.object+json body +func NewPostRpcPgpArmorHeadersRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcPgpArmorHeadersRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostRpcPgpArmorHeadersRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostRpcPgpArmorHeaders builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostRpcPgpArmorHeadersRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcPgpArmorHeadersRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostRpcPgpArmorHeadersRequestWithBody generates requests for PostRpcPgpArmorHeaders with any type of body +func NewPostRpcPgpArmorHeadersRequestWithBody(server string, params *PostRpcPgpArmorHeadersParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/pgp_armor_headers") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetRpcPgpKeyIdRequest generates requests for GetRpcPgpKeyId +func NewGetRpcPgpKeyIdRequest(server string, params *GetRpcPgpKeyIdParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/pgp_key_id") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "", runtime.ParamLocationQuery, params.Empty); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewPostRpcPgpKeyIdRequest calls the generic PostRpcPgpKeyId builder with application/json body +func NewPostRpcPgpKeyIdRequest(server string, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcPgpKeyIdRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostRpcPgpKeyIdRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostRpcPgpKeyId builder with application/vnd.pgrst.object+json body +func NewPostRpcPgpKeyIdRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcPgpKeyIdRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostRpcPgpKeyIdRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostRpcPgpKeyId builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostRpcPgpKeyIdRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostRpcPgpKeyIdRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostRpcPgpKeyIdRequestWithBody generates requests for PostRpcPgpKeyId with any type of body +func NewPostRpcPgpKeyIdRequestWithBody(server string, params *PostRpcPgpKeyIdParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/rpc/pgp_key_id") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeleteServiceEndpointsRequest generates requests for DeleteServiceEndpoints +func NewDeleteServiceEndpointsRequest(server string, params *DeleteServiceEndpointsParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/service_endpoints") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.EndpointId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "endpoint_id", runtime.ParamLocationQuery, *params.EndpointId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_id", runtime.ParamLocationQuery, *params.ServiceId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.EndpointType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "endpoint_type", runtime.ParamLocationQuery, *params.EndpointType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetServiceEndpointsRequest generates requests for GetServiceEndpoints +func NewGetServiceEndpointsRequest(server string, params *GetServiceEndpointsParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/service_endpoints") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.EndpointId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "endpoint_id", runtime.ParamLocationQuery, *params.EndpointId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_id", runtime.ParamLocationQuery, *params.ServiceId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.EndpointType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "endpoint_type", runtime.ParamLocationQuery, *params.EndpointType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchServiceEndpointsRequest calls the generic PatchServiceEndpoints builder with application/json body +func NewPatchServiceEndpointsRequest(server string, params *PatchServiceEndpointsParams, body PatchServiceEndpointsJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchServiceEndpointsRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchServiceEndpoints builder with application/vnd.pgrst.object+json body +func NewPatchServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchServiceEndpointsRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchServiceEndpoints builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchServiceEndpointsRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchServiceEndpointsRequestWithBody generates requests for PatchServiceEndpoints with any type of body +func NewPatchServiceEndpointsRequestWithBody(server string, params *PatchServiceEndpointsParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/service_endpoints") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.EndpointId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "endpoint_id", runtime.ParamLocationQuery, *params.EndpointId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_id", runtime.ParamLocationQuery, *params.ServiceId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.EndpointType != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "endpoint_type", runtime.ParamLocationQuery, *params.EndpointType); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostServiceEndpointsRequest calls the generic PostServiceEndpoints builder with application/json body +func NewPostServiceEndpointsRequest(server string, params *PostServiceEndpointsParams, body PostServiceEndpointsJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostServiceEndpointsRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostServiceEndpoints builder with application/vnd.pgrst.object+json body +func NewPostServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostServiceEndpointsRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostServiceEndpoints builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostServiceEndpointsRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostServiceEndpointsRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostServiceEndpointsRequestWithBody generates requests for PostServiceEndpoints with any type of body +func NewPostServiceEndpointsRequestWithBody(server string, params *PostServiceEndpointsParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/service_endpoints") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeleteServiceFallbacksRequest generates requests for DeleteServiceFallbacks +func NewDeleteServiceFallbacksRequest(server string, params *DeleteServiceFallbacksParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/service_fallbacks") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.ServiceFallbackId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_fallback_id", runtime.ParamLocationQuery, *params.ServiceFallbackId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_id", runtime.ParamLocationQuery, *params.ServiceId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FallbackUrl != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fallback_url", runtime.ParamLocationQuery, *params.FallbackUrl); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetServiceFallbacksRequest generates requests for GetServiceFallbacks +func NewGetServiceFallbacksRequest(server string, params *GetServiceFallbacksParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/service_fallbacks") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.ServiceFallbackId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_fallback_id", runtime.ParamLocationQuery, *params.ServiceFallbackId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_id", runtime.ParamLocationQuery, *params.ServiceId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FallbackUrl != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fallback_url", runtime.ParamLocationQuery, *params.FallbackUrl); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchServiceFallbacksRequest calls the generic PatchServiceFallbacks builder with application/json body +func NewPatchServiceFallbacksRequest(server string, params *PatchServiceFallbacksParams, body PatchServiceFallbacksJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchServiceFallbacksRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchServiceFallbacks builder with application/vnd.pgrst.object+json body +func NewPatchServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchServiceFallbacksRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchServiceFallbacks builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchServiceFallbacksRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchServiceFallbacksRequestWithBody generates requests for PatchServiceFallbacks with any type of body +func NewPatchServiceFallbacksRequestWithBody(server string, params *PatchServiceFallbacksParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/service_fallbacks") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.ServiceFallbackId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_fallback_id", runtime.ParamLocationQuery, *params.ServiceFallbackId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_id", runtime.ParamLocationQuery, *params.ServiceId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FallbackUrl != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fallback_url", runtime.ParamLocationQuery, *params.FallbackUrl); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostServiceFallbacksRequest calls the generic PostServiceFallbacks builder with application/json body +func NewPostServiceFallbacksRequest(server string, params *PostServiceFallbacksParams, body PostServiceFallbacksJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostServiceFallbacksRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostServiceFallbacks builder with application/vnd.pgrst.object+json body +func NewPostServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostServiceFallbacksRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostServiceFallbacks builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostServiceFallbacksRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostServiceFallbacksRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostServiceFallbacksRequestWithBody generates requests for PostServiceFallbacks with any type of body +func NewPostServiceFallbacksRequestWithBody(server string, params *PostServiceFallbacksParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/service_fallbacks") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewDeleteServicesRequest generates requests for DeleteServices +func NewDeleteServicesRequest(server string, params *DeleteServicesParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/services") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.ServiceId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_id", runtime.ParamLocationQuery, *params.ServiceId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_name", runtime.ParamLocationQuery, *params.ServiceName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ComputeUnitsPerRelay != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "compute_units_per_relay", runtime.ParamLocationQuery, *params.ComputeUnitsPerRelay); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceDomains != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_domains", runtime.ParamLocationQuery, *params.ServiceDomains); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceOwnerAddress != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_owner_address", runtime.ParamLocationQuery, *params.ServiceOwnerAddress); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.NetworkId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "network_id", runtime.ParamLocationQuery, *params.NetworkId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Active != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "active", runtime.ParamLocationQuery, *params.Active); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Beta != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "beta", runtime.ParamLocationQuery, *params.Beta); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ComingSoon != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "coming_soon", runtime.ParamLocationQuery, *params.ComingSoon); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.QualityFallbackEnabled != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "quality_fallback_enabled", runtime.ParamLocationQuery, *params.QualityFallbackEnabled); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.HardFallbackEnabled != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "hard_fallback_enabled", runtime.ParamLocationQuery, *params.HardFallbackEnabled); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SvgIcon != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "svg_icon", runtime.ParamLocationQuery, *params.SvgIcon); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PublicEndpointUrl != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "public_endpoint_url", runtime.ParamLocationQuery, *params.PublicEndpointUrl); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.StatusEndpointUrl != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "status_endpoint_url", runtime.ParamLocationQuery, *params.StatusEndpointUrl); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.StatusQuery != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "status_query", runtime.ParamLocationQuery, *params.StatusQuery); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewGetServicesRequest generates requests for GetServices +func NewGetServicesRequest(server string, params *GetServicesParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/services") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.ServiceId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_id", runtime.ParamLocationQuery, *params.ServiceId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_name", runtime.ParamLocationQuery, *params.ServiceName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ComputeUnitsPerRelay != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "compute_units_per_relay", runtime.ParamLocationQuery, *params.ComputeUnitsPerRelay); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceDomains != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_domains", runtime.ParamLocationQuery, *params.ServiceDomains); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceOwnerAddress != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_owner_address", runtime.ParamLocationQuery, *params.ServiceOwnerAddress); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.NetworkId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "network_id", runtime.ParamLocationQuery, *params.NetworkId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Active != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "active", runtime.ParamLocationQuery, *params.Active); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Beta != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "beta", runtime.ParamLocationQuery, *params.Beta); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ComingSoon != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "coming_soon", runtime.ParamLocationQuery, *params.ComingSoon); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.QualityFallbackEnabled != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "quality_fallback_enabled", runtime.ParamLocationQuery, *params.QualityFallbackEnabled); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.HardFallbackEnabled != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "hard_fallback_enabled", runtime.ParamLocationQuery, *params.HardFallbackEnabled); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SvgIcon != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "svg_icon", runtime.ParamLocationQuery, *params.SvgIcon); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PublicEndpointUrl != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "public_endpoint_url", runtime.ParamLocationQuery, *params.PublicEndpointUrl); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.StatusEndpointUrl != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "status_endpoint_url", runtime.ParamLocationQuery, *params.StatusEndpointUrl); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.StatusQuery != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "status_query", runtime.ParamLocationQuery, *params.StatusQuery); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Order != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "order", runtime.ParamLocationQuery, *params.Order); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Offset != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "offset", runtime.ParamLocationQuery, *params.Offset); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + if params != nil { + + if params.Range != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Range", runtime.ParamLocationHeader, *params.Range) + if err != nil { + return nil, err + } + + req.Header.Set("Range", headerParam0) + } + + if params.RangeUnit != nil { + var headerParam1 string + + headerParam1, err = runtime.StyleParamWithLocation("simple", false, "Range-Unit", runtime.ParamLocationHeader, *params.RangeUnit) + if err != nil { + return nil, err + } + + req.Header.Set("Range-Unit", headerParam1) + } + + if params.Prefer != nil { + var headerParam2 string + + headerParam2, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam2) + } + + } + + return req, nil +} + +// NewPatchServicesRequest calls the generic PatchServices builder with application/json body +func NewPatchServicesRequest(server string, params *PatchServicesParams, body PatchServicesJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchServicesRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPatchServicesRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PatchServices builder with application/vnd.pgrst.object+json body +func NewPatchServicesRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchServicesRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPatchServicesRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PatchServices builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPatchServicesRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPatchServicesRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPatchServicesRequestWithBody generates requests for PatchServices with any type of body +func NewPatchServicesRequestWithBody(server string, params *PatchServicesParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/services") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.ServiceId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_id", runtime.ParamLocationQuery, *params.ServiceId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceName != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_name", runtime.ParamLocationQuery, *params.ServiceName); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ComputeUnitsPerRelay != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "compute_units_per_relay", runtime.ParamLocationQuery, *params.ComputeUnitsPerRelay); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceDomains != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_domains", runtime.ParamLocationQuery, *params.ServiceDomains); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ServiceOwnerAddress != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "service_owner_address", runtime.ParamLocationQuery, *params.ServiceOwnerAddress); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.NetworkId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "network_id", runtime.ParamLocationQuery, *params.NetworkId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Active != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "active", runtime.ParamLocationQuery, *params.Active); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Beta != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "beta", runtime.ParamLocationQuery, *params.Beta); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ComingSoon != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "coming_soon", runtime.ParamLocationQuery, *params.ComingSoon); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.QualityFallbackEnabled != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "quality_fallback_enabled", runtime.ParamLocationQuery, *params.QualityFallbackEnabled); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.HardFallbackEnabled != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "hard_fallback_enabled", runtime.ParamLocationQuery, *params.HardFallbackEnabled); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.SvgIcon != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "svg_icon", runtime.ParamLocationQuery, *params.SvgIcon); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PublicEndpointUrl != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "public_endpoint_url", runtime.ParamLocationQuery, *params.PublicEndpointUrl); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.StatusEndpointUrl != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "status_endpoint_url", runtime.ParamLocationQuery, *params.StatusEndpointUrl); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.StatusQuery != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "status_query", runtime.ParamLocationQuery, *params.StatusQuery); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.DeletedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "deleted_at", runtime.ParamLocationQuery, *params.DeletedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CreatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "created_at", runtime.ParamLocationQuery, *params.CreatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.UpdatedAt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "updated_at", runtime.ParamLocationQuery, *params.UpdatedAt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("PATCH", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +// NewPostServicesRequest calls the generic PostServices builder with application/json body +func NewPostServicesRequest(server string, params *PostServicesParams, body PostServicesJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostServicesRequestWithBody(server, params, "application/json", bodyReader) +} + +// NewPostServicesRequestWithApplicationVndPgrstObjectPlusJSONBody calls the generic PostServices builder with application/vnd.pgrst.object+json body +func NewPostServicesRequestWithApplicationVndPgrstObjectPlusJSONBody(server string, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostServicesRequestWithBody(server, params, "application/vnd.pgrst.object+json", bodyReader) +} + +// NewPostServicesRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody calls the generic PostServices builder with application/vnd.pgrst.object+json;nulls=stripped body +func NewPostServicesRequestWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(server string, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewPostServicesRequestWithBody(server, params, "application/vnd.pgrst.object+json;nulls=stripped", bodyReader) +} + +// NewPostServicesRequestWithBody generates requests for PostServices with any type of body +func NewPostServicesRequestWithBody(server string, params *PostServicesParams, contentType string, body io.Reader) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/services") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Select != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "select", runtime.ParamLocationQuery, *params.Select); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("POST", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + if params != nil { + + if params.Prefer != nil { + var headerParam0 string + + headerParam0, err = runtime.StyleParamWithLocation("simple", false, "Prefer", runtime.ParamLocationHeader, *params.Prefer) + if err != nil { + return nil, err + } + + req.Header.Set("Prefer", headerParam0) + } + + } + + return req, nil +} + +func (c *Client) applyEditors(ctx context.Context, req *http.Request, additionalEditors []RequestEditorFn) error { + for _, r := range c.RequestEditors { + if err := r(ctx, req); err != nil { + return err + } + } + for _, r := range additionalEditors { + if err := r(ctx, req); err != nil { + return err + } + } + return nil +} + +// ClientWithResponses builds on ClientInterface to offer response payloads +type ClientWithResponses struct { + ClientInterface +} + +// NewClientWithResponses creates a new ClientWithResponses, which wraps +// Client with return type handling +func NewClientWithResponses(server string, opts ...ClientOption) (*ClientWithResponses, error) { + client, err := NewClient(server, opts...) + if err != nil { + return nil, err + } + return &ClientWithResponses{client}, nil +} + +// WithBaseURL overrides the baseURL. +func WithBaseURL(baseURL string) ClientOption { + return func(c *Client) error { + newBaseURL, err := url.Parse(baseURL) + if err != nil { + return err + } + c.Server = newBaseURL.String() + return nil + } +} + +// ClientWithResponsesInterface is the interface specification for the client with responses above. +type ClientWithResponsesInterface interface { + // GetWithResponse request + GetWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*GetResponse, error) + + // DeleteNetworksWithResponse request + DeleteNetworksWithResponse(ctx context.Context, params *DeleteNetworksParams, reqEditors ...RequestEditorFn) (*DeleteNetworksResponse, error) + + // GetNetworksWithResponse request + GetNetworksWithResponse(ctx context.Context, params *GetNetworksParams, reqEditors ...RequestEditorFn) (*GetNetworksResponse, error) + + // PatchNetworksWithBodyWithResponse request with any body + PatchNetworksWithBodyWithResponse(ctx context.Context, params *PatchNetworksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchNetworksResponse, error) + + PatchNetworksWithResponse(ctx context.Context, params *PatchNetworksParams, body PatchNetworksJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchNetworksResponse, error) + + PatchNetworksWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchNetworksResponse, error) + + PatchNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchNetworksResponse, error) + + // PostNetworksWithBodyWithResponse request with any body + PostNetworksWithBodyWithResponse(ctx context.Context, params *PostNetworksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostNetworksResponse, error) + + PostNetworksWithResponse(ctx context.Context, params *PostNetworksParams, body PostNetworksJSONRequestBody, reqEditors ...RequestEditorFn) (*PostNetworksResponse, error) + + PostNetworksWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostNetworksResponse, error) + + PostNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostNetworksResponse, error) + + // DeleteOrganizationsWithResponse request + DeleteOrganizationsWithResponse(ctx context.Context, params *DeleteOrganizationsParams, reqEditors ...RequestEditorFn) (*DeleteOrganizationsResponse, error) + + // GetOrganizationsWithResponse request + GetOrganizationsWithResponse(ctx context.Context, params *GetOrganizationsParams, reqEditors ...RequestEditorFn) (*GetOrganizationsResponse, error) + + // PatchOrganizationsWithBodyWithResponse request with any body + PatchOrganizationsWithBodyWithResponse(ctx context.Context, params *PatchOrganizationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchOrganizationsResponse, error) + + PatchOrganizationsWithResponse(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchOrganizationsResponse, error) + + PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchOrganizationsResponse, error) + + PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchOrganizationsResponse, error) + + // PostOrganizationsWithBodyWithResponse request with any body + PostOrganizationsWithBodyWithResponse(ctx context.Context, params *PostOrganizationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostOrganizationsResponse, error) + + PostOrganizationsWithResponse(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsJSONRequestBody, reqEditors ...RequestEditorFn) (*PostOrganizationsResponse, error) + + PostOrganizationsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostOrganizationsResponse, error) + + PostOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostOrganizationsResponse, error) + + // DeletePortalAccountRbacWithResponse request + DeletePortalAccountRbacWithResponse(ctx context.Context, params *DeletePortalAccountRbacParams, reqEditors ...RequestEditorFn) (*DeletePortalAccountRbacResponse, error) + + // GetPortalAccountRbacWithResponse request + GetPortalAccountRbacWithResponse(ctx context.Context, params *GetPortalAccountRbacParams, reqEditors ...RequestEditorFn) (*GetPortalAccountRbacResponse, error) + + // PatchPortalAccountRbacWithBodyWithResponse request with any body + PatchPortalAccountRbacWithBodyWithResponse(ctx context.Context, params *PatchPortalAccountRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalAccountRbacResponse, error) + + PatchPortalAccountRbacWithResponse(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountRbacResponse, error) + + PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountRbacResponse, error) + + PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountRbacResponse, error) + + // PostPortalAccountRbacWithBodyWithResponse request with any body + PostPortalAccountRbacWithBodyWithResponse(ctx context.Context, params *PostPortalAccountRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalAccountRbacResponse, error) + + PostPortalAccountRbacWithResponse(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountRbacResponse, error) + + PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountRbacResponse, error) + + PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountRbacResponse, error) + + // DeletePortalAccountsWithResponse request + DeletePortalAccountsWithResponse(ctx context.Context, params *DeletePortalAccountsParams, reqEditors ...RequestEditorFn) (*DeletePortalAccountsResponse, error) + + // GetPortalAccountsWithResponse request + GetPortalAccountsWithResponse(ctx context.Context, params *GetPortalAccountsParams, reqEditors ...RequestEditorFn) (*GetPortalAccountsResponse, error) + + // PatchPortalAccountsWithBodyWithResponse request with any body + PatchPortalAccountsWithBodyWithResponse(ctx context.Context, params *PatchPortalAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalAccountsResponse, error) + + PatchPortalAccountsWithResponse(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountsResponse, error) + + PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountsResponse, error) + + PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountsResponse, error) + + // PostPortalAccountsWithBodyWithResponse request with any body + PostPortalAccountsWithBodyWithResponse(ctx context.Context, params *PostPortalAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalAccountsResponse, error) + + PostPortalAccountsWithResponse(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountsResponse, error) + + PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountsResponse, error) + + PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountsResponse, error) + + // DeletePortalApplicationRbacWithResponse request + DeletePortalApplicationRbacWithResponse(ctx context.Context, params *DeletePortalApplicationRbacParams, reqEditors ...RequestEditorFn) (*DeletePortalApplicationRbacResponse, error) + + // GetPortalApplicationRbacWithResponse request + GetPortalApplicationRbacWithResponse(ctx context.Context, params *GetPortalApplicationRbacParams, reqEditors ...RequestEditorFn) (*GetPortalApplicationRbacResponse, error) + + // PatchPortalApplicationRbacWithBodyWithResponse request with any body + PatchPortalApplicationRbacWithBodyWithResponse(ctx context.Context, params *PatchPortalApplicationRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalApplicationRbacResponse, error) + + PatchPortalApplicationRbacWithResponse(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationRbacResponse, error) + + PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationRbacResponse, error) + + PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationRbacResponse, error) + + // PostPortalApplicationRbacWithBodyWithResponse request with any body + PostPortalApplicationRbacWithBodyWithResponse(ctx context.Context, params *PostPortalApplicationRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalApplicationRbacResponse, error) + + PostPortalApplicationRbacWithResponse(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationRbacResponse, error) + + PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationRbacResponse, error) + + PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationRbacResponse, error) + + // DeletePortalApplicationsWithResponse request + DeletePortalApplicationsWithResponse(ctx context.Context, params *DeletePortalApplicationsParams, reqEditors ...RequestEditorFn) (*DeletePortalApplicationsResponse, error) + + // GetPortalApplicationsWithResponse request + GetPortalApplicationsWithResponse(ctx context.Context, params *GetPortalApplicationsParams, reqEditors ...RequestEditorFn) (*GetPortalApplicationsResponse, error) + + // PatchPortalApplicationsWithBodyWithResponse request with any body + PatchPortalApplicationsWithBodyWithResponse(ctx context.Context, params *PatchPortalApplicationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalApplicationsResponse, error) + + PatchPortalApplicationsWithResponse(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationsResponse, error) + + PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationsResponse, error) + + PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationsResponse, error) + + // PostPortalApplicationsWithBodyWithResponse request with any body + PostPortalApplicationsWithBodyWithResponse(ctx context.Context, params *PostPortalApplicationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalApplicationsResponse, error) + + PostPortalApplicationsWithResponse(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationsResponse, error) + + PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationsResponse, error) + + PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationsResponse, error) + + // DeletePortalPlansWithResponse request + DeletePortalPlansWithResponse(ctx context.Context, params *DeletePortalPlansParams, reqEditors ...RequestEditorFn) (*DeletePortalPlansResponse, error) + + // GetPortalPlansWithResponse request + GetPortalPlansWithResponse(ctx context.Context, params *GetPortalPlansParams, reqEditors ...RequestEditorFn) (*GetPortalPlansResponse, error) + + // PatchPortalPlansWithBodyWithResponse request with any body + PatchPortalPlansWithBodyWithResponse(ctx context.Context, params *PatchPortalPlansParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalPlansResponse, error) + + PatchPortalPlansWithResponse(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalPlansResponse, error) + + PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalPlansResponse, error) + + PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalPlansResponse, error) + + // PostPortalPlansWithBodyWithResponse request with any body + PostPortalPlansWithBodyWithResponse(ctx context.Context, params *PostPortalPlansParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalPlansResponse, error) + + PostPortalPlansWithResponse(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalPlansResponse, error) + + PostPortalPlansWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalPlansResponse, error) + + PostPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalPlansResponse, error) + + // DeletePortalUsersWithResponse request + DeletePortalUsersWithResponse(ctx context.Context, params *DeletePortalUsersParams, reqEditors ...RequestEditorFn) (*DeletePortalUsersResponse, error) + + // GetPortalUsersWithResponse request + GetPortalUsersWithResponse(ctx context.Context, params *GetPortalUsersParams, reqEditors ...RequestEditorFn) (*GetPortalUsersResponse, error) + + // PatchPortalUsersWithBodyWithResponse request with any body + PatchPortalUsersWithBodyWithResponse(ctx context.Context, params *PatchPortalUsersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalUsersResponse, error) + + PatchPortalUsersWithResponse(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalUsersResponse, error) + + PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalUsersResponse, error) + + PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalUsersResponse, error) + + // PostPortalUsersWithBodyWithResponse request with any body + PostPortalUsersWithBodyWithResponse(ctx context.Context, params *PostPortalUsersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalUsersResponse, error) + + PostPortalUsersWithResponse(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalUsersResponse, error) + + PostPortalUsersWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalUsersResponse, error) + + PostPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalUsersResponse, error) + + // GetPortalWorkersAccountDataWithResponse request + GetPortalWorkersAccountDataWithResponse(ctx context.Context, params *GetPortalWorkersAccountDataParams, reqEditors ...RequestEditorFn) (*GetPortalWorkersAccountDataResponse, error) + + // GetRpcArmorWithResponse request + GetRpcArmorWithResponse(ctx context.Context, params *GetRpcArmorParams, reqEditors ...RequestEditorFn) (*GetRpcArmorResponse, error) + + // PostRpcArmorWithBodyWithResponse request with any body + PostRpcArmorWithBodyWithResponse(ctx context.Context, params *PostRpcArmorParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcArmorResponse, error) + + PostRpcArmorWithResponse(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcArmorResponse, error) + + PostRpcArmorWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcArmorResponse, error) + + PostRpcArmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcArmorResponse, error) + + // GetRpcDearmorWithResponse request + GetRpcDearmorWithResponse(ctx context.Context, params *GetRpcDearmorParams, reqEditors ...RequestEditorFn) (*GetRpcDearmorResponse, error) + + // PostRpcDearmorWithBodyWithResponse request with any body + PostRpcDearmorWithBodyWithResponse(ctx context.Context, params *PostRpcDearmorParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcDearmorResponse, error) + + PostRpcDearmorWithResponse(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcDearmorResponse, error) + + PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcDearmorResponse, error) + + PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcDearmorResponse, error) + + // GetRpcGenRandomUuidWithResponse request + GetRpcGenRandomUuidWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*GetRpcGenRandomUuidResponse, error) + + // PostRpcGenRandomUuidWithBodyWithResponse request with any body + PostRpcGenRandomUuidWithBodyWithResponse(ctx context.Context, params *PostRpcGenRandomUuidParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcGenRandomUuidResponse, error) + + PostRpcGenRandomUuidWithResponse(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenRandomUuidResponse, error) + + PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenRandomUuidResponse, error) + + PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenRandomUuidResponse, error) + + // GetRpcGenSaltWithResponse request + GetRpcGenSaltWithResponse(ctx context.Context, params *GetRpcGenSaltParams, reqEditors ...RequestEditorFn) (*GetRpcGenSaltResponse, error) + + // PostRpcGenSaltWithBodyWithResponse request with any body + PostRpcGenSaltWithBodyWithResponse(ctx context.Context, params *PostRpcGenSaltParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcGenSaltResponse, error) + + PostRpcGenSaltWithResponse(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenSaltResponse, error) + + PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenSaltResponse, error) + + PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenSaltResponse, error) + + // GetRpcPgpArmorHeadersWithResponse request + GetRpcPgpArmorHeadersWithResponse(ctx context.Context, params *GetRpcPgpArmorHeadersParams, reqEditors ...RequestEditorFn) (*GetRpcPgpArmorHeadersResponse, error) + + // PostRpcPgpArmorHeadersWithBodyWithResponse request with any body + PostRpcPgpArmorHeadersWithBodyWithResponse(ctx context.Context, params *PostRpcPgpArmorHeadersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcPgpArmorHeadersResponse, error) + + PostRpcPgpArmorHeadersWithResponse(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpArmorHeadersResponse, error) + + PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpArmorHeadersResponse, error) + + PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpArmorHeadersResponse, error) + + // GetRpcPgpKeyIdWithResponse request + GetRpcPgpKeyIdWithResponse(ctx context.Context, params *GetRpcPgpKeyIdParams, reqEditors ...RequestEditorFn) (*GetRpcPgpKeyIdResponse, error) + + // PostRpcPgpKeyIdWithBodyWithResponse request with any body + PostRpcPgpKeyIdWithBodyWithResponse(ctx context.Context, params *PostRpcPgpKeyIdParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcPgpKeyIdResponse, error) + + PostRpcPgpKeyIdWithResponse(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpKeyIdResponse, error) + + PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpKeyIdResponse, error) + + PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpKeyIdResponse, error) + + // DeleteServiceEndpointsWithResponse request + DeleteServiceEndpointsWithResponse(ctx context.Context, params *DeleteServiceEndpointsParams, reqEditors ...RequestEditorFn) (*DeleteServiceEndpointsResponse, error) + + // GetServiceEndpointsWithResponse request + GetServiceEndpointsWithResponse(ctx context.Context, params *GetServiceEndpointsParams, reqEditors ...RequestEditorFn) (*GetServiceEndpointsResponse, error) + + // PatchServiceEndpointsWithBodyWithResponse request with any body + PatchServiceEndpointsWithBodyWithResponse(ctx context.Context, params *PatchServiceEndpointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchServiceEndpointsResponse, error) + + PatchServiceEndpointsWithResponse(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceEndpointsResponse, error) + + PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceEndpointsResponse, error) + + PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceEndpointsResponse, error) + + // PostServiceEndpointsWithBodyWithResponse request with any body + PostServiceEndpointsWithBodyWithResponse(ctx context.Context, params *PostServiceEndpointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostServiceEndpointsResponse, error) + + PostServiceEndpointsWithResponse(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServiceEndpointsResponse, error) + + PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServiceEndpointsResponse, error) + + PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostServiceEndpointsResponse, error) + + // DeleteServiceFallbacksWithResponse request + DeleteServiceFallbacksWithResponse(ctx context.Context, params *DeleteServiceFallbacksParams, reqEditors ...RequestEditorFn) (*DeleteServiceFallbacksResponse, error) + + // GetServiceFallbacksWithResponse request + GetServiceFallbacksWithResponse(ctx context.Context, params *GetServiceFallbacksParams, reqEditors ...RequestEditorFn) (*GetServiceFallbacksResponse, error) + + // PatchServiceFallbacksWithBodyWithResponse request with any body + PatchServiceFallbacksWithBodyWithResponse(ctx context.Context, params *PatchServiceFallbacksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchServiceFallbacksResponse, error) + + PatchServiceFallbacksWithResponse(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceFallbacksResponse, error) + + PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceFallbacksResponse, error) + + PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceFallbacksResponse, error) + + // PostServiceFallbacksWithBodyWithResponse request with any body + PostServiceFallbacksWithBodyWithResponse(ctx context.Context, params *PostServiceFallbacksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostServiceFallbacksResponse, error) + + PostServiceFallbacksWithResponse(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServiceFallbacksResponse, error) + + PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServiceFallbacksResponse, error) + + PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostServiceFallbacksResponse, error) + + // DeleteServicesWithResponse request + DeleteServicesWithResponse(ctx context.Context, params *DeleteServicesParams, reqEditors ...RequestEditorFn) (*DeleteServicesResponse, error) + + // GetServicesWithResponse request + GetServicesWithResponse(ctx context.Context, params *GetServicesParams, reqEditors ...RequestEditorFn) (*GetServicesResponse, error) + + // PatchServicesWithBodyWithResponse request with any body + PatchServicesWithBodyWithResponse(ctx context.Context, params *PatchServicesParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchServicesResponse, error) + + PatchServicesWithResponse(ctx context.Context, params *PatchServicesParams, body PatchServicesJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServicesResponse, error) + + PatchServicesWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServicesResponse, error) + + PatchServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchServicesResponse, error) + + // PostServicesWithBodyWithResponse request with any body + PostServicesWithBodyWithResponse(ctx context.Context, params *PostServicesParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostServicesResponse, error) + + PostServicesWithResponse(ctx context.Context, params *PostServicesParams, body PostServicesJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServicesResponse, error) + + PostServicesWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServicesResponse, error) + + PostServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostServicesResponse, error) +} + +type GetResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r GetResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeleteNetworksResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeleteNetworksResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeleteNetworksResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetNetworksResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]Networks + ApplicationvndPgrstObjectJSON200 *[]Networks + ApplicationvndPgrstObjectJSONNullsStripped200 *[]Networks +} + +// Status returns HTTPResponse.Status +func (r GetNetworksResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetNetworksResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchNetworksResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchNetworksResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchNetworksResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostNetworksResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostNetworksResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostNetworksResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeleteOrganizationsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeleteOrganizationsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeleteOrganizationsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetOrganizationsResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]Organizations + ApplicationvndPgrstObjectJSON200 *[]Organizations + ApplicationvndPgrstObjectJSONNullsStripped200 *[]Organizations +} + +// Status returns HTTPResponse.Status +func (r GetOrganizationsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetOrganizationsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchOrganizationsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchOrganizationsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchOrganizationsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostOrganizationsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostOrganizationsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostOrganizationsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeletePortalAccountRbacResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeletePortalAccountRbacResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeletePortalAccountRbacResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetPortalAccountRbacResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]PortalAccountRbac + ApplicationvndPgrstObjectJSON200 *[]PortalAccountRbac + ApplicationvndPgrstObjectJSONNullsStripped200 *[]PortalAccountRbac +} + +// Status returns HTTPResponse.Status +func (r GetPortalAccountRbacResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetPortalAccountRbacResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchPortalAccountRbacResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchPortalAccountRbacResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchPortalAccountRbacResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostPortalAccountRbacResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostPortalAccountRbacResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostPortalAccountRbacResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeletePortalAccountsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeletePortalAccountsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeletePortalAccountsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetPortalAccountsResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]PortalAccounts + ApplicationvndPgrstObjectJSON200 *[]PortalAccounts + ApplicationvndPgrstObjectJSONNullsStripped200 *[]PortalAccounts +} + +// Status returns HTTPResponse.Status +func (r GetPortalAccountsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetPortalAccountsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchPortalAccountsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchPortalAccountsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchPortalAccountsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostPortalAccountsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostPortalAccountsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostPortalAccountsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeletePortalApplicationRbacResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeletePortalApplicationRbacResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeletePortalApplicationRbacResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetPortalApplicationRbacResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]PortalApplicationRbac + ApplicationvndPgrstObjectJSON200 *[]PortalApplicationRbac + ApplicationvndPgrstObjectJSONNullsStripped200 *[]PortalApplicationRbac +} + +// Status returns HTTPResponse.Status +func (r GetPortalApplicationRbacResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetPortalApplicationRbacResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchPortalApplicationRbacResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchPortalApplicationRbacResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchPortalApplicationRbacResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostPortalApplicationRbacResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostPortalApplicationRbacResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostPortalApplicationRbacResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeletePortalApplicationsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeletePortalApplicationsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeletePortalApplicationsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetPortalApplicationsResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]PortalApplications + ApplicationvndPgrstObjectJSON200 *[]PortalApplications + ApplicationvndPgrstObjectJSONNullsStripped200 *[]PortalApplications +} + +// Status returns HTTPResponse.Status +func (r GetPortalApplicationsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetPortalApplicationsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchPortalApplicationsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchPortalApplicationsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchPortalApplicationsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostPortalApplicationsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostPortalApplicationsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostPortalApplicationsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeletePortalPlansResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeletePortalPlansResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeletePortalPlansResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetPortalPlansResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]PortalPlans + ApplicationvndPgrstObjectJSON200 *[]PortalPlans + ApplicationvndPgrstObjectJSONNullsStripped200 *[]PortalPlans +} + +// Status returns HTTPResponse.Status +func (r GetPortalPlansResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetPortalPlansResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchPortalPlansResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchPortalPlansResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchPortalPlansResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostPortalPlansResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostPortalPlansResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostPortalPlansResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeletePortalUsersResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeletePortalUsersResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeletePortalUsersResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetPortalUsersResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]PortalUsers + ApplicationvndPgrstObjectJSON200 *[]PortalUsers + ApplicationvndPgrstObjectJSONNullsStripped200 *[]PortalUsers +} + +// Status returns HTTPResponse.Status +func (r GetPortalUsersResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetPortalUsersResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchPortalUsersResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchPortalUsersResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchPortalUsersResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostPortalUsersResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostPortalUsersResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostPortalUsersResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetPortalWorkersAccountDataResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]PortalWorkersAccountData + ApplicationvndPgrstObjectJSON200 *[]PortalWorkersAccountData + ApplicationvndPgrstObjectJSONNullsStripped200 *[]PortalWorkersAccountData +} + +// Status returns HTTPResponse.Status +func (r GetPortalWorkersAccountDataResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetPortalWorkersAccountDataResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetRpcArmorResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r GetRpcArmorResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetRpcArmorResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostRpcArmorResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostRpcArmorResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostRpcArmorResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetRpcDearmorResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r GetRpcDearmorResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetRpcDearmorResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostRpcDearmorResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostRpcDearmorResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostRpcDearmorResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetRpcGenRandomUuidResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r GetRpcGenRandomUuidResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetRpcGenRandomUuidResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostRpcGenRandomUuidResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostRpcGenRandomUuidResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostRpcGenRandomUuidResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetRpcGenSaltResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r GetRpcGenSaltResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetRpcGenSaltResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostRpcGenSaltResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostRpcGenSaltResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostRpcGenSaltResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetRpcPgpArmorHeadersResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r GetRpcPgpArmorHeadersResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetRpcPgpArmorHeadersResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostRpcPgpArmorHeadersResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostRpcPgpArmorHeadersResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostRpcPgpArmorHeadersResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetRpcPgpKeyIdResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r GetRpcPgpKeyIdResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetRpcPgpKeyIdResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostRpcPgpKeyIdResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostRpcPgpKeyIdResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostRpcPgpKeyIdResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeleteServiceEndpointsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeleteServiceEndpointsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeleteServiceEndpointsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetServiceEndpointsResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]ServiceEndpoints + ApplicationvndPgrstObjectJSON200 *[]ServiceEndpoints + ApplicationvndPgrstObjectJSONNullsStripped200 *[]ServiceEndpoints +} + +// Status returns HTTPResponse.Status +func (r GetServiceEndpointsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetServiceEndpointsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchServiceEndpointsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchServiceEndpointsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchServiceEndpointsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostServiceEndpointsResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostServiceEndpointsResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostServiceEndpointsResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeleteServiceFallbacksResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeleteServiceFallbacksResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeleteServiceFallbacksResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetServiceFallbacksResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]ServiceFallbacks + ApplicationvndPgrstObjectJSON200 *[]ServiceFallbacks + ApplicationvndPgrstObjectJSONNullsStripped200 *[]ServiceFallbacks +} + +// Status returns HTTPResponse.Status +func (r GetServiceFallbacksResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetServiceFallbacksResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchServiceFallbacksResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchServiceFallbacksResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchServiceFallbacksResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostServiceFallbacksResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostServiceFallbacksResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostServiceFallbacksResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type DeleteServicesResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r DeleteServicesResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r DeleteServicesResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetServicesResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]Services + ApplicationvndPgrstObjectJSON200 *[]Services + ApplicationvndPgrstObjectJSONNullsStripped200 *[]Services +} + +// Status returns HTTPResponse.Status +func (r GetServicesResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetServicesResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PatchServicesResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PatchServicesResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PatchServicesResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type PostServicesResponse struct { + Body []byte + HTTPResponse *http.Response +} + +// Status returns HTTPResponse.Status +func (r PostServicesResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r PostServicesResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +// GetWithResponse request returning *GetResponse +func (c *ClientWithResponses) GetWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*GetResponse, error) { + rsp, err := c.Get(ctx, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetResponse(rsp) +} + +// DeleteNetworksWithResponse request returning *DeleteNetworksResponse +func (c *ClientWithResponses) DeleteNetworksWithResponse(ctx context.Context, params *DeleteNetworksParams, reqEditors ...RequestEditorFn) (*DeleteNetworksResponse, error) { + rsp, err := c.DeleteNetworks(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeleteNetworksResponse(rsp) +} + +// GetNetworksWithResponse request returning *GetNetworksResponse +func (c *ClientWithResponses) GetNetworksWithResponse(ctx context.Context, params *GetNetworksParams, reqEditors ...RequestEditorFn) (*GetNetworksResponse, error) { + rsp, err := c.GetNetworks(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetNetworksResponse(rsp) +} + +// PatchNetworksWithBodyWithResponse request with arbitrary body returning *PatchNetworksResponse +func (c *ClientWithResponses) PatchNetworksWithBodyWithResponse(ctx context.Context, params *PatchNetworksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchNetworksResponse, error) { + rsp, err := c.PatchNetworksWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchNetworksResponse(rsp) +} + +func (c *ClientWithResponses) PatchNetworksWithResponse(ctx context.Context, params *PatchNetworksParams, body PatchNetworksJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchNetworksResponse, error) { + rsp, err := c.PatchNetworks(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchNetworksResponse(rsp) +} + +func (c *ClientWithResponses) PatchNetworksWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchNetworksResponse, error) { + rsp, err := c.PatchNetworksWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchNetworksResponse(rsp) +} + +func (c *ClientWithResponses) PatchNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchNetworksParams, body PatchNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchNetworksResponse, error) { + rsp, err := c.PatchNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchNetworksResponse(rsp) +} + +// PostNetworksWithBodyWithResponse request with arbitrary body returning *PostNetworksResponse +func (c *ClientWithResponses) PostNetworksWithBodyWithResponse(ctx context.Context, params *PostNetworksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostNetworksResponse, error) { + rsp, err := c.PostNetworksWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostNetworksResponse(rsp) +} + +func (c *ClientWithResponses) PostNetworksWithResponse(ctx context.Context, params *PostNetworksParams, body PostNetworksJSONRequestBody, reqEditors ...RequestEditorFn) (*PostNetworksResponse, error) { + rsp, err := c.PostNetworks(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostNetworksResponse(rsp) +} + +func (c *ClientWithResponses) PostNetworksWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostNetworksResponse, error) { + rsp, err := c.PostNetworksWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostNetworksResponse(rsp) +} + +func (c *ClientWithResponses) PostNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostNetworksParams, body PostNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostNetworksResponse, error) { + rsp, err := c.PostNetworksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostNetworksResponse(rsp) +} + +// DeleteOrganizationsWithResponse request returning *DeleteOrganizationsResponse +func (c *ClientWithResponses) DeleteOrganizationsWithResponse(ctx context.Context, params *DeleteOrganizationsParams, reqEditors ...RequestEditorFn) (*DeleteOrganizationsResponse, error) { + rsp, err := c.DeleteOrganizations(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeleteOrganizationsResponse(rsp) +} + +// GetOrganizationsWithResponse request returning *GetOrganizationsResponse +func (c *ClientWithResponses) GetOrganizationsWithResponse(ctx context.Context, params *GetOrganizationsParams, reqEditors ...RequestEditorFn) (*GetOrganizationsResponse, error) { + rsp, err := c.GetOrganizations(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetOrganizationsResponse(rsp) +} + +// PatchOrganizationsWithBodyWithResponse request with arbitrary body returning *PatchOrganizationsResponse +func (c *ClientWithResponses) PatchOrganizationsWithBodyWithResponse(ctx context.Context, params *PatchOrganizationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchOrganizationsResponse, error) { + rsp, err := c.PatchOrganizationsWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchOrganizationsResponse(rsp) +} + +func (c *ClientWithResponses) PatchOrganizationsWithResponse(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchOrganizationsResponse, error) { + rsp, err := c.PatchOrganizations(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchOrganizationsResponse(rsp) +} + +func (c *ClientWithResponses) PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchOrganizationsResponse, error) { + rsp, err := c.PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchOrganizationsResponse(rsp) +} + +func (c *ClientWithResponses) PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchOrganizationsParams, body PatchOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchOrganizationsResponse, error) { + rsp, err := c.PatchOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchOrganizationsResponse(rsp) +} + +// PostOrganizationsWithBodyWithResponse request with arbitrary body returning *PostOrganizationsResponse +func (c *ClientWithResponses) PostOrganizationsWithBodyWithResponse(ctx context.Context, params *PostOrganizationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostOrganizationsResponse, error) { + rsp, err := c.PostOrganizationsWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostOrganizationsResponse(rsp) +} + +func (c *ClientWithResponses) PostOrganizationsWithResponse(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsJSONRequestBody, reqEditors ...RequestEditorFn) (*PostOrganizationsResponse, error) { + rsp, err := c.PostOrganizations(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostOrganizationsResponse(rsp) +} + +func (c *ClientWithResponses) PostOrganizationsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostOrganizationsResponse, error) { + rsp, err := c.PostOrganizationsWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostOrganizationsResponse(rsp) +} + +func (c *ClientWithResponses) PostOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostOrganizationsParams, body PostOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostOrganizationsResponse, error) { + rsp, err := c.PostOrganizationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostOrganizationsResponse(rsp) +} + +// DeletePortalAccountRbacWithResponse request returning *DeletePortalAccountRbacResponse +func (c *ClientWithResponses) DeletePortalAccountRbacWithResponse(ctx context.Context, params *DeletePortalAccountRbacParams, reqEditors ...RequestEditorFn) (*DeletePortalAccountRbacResponse, error) { + rsp, err := c.DeletePortalAccountRbac(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeletePortalAccountRbacResponse(rsp) +} + +// GetPortalAccountRbacWithResponse request returning *GetPortalAccountRbacResponse +func (c *ClientWithResponses) GetPortalAccountRbacWithResponse(ctx context.Context, params *GetPortalAccountRbacParams, reqEditors ...RequestEditorFn) (*GetPortalAccountRbacResponse, error) { + rsp, err := c.GetPortalAccountRbac(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetPortalAccountRbacResponse(rsp) +} + +// PatchPortalAccountRbacWithBodyWithResponse request with arbitrary body returning *PatchPortalAccountRbacResponse +func (c *ClientWithResponses) PatchPortalAccountRbacWithBodyWithResponse(ctx context.Context, params *PatchPortalAccountRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalAccountRbacResponse, error) { + rsp, err := c.PatchPortalAccountRbacWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalAccountRbacResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalAccountRbacWithResponse(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountRbacResponse, error) { + rsp, err := c.PatchPortalAccountRbac(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalAccountRbacResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountRbacResponse, error) { + rsp, err := c.PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalAccountRbacResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalAccountRbacParams, body PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountRbacResponse, error) { + rsp, err := c.PatchPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalAccountRbacResponse(rsp) +} + +// PostPortalAccountRbacWithBodyWithResponse request with arbitrary body returning *PostPortalAccountRbacResponse +func (c *ClientWithResponses) PostPortalAccountRbacWithBodyWithResponse(ctx context.Context, params *PostPortalAccountRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalAccountRbacResponse, error) { + rsp, err := c.PostPortalAccountRbacWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalAccountRbacResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalAccountRbacWithResponse(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountRbacResponse, error) { + rsp, err := c.PostPortalAccountRbac(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalAccountRbacResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountRbacResponse, error) { + rsp, err := c.PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalAccountRbacResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalAccountRbacParams, body PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountRbacResponse, error) { + rsp, err := c.PostPortalAccountRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalAccountRbacResponse(rsp) +} + +// DeletePortalAccountsWithResponse request returning *DeletePortalAccountsResponse +func (c *ClientWithResponses) DeletePortalAccountsWithResponse(ctx context.Context, params *DeletePortalAccountsParams, reqEditors ...RequestEditorFn) (*DeletePortalAccountsResponse, error) { + rsp, err := c.DeletePortalAccounts(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeletePortalAccountsResponse(rsp) +} + +// GetPortalAccountsWithResponse request returning *GetPortalAccountsResponse +func (c *ClientWithResponses) GetPortalAccountsWithResponse(ctx context.Context, params *GetPortalAccountsParams, reqEditors ...RequestEditorFn) (*GetPortalAccountsResponse, error) { + rsp, err := c.GetPortalAccounts(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetPortalAccountsResponse(rsp) +} + +// PatchPortalAccountsWithBodyWithResponse request with arbitrary body returning *PatchPortalAccountsResponse +func (c *ClientWithResponses) PatchPortalAccountsWithBodyWithResponse(ctx context.Context, params *PatchPortalAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalAccountsResponse, error) { + rsp, err := c.PatchPortalAccountsWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalAccountsResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalAccountsWithResponse(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountsResponse, error) { + rsp, err := c.PatchPortalAccounts(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalAccountsResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountsResponse, error) { + rsp, err := c.PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalAccountsResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalAccountsParams, body PatchPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalAccountsResponse, error) { + rsp, err := c.PatchPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalAccountsResponse(rsp) +} + +// PostPortalAccountsWithBodyWithResponse request with arbitrary body returning *PostPortalAccountsResponse +func (c *ClientWithResponses) PostPortalAccountsWithBodyWithResponse(ctx context.Context, params *PostPortalAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalAccountsResponse, error) { + rsp, err := c.PostPortalAccountsWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalAccountsResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalAccountsWithResponse(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountsResponse, error) { + rsp, err := c.PostPortalAccounts(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalAccountsResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountsResponse, error) { + rsp, err := c.PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalAccountsResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalAccountsParams, body PostPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalAccountsResponse, error) { + rsp, err := c.PostPortalAccountsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalAccountsResponse(rsp) +} + +// DeletePortalApplicationRbacWithResponse request returning *DeletePortalApplicationRbacResponse +func (c *ClientWithResponses) DeletePortalApplicationRbacWithResponse(ctx context.Context, params *DeletePortalApplicationRbacParams, reqEditors ...RequestEditorFn) (*DeletePortalApplicationRbacResponse, error) { + rsp, err := c.DeletePortalApplicationRbac(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeletePortalApplicationRbacResponse(rsp) +} + +// GetPortalApplicationRbacWithResponse request returning *GetPortalApplicationRbacResponse +func (c *ClientWithResponses) GetPortalApplicationRbacWithResponse(ctx context.Context, params *GetPortalApplicationRbacParams, reqEditors ...RequestEditorFn) (*GetPortalApplicationRbacResponse, error) { + rsp, err := c.GetPortalApplicationRbac(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetPortalApplicationRbacResponse(rsp) +} + +// PatchPortalApplicationRbacWithBodyWithResponse request with arbitrary body returning *PatchPortalApplicationRbacResponse +func (c *ClientWithResponses) PatchPortalApplicationRbacWithBodyWithResponse(ctx context.Context, params *PatchPortalApplicationRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalApplicationRbacResponse, error) { + rsp, err := c.PatchPortalApplicationRbacWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalApplicationRbacResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalApplicationRbacWithResponse(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationRbacResponse, error) { + rsp, err := c.PatchPortalApplicationRbac(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalApplicationRbacResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationRbacResponse, error) { + rsp, err := c.PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalApplicationRbacResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalApplicationRbacParams, body PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationRbacResponse, error) { + rsp, err := c.PatchPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalApplicationRbacResponse(rsp) +} + +// PostPortalApplicationRbacWithBodyWithResponse request with arbitrary body returning *PostPortalApplicationRbacResponse +func (c *ClientWithResponses) PostPortalApplicationRbacWithBodyWithResponse(ctx context.Context, params *PostPortalApplicationRbacParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalApplicationRbacResponse, error) { + rsp, err := c.PostPortalApplicationRbacWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalApplicationRbacResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalApplicationRbacWithResponse(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationRbacResponse, error) { + rsp, err := c.PostPortalApplicationRbac(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalApplicationRbacResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationRbacResponse, error) { + rsp, err := c.PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalApplicationRbacResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalApplicationRbacParams, body PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationRbacResponse, error) { + rsp, err := c.PostPortalApplicationRbacWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalApplicationRbacResponse(rsp) +} + +// DeletePortalApplicationsWithResponse request returning *DeletePortalApplicationsResponse +func (c *ClientWithResponses) DeletePortalApplicationsWithResponse(ctx context.Context, params *DeletePortalApplicationsParams, reqEditors ...RequestEditorFn) (*DeletePortalApplicationsResponse, error) { + rsp, err := c.DeletePortalApplications(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeletePortalApplicationsResponse(rsp) +} + +// GetPortalApplicationsWithResponse request returning *GetPortalApplicationsResponse +func (c *ClientWithResponses) GetPortalApplicationsWithResponse(ctx context.Context, params *GetPortalApplicationsParams, reqEditors ...RequestEditorFn) (*GetPortalApplicationsResponse, error) { + rsp, err := c.GetPortalApplications(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetPortalApplicationsResponse(rsp) +} + +// PatchPortalApplicationsWithBodyWithResponse request with arbitrary body returning *PatchPortalApplicationsResponse +func (c *ClientWithResponses) PatchPortalApplicationsWithBodyWithResponse(ctx context.Context, params *PatchPortalApplicationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalApplicationsResponse, error) { + rsp, err := c.PatchPortalApplicationsWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalApplicationsResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalApplicationsWithResponse(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationsResponse, error) { + rsp, err := c.PatchPortalApplications(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalApplicationsResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationsResponse, error) { + rsp, err := c.PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalApplicationsResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalApplicationsParams, body PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalApplicationsResponse, error) { + rsp, err := c.PatchPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalApplicationsResponse(rsp) +} + +// PostPortalApplicationsWithBodyWithResponse request with arbitrary body returning *PostPortalApplicationsResponse +func (c *ClientWithResponses) PostPortalApplicationsWithBodyWithResponse(ctx context.Context, params *PostPortalApplicationsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalApplicationsResponse, error) { + rsp, err := c.PostPortalApplicationsWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalApplicationsResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalApplicationsWithResponse(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationsResponse, error) { + rsp, err := c.PostPortalApplications(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalApplicationsResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationsResponse, error) { + rsp, err := c.PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalApplicationsResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalApplicationsParams, body PostPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalApplicationsResponse, error) { + rsp, err := c.PostPortalApplicationsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalApplicationsResponse(rsp) +} + +// DeletePortalPlansWithResponse request returning *DeletePortalPlansResponse +func (c *ClientWithResponses) DeletePortalPlansWithResponse(ctx context.Context, params *DeletePortalPlansParams, reqEditors ...RequestEditorFn) (*DeletePortalPlansResponse, error) { + rsp, err := c.DeletePortalPlans(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeletePortalPlansResponse(rsp) +} + +// GetPortalPlansWithResponse request returning *GetPortalPlansResponse +func (c *ClientWithResponses) GetPortalPlansWithResponse(ctx context.Context, params *GetPortalPlansParams, reqEditors ...RequestEditorFn) (*GetPortalPlansResponse, error) { + rsp, err := c.GetPortalPlans(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetPortalPlansResponse(rsp) +} + +// PatchPortalPlansWithBodyWithResponse request with arbitrary body returning *PatchPortalPlansResponse +func (c *ClientWithResponses) PatchPortalPlansWithBodyWithResponse(ctx context.Context, params *PatchPortalPlansParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalPlansResponse, error) { + rsp, err := c.PatchPortalPlansWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalPlansResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalPlansWithResponse(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalPlansResponse, error) { + rsp, err := c.PatchPortalPlans(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalPlansResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalPlansResponse, error) { + rsp, err := c.PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalPlansResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalPlansParams, body PatchPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalPlansResponse, error) { + rsp, err := c.PatchPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalPlansResponse(rsp) +} + +// PostPortalPlansWithBodyWithResponse request with arbitrary body returning *PostPortalPlansResponse +func (c *ClientWithResponses) PostPortalPlansWithBodyWithResponse(ctx context.Context, params *PostPortalPlansParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalPlansResponse, error) { + rsp, err := c.PostPortalPlansWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalPlansResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalPlansWithResponse(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalPlansResponse, error) { + rsp, err := c.PostPortalPlans(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalPlansResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalPlansWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalPlansResponse, error) { + rsp, err := c.PostPortalPlansWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalPlansResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalPlansParams, body PostPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalPlansResponse, error) { + rsp, err := c.PostPortalPlansWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalPlansResponse(rsp) +} + +// DeletePortalUsersWithResponse request returning *DeletePortalUsersResponse +func (c *ClientWithResponses) DeletePortalUsersWithResponse(ctx context.Context, params *DeletePortalUsersParams, reqEditors ...RequestEditorFn) (*DeletePortalUsersResponse, error) { + rsp, err := c.DeletePortalUsers(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeletePortalUsersResponse(rsp) +} + +// GetPortalUsersWithResponse request returning *GetPortalUsersResponse +func (c *ClientWithResponses) GetPortalUsersWithResponse(ctx context.Context, params *GetPortalUsersParams, reqEditors ...RequestEditorFn) (*GetPortalUsersResponse, error) { + rsp, err := c.GetPortalUsers(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetPortalUsersResponse(rsp) +} + +// PatchPortalUsersWithBodyWithResponse request with arbitrary body returning *PatchPortalUsersResponse +func (c *ClientWithResponses) PatchPortalUsersWithBodyWithResponse(ctx context.Context, params *PatchPortalUsersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchPortalUsersResponse, error) { + rsp, err := c.PatchPortalUsersWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalUsersResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalUsersWithResponse(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalUsersResponse, error) { + rsp, err := c.PatchPortalUsers(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalUsersResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalUsersResponse, error) { + rsp, err := c.PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalUsersResponse(rsp) +} + +func (c *ClientWithResponses) PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchPortalUsersParams, body PatchPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchPortalUsersResponse, error) { + rsp, err := c.PatchPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchPortalUsersResponse(rsp) +} + +// PostPortalUsersWithBodyWithResponse request with arbitrary body returning *PostPortalUsersResponse +func (c *ClientWithResponses) PostPortalUsersWithBodyWithResponse(ctx context.Context, params *PostPortalUsersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostPortalUsersResponse, error) { + rsp, err := c.PostPortalUsersWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalUsersResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalUsersWithResponse(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalUsersResponse, error) { + rsp, err := c.PostPortalUsers(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalUsersResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalUsersWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostPortalUsersResponse, error) { + rsp, err := c.PostPortalUsersWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalUsersResponse(rsp) +} + +func (c *ClientWithResponses) PostPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostPortalUsersParams, body PostPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostPortalUsersResponse, error) { + rsp, err := c.PostPortalUsersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostPortalUsersResponse(rsp) +} + +// GetPortalWorkersAccountDataWithResponse request returning *GetPortalWorkersAccountDataResponse +func (c *ClientWithResponses) GetPortalWorkersAccountDataWithResponse(ctx context.Context, params *GetPortalWorkersAccountDataParams, reqEditors ...RequestEditorFn) (*GetPortalWorkersAccountDataResponse, error) { + rsp, err := c.GetPortalWorkersAccountData(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetPortalWorkersAccountDataResponse(rsp) +} + +// GetRpcArmorWithResponse request returning *GetRpcArmorResponse +func (c *ClientWithResponses) GetRpcArmorWithResponse(ctx context.Context, params *GetRpcArmorParams, reqEditors ...RequestEditorFn) (*GetRpcArmorResponse, error) { + rsp, err := c.GetRpcArmor(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetRpcArmorResponse(rsp) +} + +// PostRpcArmorWithBodyWithResponse request with arbitrary body returning *PostRpcArmorResponse +func (c *ClientWithResponses) PostRpcArmorWithBodyWithResponse(ctx context.Context, params *PostRpcArmorParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcArmorResponse, error) { + rsp, err := c.PostRpcArmorWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcArmorResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcArmorWithResponse(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcArmorResponse, error) { + rsp, err := c.PostRpcArmor(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcArmorResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcArmorWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcArmorResponse, error) { + rsp, err := c.PostRpcArmorWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcArmorResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcArmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcArmorParams, body PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcArmorResponse, error) { + rsp, err := c.PostRpcArmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcArmorResponse(rsp) +} + +// GetRpcDearmorWithResponse request returning *GetRpcDearmorResponse +func (c *ClientWithResponses) GetRpcDearmorWithResponse(ctx context.Context, params *GetRpcDearmorParams, reqEditors ...RequestEditorFn) (*GetRpcDearmorResponse, error) { + rsp, err := c.GetRpcDearmor(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetRpcDearmorResponse(rsp) +} + +// PostRpcDearmorWithBodyWithResponse request with arbitrary body returning *PostRpcDearmorResponse +func (c *ClientWithResponses) PostRpcDearmorWithBodyWithResponse(ctx context.Context, params *PostRpcDearmorParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcDearmorResponse, error) { + rsp, err := c.PostRpcDearmorWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcDearmorResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcDearmorWithResponse(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcDearmorResponse, error) { + rsp, err := c.PostRpcDearmor(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcDearmorResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcDearmorResponse, error) { + rsp, err := c.PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcDearmorResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcDearmorParams, body PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcDearmorResponse, error) { + rsp, err := c.PostRpcDearmorWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcDearmorResponse(rsp) +} + +// GetRpcGenRandomUuidWithResponse request returning *GetRpcGenRandomUuidResponse +func (c *ClientWithResponses) GetRpcGenRandomUuidWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*GetRpcGenRandomUuidResponse, error) { + rsp, err := c.GetRpcGenRandomUuid(ctx, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetRpcGenRandomUuidResponse(rsp) +} + +// PostRpcGenRandomUuidWithBodyWithResponse request with arbitrary body returning *PostRpcGenRandomUuidResponse +func (c *ClientWithResponses) PostRpcGenRandomUuidWithBodyWithResponse(ctx context.Context, params *PostRpcGenRandomUuidParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcGenRandomUuidResponse, error) { + rsp, err := c.PostRpcGenRandomUuidWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcGenRandomUuidResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcGenRandomUuidWithResponse(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenRandomUuidResponse, error) { + rsp, err := c.PostRpcGenRandomUuid(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcGenRandomUuidResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenRandomUuidResponse, error) { + rsp, err := c.PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcGenRandomUuidResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcGenRandomUuidParams, body PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenRandomUuidResponse, error) { + rsp, err := c.PostRpcGenRandomUuidWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcGenRandomUuidResponse(rsp) +} + +// GetRpcGenSaltWithResponse request returning *GetRpcGenSaltResponse +func (c *ClientWithResponses) GetRpcGenSaltWithResponse(ctx context.Context, params *GetRpcGenSaltParams, reqEditors ...RequestEditorFn) (*GetRpcGenSaltResponse, error) { + rsp, err := c.GetRpcGenSalt(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetRpcGenSaltResponse(rsp) +} + +// PostRpcGenSaltWithBodyWithResponse request with arbitrary body returning *PostRpcGenSaltResponse +func (c *ClientWithResponses) PostRpcGenSaltWithBodyWithResponse(ctx context.Context, params *PostRpcGenSaltParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcGenSaltResponse, error) { + rsp, err := c.PostRpcGenSaltWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcGenSaltResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcGenSaltWithResponse(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenSaltResponse, error) { + rsp, err := c.PostRpcGenSalt(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcGenSaltResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenSaltResponse, error) { + rsp, err := c.PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcGenSaltResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcGenSaltParams, body PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcGenSaltResponse, error) { + rsp, err := c.PostRpcGenSaltWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcGenSaltResponse(rsp) +} + +// GetRpcPgpArmorHeadersWithResponse request returning *GetRpcPgpArmorHeadersResponse +func (c *ClientWithResponses) GetRpcPgpArmorHeadersWithResponse(ctx context.Context, params *GetRpcPgpArmorHeadersParams, reqEditors ...RequestEditorFn) (*GetRpcPgpArmorHeadersResponse, error) { + rsp, err := c.GetRpcPgpArmorHeaders(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetRpcPgpArmorHeadersResponse(rsp) +} + +// PostRpcPgpArmorHeadersWithBodyWithResponse request with arbitrary body returning *PostRpcPgpArmorHeadersResponse +func (c *ClientWithResponses) PostRpcPgpArmorHeadersWithBodyWithResponse(ctx context.Context, params *PostRpcPgpArmorHeadersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcPgpArmorHeadersResponse, error) { + rsp, err := c.PostRpcPgpArmorHeadersWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcPgpArmorHeadersResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcPgpArmorHeadersWithResponse(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpArmorHeadersResponse, error) { + rsp, err := c.PostRpcPgpArmorHeaders(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcPgpArmorHeadersResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpArmorHeadersResponse, error) { + rsp, err := c.PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcPgpArmorHeadersResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcPgpArmorHeadersParams, body PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpArmorHeadersResponse, error) { + rsp, err := c.PostRpcPgpArmorHeadersWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcPgpArmorHeadersResponse(rsp) +} + +// GetRpcPgpKeyIdWithResponse request returning *GetRpcPgpKeyIdResponse +func (c *ClientWithResponses) GetRpcPgpKeyIdWithResponse(ctx context.Context, params *GetRpcPgpKeyIdParams, reqEditors ...RequestEditorFn) (*GetRpcPgpKeyIdResponse, error) { + rsp, err := c.GetRpcPgpKeyId(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetRpcPgpKeyIdResponse(rsp) +} + +// PostRpcPgpKeyIdWithBodyWithResponse request with arbitrary body returning *PostRpcPgpKeyIdResponse +func (c *ClientWithResponses) PostRpcPgpKeyIdWithBodyWithResponse(ctx context.Context, params *PostRpcPgpKeyIdParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostRpcPgpKeyIdResponse, error) { + rsp, err := c.PostRpcPgpKeyIdWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcPgpKeyIdResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcPgpKeyIdWithResponse(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpKeyIdResponse, error) { + rsp, err := c.PostRpcPgpKeyId(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcPgpKeyIdResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpKeyIdResponse, error) { + rsp, err := c.PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcPgpKeyIdResponse(rsp) +} + +func (c *ClientWithResponses) PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostRpcPgpKeyIdParams, body PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostRpcPgpKeyIdResponse, error) { + rsp, err := c.PostRpcPgpKeyIdWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostRpcPgpKeyIdResponse(rsp) +} + +// DeleteServiceEndpointsWithResponse request returning *DeleteServiceEndpointsResponse +func (c *ClientWithResponses) DeleteServiceEndpointsWithResponse(ctx context.Context, params *DeleteServiceEndpointsParams, reqEditors ...RequestEditorFn) (*DeleteServiceEndpointsResponse, error) { + rsp, err := c.DeleteServiceEndpoints(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeleteServiceEndpointsResponse(rsp) +} + +// GetServiceEndpointsWithResponse request returning *GetServiceEndpointsResponse +func (c *ClientWithResponses) GetServiceEndpointsWithResponse(ctx context.Context, params *GetServiceEndpointsParams, reqEditors ...RequestEditorFn) (*GetServiceEndpointsResponse, error) { + rsp, err := c.GetServiceEndpoints(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetServiceEndpointsResponse(rsp) +} + +// PatchServiceEndpointsWithBodyWithResponse request with arbitrary body returning *PatchServiceEndpointsResponse +func (c *ClientWithResponses) PatchServiceEndpointsWithBodyWithResponse(ctx context.Context, params *PatchServiceEndpointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchServiceEndpointsResponse, error) { + rsp, err := c.PatchServiceEndpointsWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServiceEndpointsResponse(rsp) +} + +func (c *ClientWithResponses) PatchServiceEndpointsWithResponse(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceEndpointsResponse, error) { + rsp, err := c.PatchServiceEndpoints(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServiceEndpointsResponse(rsp) +} + +func (c *ClientWithResponses) PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceEndpointsResponse, error) { + rsp, err := c.PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServiceEndpointsResponse(rsp) +} + +func (c *ClientWithResponses) PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchServiceEndpointsParams, body PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceEndpointsResponse, error) { + rsp, err := c.PatchServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServiceEndpointsResponse(rsp) +} + +// PostServiceEndpointsWithBodyWithResponse request with arbitrary body returning *PostServiceEndpointsResponse +func (c *ClientWithResponses) PostServiceEndpointsWithBodyWithResponse(ctx context.Context, params *PostServiceEndpointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostServiceEndpointsResponse, error) { + rsp, err := c.PostServiceEndpointsWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServiceEndpointsResponse(rsp) +} + +func (c *ClientWithResponses) PostServiceEndpointsWithResponse(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServiceEndpointsResponse, error) { + rsp, err := c.PostServiceEndpoints(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServiceEndpointsResponse(rsp) +} + +func (c *ClientWithResponses) PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServiceEndpointsResponse, error) { + rsp, err := c.PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServiceEndpointsResponse(rsp) +} + +func (c *ClientWithResponses) PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostServiceEndpointsParams, body PostServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostServiceEndpointsResponse, error) { + rsp, err := c.PostServiceEndpointsWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServiceEndpointsResponse(rsp) +} + +// DeleteServiceFallbacksWithResponse request returning *DeleteServiceFallbacksResponse +func (c *ClientWithResponses) DeleteServiceFallbacksWithResponse(ctx context.Context, params *DeleteServiceFallbacksParams, reqEditors ...RequestEditorFn) (*DeleteServiceFallbacksResponse, error) { + rsp, err := c.DeleteServiceFallbacks(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeleteServiceFallbacksResponse(rsp) +} + +// GetServiceFallbacksWithResponse request returning *GetServiceFallbacksResponse +func (c *ClientWithResponses) GetServiceFallbacksWithResponse(ctx context.Context, params *GetServiceFallbacksParams, reqEditors ...RequestEditorFn) (*GetServiceFallbacksResponse, error) { + rsp, err := c.GetServiceFallbacks(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetServiceFallbacksResponse(rsp) +} + +// PatchServiceFallbacksWithBodyWithResponse request with arbitrary body returning *PatchServiceFallbacksResponse +func (c *ClientWithResponses) PatchServiceFallbacksWithBodyWithResponse(ctx context.Context, params *PatchServiceFallbacksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchServiceFallbacksResponse, error) { + rsp, err := c.PatchServiceFallbacksWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServiceFallbacksResponse(rsp) +} + +func (c *ClientWithResponses) PatchServiceFallbacksWithResponse(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceFallbacksResponse, error) { + rsp, err := c.PatchServiceFallbacks(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServiceFallbacksResponse(rsp) +} + +func (c *ClientWithResponses) PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceFallbacksResponse, error) { + rsp, err := c.PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServiceFallbacksResponse(rsp) +} + +func (c *ClientWithResponses) PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchServiceFallbacksParams, body PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchServiceFallbacksResponse, error) { + rsp, err := c.PatchServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServiceFallbacksResponse(rsp) +} + +// PostServiceFallbacksWithBodyWithResponse request with arbitrary body returning *PostServiceFallbacksResponse +func (c *ClientWithResponses) PostServiceFallbacksWithBodyWithResponse(ctx context.Context, params *PostServiceFallbacksParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostServiceFallbacksResponse, error) { + rsp, err := c.PostServiceFallbacksWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServiceFallbacksResponse(rsp) +} + +func (c *ClientWithResponses) PostServiceFallbacksWithResponse(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServiceFallbacksResponse, error) { + rsp, err := c.PostServiceFallbacks(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServiceFallbacksResponse(rsp) +} + +func (c *ClientWithResponses) PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServiceFallbacksResponse, error) { + rsp, err := c.PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServiceFallbacksResponse(rsp) +} + +func (c *ClientWithResponses) PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostServiceFallbacksParams, body PostServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostServiceFallbacksResponse, error) { + rsp, err := c.PostServiceFallbacksWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServiceFallbacksResponse(rsp) +} + +// DeleteServicesWithResponse request returning *DeleteServicesResponse +func (c *ClientWithResponses) DeleteServicesWithResponse(ctx context.Context, params *DeleteServicesParams, reqEditors ...RequestEditorFn) (*DeleteServicesResponse, error) { + rsp, err := c.DeleteServices(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseDeleteServicesResponse(rsp) +} + +// GetServicesWithResponse request returning *GetServicesResponse +func (c *ClientWithResponses) GetServicesWithResponse(ctx context.Context, params *GetServicesParams, reqEditors ...RequestEditorFn) (*GetServicesResponse, error) { + rsp, err := c.GetServices(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetServicesResponse(rsp) +} + +// PatchServicesWithBodyWithResponse request with arbitrary body returning *PatchServicesResponse +func (c *ClientWithResponses) PatchServicesWithBodyWithResponse(ctx context.Context, params *PatchServicesParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PatchServicesResponse, error) { + rsp, err := c.PatchServicesWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServicesResponse(rsp) +} + +func (c *ClientWithResponses) PatchServicesWithResponse(ctx context.Context, params *PatchServicesParams, body PatchServicesJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServicesResponse, error) { + rsp, err := c.PatchServices(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServicesResponse(rsp) +} + +func (c *ClientWithResponses) PatchServicesWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PatchServicesResponse, error) { + rsp, err := c.PatchServicesWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServicesResponse(rsp) +} + +func (c *ClientWithResponses) PatchServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PatchServicesParams, body PatchServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PatchServicesResponse, error) { + rsp, err := c.PatchServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePatchServicesResponse(rsp) +} + +// PostServicesWithBodyWithResponse request with arbitrary body returning *PostServicesResponse +func (c *ClientWithResponses) PostServicesWithBodyWithResponse(ctx context.Context, params *PostServicesParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*PostServicesResponse, error) { + rsp, err := c.PostServicesWithBody(ctx, params, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServicesResponse(rsp) +} + +func (c *ClientWithResponses) PostServicesWithResponse(ctx context.Context, params *PostServicesParams, body PostServicesJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServicesResponse, error) { + rsp, err := c.PostServices(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServicesResponse(rsp) +} + +func (c *ClientWithResponses) PostServicesWithApplicationVndPgrstObjectPlusJSONBodyWithResponse(ctx context.Context, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*PostServicesResponse, error) { + rsp, err := c.PostServicesWithApplicationVndPgrstObjectPlusJSONBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServicesResponse(rsp) +} + +func (c *ClientWithResponses) PostServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBodyWithResponse(ctx context.Context, params *PostServicesParams, body PostServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody, reqEditors ...RequestEditorFn) (*PostServicesResponse, error) { + rsp, err := c.PostServicesWithApplicationVndPgrstObjectPlusJSONNullsStrippedBody(ctx, params, body, reqEditors...) + if err != nil { + return nil, err + } + return ParsePostServicesResponse(rsp) +} + +// ParseGetResponse parses an HTTP response from a GetWithResponse call +func ParseGetResponse(rsp *http.Response) (*GetResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeleteNetworksResponse parses an HTTP response from a DeleteNetworksWithResponse call +func ParseDeleteNetworksResponse(rsp *http.Response) (*DeleteNetworksResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeleteNetworksResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetNetworksResponse parses an HTTP response from a GetNetworksWithResponse call +func ParseGetNetworksResponse(rsp *http.Response) (*GetNetworksResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetNetworksResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []Networks + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []Networks + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []Networks + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchNetworksResponse parses an HTTP response from a PatchNetworksWithResponse call +func ParsePatchNetworksResponse(rsp *http.Response) (*PatchNetworksResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchNetworksResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostNetworksResponse parses an HTTP response from a PostNetworksWithResponse call +func ParsePostNetworksResponse(rsp *http.Response) (*PostNetworksResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostNetworksResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeleteOrganizationsResponse parses an HTTP response from a DeleteOrganizationsWithResponse call +func ParseDeleteOrganizationsResponse(rsp *http.Response) (*DeleteOrganizationsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeleteOrganizationsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetOrganizationsResponse parses an HTTP response from a GetOrganizationsWithResponse call +func ParseGetOrganizationsResponse(rsp *http.Response) (*GetOrganizationsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetOrganizationsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []Organizations + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []Organizations + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []Organizations + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchOrganizationsResponse parses an HTTP response from a PatchOrganizationsWithResponse call +func ParsePatchOrganizationsResponse(rsp *http.Response) (*PatchOrganizationsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchOrganizationsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostOrganizationsResponse parses an HTTP response from a PostOrganizationsWithResponse call +func ParsePostOrganizationsResponse(rsp *http.Response) (*PostOrganizationsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostOrganizationsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeletePortalAccountRbacResponse parses an HTTP response from a DeletePortalAccountRbacWithResponse call +func ParseDeletePortalAccountRbacResponse(rsp *http.Response) (*DeletePortalAccountRbacResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeletePortalAccountRbacResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetPortalAccountRbacResponse parses an HTTP response from a GetPortalAccountRbacWithResponse call +func ParseGetPortalAccountRbacResponse(rsp *http.Response) (*GetPortalAccountRbacResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetPortalAccountRbacResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []PortalAccountRbac + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []PortalAccountRbac + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []PortalAccountRbac + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchPortalAccountRbacResponse parses an HTTP response from a PatchPortalAccountRbacWithResponse call +func ParsePatchPortalAccountRbacResponse(rsp *http.Response) (*PatchPortalAccountRbacResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchPortalAccountRbacResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostPortalAccountRbacResponse parses an HTTP response from a PostPortalAccountRbacWithResponse call +func ParsePostPortalAccountRbacResponse(rsp *http.Response) (*PostPortalAccountRbacResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostPortalAccountRbacResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeletePortalAccountsResponse parses an HTTP response from a DeletePortalAccountsWithResponse call +func ParseDeletePortalAccountsResponse(rsp *http.Response) (*DeletePortalAccountsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeletePortalAccountsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetPortalAccountsResponse parses an HTTP response from a GetPortalAccountsWithResponse call +func ParseGetPortalAccountsResponse(rsp *http.Response) (*GetPortalAccountsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetPortalAccountsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []PortalAccounts + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []PortalAccounts + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []PortalAccounts + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchPortalAccountsResponse parses an HTTP response from a PatchPortalAccountsWithResponse call +func ParsePatchPortalAccountsResponse(rsp *http.Response) (*PatchPortalAccountsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchPortalAccountsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostPortalAccountsResponse parses an HTTP response from a PostPortalAccountsWithResponse call +func ParsePostPortalAccountsResponse(rsp *http.Response) (*PostPortalAccountsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostPortalAccountsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeletePortalApplicationRbacResponse parses an HTTP response from a DeletePortalApplicationRbacWithResponse call +func ParseDeletePortalApplicationRbacResponse(rsp *http.Response) (*DeletePortalApplicationRbacResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeletePortalApplicationRbacResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetPortalApplicationRbacResponse parses an HTTP response from a GetPortalApplicationRbacWithResponse call +func ParseGetPortalApplicationRbacResponse(rsp *http.Response) (*GetPortalApplicationRbacResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetPortalApplicationRbacResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []PortalApplicationRbac + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []PortalApplicationRbac + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []PortalApplicationRbac + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchPortalApplicationRbacResponse parses an HTTP response from a PatchPortalApplicationRbacWithResponse call +func ParsePatchPortalApplicationRbacResponse(rsp *http.Response) (*PatchPortalApplicationRbacResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchPortalApplicationRbacResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostPortalApplicationRbacResponse parses an HTTP response from a PostPortalApplicationRbacWithResponse call +func ParsePostPortalApplicationRbacResponse(rsp *http.Response) (*PostPortalApplicationRbacResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostPortalApplicationRbacResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeletePortalApplicationsResponse parses an HTTP response from a DeletePortalApplicationsWithResponse call +func ParseDeletePortalApplicationsResponse(rsp *http.Response) (*DeletePortalApplicationsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeletePortalApplicationsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetPortalApplicationsResponse parses an HTTP response from a GetPortalApplicationsWithResponse call +func ParseGetPortalApplicationsResponse(rsp *http.Response) (*GetPortalApplicationsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetPortalApplicationsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []PortalApplications + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []PortalApplications + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []PortalApplications + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchPortalApplicationsResponse parses an HTTP response from a PatchPortalApplicationsWithResponse call +func ParsePatchPortalApplicationsResponse(rsp *http.Response) (*PatchPortalApplicationsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchPortalApplicationsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostPortalApplicationsResponse parses an HTTP response from a PostPortalApplicationsWithResponse call +func ParsePostPortalApplicationsResponse(rsp *http.Response) (*PostPortalApplicationsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostPortalApplicationsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeletePortalPlansResponse parses an HTTP response from a DeletePortalPlansWithResponse call +func ParseDeletePortalPlansResponse(rsp *http.Response) (*DeletePortalPlansResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeletePortalPlansResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetPortalPlansResponse parses an HTTP response from a GetPortalPlansWithResponse call +func ParseGetPortalPlansResponse(rsp *http.Response) (*GetPortalPlansResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetPortalPlansResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []PortalPlans + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []PortalPlans + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []PortalPlans + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchPortalPlansResponse parses an HTTP response from a PatchPortalPlansWithResponse call +func ParsePatchPortalPlansResponse(rsp *http.Response) (*PatchPortalPlansResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchPortalPlansResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostPortalPlansResponse parses an HTTP response from a PostPortalPlansWithResponse call +func ParsePostPortalPlansResponse(rsp *http.Response) (*PostPortalPlansResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostPortalPlansResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeletePortalUsersResponse parses an HTTP response from a DeletePortalUsersWithResponse call +func ParseDeletePortalUsersResponse(rsp *http.Response) (*DeletePortalUsersResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeletePortalUsersResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetPortalUsersResponse parses an HTTP response from a GetPortalUsersWithResponse call +func ParseGetPortalUsersResponse(rsp *http.Response) (*GetPortalUsersResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetPortalUsersResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []PortalUsers + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []PortalUsers + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []PortalUsers + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchPortalUsersResponse parses an HTTP response from a PatchPortalUsersWithResponse call +func ParsePatchPortalUsersResponse(rsp *http.Response) (*PatchPortalUsersResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchPortalUsersResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostPortalUsersResponse parses an HTTP response from a PostPortalUsersWithResponse call +func ParsePostPortalUsersResponse(rsp *http.Response) (*PostPortalUsersResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostPortalUsersResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetPortalWorkersAccountDataResponse parses an HTTP response from a GetPortalWorkersAccountDataWithResponse call +func ParseGetPortalWorkersAccountDataResponse(rsp *http.Response) (*GetPortalWorkersAccountDataResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetPortalWorkersAccountDataResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []PortalWorkersAccountData + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []PortalWorkersAccountData + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []PortalWorkersAccountData + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParseGetRpcArmorResponse parses an HTTP response from a GetRpcArmorWithResponse call +func ParseGetRpcArmorResponse(rsp *http.Response) (*GetRpcArmorResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetRpcArmorResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostRpcArmorResponse parses an HTTP response from a PostRpcArmorWithResponse call +func ParsePostRpcArmorResponse(rsp *http.Response) (*PostRpcArmorResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostRpcArmorResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetRpcDearmorResponse parses an HTTP response from a GetRpcDearmorWithResponse call +func ParseGetRpcDearmorResponse(rsp *http.Response) (*GetRpcDearmorResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetRpcDearmorResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostRpcDearmorResponse parses an HTTP response from a PostRpcDearmorWithResponse call +func ParsePostRpcDearmorResponse(rsp *http.Response) (*PostRpcDearmorResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostRpcDearmorResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetRpcGenRandomUuidResponse parses an HTTP response from a GetRpcGenRandomUuidWithResponse call +func ParseGetRpcGenRandomUuidResponse(rsp *http.Response) (*GetRpcGenRandomUuidResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetRpcGenRandomUuidResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostRpcGenRandomUuidResponse parses an HTTP response from a PostRpcGenRandomUuidWithResponse call +func ParsePostRpcGenRandomUuidResponse(rsp *http.Response) (*PostRpcGenRandomUuidResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostRpcGenRandomUuidResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetRpcGenSaltResponse parses an HTTP response from a GetRpcGenSaltWithResponse call +func ParseGetRpcGenSaltResponse(rsp *http.Response) (*GetRpcGenSaltResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetRpcGenSaltResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostRpcGenSaltResponse parses an HTTP response from a PostRpcGenSaltWithResponse call +func ParsePostRpcGenSaltResponse(rsp *http.Response) (*PostRpcGenSaltResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostRpcGenSaltResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetRpcPgpArmorHeadersResponse parses an HTTP response from a GetRpcPgpArmorHeadersWithResponse call +func ParseGetRpcPgpArmorHeadersResponse(rsp *http.Response) (*GetRpcPgpArmorHeadersResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetRpcPgpArmorHeadersResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostRpcPgpArmorHeadersResponse parses an HTTP response from a PostRpcPgpArmorHeadersWithResponse call +func ParsePostRpcPgpArmorHeadersResponse(rsp *http.Response) (*PostRpcPgpArmorHeadersResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostRpcPgpArmorHeadersResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetRpcPgpKeyIdResponse parses an HTTP response from a GetRpcPgpKeyIdWithResponse call +func ParseGetRpcPgpKeyIdResponse(rsp *http.Response) (*GetRpcPgpKeyIdResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetRpcPgpKeyIdResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostRpcPgpKeyIdResponse parses an HTTP response from a PostRpcPgpKeyIdWithResponse call +func ParsePostRpcPgpKeyIdResponse(rsp *http.Response) (*PostRpcPgpKeyIdResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostRpcPgpKeyIdResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeleteServiceEndpointsResponse parses an HTTP response from a DeleteServiceEndpointsWithResponse call +func ParseDeleteServiceEndpointsResponse(rsp *http.Response) (*DeleteServiceEndpointsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeleteServiceEndpointsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetServiceEndpointsResponse parses an HTTP response from a GetServiceEndpointsWithResponse call +func ParseGetServiceEndpointsResponse(rsp *http.Response) (*GetServiceEndpointsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetServiceEndpointsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []ServiceEndpoints + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []ServiceEndpoints + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []ServiceEndpoints + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchServiceEndpointsResponse parses an HTTP response from a PatchServiceEndpointsWithResponse call +func ParsePatchServiceEndpointsResponse(rsp *http.Response) (*PatchServiceEndpointsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchServiceEndpointsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostServiceEndpointsResponse parses an HTTP response from a PostServiceEndpointsWithResponse call +func ParsePostServiceEndpointsResponse(rsp *http.Response) (*PostServiceEndpointsResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostServiceEndpointsResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeleteServiceFallbacksResponse parses an HTTP response from a DeleteServiceFallbacksWithResponse call +func ParseDeleteServiceFallbacksResponse(rsp *http.Response) (*DeleteServiceFallbacksResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeleteServiceFallbacksResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetServiceFallbacksResponse parses an HTTP response from a GetServiceFallbacksWithResponse call +func ParseGetServiceFallbacksResponse(rsp *http.Response) (*GetServiceFallbacksResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetServiceFallbacksResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []ServiceFallbacks + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []ServiceFallbacks + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []ServiceFallbacks + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchServiceFallbacksResponse parses an HTTP response from a PatchServiceFallbacksWithResponse call +func ParsePatchServiceFallbacksResponse(rsp *http.Response) (*PatchServiceFallbacksResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchServiceFallbacksResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostServiceFallbacksResponse parses an HTTP response from a PostServiceFallbacksWithResponse call +func ParsePostServiceFallbacksResponse(rsp *http.Response) (*PostServiceFallbacksResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostServiceFallbacksResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseDeleteServicesResponse parses an HTTP response from a DeleteServicesWithResponse call +func ParseDeleteServicesResponse(rsp *http.Response) (*DeleteServicesResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &DeleteServicesResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParseGetServicesResponse parses an HTTP response from a GetServicesWithResponse call +func ParseGetServicesResponse(rsp *http.Response) (*GetServicesResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetServicesResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case rsp.Header.Get("Content-Type") == "application/json" && rsp.StatusCode == 200: + var dest []Services + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json" && rsp.StatusCode == 200: + var dest []Services + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSON200 = &dest + + case rsp.Header.Get("Content-Type") == "application/vnd.pgrst.object+json;nulls=stripped" && rsp.StatusCode == 200: + var dest []Services + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationvndPgrstObjectJSONNullsStripped200 = &dest + + case rsp.StatusCode == 200: + // Content-type (text/csv) unsupported + + } + + return response, nil +} + +// ParsePatchServicesResponse parses an HTTP response from a PatchServicesWithResponse call +func ParsePatchServicesResponse(rsp *http.Response) (*PatchServicesResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PatchServicesResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// ParsePostServicesResponse parses an HTTP response from a PostServicesWithResponse call +func ParsePostServicesResponse(rsp *http.Response) (*PostServicesResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &PostServicesResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + return response, nil +} + +// Base64 encoded, gzipped, json marshaled Swagger object +var swaggerSpec = []string{ + + "H4sIAAAAAAAC/+w9XXPcNpJ/BcW7Kid145HW+ag6XfnBazsbX2xFJduXh8Q1C5GYGUQkyACgFO2W/vsV", + "wG8SJEECJMcOXxJ52OxuoBv9BaD5b8cNgygkiHDmXPzbiSCFAeKIyn/5OMBc/OEh5lIccRwS58J5K37G", + "5AAg8cAVPGAC5ZONg8XjP2JEH5yNQ2CAnIsUycZh7hEFUGDjD5F4wDjF5OA8Pm6ccL9nyJhSiqWHFPUQ", + "bVL6WfwsYFpQy7e6MUcU7RF9GcZEMZIr+RARF2UUjggmOFMSCUSFBiJx4Fz86rgC53MSEuR82rRSvhKy", + "Y5ZJS4VgzxkmBx89DW9+Ry7vZCJktkdPEY8peU5RRBFDhGcqkP4eYIID6Bc/yHkS/2KhHwvY5/hAQoqe", + "enHkYxdyxKqPA0QPlacd47uWNE5hhEomKSQHNHgd1Vm9lli6tV1S+khG2AcltacSVZmkh/Yw9rlz4WCO", + "AiEyBRPh/Q/Y54huCeL3Ib1l2R877AkkqrVcgijT24c0gIKce4QUuhxRcAfpQ2ITukiH9AAJ/pccI9u6", + "FEGOvB3kbfRLEEr6HAeIcRhE4B7zIxD/BP9KdFqfDQ/5qGCjKp/34Z6DBADkxFoMXwnPdMyW/9UhuDqY", + "kiFMODpI9RpJPyFWn7NLGCAQ7gE/IlAGb/UXdYwTqFoceT2qVoKwKb0opBz6O+hKx7SjN9DdtovNTFIq", + "WrXf2kk3Aa2IoYOnmCHaz1AGNRk3NPRRrskqRgqAyXiQg/w9xEQoYPKgVU8VoEq+bsLQR5AM4oZtb7Dv", + "Y3LYJe+oWajATDAnC3qGOiNV3zCj1a8zcnAjjUVcg5pENoIGIhxzHwWol5sa5CQcCetISWlNda1mNfAk", + "fM3vq+scKK1/1Vt/JPiPGAHsCUntMaJgH1Lpu5OXQWFkFnMbjYFII5in3Bp8lV6YbnoLIjupZXfQH8xe", + "8aaSzyi+8bG7jXxIypB2mKYRG86veMn+lMoBdvmgBtwkaieAIrRj8U2+ZJSL6L2EA2W4+opKnWbLMmoh", + "NMmgTiQWZknUo2Ozm4BWJyZKqhlizmU0tnj0UWdo6oShTk/xe3/iUAWeVEDLJxB1jhZfUwVD7JT09wQi", + "6DIzKAh/x218JA8nUhO23cO7kGKOdgzRO+yiHfZa3a0SVo+zXz+N4O1UqgQqnkpLreJ0ta1R+a05uT0R", + "k6nkrcvbtoHPyZ9+gK9+yapT7OFQO9jvedt2wK8/AI3Av/1Fy1PNkEsR392ih90RsmMz1v4RsiPyQAIH", + "btGDDK9LOACM+VHE3m5X2blOZzLtLhGi6I8YU9RqF1SgFmp7ZW6WDlSEIrNEncs61b3U1dDmildihkKO", + "qquhqnXXkCMgnwNMgJAOYpyBCFGhiSHx2uojCuRWGY8ZPKBdy/GDd/BPHMQBkEAA+n54jzwpN0xkjadk", + "Ulq5L1OYivV+G9r6gmWzmfJ3CmUINSsDoiD1OzZZFL5g+YQj4WLpTCPhIjO6XoAVZx9+OSJ+RBQIWHCE", + "DEg4EFF8h310QAxAl4aMlQqwPYVXScfcSVSYlx4eBRD7rfVi+RRAz6OIsbxkLF7s5reE2r4eLl4XSNhg", + "+ECQt4ujVj+fA9gS3NJu/T6kt4iyPDH0IIfL7iUqOTqZvSsld+E9Ka875V5RCWQmfnpWUxVocp5OpFKh", + "w9uym1RdHC4b1ig5W3ovICu0IeJFIV70DEKTleyvDnUvgxgoTwftLn2pAnVF5HXIYcwU5dD2FDqHmEgv", + "FnO1GSt76Ps30L09ARUtWMn+2sXUb69ql2CsSqfgo/6LhqqUQS0snSYv82trwcPS2sq20OX4rtVypE8N", + "4uCc0A3isDXMFM9sEHHDQISrLGxPvssglkhGMUe7mGDOdhGiO4p8+NBMzV6GTFan0heAfEHmZgi6R5C8", + "tWnjWUnDfD0sb6UWrAzkHBwh9QpDgwi88dvLwGpgG6o0/4n/nHTi/3M/2uUnVKB2mfkjhj7mD9oSaYW3", + "IZTMaHthADFR1J7/D/rYA+njtNaCGUjfa93fqGK1tHvc4Hp251aQ7koTKjDTkE8y37QE1sdHFdgyQxzy", + "mGktLRXoJMwkdLu5yH5V2Vv0J9emeHfYYbfdH+fPjSnNHEwx5CNXsauTsIXJAbwM/TiQi1ute/L9rstp", + "YpzJXtbfQw8jqcYv6EH+3w0JR8lFhNLm29nvLJnqAmlEwwhRnr5eNYUPHEH19OZ7ob86pQt66bVJAVEm", + "eke8bXSgjG8TgP86HS7+h8S+z57LE5xR4kImZ0oo7ZnL7mYgVgHhNEaPG6khz2ypSPsCnFFDpmRirIIY", + "8DRYP0bTUqlHdsF0kIb8J0V758L5j7Pilv1Z8pSd5QhHCN0e3k45apNRi0bz9cdNzRUUzzaVeyT25r6K", + "1bIARiAfLYUmreGiqONoyKMGsHEUt/2siUaF27KARpMYLaY2isOFpcbUEJkSrC44NpHQ2LQCY7MKi1kR", + "FOsXUmVl1Y7iWxdUHf9EAhtFxlhwKqrjBdjE1irIBqhKoGxCYbLpBclmFyKzJkCmJ7zySpTH1WxLLEE6", + "jagG4DaVUUFqtHAyFG1SSZ9vyuebrIsjQTqNOAbgNhVHQWq0ODIUbeJIn2+cxg6yNZk0MVsWzEgCo6Wj", + "pjdcRCo8DTkpgDaNPWH7wiowTySsgQSMhVWlN15YZTytwioB5cKyLqOpRDOTRAwF0TX/Cer0BYGvXOqp", + "XYmPI2EJkQdu/NC9dY8QE5CBg6+uQvcWcRBATAjiG8AR4/IPxN3t186mVqyqblzW+k2FHF38Rj4cMQOY", + "AQiuKA4gfQA/oYftb/H5+TdudHsm/0DOpnuLI4B/vkXkwI/OxbfP+uphJaaalTFFPaa+Wx9EkGDEQEiB", + "GzMeBoiCAw3jiAF+hBy4kIAbBCDn0D0iD/AQXCU9OV5keVB9nqp77UVfuJcfr69fX37YfXjz7vX7Dy/e", + "XZUnQn9TYuOMaZY2ipCieYodsTdOL2Q/1IkO7m6mq1nf/7divNW9JeuSq6lus+dMc+gqnW4pZ9WuCDBE", + "AQ19xGRbwwjRADMmVoHcvGYRcvEeu7UGM01lnkvqGl1yGmR/CCnCByLIinX5z97OO/9MudvfAg5vfPT8", + "Se2VJ8CVu3n1BzvsPRluvb75XqFjzfsR40apum3ROj4J3Bhc+patkVWauOlienauWofqVmz5gtxDn6H8", + "veyoR319ySWlOoLeuHxScN6/3hRe5F3sc/yUIwIJz1dSYg1kQihXYHrJQt72O9DMXFUXW/2yhtEkzuyG", + "RqFodlTTHvJ337Xga94tMcPZ2tnMIIgZ41rrdqCzJ2nTElTAC1NQe++JHbOd6doBkR2FxAuDXRxj7ysR", + "VI5rffYb+Y1MFGR2mWn1PZIxU9PSqyDrqezJg55BSPjR2TgPCFJhiwbepd04vY3FhrBeuaIyzkupr8+2", + "+ikJ3vBT+XtPrGQQG2eSlmJmVmbi0HPjKC/32MvDOvxsoUZd3lWxhaSIaKHrIsaAGxJOQ78Wy1Zq4rNn", + "ZXNHyo0uNyOj5d4OOu1Rc+nVZuRcwbFGz30jmzf3rMTG9RZItUnWW7WKuPhF6SlI11/W+KKWd6b8HxGm", + "ILwngOatPpLomSHOMTksXmwZhSLveKarIH9TKUhb77Keg+TJ1wiax05zCpBS+PBXTME7upqZ+fIOC60f", + "GC8R7CqakxnFWb1NxcY6vHmD6c6GXVpDmKKhlpmOtnTE6iuxzO2nelxUyVZ1eKn8UETNPd1B7AsbVA3w", + "k5KNmP6+Qn97By09vbbV80qfmrVGVaNIzrBWh6Ssk21RbZy+flH6yM81V4hWkpUfR2lmVgzcH0O525Wm", + "WOUSDPHADfJDchA+Poh9jiMfte8ZfA4xWbNFVNXw2WgZ1TSelno7WQlP9HOoCSOPSpumE3U+xT5BU3wd", + "i03VYkXhhJKnQDyVYk7efpq+nW8biPWVZlJyFPIuY6IlW5BcRgMxE5C//Pj6+jWomwXwHDy5evvicvfx", + "8u2bd28+vH71BLy4fAXKWw4CJimNPZl2a2KKMn2tcZMNZCexQsZkZZ9DXfyLLS5PUGhtmBjleca26DYD", + "AgJNqRdFcXd9Zvdda6U0fcm00T+p+FJpgPjff/jgbBw3ZEEoYpnr1+/Fv//3/c+XT6+vXjob55f3752N", + "cxD/UISmPd2UNk71lv5AVVfc9W8qeAZUKHcBbU2tZ3W9tVZaxQx+6lgNlQOjteva6SPw8fptumuQzhm4", + "PyIZyUklyxcU2Cft/WZeGvUWTqZJvrIR0/QLblX54Srf0gqr3MCjoh0dK0H3KGi+BvY0DGSCkR4JvUxO", + "VTb0v+gj1R+rZ62g+iFr/Zy0XrDajUlLpz+HrLa1xVH/nA463VtfsorPGTeXbAZULNkC2taSbelwpL/x", + "ojoW2tWpqH9izVsLWdvhGWSWJyyP1ZsHmYmntReQLtrvzpVnRJQNfQxZrTXm6en9sHHKfXV6gZfxVxU3", + "lbV6qum8umkF+jM5WfcqdBXL4ipk/CCCcfAqdOOg9J15KQrnyHnELs7OIgFHEePbkB7OEDm7+9uz7fkZ", + "jPD2yAM/OcK3D+UCwdxPex8RD1IPJOYCpHczNs4doiyhLnBsn4Gv4Lfo/Hy//1pWBSJEYISdC+eb7fn2", + "XHhHyI+S9TPxnwOSE5+Xat54zoXzD8STz/dHIWGJF312ft4c7s8/Jfc64kCsOvFDhMiLqzegBAa+kpbB", + "S+fjayEjeGBCGm8IpyGLkCvRfRKozqoXQ4RzabL3Sv5+mUGKIVEYIC4Lxb+qL6sUIGfdX7R/3PQiiCja", + "I3qNeEyJ8/ipMVPfqiwVeJneNKrOmOl1l2wu83n79LhpFepyU5a2lNKADKknY5d+niA5IG3AjwTrkd/v", + "GdKCTCpI2uryUp4IV2jL+aBraLnj1Ov8Uvenw++nzUCw8+KaOX31jTZTvI2rbsIYbpxn598r3AKkHEN/", + "ThMQQe4em0bgSvx8UpYzayL30CaLSp+5ikROzewKr66Y8pCNN7z6djOZWkHM+sT+TZGkJonl9LMqYgLF", + "hciuwODnCvh4He+8rKDleHRQyejTAFkpAzfAUioUGGApBfMzh1GWLsVmCljVuK6QalW2z0PZ1gB0zgC0", + "0c5ulijUAlXzULSfCYN4tA+5vaB0coPaFaCuRvWz9eADo86GQp9yDNAe35sp7HxBft90a0f6E8+1iPpb", + "W0Z0xf4JiZTCtXhlvPVQMLAdajZUOJqno2yhzA5/GeMrmgsYo1L1RZg5ORjfVyTTT5UudmUFqxp+IWq4", + "pg1zpg0tLZVnSR6s0TZPIXRZMUgk9EjYSyemM8FdecRqhr/caGBg5Nui8CcZVbTnGeYKPV+uoTfj2hnH", + "VNPdTDXYwDSDWbMqzK41MCx5tPBWXIIwwta8cmCETt3xysZ4FddGpkFb3BWdCD+NmBnqyoUqI0wt3YyM", + "cNYasxnjqt32MsI3tsZXxzO2ytdYfYvt1Bk0HlQbcqafia+WerXUq6VeLfWXa6nXetVy9Sq2UK2KnUad", + "ik1bo5p2u3uiqES7OLVGJmtkskYma2Tyl8ohjQqKpqdFprL4erVb9tkUbo2OiUwyyeWKrbIDs0bltnjP", + "0rZQjZHRW0N1POpmgjZRG20T1XGa2pY6vuXqVINbd9cVtq6aGlWqVSu/RK1cc/IlcnLFh4Jnzc2t0LeX", + "o+uwYyFX7ydj+UyJbQutkbGvVvovEjuMjJsVa+DU4pDeLMVQx+dPVvonfdhJE7szrk5Z2Ih0hVm1N2wa", + "G2GtBtnD6fj6XBlx8qmLKfgzLfdpozcs++nTGV3+6yFRXpfG+JVfHTHGWv8egk2EeY8iY6SmRcIyLnsO", + "eckDJ9N80afd5rNhmf5q0FeDvhr01aB/2QZ9rYEtWwNjC9a/2OnUvtj0da9pz6ksE8wMKoqtAc0a0KwB", + "zRrQ/OUyVOPKpemRloWcg34tmX1WhWSjky9LyKJUZS59PrK/vHwlgY29tvrTRqMWphqVsQ1O0da/KmkP", + "lZmXK+GsfWLTEFvze59z1+CGf7a0puqJQvdX1lZdXnV5LT+cRPkhWbIz1x0MiForOLTzYF5paMNtscRg", + "0Vb3Fw5We73a6wmzq3y5nEjw0pcsjVsOs2dJbdOqnx5Zm9NS0lP6VHh/0iM/IG5ueCRNG8fhmoiS7wKP", + "x1V8p9qYn+ST4+PRGNZ8EiSGxZ4EybIXCsy+WF9bAYm696dEq6avmr5mSKeYISUreOYMyYCotQypnQfz", + "DKkNt92LBxNZ8v6EabXmqzWfL3/KF9NpBj596dS4xTJ7OtU2y4OuLEwyxaXs6j6kt4iy/MSEB5NvZXcH", + "n78kb6V53CvxjrHtUnFi6TyHErWdNiNdXJtVrJSYjfts6Myy4fERJQlLbTOUuJPPLY93UB1IB/jQNdZe", + "INZWmq+ZQ297PFiLxLVZMg/MNUlZ3MlICAFBSBYVE0aepozkjUdy15UexZALGkgrsQWJAQAxE5C//Pj6", + "+jWoG23wHDy5evvicvfx8u2bd28+vH71BLy4fAXKJljAJA2LnjS9rXJmEudLI/cM0iCkXa72OnJfSJiG", + "a8VilpJPt5e/hM5pjDYlMeZfVr954AgqPqP+acDnwLPBfUUj92uQMN8drLXzrxd/iR/YuAjsBT2oIq+h", + "o8tE5SEdYb1KoYzFpf6qvoG0Mv575dU6hFkk9sxAZMUQM6EdENlRSLww2MUx9nqE9w9EriXwRwE7mo06", + "0d4Zr9O1O+/aPjfVtcQXjXGYIxB0ersmPrWrqsM91lfYo0VZllWLQZ/369R7AXV6BiEfgI5+qsdw8hah", + "NMZMbtEh2kkzsTsi6KXbih0CvDpE0oP9mEKfniCbI+qVaO+gTl6yqkGXRXyLHna9Bv/qEP2EHt54pxhd", + "lQahI86WcZx6lFUZpZBfdm0CES8KsdYnW94nr7zO3xhfhmpQ32Z/DS5WNFEVN0JMMeVMDS8BNZGNLWI3", + "MS3YCSA/dJJxA8TUJAdOEHSPIOW2lKE1Na1rw31Vss9SydaC3JwFueaSmqsMZ4myefFNjxGDkpsOgSmO", + "DJsa1q7979W4fikefGD0qFTmk4gD2uNtY2WdbxNaZ3pHHOw1m9tylL+Hvn8D3Vv9KP+H/A1zG5FTb/wy", + "eoU3UZpjypmKqW+Ky9RUFJiWC/YzFQAfr9+m7RsT7hi4PyICIooFZK6mDOwh9hVaWWifRuS/Kt5nqXhr", + "ArBEAlCsrLkTAEPK9hKAbkYsJABdBOwlABMZW41sYDW4X4qnHxm1VhT89OKF3gxhvALPnyF0zbV2hjDJ", + "RJfSBf0swYLNMF7XBYLhB0tzFAIw5mgXE8zZLkJ0R5EvTLwRQ14YQEyYIZbkdCT0PIrYWFwE8fuQ3o6f", + "Y+hyfDd2dm+QPKc2UjCYHHYsHHppPMfwRwx9zB8KT4SIyK7HTsQRUs8WLnZ32GF39Mii+MbHbp70j/Zm", + "bMs45DGziCnZ0h2HYuyVkUJnzFzykjn3+ziKQsqRB2780L11jxCTwrrvaRjISwlXoXuLOLhMVnXTsmtl", + "2qvxXo33arxX4/2XNt5r3WqButXs5aqlq1RTFaemrUlZDUY0KlFrQLIGJGtAsgYkazZpo65rWs61a/37", + "irifQfHWqGZrcTYlYkTvsnkSy+vCOXIeXZyd+aEL/WPI+MU35+fnzuOnx/8PAAD//7aZgPw+NwEA", +} + +// GetSwagger returns the content of the embedded swagger specification file +// or error if failed to decode +func decodeSpec() ([]byte, error) { + zipped, err := base64.StdEncoding.DecodeString(strings.Join(swaggerSpec, "")) + if err != nil { + return nil, fmt.Errorf("error base64 decoding spec: %w", err) + } + zr, err := gzip.NewReader(bytes.NewReader(zipped)) + if err != nil { + return nil, fmt.Errorf("error decompressing spec: %w", err) + } + var buf bytes.Buffer + _, err = buf.ReadFrom(zr) + if err != nil { + return nil, fmt.Errorf("error decompressing spec: %w", err) + } + + return buf.Bytes(), nil +} + +var rawSpec = decodeSpecCached() + +// a naive cached of a decoded swagger spec +func decodeSpecCached() func() ([]byte, error) { + data, err := decodeSpec() + return func() ([]byte, error) { + return data, err + } +} + +// Constructs a synthetic filesystem for resolving external references when loading openapi specifications. +func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error) { + res := make(map[string]func() ([]byte, error)) + if len(pathToFile) > 0 { + res[pathToFile] = rawSpec + } + + return res +} + +// GetSwagger returns the Swagger specification corresponding to the generated code +// in this file. The external references of Swagger specification are resolved. +// The logic of resolving external references is tightly connected to "import-mapping" feature. +// Externally referenced files must be embedded in the corresponding golang packages. +// Urls can be supported but this task was out of the scope. +func GetSwagger() (swagger *openapi3.T, err error) { + resolvePath := PathToRawSpec("") + + loader := openapi3.NewLoader() + loader.IsExternalRefsAllowed = true + loader.ReadFromURIFunc = func(loader *openapi3.Loader, url *url.URL) ([]byte, error) { + pathToFile := url.String() + pathToFile = path.Clean(pathToFile) + getSpec, ok := resolvePath[pathToFile] + if !ok { + err1 := fmt.Errorf("path not found: %s", pathToFile) + return nil, err1 + } + return getSpec() + } + var specData []byte + specData, err = rawSpec() + if err != nil { + return + } + swagger, err = loader.LoadFromData(specData) + if err != nil { + return + } + return +} diff --git a/portal-db/sdk/go/go.mod b/portal-db/sdk/go/go.mod new file mode 100644 index 000000000..e61ef7b0d --- /dev/null +++ b/portal-db/sdk/go/go.mod @@ -0,0 +1,25 @@ +module github.com/buildwithgrove/path/portal-db/sdk/go + +go 1.22.5 + +toolchain go1.24.3 + +require ( + github.com/getkin/kin-openapi v0.133.0 + github.com/oapi-codegen/runtime v1.1.1 +) + +require ( + github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect + github.com/go-openapi/jsonpointer v0.21.0 // indirect + github.com/go-openapi/swag v0.23.0 // indirect + github.com/google/uuid v1.5.0 // indirect + github.com/josharian/intern v1.0.0 // indirect + github.com/mailru/easyjson v0.7.7 // indirect + github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect + github.com/oasdiff/yaml v0.0.0-20250309154309-f31be36b4037 // indirect + github.com/oasdiff/yaml3 v0.0.0-20250309153720-d2182401db90 // indirect + github.com/perimeterx/marshmallow v1.1.5 // indirect + github.com/woodsbury/decimal128 v1.3.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect +) diff --git a/portal-db/sdk/go/go.sum b/portal-db/sdk/go/go.sum new file mode 100644 index 000000000..65805ac2a --- /dev/null +++ b/portal-db/sdk/go/go.sum @@ -0,0 +1,54 @@ +github.com/RaveNoX/go-jsoncommentstrip v1.0.0/go.mod h1:78ihd09MekBnJnxpICcwzCMzGrKSKYe4AqU6PDYYpjk= +github.com/apapsch/go-jsonmerge/v2 v2.0.0 h1:axGnT1gRIfimI7gJifB699GoE/oq+F2MU7Dml6nw9rQ= +github.com/apapsch/go-jsonmerge/v2 v2.0.0/go.mod h1:lvDnEdqiQrp0O42VQGgmlKpxL1AP2+08jFMw88y4klk= +github.com/bmatcuk/doublestar v1.1.1/go.mod h1:UD6OnuiIn0yFxxA2le/rnRU1G4RaI4UvFv1sNto9p6w= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/getkin/kin-openapi v0.133.0 h1:pJdmNohVIJ97r4AUFtEXRXwESr8b0bD721u/Tz6k8PQ= +github.com/getkin/kin-openapi v0.133.0/go.mod h1:boAciF6cXk5FhPqe/NQeBTeenbjqU4LhWBf09ILVvWE= +github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ= +github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY= +github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+GrE= +github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ= +github.com/go-test/deep v1.0.8 h1:TDsG77qcSprGbC6vTN8OuXp5g+J+b5Pcguhf7Zt61VM= +github.com/go-test/deep v1.0.8/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE= +github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= +github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= +github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/juju/gnuflag v0.0.0-20171113085948-2ce1bb71843d/go.mod h1:2PavIy+JPciBPrBUjwbNvtwB6RQlve+hkpll6QSNmOE= +github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= +github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 h1:RWengNIwukTxcDr9M+97sNutRR1RKhG96O6jWumTTnw= +github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8= +github.com/oapi-codegen/runtime v1.1.1 h1:EXLHh0DXIJnWhdRPN2w4MXAzFyE4CskzhNLUmtpMYro= +github.com/oapi-codegen/runtime v1.1.1/go.mod h1:SK9X900oXmPWilYR5/WKPzt3Kqxn/uS/+lbpREv+eCg= +github.com/oasdiff/yaml v0.0.0-20250309154309-f31be36b4037 h1:G7ERwszslrBzRxj//JalHPu/3yz+De2J+4aLtSRlHiY= +github.com/oasdiff/yaml v0.0.0-20250309154309-f31be36b4037/go.mod h1:2bpvgLBZEtENV5scfDFEtB/5+1M4hkQhDQrccEJ/qGw= +github.com/oasdiff/yaml3 v0.0.0-20250309153720-d2182401db90 h1:bQx3WeLcUWy+RletIKwUIt4x3t8n2SxavmoclizMb8c= +github.com/oasdiff/yaml3 v0.0.0-20250309153720-d2182401db90/go.mod h1:y5+oSEHCPT/DGrS++Wc/479ERge0zTFxaF8PbGKcg2o= +github.com/perimeterx/marshmallow v1.1.5 h1:a2LALqQ1BlHM8PZblsDdidgv1mWi1DgC2UmX50IvK2s= +github.com/perimeterx/marshmallow v1.1.5/go.mod h1:dsXbUu8CRzfYP5a87xpp0xq9S3u0Vchtcl8we9tYaXw= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= +github.com/spkg/bom v0.0.0-20160624110644-59b7046e48ad/go.mod h1:qLr4V1qq6nMqFKkMo8ZTx3f+BZEkzsRUY10Xsm2mwU0= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/ugorji/go/codec v1.2.11 h1:BMaWp1Bb6fHwEtbplGBGJ498wD+LKlNSl25MjdZY4dU= +github.com/ugorji/go/codec v1.2.11/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg= +github.com/woodsbury/decimal128 v1.3.0 h1:8pffMNWIlC0O5vbyHWFZAt5yWvWcrHA+3ovIIjVWss0= +github.com/woodsbury/decimal128 v1.3.0/go.mod h1:C5UTmyTjW3JftjUFzOVhC20BEQa2a4ZKOB5I6Zjb+ds= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/portal-db/sdk/go/models.go b/portal-db/sdk/go/models.go new file mode 100644 index 000000000..ce5370d49 --- /dev/null +++ b/portal-db/sdk/go/models.go @@ -0,0 +1,2404 @@ +// Package portaldb provides primitives to interact with the openapi HTTP API. +// +// Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.0 DO NOT EDIT. +package portaldb + +// Defines values for PortalAccountsPortalAccountUserLimitInterval. +const ( + PortalAccountsPortalAccountUserLimitIntervalDay PortalAccountsPortalAccountUserLimitInterval = "day" + PortalAccountsPortalAccountUserLimitIntervalMonth PortalAccountsPortalAccountUserLimitInterval = "month" + PortalAccountsPortalAccountUserLimitIntervalYear PortalAccountsPortalAccountUserLimitInterval = "year" +) + +// Defines values for PortalApplicationsPortalApplicationUserLimitInterval. +const ( + PortalApplicationsPortalApplicationUserLimitIntervalDay PortalApplicationsPortalApplicationUserLimitInterval = "day" + PortalApplicationsPortalApplicationUserLimitIntervalMonth PortalApplicationsPortalApplicationUserLimitInterval = "month" + PortalApplicationsPortalApplicationUserLimitIntervalYear PortalApplicationsPortalApplicationUserLimitInterval = "year" +) + +// Defines values for PortalPlansPlanUsageLimitInterval. +const ( + Day PortalPlansPlanUsageLimitInterval = "day" + Month PortalPlansPlanUsageLimitInterval = "month" + Year PortalPlansPlanUsageLimitInterval = "year" +) + +// Defines values for ServiceEndpointsEndpointType. +const ( + CometBFT ServiceEndpointsEndpointType = "cometBFT" + Cosmos ServiceEndpointsEndpointType = "cosmos" + GRPC ServiceEndpointsEndpointType = "gRPC" + JSONRPC ServiceEndpointsEndpointType = "JSON-RPC" + REST ServiceEndpointsEndpointType = "REST" + WSS ServiceEndpointsEndpointType = "WSS" +) + +// Defines values for PreferCount. +const ( + PreferCountCountNone PreferCount = "count=none" +) + +// Defines values for PreferParams. +const ( + PreferParamsParamsSingleObject PreferParams = "params=single-object" +) + +// Defines values for PreferPost. +const ( + PreferPostResolutionIgnoreDuplicates PreferPost = "resolution=ignore-duplicates" + PreferPostResolutionMergeDuplicates PreferPost = "resolution=merge-duplicates" + PreferPostReturnMinimal PreferPost = "return=minimal" + PreferPostReturnNone PreferPost = "return=none" + PreferPostReturnRepresentation PreferPost = "return=representation" +) + +// Defines values for PreferReturn. +const ( + PreferReturnReturnMinimal PreferReturn = "return=minimal" + PreferReturnReturnNone PreferReturn = "return=none" + PreferReturnReturnRepresentation PreferReturn = "return=representation" +) + +// Defines values for DeleteNetworksParamsPrefer. +const ( + DeleteNetworksParamsPreferReturnMinimal DeleteNetworksParamsPrefer = "return=minimal" + DeleteNetworksParamsPreferReturnNone DeleteNetworksParamsPrefer = "return=none" + DeleteNetworksParamsPreferReturnRepresentation DeleteNetworksParamsPrefer = "return=representation" +) + +// Defines values for GetNetworksParamsPrefer. +const ( + GetNetworksParamsPreferCountNone GetNetworksParamsPrefer = "count=none" +) + +// Defines values for PatchNetworksParamsPrefer. +const ( + PatchNetworksParamsPreferReturnMinimal PatchNetworksParamsPrefer = "return=minimal" + PatchNetworksParamsPreferReturnNone PatchNetworksParamsPrefer = "return=none" + PatchNetworksParamsPreferReturnRepresentation PatchNetworksParamsPrefer = "return=representation" +) + +// Defines values for PostNetworksParamsPrefer. +const ( + PostNetworksParamsPreferResolutionIgnoreDuplicates PostNetworksParamsPrefer = "resolution=ignore-duplicates" + PostNetworksParamsPreferResolutionMergeDuplicates PostNetworksParamsPrefer = "resolution=merge-duplicates" + PostNetworksParamsPreferReturnMinimal PostNetworksParamsPrefer = "return=minimal" + PostNetworksParamsPreferReturnNone PostNetworksParamsPrefer = "return=none" + PostNetworksParamsPreferReturnRepresentation PostNetworksParamsPrefer = "return=representation" +) + +// Defines values for DeleteOrganizationsParamsPrefer. +const ( + DeleteOrganizationsParamsPreferReturnMinimal DeleteOrganizationsParamsPrefer = "return=minimal" + DeleteOrganizationsParamsPreferReturnNone DeleteOrganizationsParamsPrefer = "return=none" + DeleteOrganizationsParamsPreferReturnRepresentation DeleteOrganizationsParamsPrefer = "return=representation" +) + +// Defines values for GetOrganizationsParamsPrefer. +const ( + GetOrganizationsParamsPreferCountNone GetOrganizationsParamsPrefer = "count=none" +) + +// Defines values for PatchOrganizationsParamsPrefer. +const ( + PatchOrganizationsParamsPreferReturnMinimal PatchOrganizationsParamsPrefer = "return=minimal" + PatchOrganizationsParamsPreferReturnNone PatchOrganizationsParamsPrefer = "return=none" + PatchOrganizationsParamsPreferReturnRepresentation PatchOrganizationsParamsPrefer = "return=representation" +) + +// Defines values for PostOrganizationsParamsPrefer. +const ( + PostOrganizationsParamsPreferResolutionIgnoreDuplicates PostOrganizationsParamsPrefer = "resolution=ignore-duplicates" + PostOrganizationsParamsPreferResolutionMergeDuplicates PostOrganizationsParamsPrefer = "resolution=merge-duplicates" + PostOrganizationsParamsPreferReturnMinimal PostOrganizationsParamsPrefer = "return=minimal" + PostOrganizationsParamsPreferReturnNone PostOrganizationsParamsPrefer = "return=none" + PostOrganizationsParamsPreferReturnRepresentation PostOrganizationsParamsPrefer = "return=representation" +) + +// Defines values for DeletePortalAccountRbacParamsPrefer. +const ( + DeletePortalAccountRbacParamsPreferReturnMinimal DeletePortalAccountRbacParamsPrefer = "return=minimal" + DeletePortalAccountRbacParamsPreferReturnNone DeletePortalAccountRbacParamsPrefer = "return=none" + DeletePortalAccountRbacParamsPreferReturnRepresentation DeletePortalAccountRbacParamsPrefer = "return=representation" +) + +// Defines values for GetPortalAccountRbacParamsPrefer. +const ( + GetPortalAccountRbacParamsPreferCountNone GetPortalAccountRbacParamsPrefer = "count=none" +) + +// Defines values for PatchPortalAccountRbacParamsPrefer. +const ( + PatchPortalAccountRbacParamsPreferReturnMinimal PatchPortalAccountRbacParamsPrefer = "return=minimal" + PatchPortalAccountRbacParamsPreferReturnNone PatchPortalAccountRbacParamsPrefer = "return=none" + PatchPortalAccountRbacParamsPreferReturnRepresentation PatchPortalAccountRbacParamsPrefer = "return=representation" +) + +// Defines values for PostPortalAccountRbacParamsPrefer. +const ( + PostPortalAccountRbacParamsPreferResolutionIgnoreDuplicates PostPortalAccountRbacParamsPrefer = "resolution=ignore-duplicates" + PostPortalAccountRbacParamsPreferResolutionMergeDuplicates PostPortalAccountRbacParamsPrefer = "resolution=merge-duplicates" + PostPortalAccountRbacParamsPreferReturnMinimal PostPortalAccountRbacParamsPrefer = "return=minimal" + PostPortalAccountRbacParamsPreferReturnNone PostPortalAccountRbacParamsPrefer = "return=none" + PostPortalAccountRbacParamsPreferReturnRepresentation PostPortalAccountRbacParamsPrefer = "return=representation" +) + +// Defines values for DeletePortalAccountsParamsPrefer. +const ( + DeletePortalAccountsParamsPreferReturnMinimal DeletePortalAccountsParamsPrefer = "return=minimal" + DeletePortalAccountsParamsPreferReturnNone DeletePortalAccountsParamsPrefer = "return=none" + DeletePortalAccountsParamsPreferReturnRepresentation DeletePortalAccountsParamsPrefer = "return=representation" +) + +// Defines values for GetPortalAccountsParamsPrefer. +const ( + GetPortalAccountsParamsPreferCountNone GetPortalAccountsParamsPrefer = "count=none" +) + +// Defines values for PatchPortalAccountsParamsPrefer. +const ( + PatchPortalAccountsParamsPreferReturnMinimal PatchPortalAccountsParamsPrefer = "return=minimal" + PatchPortalAccountsParamsPreferReturnNone PatchPortalAccountsParamsPrefer = "return=none" + PatchPortalAccountsParamsPreferReturnRepresentation PatchPortalAccountsParamsPrefer = "return=representation" +) + +// Defines values for PostPortalAccountsParamsPrefer. +const ( + PostPortalAccountsParamsPreferResolutionIgnoreDuplicates PostPortalAccountsParamsPrefer = "resolution=ignore-duplicates" + PostPortalAccountsParamsPreferResolutionMergeDuplicates PostPortalAccountsParamsPrefer = "resolution=merge-duplicates" + PostPortalAccountsParamsPreferReturnMinimal PostPortalAccountsParamsPrefer = "return=minimal" + PostPortalAccountsParamsPreferReturnNone PostPortalAccountsParamsPrefer = "return=none" + PostPortalAccountsParamsPreferReturnRepresentation PostPortalAccountsParamsPrefer = "return=representation" +) + +// Defines values for DeletePortalApplicationRbacParamsPrefer. +const ( + DeletePortalApplicationRbacParamsPreferReturnMinimal DeletePortalApplicationRbacParamsPrefer = "return=minimal" + DeletePortalApplicationRbacParamsPreferReturnNone DeletePortalApplicationRbacParamsPrefer = "return=none" + DeletePortalApplicationRbacParamsPreferReturnRepresentation DeletePortalApplicationRbacParamsPrefer = "return=representation" +) + +// Defines values for GetPortalApplicationRbacParamsPrefer. +const ( + GetPortalApplicationRbacParamsPreferCountNone GetPortalApplicationRbacParamsPrefer = "count=none" +) + +// Defines values for PatchPortalApplicationRbacParamsPrefer. +const ( + PatchPortalApplicationRbacParamsPreferReturnMinimal PatchPortalApplicationRbacParamsPrefer = "return=minimal" + PatchPortalApplicationRbacParamsPreferReturnNone PatchPortalApplicationRbacParamsPrefer = "return=none" + PatchPortalApplicationRbacParamsPreferReturnRepresentation PatchPortalApplicationRbacParamsPrefer = "return=representation" +) + +// Defines values for PostPortalApplicationRbacParamsPrefer. +const ( + PostPortalApplicationRbacParamsPreferResolutionIgnoreDuplicates PostPortalApplicationRbacParamsPrefer = "resolution=ignore-duplicates" + PostPortalApplicationRbacParamsPreferResolutionMergeDuplicates PostPortalApplicationRbacParamsPrefer = "resolution=merge-duplicates" + PostPortalApplicationRbacParamsPreferReturnMinimal PostPortalApplicationRbacParamsPrefer = "return=minimal" + PostPortalApplicationRbacParamsPreferReturnNone PostPortalApplicationRbacParamsPrefer = "return=none" + PostPortalApplicationRbacParamsPreferReturnRepresentation PostPortalApplicationRbacParamsPrefer = "return=representation" +) + +// Defines values for DeletePortalApplicationsParamsPrefer. +const ( + DeletePortalApplicationsParamsPreferReturnMinimal DeletePortalApplicationsParamsPrefer = "return=minimal" + DeletePortalApplicationsParamsPreferReturnNone DeletePortalApplicationsParamsPrefer = "return=none" + DeletePortalApplicationsParamsPreferReturnRepresentation DeletePortalApplicationsParamsPrefer = "return=representation" +) + +// Defines values for GetPortalApplicationsParamsPrefer. +const ( + GetPortalApplicationsParamsPreferCountNone GetPortalApplicationsParamsPrefer = "count=none" +) + +// Defines values for PatchPortalApplicationsParamsPrefer. +const ( + PatchPortalApplicationsParamsPreferReturnMinimal PatchPortalApplicationsParamsPrefer = "return=minimal" + PatchPortalApplicationsParamsPreferReturnNone PatchPortalApplicationsParamsPrefer = "return=none" + PatchPortalApplicationsParamsPreferReturnRepresentation PatchPortalApplicationsParamsPrefer = "return=representation" +) + +// Defines values for PostPortalApplicationsParamsPrefer. +const ( + PostPortalApplicationsParamsPreferResolutionIgnoreDuplicates PostPortalApplicationsParamsPrefer = "resolution=ignore-duplicates" + PostPortalApplicationsParamsPreferResolutionMergeDuplicates PostPortalApplicationsParamsPrefer = "resolution=merge-duplicates" + PostPortalApplicationsParamsPreferReturnMinimal PostPortalApplicationsParamsPrefer = "return=minimal" + PostPortalApplicationsParamsPreferReturnNone PostPortalApplicationsParamsPrefer = "return=none" + PostPortalApplicationsParamsPreferReturnRepresentation PostPortalApplicationsParamsPrefer = "return=representation" +) + +// Defines values for DeletePortalPlansParamsPrefer. +const ( + DeletePortalPlansParamsPreferReturnMinimal DeletePortalPlansParamsPrefer = "return=minimal" + DeletePortalPlansParamsPreferReturnNone DeletePortalPlansParamsPrefer = "return=none" + DeletePortalPlansParamsPreferReturnRepresentation DeletePortalPlansParamsPrefer = "return=representation" +) + +// Defines values for GetPortalPlansParamsPrefer. +const ( + GetPortalPlansParamsPreferCountNone GetPortalPlansParamsPrefer = "count=none" +) + +// Defines values for PatchPortalPlansParamsPrefer. +const ( + PatchPortalPlansParamsPreferReturnMinimal PatchPortalPlansParamsPrefer = "return=minimal" + PatchPortalPlansParamsPreferReturnNone PatchPortalPlansParamsPrefer = "return=none" + PatchPortalPlansParamsPreferReturnRepresentation PatchPortalPlansParamsPrefer = "return=representation" +) + +// Defines values for PostPortalPlansParamsPrefer. +const ( + PostPortalPlansParamsPreferResolutionIgnoreDuplicates PostPortalPlansParamsPrefer = "resolution=ignore-duplicates" + PostPortalPlansParamsPreferResolutionMergeDuplicates PostPortalPlansParamsPrefer = "resolution=merge-duplicates" + PostPortalPlansParamsPreferReturnMinimal PostPortalPlansParamsPrefer = "return=minimal" + PostPortalPlansParamsPreferReturnNone PostPortalPlansParamsPrefer = "return=none" + PostPortalPlansParamsPreferReturnRepresentation PostPortalPlansParamsPrefer = "return=representation" +) + +// Defines values for DeletePortalUsersParamsPrefer. +const ( + DeletePortalUsersParamsPreferReturnMinimal DeletePortalUsersParamsPrefer = "return=minimal" + DeletePortalUsersParamsPreferReturnNone DeletePortalUsersParamsPrefer = "return=none" + DeletePortalUsersParamsPreferReturnRepresentation DeletePortalUsersParamsPrefer = "return=representation" +) + +// Defines values for GetPortalUsersParamsPrefer. +const ( + GetPortalUsersParamsPreferCountNone GetPortalUsersParamsPrefer = "count=none" +) + +// Defines values for PatchPortalUsersParamsPrefer. +const ( + PatchPortalUsersParamsPreferReturnMinimal PatchPortalUsersParamsPrefer = "return=minimal" + PatchPortalUsersParamsPreferReturnNone PatchPortalUsersParamsPrefer = "return=none" + PatchPortalUsersParamsPreferReturnRepresentation PatchPortalUsersParamsPrefer = "return=representation" +) + +// Defines values for PostPortalUsersParamsPrefer. +const ( + PostPortalUsersParamsPreferResolutionIgnoreDuplicates PostPortalUsersParamsPrefer = "resolution=ignore-duplicates" + PostPortalUsersParamsPreferResolutionMergeDuplicates PostPortalUsersParamsPrefer = "resolution=merge-duplicates" + PostPortalUsersParamsPreferReturnMinimal PostPortalUsersParamsPrefer = "return=minimal" + PostPortalUsersParamsPreferReturnNone PostPortalUsersParamsPrefer = "return=none" + PostPortalUsersParamsPreferReturnRepresentation PostPortalUsersParamsPrefer = "return=representation" +) + +// Defines values for GetPortalWorkersAccountDataParamsPrefer. +const ( + GetPortalWorkersAccountDataParamsPreferCountNone GetPortalWorkersAccountDataParamsPrefer = "count=none" +) + +// Defines values for PostRpcArmorParamsPrefer. +const ( + PostRpcArmorParamsPreferParamsSingleObject PostRpcArmorParamsPrefer = "params=single-object" +) + +// Defines values for PostRpcDearmorParamsPrefer. +const ( + PostRpcDearmorParamsPreferParamsSingleObject PostRpcDearmorParamsPrefer = "params=single-object" +) + +// Defines values for PostRpcGenRandomUuidParamsPrefer. +const ( + PostRpcGenRandomUuidParamsPreferParamsSingleObject PostRpcGenRandomUuidParamsPrefer = "params=single-object" +) + +// Defines values for PostRpcGenSaltParamsPrefer. +const ( + PostRpcGenSaltParamsPreferParamsSingleObject PostRpcGenSaltParamsPrefer = "params=single-object" +) + +// Defines values for PostRpcPgpArmorHeadersParamsPrefer. +const ( + PostRpcPgpArmorHeadersParamsPreferParamsSingleObject PostRpcPgpArmorHeadersParamsPrefer = "params=single-object" +) + +// Defines values for PostRpcPgpKeyIdParamsPrefer. +const ( + ParamsSingleObject PostRpcPgpKeyIdParamsPrefer = "params=single-object" +) + +// Defines values for DeleteServiceEndpointsParamsPrefer. +const ( + DeleteServiceEndpointsParamsPreferReturnMinimal DeleteServiceEndpointsParamsPrefer = "return=minimal" + DeleteServiceEndpointsParamsPreferReturnNone DeleteServiceEndpointsParamsPrefer = "return=none" + DeleteServiceEndpointsParamsPreferReturnRepresentation DeleteServiceEndpointsParamsPrefer = "return=representation" +) + +// Defines values for GetServiceEndpointsParamsPrefer. +const ( + GetServiceEndpointsParamsPreferCountNone GetServiceEndpointsParamsPrefer = "count=none" +) + +// Defines values for PatchServiceEndpointsParamsPrefer. +const ( + PatchServiceEndpointsParamsPreferReturnMinimal PatchServiceEndpointsParamsPrefer = "return=minimal" + PatchServiceEndpointsParamsPreferReturnNone PatchServiceEndpointsParamsPrefer = "return=none" + PatchServiceEndpointsParamsPreferReturnRepresentation PatchServiceEndpointsParamsPrefer = "return=representation" +) + +// Defines values for PostServiceEndpointsParamsPrefer. +const ( + PostServiceEndpointsParamsPreferResolutionIgnoreDuplicates PostServiceEndpointsParamsPrefer = "resolution=ignore-duplicates" + PostServiceEndpointsParamsPreferResolutionMergeDuplicates PostServiceEndpointsParamsPrefer = "resolution=merge-duplicates" + PostServiceEndpointsParamsPreferReturnMinimal PostServiceEndpointsParamsPrefer = "return=minimal" + PostServiceEndpointsParamsPreferReturnNone PostServiceEndpointsParamsPrefer = "return=none" + PostServiceEndpointsParamsPreferReturnRepresentation PostServiceEndpointsParamsPrefer = "return=representation" +) + +// Defines values for DeleteServiceFallbacksParamsPrefer. +const ( + DeleteServiceFallbacksParamsPreferReturnMinimal DeleteServiceFallbacksParamsPrefer = "return=minimal" + DeleteServiceFallbacksParamsPreferReturnNone DeleteServiceFallbacksParamsPrefer = "return=none" + DeleteServiceFallbacksParamsPreferReturnRepresentation DeleteServiceFallbacksParamsPrefer = "return=representation" +) + +// Defines values for GetServiceFallbacksParamsPrefer. +const ( + GetServiceFallbacksParamsPreferCountNone GetServiceFallbacksParamsPrefer = "count=none" +) + +// Defines values for PatchServiceFallbacksParamsPrefer. +const ( + PatchServiceFallbacksParamsPreferReturnMinimal PatchServiceFallbacksParamsPrefer = "return=minimal" + PatchServiceFallbacksParamsPreferReturnNone PatchServiceFallbacksParamsPrefer = "return=none" + PatchServiceFallbacksParamsPreferReturnRepresentation PatchServiceFallbacksParamsPrefer = "return=representation" +) + +// Defines values for PostServiceFallbacksParamsPrefer. +const ( + PostServiceFallbacksParamsPreferResolutionIgnoreDuplicates PostServiceFallbacksParamsPrefer = "resolution=ignore-duplicates" + PostServiceFallbacksParamsPreferResolutionMergeDuplicates PostServiceFallbacksParamsPrefer = "resolution=merge-duplicates" + PostServiceFallbacksParamsPreferReturnMinimal PostServiceFallbacksParamsPrefer = "return=minimal" + PostServiceFallbacksParamsPreferReturnNone PostServiceFallbacksParamsPrefer = "return=none" + PostServiceFallbacksParamsPreferReturnRepresentation PostServiceFallbacksParamsPrefer = "return=representation" +) + +// Defines values for DeleteServicesParamsPrefer. +const ( + DeleteServicesParamsPreferReturnMinimal DeleteServicesParamsPrefer = "return=minimal" + DeleteServicesParamsPreferReturnNone DeleteServicesParamsPrefer = "return=none" + DeleteServicesParamsPreferReturnRepresentation DeleteServicesParamsPrefer = "return=representation" +) + +// Defines values for GetServicesParamsPrefer. +const ( + CountNone GetServicesParamsPrefer = "count=none" +) + +// Defines values for PatchServicesParamsPrefer. +const ( + PatchServicesParamsPreferReturnMinimal PatchServicesParamsPrefer = "return=minimal" + PatchServicesParamsPreferReturnNone PatchServicesParamsPrefer = "return=none" + PatchServicesParamsPreferReturnRepresentation PatchServicesParamsPrefer = "return=representation" +) + +// Defines values for PostServicesParamsPrefer. +const ( + ResolutionIgnoreDuplicates PostServicesParamsPrefer = "resolution=ignore-duplicates" + ResolutionMergeDuplicates PostServicesParamsPrefer = "resolution=merge-duplicates" + ReturnMinimal PostServicesParamsPrefer = "return=minimal" + ReturnNone PostServicesParamsPrefer = "return=none" + ReturnRepresentation PostServicesParamsPrefer = "return=representation" +) + +// Networks Supported blockchain networks (Pocket mainnet, testnet, etc.) +type Networks struct { + // NetworkId Note: + // This is a Primary Key. + NetworkId string `json:"network_id"` +} + +// Organizations Companies or customer groups that can be attached to Portal Accounts +type Organizations struct { + CreatedAt *string `json:"created_at,omitempty"` + + // DeletedAt Soft delete timestamp + DeletedAt *string `json:"deleted_at,omitempty"` + + // OrganizationId Note: + // This is a Primary Key. + OrganizationId int `json:"organization_id"` + + // OrganizationName Name of the organization + OrganizationName string `json:"organization_name"` + UpdatedAt *string `json:"updated_at,omitempty"` +} + +// PortalAccountRbac User roles and permissions for specific portal accounts +type PortalAccountRbac struct { + // Id Note: + // This is a Primary Key. + Id int `json:"id"` + + // PortalAccountId Note: + // This is a Foreign Key to `portal_accounts.portal_account_id`. + PortalAccountId string `json:"portal_account_id"` + + // PortalUserId Note: + // This is a Foreign Key to `portal_users.portal_user_id`. + PortalUserId string `json:"portal_user_id"` + RoleName string `json:"role_name"` + UserJoinedAccount *bool `json:"user_joined_account,omitempty"` +} + +// PortalAccounts Multi-tenant accounts with plans and billing integration +type PortalAccounts struct { + BillingType *string `json:"billing_type,omitempty"` + CreatedAt *string `json:"created_at,omitempty"` + DeletedAt *string `json:"deleted_at,omitempty"` + GcpAccountId *string `json:"gcp_account_id,omitempty"` + GcpEntitlementId *string `json:"gcp_entitlement_id,omitempty"` + InternalAccountName *string `json:"internal_account_name,omitempty"` + + // OrganizationId Note: + // This is a Foreign Key to `organizations.organization_id`. + OrganizationId *int `json:"organization_id,omitempty"` + + // PortalAccountId Unique identifier for the portal account + // + // Note: + // This is a Primary Key. + PortalAccountId string `json:"portal_account_id"` + PortalAccountUserLimit *int `json:"portal_account_user_limit,omitempty"` + PortalAccountUserLimitInterval *PortalAccountsPortalAccountUserLimitInterval `json:"portal_account_user_limit_interval,omitempty"` + PortalAccountUserLimitRps *int `json:"portal_account_user_limit_rps,omitempty"` + + // PortalPlanType Note: + // This is a Foreign Key to `portal_plans.portal_plan_type`. + PortalPlanType string `json:"portal_plan_type"` + + // StripeSubscriptionId Stripe subscription identifier for billing + StripeSubscriptionId *string `json:"stripe_subscription_id,omitempty"` + UpdatedAt *string `json:"updated_at,omitempty"` + UserAccountName *string `json:"user_account_name,omitempty"` +} + +// PortalAccountsPortalAccountUserLimitInterval defines model for PortalAccounts.PortalAccountUserLimitInterval. +type PortalAccountsPortalAccountUserLimitInterval string + +// PortalApplicationRbac User access controls for specific applications +type PortalApplicationRbac struct { + CreatedAt *string `json:"created_at,omitempty"` + + // Id Note: + // This is a Primary Key. + Id int `json:"id"` + + // PortalApplicationId Note: + // This is a Foreign Key to `portal_applications.portal_application_id`. + PortalApplicationId string `json:"portal_application_id"` + + // PortalUserId Note: + // This is a Foreign Key to `portal_users.portal_user_id`. + PortalUserId string `json:"portal_user_id"` + UpdatedAt *string `json:"updated_at,omitempty"` +} + +// PortalApplications Applications created within portal accounts with their own rate limits and settings +type PortalApplications struct { + CreatedAt *string `json:"created_at,omitempty"` + DeletedAt *string `json:"deleted_at,omitempty"` + Emoji *string `json:"emoji,omitempty"` + FavoriteServiceIds *[]string `json:"favorite_service_ids,omitempty"` + + // PortalAccountId Note: + // This is a Foreign Key to `portal_accounts.portal_account_id`. + PortalAccountId string `json:"portal_account_id"` + PortalApplicationDescription *string `json:"portal_application_description,omitempty"` + + // PortalApplicationId Note: + // This is a Primary Key. + PortalApplicationId string `json:"portal_application_id"` + PortalApplicationName *string `json:"portal_application_name,omitempty"` + PortalApplicationUserLimit *int `json:"portal_application_user_limit,omitempty"` + PortalApplicationUserLimitInterval *PortalApplicationsPortalApplicationUserLimitInterval `json:"portal_application_user_limit_interval,omitempty"` + PortalApplicationUserLimitRps *int `json:"portal_application_user_limit_rps,omitempty"` + + // SecretKeyHash Hashed secret key for application authentication + SecretKeyHash *string `json:"secret_key_hash,omitempty"` + SecretKeyRequired *bool `json:"secret_key_required,omitempty"` + UpdatedAt *string `json:"updated_at,omitempty"` +} + +// PortalApplicationsPortalApplicationUserLimitInterval defines model for PortalApplications.PortalApplicationUserLimitInterval. +type PortalApplicationsPortalApplicationUserLimitInterval string + +// PortalPlans Available subscription plans for Portal Accounts +type PortalPlans struct { + PlanApplicationLimit *int `json:"plan_application_limit,omitempty"` + + // PlanRateLimitRps Rate limit in requests per second + PlanRateLimitRps *int `json:"plan_rate_limit_rps,omitempty"` + + // PlanUsageLimit Maximum usage allowed within the interval + PlanUsageLimit *int `json:"plan_usage_limit,omitempty"` + PlanUsageLimitInterval *PortalPlansPlanUsageLimitInterval `json:"plan_usage_limit_interval,omitempty"` + + // PortalPlanType Note: + // This is a Primary Key. + PortalPlanType string `json:"portal_plan_type"` + PortalPlanTypeDescription *string `json:"portal_plan_type_description,omitempty"` +} + +// PortalPlansPlanUsageLimitInterval defines model for PortalPlans.PlanUsageLimitInterval. +type PortalPlansPlanUsageLimitInterval string + +// PortalUsers Users who can access the portal and belong to multiple accounts +type PortalUsers struct { + CreatedAt *string `json:"created_at,omitempty"` + DeletedAt *string `json:"deleted_at,omitempty"` + + // PortalAdmin Whether user has admin privileges across the portal + PortalAdmin *bool `json:"portal_admin,omitempty"` + + // PortalUserEmail Unique email address for the user + PortalUserEmail string `json:"portal_user_email"` + + // PortalUserId Note: + // This is a Primary Key. + PortalUserId string `json:"portal_user_id"` + SignedUp *bool `json:"signed_up,omitempty"` + UpdatedAt *string `json:"updated_at,omitempty"` +} + +// PortalWorkersAccountData Account data for portal-workers billing operations with owner email. Filter using WHERE portal_plan_type = 'PLAN_UNLIMITED' AND billing_type = 'stripe' +type PortalWorkersAccountData struct { + BillingType *string `json:"billing_type,omitempty"` + GcpEntitlementId *string `json:"gcp_entitlement_id,omitempty"` + OwnerEmail *string `json:"owner_email,omitempty"` + + // OwnerUserId Note: + // This is a Primary Key. + OwnerUserId *string `json:"owner_user_id,omitempty"` + + // PortalAccountId Note: + // This is a Primary Key. + PortalAccountId *string `json:"portal_account_id,omitempty"` + PortalAccountUserLimit *int `json:"portal_account_user_limit,omitempty"` + + // PortalPlanType Note: + // This is a Foreign Key to `portal_plans.portal_plan_type`. + PortalPlanType *string `json:"portal_plan_type,omitempty"` + UserAccountName *string `json:"user_account_name,omitempty"` +} + +// ServiceEndpoints Available endpoint types for each service +type ServiceEndpoints struct { + CreatedAt *string `json:"created_at,omitempty"` + + // EndpointId Note: + // This is a Primary Key. + EndpointId int `json:"endpoint_id"` + EndpointType *ServiceEndpointsEndpointType `json:"endpoint_type,omitempty"` + + // ServiceId Note: + // This is a Foreign Key to `services.service_id`. + ServiceId string `json:"service_id"` + UpdatedAt *string `json:"updated_at,omitempty"` +} + +// ServiceEndpointsEndpointType defines model for ServiceEndpoints.EndpointType. +type ServiceEndpointsEndpointType string + +// ServiceFallbacks Fallback URLs for services when primary endpoints fail +type ServiceFallbacks struct { + CreatedAt *string `json:"created_at,omitempty"` + FallbackUrl string `json:"fallback_url"` + + // ServiceFallbackId Note: + // This is a Primary Key. + ServiceFallbackId int `json:"service_fallback_id"` + + // ServiceId Note: + // This is a Foreign Key to `services.service_id`. + ServiceId string `json:"service_id"` + UpdatedAt *string `json:"updated_at,omitempty"` +} + +// Services Supported blockchain services from the Pocket Network +type Services struct { + Active *bool `json:"active,omitempty"` + Beta *bool `json:"beta,omitempty"` + ComingSoon *bool `json:"coming_soon,omitempty"` + + // ComputeUnitsPerRelay Cost in compute units for each relay + ComputeUnitsPerRelay *int `json:"compute_units_per_relay,omitempty"` + CreatedAt *string `json:"created_at,omitempty"` + DeletedAt *string `json:"deleted_at,omitempty"` + HardFallbackEnabled *bool `json:"hard_fallback_enabled,omitempty"` + + // NetworkId Note: + // This is a Foreign Key to `networks.network_id`. + NetworkId *string `json:"network_id,omitempty"` + PublicEndpointUrl *string `json:"public_endpoint_url,omitempty"` + QualityFallbackEnabled *bool `json:"quality_fallback_enabled,omitempty"` + + // ServiceDomains Valid domains for this service + ServiceDomains []string `json:"service_domains"` + + // ServiceId Note: + // This is a Primary Key. + ServiceId string `json:"service_id"` + ServiceName string `json:"service_name"` + ServiceOwnerAddress *string `json:"service_owner_address,omitempty"` + StatusEndpointUrl *string `json:"status_endpoint_url,omitempty"` + StatusQuery *string `json:"status_query,omitempty"` + SvgIcon *string `json:"svg_icon,omitempty"` + UpdatedAt *string `json:"updated_at,omitempty"` +} + +// Limit defines model for limit. +type Limit = string + +// Offset defines model for offset. +type Offset = string + +// Order defines model for order. +type Order = string + +// PreferCount defines model for preferCount. +type PreferCount string + +// PreferParams defines model for preferParams. +type PreferParams string + +// PreferPost defines model for preferPost. +type PreferPost string + +// PreferReturn defines model for preferReturn. +type PreferReturn string + +// Range defines model for range. +type Range = string + +// RangeUnit defines model for rangeUnit. +type RangeUnit = string + +// RowFilterNetworksNetworkId defines model for rowFilter.networks.network_id. +type RowFilterNetworksNetworkId = string + +// RowFilterOrganizationsCreatedAt defines model for rowFilter.organizations.created_at. +type RowFilterOrganizationsCreatedAt = string + +// RowFilterOrganizationsDeletedAt defines model for rowFilter.organizations.deleted_at. +type RowFilterOrganizationsDeletedAt = string + +// RowFilterOrganizationsOrganizationId defines model for rowFilter.organizations.organization_id. +type RowFilterOrganizationsOrganizationId = string + +// RowFilterOrganizationsOrganizationName defines model for rowFilter.organizations.organization_name. +type RowFilterOrganizationsOrganizationName = string + +// RowFilterOrganizationsUpdatedAt defines model for rowFilter.organizations.updated_at. +type RowFilterOrganizationsUpdatedAt = string + +// RowFilterPortalAccountRbacId defines model for rowFilter.portal_account_rbac.id. +type RowFilterPortalAccountRbacId = string + +// RowFilterPortalAccountRbacPortalAccountId defines model for rowFilter.portal_account_rbac.portal_account_id. +type RowFilterPortalAccountRbacPortalAccountId = string + +// RowFilterPortalAccountRbacPortalUserId defines model for rowFilter.portal_account_rbac.portal_user_id. +type RowFilterPortalAccountRbacPortalUserId = string + +// RowFilterPortalAccountRbacRoleName defines model for rowFilter.portal_account_rbac.role_name. +type RowFilterPortalAccountRbacRoleName = string + +// RowFilterPortalAccountRbacUserJoinedAccount defines model for rowFilter.portal_account_rbac.user_joined_account. +type RowFilterPortalAccountRbacUserJoinedAccount = string + +// RowFilterPortalAccountsBillingType defines model for rowFilter.portal_accounts.billing_type. +type RowFilterPortalAccountsBillingType = string + +// RowFilterPortalAccountsCreatedAt defines model for rowFilter.portal_accounts.created_at. +type RowFilterPortalAccountsCreatedAt = string + +// RowFilterPortalAccountsDeletedAt defines model for rowFilter.portal_accounts.deleted_at. +type RowFilterPortalAccountsDeletedAt = string + +// RowFilterPortalAccountsGcpAccountId defines model for rowFilter.portal_accounts.gcp_account_id. +type RowFilterPortalAccountsGcpAccountId = string + +// RowFilterPortalAccountsGcpEntitlementId defines model for rowFilter.portal_accounts.gcp_entitlement_id. +type RowFilterPortalAccountsGcpEntitlementId = string + +// RowFilterPortalAccountsInternalAccountName defines model for rowFilter.portal_accounts.internal_account_name. +type RowFilterPortalAccountsInternalAccountName = string + +// RowFilterPortalAccountsOrganizationId defines model for rowFilter.portal_accounts.organization_id. +type RowFilterPortalAccountsOrganizationId = string + +// RowFilterPortalAccountsPortalAccountId defines model for rowFilter.portal_accounts.portal_account_id. +type RowFilterPortalAccountsPortalAccountId = string + +// RowFilterPortalAccountsPortalAccountUserLimit defines model for rowFilter.portal_accounts.portal_account_user_limit. +type RowFilterPortalAccountsPortalAccountUserLimit = string + +// RowFilterPortalAccountsPortalAccountUserLimitInterval defines model for rowFilter.portal_accounts.portal_account_user_limit_interval. +type RowFilterPortalAccountsPortalAccountUserLimitInterval = string + +// RowFilterPortalAccountsPortalAccountUserLimitRps defines model for rowFilter.portal_accounts.portal_account_user_limit_rps. +type RowFilterPortalAccountsPortalAccountUserLimitRps = string + +// RowFilterPortalAccountsPortalPlanType defines model for rowFilter.portal_accounts.portal_plan_type. +type RowFilterPortalAccountsPortalPlanType = string + +// RowFilterPortalAccountsStripeSubscriptionId defines model for rowFilter.portal_accounts.stripe_subscription_id. +type RowFilterPortalAccountsStripeSubscriptionId = string + +// RowFilterPortalAccountsUpdatedAt defines model for rowFilter.portal_accounts.updated_at. +type RowFilterPortalAccountsUpdatedAt = string + +// RowFilterPortalAccountsUserAccountName defines model for rowFilter.portal_accounts.user_account_name. +type RowFilterPortalAccountsUserAccountName = string + +// RowFilterPortalApplicationRbacCreatedAt defines model for rowFilter.portal_application_rbac.created_at. +type RowFilterPortalApplicationRbacCreatedAt = string + +// RowFilterPortalApplicationRbacId defines model for rowFilter.portal_application_rbac.id. +type RowFilterPortalApplicationRbacId = string + +// RowFilterPortalApplicationRbacPortalApplicationId defines model for rowFilter.portal_application_rbac.portal_application_id. +type RowFilterPortalApplicationRbacPortalApplicationId = string + +// RowFilterPortalApplicationRbacPortalUserId defines model for rowFilter.portal_application_rbac.portal_user_id. +type RowFilterPortalApplicationRbacPortalUserId = string + +// RowFilterPortalApplicationRbacUpdatedAt defines model for rowFilter.portal_application_rbac.updated_at. +type RowFilterPortalApplicationRbacUpdatedAt = string + +// RowFilterPortalApplicationsCreatedAt defines model for rowFilter.portal_applications.created_at. +type RowFilterPortalApplicationsCreatedAt = string + +// RowFilterPortalApplicationsDeletedAt defines model for rowFilter.portal_applications.deleted_at. +type RowFilterPortalApplicationsDeletedAt = string + +// RowFilterPortalApplicationsEmoji defines model for rowFilter.portal_applications.emoji. +type RowFilterPortalApplicationsEmoji = string + +// RowFilterPortalApplicationsFavoriteServiceIds defines model for rowFilter.portal_applications.favorite_service_ids. +type RowFilterPortalApplicationsFavoriteServiceIds = string + +// RowFilterPortalApplicationsPortalAccountId defines model for rowFilter.portal_applications.portal_account_id. +type RowFilterPortalApplicationsPortalAccountId = string + +// RowFilterPortalApplicationsPortalApplicationDescription defines model for rowFilter.portal_applications.portal_application_description. +type RowFilterPortalApplicationsPortalApplicationDescription = string + +// RowFilterPortalApplicationsPortalApplicationId defines model for rowFilter.portal_applications.portal_application_id. +type RowFilterPortalApplicationsPortalApplicationId = string + +// RowFilterPortalApplicationsPortalApplicationName defines model for rowFilter.portal_applications.portal_application_name. +type RowFilterPortalApplicationsPortalApplicationName = string + +// RowFilterPortalApplicationsPortalApplicationUserLimit defines model for rowFilter.portal_applications.portal_application_user_limit. +type RowFilterPortalApplicationsPortalApplicationUserLimit = string + +// RowFilterPortalApplicationsPortalApplicationUserLimitInterval defines model for rowFilter.portal_applications.portal_application_user_limit_interval. +type RowFilterPortalApplicationsPortalApplicationUserLimitInterval = string + +// RowFilterPortalApplicationsPortalApplicationUserLimitRps defines model for rowFilter.portal_applications.portal_application_user_limit_rps. +type RowFilterPortalApplicationsPortalApplicationUserLimitRps = string + +// RowFilterPortalApplicationsSecretKeyHash defines model for rowFilter.portal_applications.secret_key_hash. +type RowFilterPortalApplicationsSecretKeyHash = string + +// RowFilterPortalApplicationsSecretKeyRequired defines model for rowFilter.portal_applications.secret_key_required. +type RowFilterPortalApplicationsSecretKeyRequired = string + +// RowFilterPortalApplicationsUpdatedAt defines model for rowFilter.portal_applications.updated_at. +type RowFilterPortalApplicationsUpdatedAt = string + +// RowFilterPortalPlansPlanApplicationLimit defines model for rowFilter.portal_plans.plan_application_limit. +type RowFilterPortalPlansPlanApplicationLimit = string + +// RowFilterPortalPlansPlanRateLimitRps defines model for rowFilter.portal_plans.plan_rate_limit_rps. +type RowFilterPortalPlansPlanRateLimitRps = string + +// RowFilterPortalPlansPlanUsageLimit defines model for rowFilter.portal_plans.plan_usage_limit. +type RowFilterPortalPlansPlanUsageLimit = string + +// RowFilterPortalPlansPlanUsageLimitInterval defines model for rowFilter.portal_plans.plan_usage_limit_interval. +type RowFilterPortalPlansPlanUsageLimitInterval = string + +// RowFilterPortalPlansPortalPlanType defines model for rowFilter.portal_plans.portal_plan_type. +type RowFilterPortalPlansPortalPlanType = string + +// RowFilterPortalPlansPortalPlanTypeDescription defines model for rowFilter.portal_plans.portal_plan_type_description. +type RowFilterPortalPlansPortalPlanTypeDescription = string + +// RowFilterPortalUsersCreatedAt defines model for rowFilter.portal_users.created_at. +type RowFilterPortalUsersCreatedAt = string + +// RowFilterPortalUsersDeletedAt defines model for rowFilter.portal_users.deleted_at. +type RowFilterPortalUsersDeletedAt = string + +// RowFilterPortalUsersPortalAdmin defines model for rowFilter.portal_users.portal_admin. +type RowFilterPortalUsersPortalAdmin = string + +// RowFilterPortalUsersPortalUserEmail defines model for rowFilter.portal_users.portal_user_email. +type RowFilterPortalUsersPortalUserEmail = string + +// RowFilterPortalUsersPortalUserId defines model for rowFilter.portal_users.portal_user_id. +type RowFilterPortalUsersPortalUserId = string + +// RowFilterPortalUsersSignedUp defines model for rowFilter.portal_users.signed_up. +type RowFilterPortalUsersSignedUp = string + +// RowFilterPortalUsersUpdatedAt defines model for rowFilter.portal_users.updated_at. +type RowFilterPortalUsersUpdatedAt = string + +// RowFilterPortalWorkersAccountDataBillingType defines model for rowFilter.portal_workers_account_data.billing_type. +type RowFilterPortalWorkersAccountDataBillingType = string + +// RowFilterPortalWorkersAccountDataGcpEntitlementId defines model for rowFilter.portal_workers_account_data.gcp_entitlement_id. +type RowFilterPortalWorkersAccountDataGcpEntitlementId = string + +// RowFilterPortalWorkersAccountDataOwnerEmail defines model for rowFilter.portal_workers_account_data.owner_email. +type RowFilterPortalWorkersAccountDataOwnerEmail = string + +// RowFilterPortalWorkersAccountDataOwnerUserId defines model for rowFilter.portal_workers_account_data.owner_user_id. +type RowFilterPortalWorkersAccountDataOwnerUserId = string + +// RowFilterPortalWorkersAccountDataPortalAccountId defines model for rowFilter.portal_workers_account_data.portal_account_id. +type RowFilterPortalWorkersAccountDataPortalAccountId = string + +// RowFilterPortalWorkersAccountDataPortalAccountUserLimit defines model for rowFilter.portal_workers_account_data.portal_account_user_limit. +type RowFilterPortalWorkersAccountDataPortalAccountUserLimit = string + +// RowFilterPortalWorkersAccountDataPortalPlanType defines model for rowFilter.portal_workers_account_data.portal_plan_type. +type RowFilterPortalWorkersAccountDataPortalPlanType = string + +// RowFilterPortalWorkersAccountDataUserAccountName defines model for rowFilter.portal_workers_account_data.user_account_name. +type RowFilterPortalWorkersAccountDataUserAccountName = string + +// RowFilterServiceEndpointsCreatedAt defines model for rowFilter.service_endpoints.created_at. +type RowFilterServiceEndpointsCreatedAt = string + +// RowFilterServiceEndpointsEndpointId defines model for rowFilter.service_endpoints.endpoint_id. +type RowFilterServiceEndpointsEndpointId = string + +// RowFilterServiceEndpointsEndpointType defines model for rowFilter.service_endpoints.endpoint_type. +type RowFilterServiceEndpointsEndpointType = string + +// RowFilterServiceEndpointsServiceId defines model for rowFilter.service_endpoints.service_id. +type RowFilterServiceEndpointsServiceId = string + +// RowFilterServiceEndpointsUpdatedAt defines model for rowFilter.service_endpoints.updated_at. +type RowFilterServiceEndpointsUpdatedAt = string + +// RowFilterServiceFallbacksCreatedAt defines model for rowFilter.service_fallbacks.created_at. +type RowFilterServiceFallbacksCreatedAt = string + +// RowFilterServiceFallbacksFallbackUrl defines model for rowFilter.service_fallbacks.fallback_url. +type RowFilterServiceFallbacksFallbackUrl = string + +// RowFilterServiceFallbacksServiceFallbackId defines model for rowFilter.service_fallbacks.service_fallback_id. +type RowFilterServiceFallbacksServiceFallbackId = string + +// RowFilterServiceFallbacksServiceId defines model for rowFilter.service_fallbacks.service_id. +type RowFilterServiceFallbacksServiceId = string + +// RowFilterServiceFallbacksUpdatedAt defines model for rowFilter.service_fallbacks.updated_at. +type RowFilterServiceFallbacksUpdatedAt = string + +// RowFilterServicesActive defines model for rowFilter.services.active. +type RowFilterServicesActive = string + +// RowFilterServicesBeta defines model for rowFilter.services.beta. +type RowFilterServicesBeta = string + +// RowFilterServicesComingSoon defines model for rowFilter.services.coming_soon. +type RowFilterServicesComingSoon = string + +// RowFilterServicesComputeUnitsPerRelay defines model for rowFilter.services.compute_units_per_relay. +type RowFilterServicesComputeUnitsPerRelay = string + +// RowFilterServicesCreatedAt defines model for rowFilter.services.created_at. +type RowFilterServicesCreatedAt = string + +// RowFilterServicesDeletedAt defines model for rowFilter.services.deleted_at. +type RowFilterServicesDeletedAt = string + +// RowFilterServicesHardFallbackEnabled defines model for rowFilter.services.hard_fallback_enabled. +type RowFilterServicesHardFallbackEnabled = string + +// RowFilterServicesNetworkId defines model for rowFilter.services.network_id. +type RowFilterServicesNetworkId = string + +// RowFilterServicesPublicEndpointUrl defines model for rowFilter.services.public_endpoint_url. +type RowFilterServicesPublicEndpointUrl = string + +// RowFilterServicesQualityFallbackEnabled defines model for rowFilter.services.quality_fallback_enabled. +type RowFilterServicesQualityFallbackEnabled = string + +// RowFilterServicesServiceDomains defines model for rowFilter.services.service_domains. +type RowFilterServicesServiceDomains = string + +// RowFilterServicesServiceId defines model for rowFilter.services.service_id. +type RowFilterServicesServiceId = string + +// RowFilterServicesServiceName defines model for rowFilter.services.service_name. +type RowFilterServicesServiceName = string + +// RowFilterServicesServiceOwnerAddress defines model for rowFilter.services.service_owner_address. +type RowFilterServicesServiceOwnerAddress = string + +// RowFilterServicesStatusEndpointUrl defines model for rowFilter.services.status_endpoint_url. +type RowFilterServicesStatusEndpointUrl = string + +// RowFilterServicesStatusQuery defines model for rowFilter.services.status_query. +type RowFilterServicesStatusQuery = string + +// RowFilterServicesSvgIcon defines model for rowFilter.services.svg_icon. +type RowFilterServicesSvgIcon = string + +// RowFilterServicesUpdatedAt defines model for rowFilter.services.updated_at. +type RowFilterServicesUpdatedAt = string + +// Select defines model for select. +type Select = string + +// Args defines model for Args. +type Args struct { + Empty string `json:""` +} + +// Args2 defines model for Args2. +type Args2 struct { + Empty string `json:""` +} + +// DeleteNetworksParams defines parameters for DeleteNetworks. +type DeleteNetworksParams struct { + NetworkId *RowFilterNetworksNetworkId `form:"network_id,omitempty" json:"network_id,omitempty"` + + // Prefer Preference + Prefer *DeleteNetworksParamsPrefer `json:"Prefer,omitempty"` +} + +// DeleteNetworksParamsPrefer defines parameters for DeleteNetworks. +type DeleteNetworksParamsPrefer string + +// GetNetworksParams defines parameters for GetNetworks. +type GetNetworksParams struct { + NetworkId *RowFilterNetworksNetworkId `form:"network_id,omitempty" json:"network_id,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetNetworksParamsPrefer `json:"Prefer,omitempty"` +} + +// GetNetworksParamsPrefer defines parameters for GetNetworks. +type GetNetworksParamsPrefer string + +// PatchNetworksParams defines parameters for PatchNetworks. +type PatchNetworksParams struct { + NetworkId *RowFilterNetworksNetworkId `form:"network_id,omitempty" json:"network_id,omitempty"` + + // Prefer Preference + Prefer *PatchNetworksParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchNetworksParamsPrefer defines parameters for PatchNetworks. +type PatchNetworksParamsPrefer string + +// PostNetworksParams defines parameters for PostNetworks. +type PostNetworksParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostNetworksParamsPrefer `json:"Prefer,omitempty"` +} + +// PostNetworksParamsPrefer defines parameters for PostNetworks. +type PostNetworksParamsPrefer string + +// DeleteOrganizationsParams defines parameters for DeleteOrganizations. +type DeleteOrganizationsParams struct { + OrganizationId *RowFilterOrganizationsOrganizationId `form:"organization_id,omitempty" json:"organization_id,omitempty"` + + // OrganizationName Name of the organization + OrganizationName *RowFilterOrganizationsOrganizationName `form:"organization_name,omitempty" json:"organization_name,omitempty"` + + // DeletedAt Soft delete timestamp + DeletedAt *RowFilterOrganizationsDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterOrganizationsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterOrganizationsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *DeleteOrganizationsParamsPrefer `json:"Prefer,omitempty"` +} + +// DeleteOrganizationsParamsPrefer defines parameters for DeleteOrganizations. +type DeleteOrganizationsParamsPrefer string + +// GetOrganizationsParams defines parameters for GetOrganizations. +type GetOrganizationsParams struct { + OrganizationId *RowFilterOrganizationsOrganizationId `form:"organization_id,omitempty" json:"organization_id,omitempty"` + + // OrganizationName Name of the organization + OrganizationName *RowFilterOrganizationsOrganizationName `form:"organization_name,omitempty" json:"organization_name,omitempty"` + + // DeletedAt Soft delete timestamp + DeletedAt *RowFilterOrganizationsDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterOrganizationsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterOrganizationsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetOrganizationsParamsPrefer `json:"Prefer,omitempty"` +} + +// GetOrganizationsParamsPrefer defines parameters for GetOrganizations. +type GetOrganizationsParamsPrefer string + +// PatchOrganizationsParams defines parameters for PatchOrganizations. +type PatchOrganizationsParams struct { + OrganizationId *RowFilterOrganizationsOrganizationId `form:"organization_id,omitempty" json:"organization_id,omitempty"` + + // OrganizationName Name of the organization + OrganizationName *RowFilterOrganizationsOrganizationName `form:"organization_name,omitempty" json:"organization_name,omitempty"` + + // DeletedAt Soft delete timestamp + DeletedAt *RowFilterOrganizationsDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterOrganizationsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterOrganizationsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *PatchOrganizationsParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchOrganizationsParamsPrefer defines parameters for PatchOrganizations. +type PatchOrganizationsParamsPrefer string + +// PostOrganizationsParams defines parameters for PostOrganizations. +type PostOrganizationsParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostOrganizationsParamsPrefer `json:"Prefer,omitempty"` +} + +// PostOrganizationsParamsPrefer defines parameters for PostOrganizations. +type PostOrganizationsParamsPrefer string + +// DeletePortalAccountRbacParams defines parameters for DeletePortalAccountRbac. +type DeletePortalAccountRbacParams struct { + Id *RowFilterPortalAccountRbacId `form:"id,omitempty" json:"id,omitempty"` + PortalAccountId *RowFilterPortalAccountRbacPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + PortalUserId *RowFilterPortalAccountRbacPortalUserId `form:"portal_user_id,omitempty" json:"portal_user_id,omitempty"` + RoleName *RowFilterPortalAccountRbacRoleName `form:"role_name,omitempty" json:"role_name,omitempty"` + UserJoinedAccount *RowFilterPortalAccountRbacUserJoinedAccount `form:"user_joined_account,omitempty" json:"user_joined_account,omitempty"` + + // Prefer Preference + Prefer *DeletePortalAccountRbacParamsPrefer `json:"Prefer,omitempty"` +} + +// DeletePortalAccountRbacParamsPrefer defines parameters for DeletePortalAccountRbac. +type DeletePortalAccountRbacParamsPrefer string + +// GetPortalAccountRbacParams defines parameters for GetPortalAccountRbac. +type GetPortalAccountRbacParams struct { + Id *RowFilterPortalAccountRbacId `form:"id,omitempty" json:"id,omitempty"` + PortalAccountId *RowFilterPortalAccountRbacPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + PortalUserId *RowFilterPortalAccountRbacPortalUserId `form:"portal_user_id,omitempty" json:"portal_user_id,omitempty"` + RoleName *RowFilterPortalAccountRbacRoleName `form:"role_name,omitempty" json:"role_name,omitempty"` + UserJoinedAccount *RowFilterPortalAccountRbacUserJoinedAccount `form:"user_joined_account,omitempty" json:"user_joined_account,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetPortalAccountRbacParamsPrefer `json:"Prefer,omitempty"` +} + +// GetPortalAccountRbacParamsPrefer defines parameters for GetPortalAccountRbac. +type GetPortalAccountRbacParamsPrefer string + +// PatchPortalAccountRbacParams defines parameters for PatchPortalAccountRbac. +type PatchPortalAccountRbacParams struct { + Id *RowFilterPortalAccountRbacId `form:"id,omitempty" json:"id,omitempty"` + PortalAccountId *RowFilterPortalAccountRbacPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + PortalUserId *RowFilterPortalAccountRbacPortalUserId `form:"portal_user_id,omitempty" json:"portal_user_id,omitempty"` + RoleName *RowFilterPortalAccountRbacRoleName `form:"role_name,omitempty" json:"role_name,omitempty"` + UserJoinedAccount *RowFilterPortalAccountRbacUserJoinedAccount `form:"user_joined_account,omitempty" json:"user_joined_account,omitempty"` + + // Prefer Preference + Prefer *PatchPortalAccountRbacParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchPortalAccountRbacParamsPrefer defines parameters for PatchPortalAccountRbac. +type PatchPortalAccountRbacParamsPrefer string + +// PostPortalAccountRbacParams defines parameters for PostPortalAccountRbac. +type PostPortalAccountRbacParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostPortalAccountRbacParamsPrefer `json:"Prefer,omitempty"` +} + +// PostPortalAccountRbacParamsPrefer defines parameters for PostPortalAccountRbac. +type PostPortalAccountRbacParamsPrefer string + +// DeletePortalAccountsParams defines parameters for DeletePortalAccounts. +type DeletePortalAccountsParams struct { + // PortalAccountId Unique identifier for the portal account + PortalAccountId *RowFilterPortalAccountsPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + OrganizationId *RowFilterPortalAccountsOrganizationId `form:"organization_id,omitempty" json:"organization_id,omitempty"` + PortalPlanType *RowFilterPortalAccountsPortalPlanType `form:"portal_plan_type,omitempty" json:"portal_plan_type,omitempty"` + UserAccountName *RowFilterPortalAccountsUserAccountName `form:"user_account_name,omitempty" json:"user_account_name,omitempty"` + InternalAccountName *RowFilterPortalAccountsInternalAccountName `form:"internal_account_name,omitempty" json:"internal_account_name,omitempty"` + PortalAccountUserLimit *RowFilterPortalAccountsPortalAccountUserLimit `form:"portal_account_user_limit,omitempty" json:"portal_account_user_limit,omitempty"` + PortalAccountUserLimitInterval *RowFilterPortalAccountsPortalAccountUserLimitInterval `form:"portal_account_user_limit_interval,omitempty" json:"portal_account_user_limit_interval,omitempty"` + PortalAccountUserLimitRps *RowFilterPortalAccountsPortalAccountUserLimitRps `form:"portal_account_user_limit_rps,omitempty" json:"portal_account_user_limit_rps,omitempty"` + BillingType *RowFilterPortalAccountsBillingType `form:"billing_type,omitempty" json:"billing_type,omitempty"` + + // StripeSubscriptionId Stripe subscription identifier for billing + StripeSubscriptionId *RowFilterPortalAccountsStripeSubscriptionId `form:"stripe_subscription_id,omitempty" json:"stripe_subscription_id,omitempty"` + GcpAccountId *RowFilterPortalAccountsGcpAccountId `form:"gcp_account_id,omitempty" json:"gcp_account_id,omitempty"` + GcpEntitlementId *RowFilterPortalAccountsGcpEntitlementId `form:"gcp_entitlement_id,omitempty" json:"gcp_entitlement_id,omitempty"` + DeletedAt *RowFilterPortalAccountsDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterPortalAccountsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalAccountsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *DeletePortalAccountsParamsPrefer `json:"Prefer,omitempty"` +} + +// DeletePortalAccountsParamsPrefer defines parameters for DeletePortalAccounts. +type DeletePortalAccountsParamsPrefer string + +// GetPortalAccountsParams defines parameters for GetPortalAccounts. +type GetPortalAccountsParams struct { + // PortalAccountId Unique identifier for the portal account + PortalAccountId *RowFilterPortalAccountsPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + OrganizationId *RowFilterPortalAccountsOrganizationId `form:"organization_id,omitempty" json:"organization_id,omitempty"` + PortalPlanType *RowFilterPortalAccountsPortalPlanType `form:"portal_plan_type,omitempty" json:"portal_plan_type,omitempty"` + UserAccountName *RowFilterPortalAccountsUserAccountName `form:"user_account_name,omitempty" json:"user_account_name,omitempty"` + InternalAccountName *RowFilterPortalAccountsInternalAccountName `form:"internal_account_name,omitempty" json:"internal_account_name,omitempty"` + PortalAccountUserLimit *RowFilterPortalAccountsPortalAccountUserLimit `form:"portal_account_user_limit,omitempty" json:"portal_account_user_limit,omitempty"` + PortalAccountUserLimitInterval *RowFilterPortalAccountsPortalAccountUserLimitInterval `form:"portal_account_user_limit_interval,omitempty" json:"portal_account_user_limit_interval,omitempty"` + PortalAccountUserLimitRps *RowFilterPortalAccountsPortalAccountUserLimitRps `form:"portal_account_user_limit_rps,omitempty" json:"portal_account_user_limit_rps,omitempty"` + BillingType *RowFilterPortalAccountsBillingType `form:"billing_type,omitempty" json:"billing_type,omitempty"` + + // StripeSubscriptionId Stripe subscription identifier for billing + StripeSubscriptionId *RowFilterPortalAccountsStripeSubscriptionId `form:"stripe_subscription_id,omitempty" json:"stripe_subscription_id,omitempty"` + GcpAccountId *RowFilterPortalAccountsGcpAccountId `form:"gcp_account_id,omitempty" json:"gcp_account_id,omitempty"` + GcpEntitlementId *RowFilterPortalAccountsGcpEntitlementId `form:"gcp_entitlement_id,omitempty" json:"gcp_entitlement_id,omitempty"` + DeletedAt *RowFilterPortalAccountsDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterPortalAccountsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalAccountsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetPortalAccountsParamsPrefer `json:"Prefer,omitempty"` +} + +// GetPortalAccountsParamsPrefer defines parameters for GetPortalAccounts. +type GetPortalAccountsParamsPrefer string + +// PatchPortalAccountsParams defines parameters for PatchPortalAccounts. +type PatchPortalAccountsParams struct { + // PortalAccountId Unique identifier for the portal account + PortalAccountId *RowFilterPortalAccountsPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + OrganizationId *RowFilterPortalAccountsOrganizationId `form:"organization_id,omitempty" json:"organization_id,omitempty"` + PortalPlanType *RowFilterPortalAccountsPortalPlanType `form:"portal_plan_type,omitempty" json:"portal_plan_type,omitempty"` + UserAccountName *RowFilterPortalAccountsUserAccountName `form:"user_account_name,omitempty" json:"user_account_name,omitempty"` + InternalAccountName *RowFilterPortalAccountsInternalAccountName `form:"internal_account_name,omitempty" json:"internal_account_name,omitempty"` + PortalAccountUserLimit *RowFilterPortalAccountsPortalAccountUserLimit `form:"portal_account_user_limit,omitempty" json:"portal_account_user_limit,omitempty"` + PortalAccountUserLimitInterval *RowFilterPortalAccountsPortalAccountUserLimitInterval `form:"portal_account_user_limit_interval,omitempty" json:"portal_account_user_limit_interval,omitempty"` + PortalAccountUserLimitRps *RowFilterPortalAccountsPortalAccountUserLimitRps `form:"portal_account_user_limit_rps,omitempty" json:"portal_account_user_limit_rps,omitempty"` + BillingType *RowFilterPortalAccountsBillingType `form:"billing_type,omitempty" json:"billing_type,omitempty"` + + // StripeSubscriptionId Stripe subscription identifier for billing + StripeSubscriptionId *RowFilterPortalAccountsStripeSubscriptionId `form:"stripe_subscription_id,omitempty" json:"stripe_subscription_id,omitempty"` + GcpAccountId *RowFilterPortalAccountsGcpAccountId `form:"gcp_account_id,omitempty" json:"gcp_account_id,omitempty"` + GcpEntitlementId *RowFilterPortalAccountsGcpEntitlementId `form:"gcp_entitlement_id,omitempty" json:"gcp_entitlement_id,omitempty"` + DeletedAt *RowFilterPortalAccountsDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterPortalAccountsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalAccountsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *PatchPortalAccountsParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchPortalAccountsParamsPrefer defines parameters for PatchPortalAccounts. +type PatchPortalAccountsParamsPrefer string + +// PostPortalAccountsParams defines parameters for PostPortalAccounts. +type PostPortalAccountsParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostPortalAccountsParamsPrefer `json:"Prefer,omitempty"` +} + +// PostPortalAccountsParamsPrefer defines parameters for PostPortalAccounts. +type PostPortalAccountsParamsPrefer string + +// DeletePortalApplicationRbacParams defines parameters for DeletePortalApplicationRbac. +type DeletePortalApplicationRbacParams struct { + Id *RowFilterPortalApplicationRbacId `form:"id,omitempty" json:"id,omitempty"` + PortalApplicationId *RowFilterPortalApplicationRbacPortalApplicationId `form:"portal_application_id,omitempty" json:"portal_application_id,omitempty"` + PortalUserId *RowFilterPortalApplicationRbacPortalUserId `form:"portal_user_id,omitempty" json:"portal_user_id,omitempty"` + CreatedAt *RowFilterPortalApplicationRbacCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalApplicationRbacUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *DeletePortalApplicationRbacParamsPrefer `json:"Prefer,omitempty"` +} + +// DeletePortalApplicationRbacParamsPrefer defines parameters for DeletePortalApplicationRbac. +type DeletePortalApplicationRbacParamsPrefer string + +// GetPortalApplicationRbacParams defines parameters for GetPortalApplicationRbac. +type GetPortalApplicationRbacParams struct { + Id *RowFilterPortalApplicationRbacId `form:"id,omitempty" json:"id,omitempty"` + PortalApplicationId *RowFilterPortalApplicationRbacPortalApplicationId `form:"portal_application_id,omitempty" json:"portal_application_id,omitempty"` + PortalUserId *RowFilterPortalApplicationRbacPortalUserId `form:"portal_user_id,omitempty" json:"portal_user_id,omitempty"` + CreatedAt *RowFilterPortalApplicationRbacCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalApplicationRbacUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetPortalApplicationRbacParamsPrefer `json:"Prefer,omitempty"` +} + +// GetPortalApplicationRbacParamsPrefer defines parameters for GetPortalApplicationRbac. +type GetPortalApplicationRbacParamsPrefer string + +// PatchPortalApplicationRbacParams defines parameters for PatchPortalApplicationRbac. +type PatchPortalApplicationRbacParams struct { + Id *RowFilterPortalApplicationRbacId `form:"id,omitempty" json:"id,omitempty"` + PortalApplicationId *RowFilterPortalApplicationRbacPortalApplicationId `form:"portal_application_id,omitempty" json:"portal_application_id,omitempty"` + PortalUserId *RowFilterPortalApplicationRbacPortalUserId `form:"portal_user_id,omitempty" json:"portal_user_id,omitempty"` + CreatedAt *RowFilterPortalApplicationRbacCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalApplicationRbacUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *PatchPortalApplicationRbacParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchPortalApplicationRbacParamsPrefer defines parameters for PatchPortalApplicationRbac. +type PatchPortalApplicationRbacParamsPrefer string + +// PostPortalApplicationRbacParams defines parameters for PostPortalApplicationRbac. +type PostPortalApplicationRbacParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostPortalApplicationRbacParamsPrefer `json:"Prefer,omitempty"` +} + +// PostPortalApplicationRbacParamsPrefer defines parameters for PostPortalApplicationRbac. +type PostPortalApplicationRbacParamsPrefer string + +// DeletePortalApplicationsParams defines parameters for DeletePortalApplications. +type DeletePortalApplicationsParams struct { + PortalApplicationId *RowFilterPortalApplicationsPortalApplicationId `form:"portal_application_id,omitempty" json:"portal_application_id,omitempty"` + PortalAccountId *RowFilterPortalApplicationsPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + PortalApplicationName *RowFilterPortalApplicationsPortalApplicationName `form:"portal_application_name,omitempty" json:"portal_application_name,omitempty"` + Emoji *RowFilterPortalApplicationsEmoji `form:"emoji,omitempty" json:"emoji,omitempty"` + PortalApplicationUserLimit *RowFilterPortalApplicationsPortalApplicationUserLimit `form:"portal_application_user_limit,omitempty" json:"portal_application_user_limit,omitempty"` + PortalApplicationUserLimitInterval *RowFilterPortalApplicationsPortalApplicationUserLimitInterval `form:"portal_application_user_limit_interval,omitempty" json:"portal_application_user_limit_interval,omitempty"` + PortalApplicationUserLimitRps *RowFilterPortalApplicationsPortalApplicationUserLimitRps `form:"portal_application_user_limit_rps,omitempty" json:"portal_application_user_limit_rps,omitempty"` + PortalApplicationDescription *RowFilterPortalApplicationsPortalApplicationDescription `form:"portal_application_description,omitempty" json:"portal_application_description,omitempty"` + FavoriteServiceIds *RowFilterPortalApplicationsFavoriteServiceIds `form:"favorite_service_ids,omitempty" json:"favorite_service_ids,omitempty"` + + // SecretKeyHash Hashed secret key for application authentication + SecretKeyHash *RowFilterPortalApplicationsSecretKeyHash `form:"secret_key_hash,omitempty" json:"secret_key_hash,omitempty"` + SecretKeyRequired *RowFilterPortalApplicationsSecretKeyRequired `form:"secret_key_required,omitempty" json:"secret_key_required,omitempty"` + DeletedAt *RowFilterPortalApplicationsDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterPortalApplicationsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalApplicationsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *DeletePortalApplicationsParamsPrefer `json:"Prefer,omitempty"` +} + +// DeletePortalApplicationsParamsPrefer defines parameters for DeletePortalApplications. +type DeletePortalApplicationsParamsPrefer string + +// GetPortalApplicationsParams defines parameters for GetPortalApplications. +type GetPortalApplicationsParams struct { + PortalApplicationId *RowFilterPortalApplicationsPortalApplicationId `form:"portal_application_id,omitempty" json:"portal_application_id,omitempty"` + PortalAccountId *RowFilterPortalApplicationsPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + PortalApplicationName *RowFilterPortalApplicationsPortalApplicationName `form:"portal_application_name,omitempty" json:"portal_application_name,omitempty"` + Emoji *RowFilterPortalApplicationsEmoji `form:"emoji,omitempty" json:"emoji,omitempty"` + PortalApplicationUserLimit *RowFilterPortalApplicationsPortalApplicationUserLimit `form:"portal_application_user_limit,omitempty" json:"portal_application_user_limit,omitempty"` + PortalApplicationUserLimitInterval *RowFilterPortalApplicationsPortalApplicationUserLimitInterval `form:"portal_application_user_limit_interval,omitempty" json:"portal_application_user_limit_interval,omitempty"` + PortalApplicationUserLimitRps *RowFilterPortalApplicationsPortalApplicationUserLimitRps `form:"portal_application_user_limit_rps,omitempty" json:"portal_application_user_limit_rps,omitempty"` + PortalApplicationDescription *RowFilterPortalApplicationsPortalApplicationDescription `form:"portal_application_description,omitempty" json:"portal_application_description,omitempty"` + FavoriteServiceIds *RowFilterPortalApplicationsFavoriteServiceIds `form:"favorite_service_ids,omitempty" json:"favorite_service_ids,omitempty"` + + // SecretKeyHash Hashed secret key for application authentication + SecretKeyHash *RowFilterPortalApplicationsSecretKeyHash `form:"secret_key_hash,omitempty" json:"secret_key_hash,omitempty"` + SecretKeyRequired *RowFilterPortalApplicationsSecretKeyRequired `form:"secret_key_required,omitempty" json:"secret_key_required,omitempty"` + DeletedAt *RowFilterPortalApplicationsDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterPortalApplicationsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalApplicationsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetPortalApplicationsParamsPrefer `json:"Prefer,omitempty"` +} + +// GetPortalApplicationsParamsPrefer defines parameters for GetPortalApplications. +type GetPortalApplicationsParamsPrefer string + +// PatchPortalApplicationsParams defines parameters for PatchPortalApplications. +type PatchPortalApplicationsParams struct { + PortalApplicationId *RowFilterPortalApplicationsPortalApplicationId `form:"portal_application_id,omitempty" json:"portal_application_id,omitempty"` + PortalAccountId *RowFilterPortalApplicationsPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + PortalApplicationName *RowFilterPortalApplicationsPortalApplicationName `form:"portal_application_name,omitempty" json:"portal_application_name,omitempty"` + Emoji *RowFilterPortalApplicationsEmoji `form:"emoji,omitempty" json:"emoji,omitempty"` + PortalApplicationUserLimit *RowFilterPortalApplicationsPortalApplicationUserLimit `form:"portal_application_user_limit,omitempty" json:"portal_application_user_limit,omitempty"` + PortalApplicationUserLimitInterval *RowFilterPortalApplicationsPortalApplicationUserLimitInterval `form:"portal_application_user_limit_interval,omitempty" json:"portal_application_user_limit_interval,omitempty"` + PortalApplicationUserLimitRps *RowFilterPortalApplicationsPortalApplicationUserLimitRps `form:"portal_application_user_limit_rps,omitempty" json:"portal_application_user_limit_rps,omitempty"` + PortalApplicationDescription *RowFilterPortalApplicationsPortalApplicationDescription `form:"portal_application_description,omitempty" json:"portal_application_description,omitempty"` + FavoriteServiceIds *RowFilterPortalApplicationsFavoriteServiceIds `form:"favorite_service_ids,omitempty" json:"favorite_service_ids,omitempty"` + + // SecretKeyHash Hashed secret key for application authentication + SecretKeyHash *RowFilterPortalApplicationsSecretKeyHash `form:"secret_key_hash,omitempty" json:"secret_key_hash,omitempty"` + SecretKeyRequired *RowFilterPortalApplicationsSecretKeyRequired `form:"secret_key_required,omitempty" json:"secret_key_required,omitempty"` + DeletedAt *RowFilterPortalApplicationsDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterPortalApplicationsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalApplicationsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *PatchPortalApplicationsParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchPortalApplicationsParamsPrefer defines parameters for PatchPortalApplications. +type PatchPortalApplicationsParamsPrefer string + +// PostPortalApplicationsParams defines parameters for PostPortalApplications. +type PostPortalApplicationsParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostPortalApplicationsParamsPrefer `json:"Prefer,omitempty"` +} + +// PostPortalApplicationsParamsPrefer defines parameters for PostPortalApplications. +type PostPortalApplicationsParamsPrefer string + +// DeletePortalPlansParams defines parameters for DeletePortalPlans. +type DeletePortalPlansParams struct { + PortalPlanType *RowFilterPortalPlansPortalPlanType `form:"portal_plan_type,omitempty" json:"portal_plan_type,omitempty"` + PortalPlanTypeDescription *RowFilterPortalPlansPortalPlanTypeDescription `form:"portal_plan_type_description,omitempty" json:"portal_plan_type_description,omitempty"` + + // PlanUsageLimit Maximum usage allowed within the interval + PlanUsageLimit *RowFilterPortalPlansPlanUsageLimit `form:"plan_usage_limit,omitempty" json:"plan_usage_limit,omitempty"` + PlanUsageLimitInterval *RowFilterPortalPlansPlanUsageLimitInterval `form:"plan_usage_limit_interval,omitempty" json:"plan_usage_limit_interval,omitempty"` + + // PlanRateLimitRps Rate limit in requests per second + PlanRateLimitRps *RowFilterPortalPlansPlanRateLimitRps `form:"plan_rate_limit_rps,omitempty" json:"plan_rate_limit_rps,omitempty"` + PlanApplicationLimit *RowFilterPortalPlansPlanApplicationLimit `form:"plan_application_limit,omitempty" json:"plan_application_limit,omitempty"` + + // Prefer Preference + Prefer *DeletePortalPlansParamsPrefer `json:"Prefer,omitempty"` +} + +// DeletePortalPlansParamsPrefer defines parameters for DeletePortalPlans. +type DeletePortalPlansParamsPrefer string + +// GetPortalPlansParams defines parameters for GetPortalPlans. +type GetPortalPlansParams struct { + PortalPlanType *RowFilterPortalPlansPortalPlanType `form:"portal_plan_type,omitempty" json:"portal_plan_type,omitempty"` + PortalPlanTypeDescription *RowFilterPortalPlansPortalPlanTypeDescription `form:"portal_plan_type_description,omitempty" json:"portal_plan_type_description,omitempty"` + + // PlanUsageLimit Maximum usage allowed within the interval + PlanUsageLimit *RowFilterPortalPlansPlanUsageLimit `form:"plan_usage_limit,omitempty" json:"plan_usage_limit,omitempty"` + PlanUsageLimitInterval *RowFilterPortalPlansPlanUsageLimitInterval `form:"plan_usage_limit_interval,omitempty" json:"plan_usage_limit_interval,omitempty"` + + // PlanRateLimitRps Rate limit in requests per second + PlanRateLimitRps *RowFilterPortalPlansPlanRateLimitRps `form:"plan_rate_limit_rps,omitempty" json:"plan_rate_limit_rps,omitempty"` + PlanApplicationLimit *RowFilterPortalPlansPlanApplicationLimit `form:"plan_application_limit,omitempty" json:"plan_application_limit,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetPortalPlansParamsPrefer `json:"Prefer,omitempty"` +} + +// GetPortalPlansParamsPrefer defines parameters for GetPortalPlans. +type GetPortalPlansParamsPrefer string + +// PatchPortalPlansParams defines parameters for PatchPortalPlans. +type PatchPortalPlansParams struct { + PortalPlanType *RowFilterPortalPlansPortalPlanType `form:"portal_plan_type,omitempty" json:"portal_plan_type,omitempty"` + PortalPlanTypeDescription *RowFilterPortalPlansPortalPlanTypeDescription `form:"portal_plan_type_description,omitempty" json:"portal_plan_type_description,omitempty"` + + // PlanUsageLimit Maximum usage allowed within the interval + PlanUsageLimit *RowFilterPortalPlansPlanUsageLimit `form:"plan_usage_limit,omitempty" json:"plan_usage_limit,omitempty"` + PlanUsageLimitInterval *RowFilterPortalPlansPlanUsageLimitInterval `form:"plan_usage_limit_interval,omitempty" json:"plan_usage_limit_interval,omitempty"` + + // PlanRateLimitRps Rate limit in requests per second + PlanRateLimitRps *RowFilterPortalPlansPlanRateLimitRps `form:"plan_rate_limit_rps,omitempty" json:"plan_rate_limit_rps,omitempty"` + PlanApplicationLimit *RowFilterPortalPlansPlanApplicationLimit `form:"plan_application_limit,omitempty" json:"plan_application_limit,omitempty"` + + // Prefer Preference + Prefer *PatchPortalPlansParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchPortalPlansParamsPrefer defines parameters for PatchPortalPlans. +type PatchPortalPlansParamsPrefer string + +// PostPortalPlansParams defines parameters for PostPortalPlans. +type PostPortalPlansParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostPortalPlansParamsPrefer `json:"Prefer,omitempty"` +} + +// PostPortalPlansParamsPrefer defines parameters for PostPortalPlans. +type PostPortalPlansParamsPrefer string + +// DeletePortalUsersParams defines parameters for DeletePortalUsers. +type DeletePortalUsersParams struct { + PortalUserId *RowFilterPortalUsersPortalUserId `form:"portal_user_id,omitempty" json:"portal_user_id,omitempty"` + + // PortalUserEmail Unique email address for the user + PortalUserEmail *RowFilterPortalUsersPortalUserEmail `form:"portal_user_email,omitempty" json:"portal_user_email,omitempty"` + SignedUp *RowFilterPortalUsersSignedUp `form:"signed_up,omitempty" json:"signed_up,omitempty"` + + // PortalAdmin Whether user has admin privileges across the portal + PortalAdmin *RowFilterPortalUsersPortalAdmin `form:"portal_admin,omitempty" json:"portal_admin,omitempty"` + DeletedAt *RowFilterPortalUsersDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterPortalUsersCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalUsersUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *DeletePortalUsersParamsPrefer `json:"Prefer,omitempty"` +} + +// DeletePortalUsersParamsPrefer defines parameters for DeletePortalUsers. +type DeletePortalUsersParamsPrefer string + +// GetPortalUsersParams defines parameters for GetPortalUsers. +type GetPortalUsersParams struct { + PortalUserId *RowFilterPortalUsersPortalUserId `form:"portal_user_id,omitempty" json:"portal_user_id,omitempty"` + + // PortalUserEmail Unique email address for the user + PortalUserEmail *RowFilterPortalUsersPortalUserEmail `form:"portal_user_email,omitempty" json:"portal_user_email,omitempty"` + SignedUp *RowFilterPortalUsersSignedUp `form:"signed_up,omitempty" json:"signed_up,omitempty"` + + // PortalAdmin Whether user has admin privileges across the portal + PortalAdmin *RowFilterPortalUsersPortalAdmin `form:"portal_admin,omitempty" json:"portal_admin,omitempty"` + DeletedAt *RowFilterPortalUsersDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterPortalUsersCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalUsersUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetPortalUsersParamsPrefer `json:"Prefer,omitempty"` +} + +// GetPortalUsersParamsPrefer defines parameters for GetPortalUsers. +type GetPortalUsersParamsPrefer string + +// PatchPortalUsersParams defines parameters for PatchPortalUsers. +type PatchPortalUsersParams struct { + PortalUserId *RowFilterPortalUsersPortalUserId `form:"portal_user_id,omitempty" json:"portal_user_id,omitempty"` + + // PortalUserEmail Unique email address for the user + PortalUserEmail *RowFilterPortalUsersPortalUserEmail `form:"portal_user_email,omitempty" json:"portal_user_email,omitempty"` + SignedUp *RowFilterPortalUsersSignedUp `form:"signed_up,omitempty" json:"signed_up,omitempty"` + + // PortalAdmin Whether user has admin privileges across the portal + PortalAdmin *RowFilterPortalUsersPortalAdmin `form:"portal_admin,omitempty" json:"portal_admin,omitempty"` + DeletedAt *RowFilterPortalUsersDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterPortalUsersCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterPortalUsersUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *PatchPortalUsersParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchPortalUsersParamsPrefer defines parameters for PatchPortalUsers. +type PatchPortalUsersParamsPrefer string + +// PostPortalUsersParams defines parameters for PostPortalUsers. +type PostPortalUsersParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostPortalUsersParamsPrefer `json:"Prefer,omitempty"` +} + +// PostPortalUsersParamsPrefer defines parameters for PostPortalUsers. +type PostPortalUsersParamsPrefer string + +// GetPortalWorkersAccountDataParams defines parameters for GetPortalWorkersAccountData. +type GetPortalWorkersAccountDataParams struct { + PortalAccountId *RowFilterPortalWorkersAccountDataPortalAccountId `form:"portal_account_id,omitempty" json:"portal_account_id,omitempty"` + UserAccountName *RowFilterPortalWorkersAccountDataUserAccountName `form:"user_account_name,omitempty" json:"user_account_name,omitempty"` + PortalPlanType *RowFilterPortalWorkersAccountDataPortalPlanType `form:"portal_plan_type,omitempty" json:"portal_plan_type,omitempty"` + BillingType *RowFilterPortalWorkersAccountDataBillingType `form:"billing_type,omitempty" json:"billing_type,omitempty"` + PortalAccountUserLimit *RowFilterPortalWorkersAccountDataPortalAccountUserLimit `form:"portal_account_user_limit,omitempty" json:"portal_account_user_limit,omitempty"` + GcpEntitlementId *RowFilterPortalWorkersAccountDataGcpEntitlementId `form:"gcp_entitlement_id,omitempty" json:"gcp_entitlement_id,omitempty"` + OwnerEmail *RowFilterPortalWorkersAccountDataOwnerEmail `form:"owner_email,omitempty" json:"owner_email,omitempty"` + OwnerUserId *RowFilterPortalWorkersAccountDataOwnerUserId `form:"owner_user_id,omitempty" json:"owner_user_id,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetPortalWorkersAccountDataParamsPrefer `json:"Prefer,omitempty"` +} + +// GetPortalWorkersAccountDataParamsPrefer defines parameters for GetPortalWorkersAccountData. +type GetPortalWorkersAccountDataParamsPrefer string + +// GetRpcArmorParams defines parameters for GetRpcArmor. +type GetRpcArmorParams struct { + Empty string `form:"" json:""` +} + +// PostRpcArmorJSONBody defines parameters for PostRpcArmor. +type PostRpcArmorJSONBody struct { + Empty string `json:""` +} + +// PostRpcArmorApplicationVndPgrstObjectPlusJSONBody defines parameters for PostRpcArmor. +type PostRpcArmorApplicationVndPgrstObjectPlusJSONBody struct { + Empty string `json:""` +} + +// PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedBody defines parameters for PostRpcArmor. +type PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedBody struct { + Empty string `json:""` +} + +// PostRpcArmorParams defines parameters for PostRpcArmor. +type PostRpcArmorParams struct { + // Prefer Preference + Prefer *PostRpcArmorParamsPrefer `json:"Prefer,omitempty"` +} + +// PostRpcArmorParamsPrefer defines parameters for PostRpcArmor. +type PostRpcArmorParamsPrefer string + +// GetRpcDearmorParams defines parameters for GetRpcDearmor. +type GetRpcDearmorParams struct { + Empty string `form:"" json:""` +} + +// PostRpcDearmorJSONBody defines parameters for PostRpcDearmor. +type PostRpcDearmorJSONBody struct { + Empty string `json:""` +} + +// PostRpcDearmorApplicationVndPgrstObjectPlusJSONBody defines parameters for PostRpcDearmor. +type PostRpcDearmorApplicationVndPgrstObjectPlusJSONBody struct { + Empty string `json:""` +} + +// PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedBody defines parameters for PostRpcDearmor. +type PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedBody struct { + Empty string `json:""` +} + +// PostRpcDearmorParams defines parameters for PostRpcDearmor. +type PostRpcDearmorParams struct { + // Prefer Preference + Prefer *PostRpcDearmorParamsPrefer `json:"Prefer,omitempty"` +} + +// PostRpcDearmorParamsPrefer defines parameters for PostRpcDearmor. +type PostRpcDearmorParamsPrefer string + +// PostRpcGenRandomUuidJSONBody defines parameters for PostRpcGenRandomUuid. +type PostRpcGenRandomUuidJSONBody = map[string]interface{} + +// PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONBody defines parameters for PostRpcGenRandomUuid. +type PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONBody = map[string]interface{} + +// PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedBody defines parameters for PostRpcGenRandomUuid. +type PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedBody = map[string]interface{} + +// PostRpcGenRandomUuidParams defines parameters for PostRpcGenRandomUuid. +type PostRpcGenRandomUuidParams struct { + // Prefer Preference + Prefer *PostRpcGenRandomUuidParamsPrefer `json:"Prefer,omitempty"` +} + +// PostRpcGenRandomUuidParamsPrefer defines parameters for PostRpcGenRandomUuid. +type PostRpcGenRandomUuidParamsPrefer string + +// GetRpcGenSaltParams defines parameters for GetRpcGenSalt. +type GetRpcGenSaltParams struct { + Empty string `form:"" json:""` +} + +// PostRpcGenSaltJSONBody defines parameters for PostRpcGenSalt. +type PostRpcGenSaltJSONBody struct { + Empty string `json:""` +} + +// PostRpcGenSaltApplicationVndPgrstObjectPlusJSONBody defines parameters for PostRpcGenSalt. +type PostRpcGenSaltApplicationVndPgrstObjectPlusJSONBody struct { + Empty string `json:""` +} + +// PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedBody defines parameters for PostRpcGenSalt. +type PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedBody struct { + Empty string `json:""` +} + +// PostRpcGenSaltParams defines parameters for PostRpcGenSalt. +type PostRpcGenSaltParams struct { + // Prefer Preference + Prefer *PostRpcGenSaltParamsPrefer `json:"Prefer,omitempty"` +} + +// PostRpcGenSaltParamsPrefer defines parameters for PostRpcGenSalt. +type PostRpcGenSaltParamsPrefer string + +// GetRpcPgpArmorHeadersParams defines parameters for GetRpcPgpArmorHeaders. +type GetRpcPgpArmorHeadersParams struct { + Empty string `form:"" json:""` +} + +// PostRpcPgpArmorHeadersJSONBody defines parameters for PostRpcPgpArmorHeaders. +type PostRpcPgpArmorHeadersJSONBody struct { + Empty string `json:""` +} + +// PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONBody defines parameters for PostRpcPgpArmorHeaders. +type PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONBody struct { + Empty string `json:""` +} + +// PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedBody defines parameters for PostRpcPgpArmorHeaders. +type PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedBody struct { + Empty string `json:""` +} + +// PostRpcPgpArmorHeadersParams defines parameters for PostRpcPgpArmorHeaders. +type PostRpcPgpArmorHeadersParams struct { + // Prefer Preference + Prefer *PostRpcPgpArmorHeadersParamsPrefer `json:"Prefer,omitempty"` +} + +// PostRpcPgpArmorHeadersParamsPrefer defines parameters for PostRpcPgpArmorHeaders. +type PostRpcPgpArmorHeadersParamsPrefer string + +// GetRpcPgpKeyIdParams defines parameters for GetRpcPgpKeyId. +type GetRpcPgpKeyIdParams struct { + Empty string `form:"" json:""` +} + +// PostRpcPgpKeyIdJSONBody defines parameters for PostRpcPgpKeyId. +type PostRpcPgpKeyIdJSONBody struct { + Empty string `json:""` +} + +// PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONBody defines parameters for PostRpcPgpKeyId. +type PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONBody struct { + Empty string `json:""` +} + +// PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedBody defines parameters for PostRpcPgpKeyId. +type PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedBody struct { + Empty string `json:""` +} + +// PostRpcPgpKeyIdParams defines parameters for PostRpcPgpKeyId. +type PostRpcPgpKeyIdParams struct { + // Prefer Preference + Prefer *PostRpcPgpKeyIdParamsPrefer `json:"Prefer,omitempty"` +} + +// PostRpcPgpKeyIdParamsPrefer defines parameters for PostRpcPgpKeyId. +type PostRpcPgpKeyIdParamsPrefer string + +// DeleteServiceEndpointsParams defines parameters for DeleteServiceEndpoints. +type DeleteServiceEndpointsParams struct { + EndpointId *RowFilterServiceEndpointsEndpointId `form:"endpoint_id,omitempty" json:"endpoint_id,omitempty"` + ServiceId *RowFilterServiceEndpointsServiceId `form:"service_id,omitempty" json:"service_id,omitempty"` + EndpointType *RowFilterServiceEndpointsEndpointType `form:"endpoint_type,omitempty" json:"endpoint_type,omitempty"` + CreatedAt *RowFilterServiceEndpointsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterServiceEndpointsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *DeleteServiceEndpointsParamsPrefer `json:"Prefer,omitempty"` +} + +// DeleteServiceEndpointsParamsPrefer defines parameters for DeleteServiceEndpoints. +type DeleteServiceEndpointsParamsPrefer string + +// GetServiceEndpointsParams defines parameters for GetServiceEndpoints. +type GetServiceEndpointsParams struct { + EndpointId *RowFilterServiceEndpointsEndpointId `form:"endpoint_id,omitempty" json:"endpoint_id,omitempty"` + ServiceId *RowFilterServiceEndpointsServiceId `form:"service_id,omitempty" json:"service_id,omitempty"` + EndpointType *RowFilterServiceEndpointsEndpointType `form:"endpoint_type,omitempty" json:"endpoint_type,omitempty"` + CreatedAt *RowFilterServiceEndpointsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterServiceEndpointsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetServiceEndpointsParamsPrefer `json:"Prefer,omitempty"` +} + +// GetServiceEndpointsParamsPrefer defines parameters for GetServiceEndpoints. +type GetServiceEndpointsParamsPrefer string + +// PatchServiceEndpointsParams defines parameters for PatchServiceEndpoints. +type PatchServiceEndpointsParams struct { + EndpointId *RowFilterServiceEndpointsEndpointId `form:"endpoint_id,omitempty" json:"endpoint_id,omitempty"` + ServiceId *RowFilterServiceEndpointsServiceId `form:"service_id,omitempty" json:"service_id,omitempty"` + EndpointType *RowFilterServiceEndpointsEndpointType `form:"endpoint_type,omitempty" json:"endpoint_type,omitempty"` + CreatedAt *RowFilterServiceEndpointsCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterServiceEndpointsUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *PatchServiceEndpointsParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchServiceEndpointsParamsPrefer defines parameters for PatchServiceEndpoints. +type PatchServiceEndpointsParamsPrefer string + +// PostServiceEndpointsParams defines parameters for PostServiceEndpoints. +type PostServiceEndpointsParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostServiceEndpointsParamsPrefer `json:"Prefer,omitempty"` +} + +// PostServiceEndpointsParamsPrefer defines parameters for PostServiceEndpoints. +type PostServiceEndpointsParamsPrefer string + +// DeleteServiceFallbacksParams defines parameters for DeleteServiceFallbacks. +type DeleteServiceFallbacksParams struct { + ServiceFallbackId *RowFilterServiceFallbacksServiceFallbackId `form:"service_fallback_id,omitempty" json:"service_fallback_id,omitempty"` + ServiceId *RowFilterServiceFallbacksServiceId `form:"service_id,omitempty" json:"service_id,omitempty"` + FallbackUrl *RowFilterServiceFallbacksFallbackUrl `form:"fallback_url,omitempty" json:"fallback_url,omitempty"` + CreatedAt *RowFilterServiceFallbacksCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterServiceFallbacksUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *DeleteServiceFallbacksParamsPrefer `json:"Prefer,omitempty"` +} + +// DeleteServiceFallbacksParamsPrefer defines parameters for DeleteServiceFallbacks. +type DeleteServiceFallbacksParamsPrefer string + +// GetServiceFallbacksParams defines parameters for GetServiceFallbacks. +type GetServiceFallbacksParams struct { + ServiceFallbackId *RowFilterServiceFallbacksServiceFallbackId `form:"service_fallback_id,omitempty" json:"service_fallback_id,omitempty"` + ServiceId *RowFilterServiceFallbacksServiceId `form:"service_id,omitempty" json:"service_id,omitempty"` + FallbackUrl *RowFilterServiceFallbacksFallbackUrl `form:"fallback_url,omitempty" json:"fallback_url,omitempty"` + CreatedAt *RowFilterServiceFallbacksCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterServiceFallbacksUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetServiceFallbacksParamsPrefer `json:"Prefer,omitempty"` +} + +// GetServiceFallbacksParamsPrefer defines parameters for GetServiceFallbacks. +type GetServiceFallbacksParamsPrefer string + +// PatchServiceFallbacksParams defines parameters for PatchServiceFallbacks. +type PatchServiceFallbacksParams struct { + ServiceFallbackId *RowFilterServiceFallbacksServiceFallbackId `form:"service_fallback_id,omitempty" json:"service_fallback_id,omitempty"` + ServiceId *RowFilterServiceFallbacksServiceId `form:"service_id,omitempty" json:"service_id,omitempty"` + FallbackUrl *RowFilterServiceFallbacksFallbackUrl `form:"fallback_url,omitempty" json:"fallback_url,omitempty"` + CreatedAt *RowFilterServiceFallbacksCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterServiceFallbacksUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *PatchServiceFallbacksParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchServiceFallbacksParamsPrefer defines parameters for PatchServiceFallbacks. +type PatchServiceFallbacksParamsPrefer string + +// PostServiceFallbacksParams defines parameters for PostServiceFallbacks. +type PostServiceFallbacksParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostServiceFallbacksParamsPrefer `json:"Prefer,omitempty"` +} + +// PostServiceFallbacksParamsPrefer defines parameters for PostServiceFallbacks. +type PostServiceFallbacksParamsPrefer string + +// DeleteServicesParams defines parameters for DeleteServices. +type DeleteServicesParams struct { + ServiceId *RowFilterServicesServiceId `form:"service_id,omitempty" json:"service_id,omitempty"` + ServiceName *RowFilterServicesServiceName `form:"service_name,omitempty" json:"service_name,omitempty"` + + // ComputeUnitsPerRelay Cost in compute units for each relay + ComputeUnitsPerRelay *RowFilterServicesComputeUnitsPerRelay `form:"compute_units_per_relay,omitempty" json:"compute_units_per_relay,omitempty"` + + // ServiceDomains Valid domains for this service + ServiceDomains *RowFilterServicesServiceDomains `form:"service_domains,omitempty" json:"service_domains,omitempty"` + ServiceOwnerAddress *RowFilterServicesServiceOwnerAddress `form:"service_owner_address,omitempty" json:"service_owner_address,omitempty"` + NetworkId *RowFilterServicesNetworkId `form:"network_id,omitempty" json:"network_id,omitempty"` + Active *RowFilterServicesActive `form:"active,omitempty" json:"active,omitempty"` + Beta *RowFilterServicesBeta `form:"beta,omitempty" json:"beta,omitempty"` + ComingSoon *RowFilterServicesComingSoon `form:"coming_soon,omitempty" json:"coming_soon,omitempty"` + QualityFallbackEnabled *RowFilterServicesQualityFallbackEnabled `form:"quality_fallback_enabled,omitempty" json:"quality_fallback_enabled,omitempty"` + HardFallbackEnabled *RowFilterServicesHardFallbackEnabled `form:"hard_fallback_enabled,omitempty" json:"hard_fallback_enabled,omitempty"` + SvgIcon *RowFilterServicesSvgIcon `form:"svg_icon,omitempty" json:"svg_icon,omitempty"` + PublicEndpointUrl *RowFilterServicesPublicEndpointUrl `form:"public_endpoint_url,omitempty" json:"public_endpoint_url,omitempty"` + StatusEndpointUrl *RowFilterServicesStatusEndpointUrl `form:"status_endpoint_url,omitempty" json:"status_endpoint_url,omitempty"` + StatusQuery *RowFilterServicesStatusQuery `form:"status_query,omitempty" json:"status_query,omitempty"` + DeletedAt *RowFilterServicesDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterServicesCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterServicesUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *DeleteServicesParamsPrefer `json:"Prefer,omitempty"` +} + +// DeleteServicesParamsPrefer defines parameters for DeleteServices. +type DeleteServicesParamsPrefer string + +// GetServicesParams defines parameters for GetServices. +type GetServicesParams struct { + ServiceId *RowFilterServicesServiceId `form:"service_id,omitempty" json:"service_id,omitempty"` + ServiceName *RowFilterServicesServiceName `form:"service_name,omitempty" json:"service_name,omitempty"` + + // ComputeUnitsPerRelay Cost in compute units for each relay + ComputeUnitsPerRelay *RowFilterServicesComputeUnitsPerRelay `form:"compute_units_per_relay,omitempty" json:"compute_units_per_relay,omitempty"` + + // ServiceDomains Valid domains for this service + ServiceDomains *RowFilterServicesServiceDomains `form:"service_domains,omitempty" json:"service_domains,omitempty"` + ServiceOwnerAddress *RowFilterServicesServiceOwnerAddress `form:"service_owner_address,omitempty" json:"service_owner_address,omitempty"` + NetworkId *RowFilterServicesNetworkId `form:"network_id,omitempty" json:"network_id,omitempty"` + Active *RowFilterServicesActive `form:"active,omitempty" json:"active,omitempty"` + Beta *RowFilterServicesBeta `form:"beta,omitempty" json:"beta,omitempty"` + ComingSoon *RowFilterServicesComingSoon `form:"coming_soon,omitempty" json:"coming_soon,omitempty"` + QualityFallbackEnabled *RowFilterServicesQualityFallbackEnabled `form:"quality_fallback_enabled,omitempty" json:"quality_fallback_enabled,omitempty"` + HardFallbackEnabled *RowFilterServicesHardFallbackEnabled `form:"hard_fallback_enabled,omitempty" json:"hard_fallback_enabled,omitempty"` + SvgIcon *RowFilterServicesSvgIcon `form:"svg_icon,omitempty" json:"svg_icon,omitempty"` + PublicEndpointUrl *RowFilterServicesPublicEndpointUrl `form:"public_endpoint_url,omitempty" json:"public_endpoint_url,omitempty"` + StatusEndpointUrl *RowFilterServicesStatusEndpointUrl `form:"status_endpoint_url,omitempty" json:"status_endpoint_url,omitempty"` + StatusQuery *RowFilterServicesStatusQuery `form:"status_query,omitempty" json:"status_query,omitempty"` + DeletedAt *RowFilterServicesDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterServicesCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterServicesUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Order Ordering + Order *Order `form:"order,omitempty" json:"order,omitempty"` + + // Offset Limiting and Pagination + Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"` + + // Limit Limiting and Pagination + Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"` + + // Range Limiting and Pagination + Range *Range `json:"Range,omitempty"` + + // RangeUnit Limiting and Pagination + RangeUnit *RangeUnit `json:"Range-Unit,omitempty"` + + // Prefer Preference + Prefer *GetServicesParamsPrefer `json:"Prefer,omitempty"` +} + +// GetServicesParamsPrefer defines parameters for GetServices. +type GetServicesParamsPrefer string + +// PatchServicesParams defines parameters for PatchServices. +type PatchServicesParams struct { + ServiceId *RowFilterServicesServiceId `form:"service_id,omitempty" json:"service_id,omitempty"` + ServiceName *RowFilterServicesServiceName `form:"service_name,omitempty" json:"service_name,omitempty"` + + // ComputeUnitsPerRelay Cost in compute units for each relay + ComputeUnitsPerRelay *RowFilterServicesComputeUnitsPerRelay `form:"compute_units_per_relay,omitempty" json:"compute_units_per_relay,omitempty"` + + // ServiceDomains Valid domains for this service + ServiceDomains *RowFilterServicesServiceDomains `form:"service_domains,omitempty" json:"service_domains,omitempty"` + ServiceOwnerAddress *RowFilterServicesServiceOwnerAddress `form:"service_owner_address,omitempty" json:"service_owner_address,omitempty"` + NetworkId *RowFilterServicesNetworkId `form:"network_id,omitempty" json:"network_id,omitempty"` + Active *RowFilterServicesActive `form:"active,omitempty" json:"active,omitempty"` + Beta *RowFilterServicesBeta `form:"beta,omitempty" json:"beta,omitempty"` + ComingSoon *RowFilterServicesComingSoon `form:"coming_soon,omitempty" json:"coming_soon,omitempty"` + QualityFallbackEnabled *RowFilterServicesQualityFallbackEnabled `form:"quality_fallback_enabled,omitempty" json:"quality_fallback_enabled,omitempty"` + HardFallbackEnabled *RowFilterServicesHardFallbackEnabled `form:"hard_fallback_enabled,omitempty" json:"hard_fallback_enabled,omitempty"` + SvgIcon *RowFilterServicesSvgIcon `form:"svg_icon,omitempty" json:"svg_icon,omitempty"` + PublicEndpointUrl *RowFilterServicesPublicEndpointUrl `form:"public_endpoint_url,omitempty" json:"public_endpoint_url,omitempty"` + StatusEndpointUrl *RowFilterServicesStatusEndpointUrl `form:"status_endpoint_url,omitempty" json:"status_endpoint_url,omitempty"` + StatusQuery *RowFilterServicesStatusQuery `form:"status_query,omitempty" json:"status_query,omitempty"` + DeletedAt *RowFilterServicesDeletedAt `form:"deleted_at,omitempty" json:"deleted_at,omitempty"` + CreatedAt *RowFilterServicesCreatedAt `form:"created_at,omitempty" json:"created_at,omitempty"` + UpdatedAt *RowFilterServicesUpdatedAt `form:"updated_at,omitempty" json:"updated_at,omitempty"` + + // Prefer Preference + Prefer *PatchServicesParamsPrefer `json:"Prefer,omitempty"` +} + +// PatchServicesParamsPrefer defines parameters for PatchServices. +type PatchServicesParamsPrefer string + +// PostServicesParams defines parameters for PostServices. +type PostServicesParams struct { + // Select Filtering Columns + Select *Select `form:"select,omitempty" json:"select,omitempty"` + + // Prefer Preference + Prefer *PostServicesParamsPrefer `json:"Prefer,omitempty"` +} + +// PostServicesParamsPrefer defines parameters for PostServices. +type PostServicesParamsPrefer string + +// PatchNetworksJSONRequestBody defines body for PatchNetworks for application/json ContentType. +type PatchNetworksJSONRequestBody = Networks + +// PatchNetworksApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchNetworks for application/vnd.pgrst.object+json ContentType. +type PatchNetworksApplicationVndPgrstObjectPlusJSONRequestBody = Networks + +// PatchNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchNetworks for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = Networks + +// PostNetworksJSONRequestBody defines body for PostNetworks for application/json ContentType. +type PostNetworksJSONRequestBody = Networks + +// PostNetworksApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostNetworks for application/vnd.pgrst.object+json ContentType. +type PostNetworksApplicationVndPgrstObjectPlusJSONRequestBody = Networks + +// PostNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostNetworks for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostNetworksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = Networks + +// PatchOrganizationsJSONRequestBody defines body for PatchOrganizations for application/json ContentType. +type PatchOrganizationsJSONRequestBody = Organizations + +// PatchOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchOrganizations for application/vnd.pgrst.object+json ContentType. +type PatchOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody = Organizations + +// PatchOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchOrganizations for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = Organizations + +// PostOrganizationsJSONRequestBody defines body for PostOrganizations for application/json ContentType. +type PostOrganizationsJSONRequestBody = Organizations + +// PostOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostOrganizations for application/vnd.pgrst.object+json ContentType. +type PostOrganizationsApplicationVndPgrstObjectPlusJSONRequestBody = Organizations + +// PostOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostOrganizations for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostOrganizationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = Organizations + +// PatchPortalAccountRbacJSONRequestBody defines body for PatchPortalAccountRbac for application/json ContentType. +type PatchPortalAccountRbacJSONRequestBody = PortalAccountRbac + +// PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchPortalAccountRbac for application/vnd.pgrst.object+json ContentType. +type PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody = PortalAccountRbac + +// PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchPortalAccountRbac for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalAccountRbac + +// PostPortalAccountRbacJSONRequestBody defines body for PostPortalAccountRbac for application/json ContentType. +type PostPortalAccountRbacJSONRequestBody = PortalAccountRbac + +// PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostPortalAccountRbac for application/vnd.pgrst.object+json ContentType. +type PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONRequestBody = PortalAccountRbac + +// PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostPortalAccountRbac for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostPortalAccountRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalAccountRbac + +// PatchPortalAccountsJSONRequestBody defines body for PatchPortalAccounts for application/json ContentType. +type PatchPortalAccountsJSONRequestBody = PortalAccounts + +// PatchPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchPortalAccounts for application/vnd.pgrst.object+json ContentType. +type PatchPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody = PortalAccounts + +// PatchPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchPortalAccounts for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalAccounts + +// PostPortalAccountsJSONRequestBody defines body for PostPortalAccounts for application/json ContentType. +type PostPortalAccountsJSONRequestBody = PortalAccounts + +// PostPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostPortalAccounts for application/vnd.pgrst.object+json ContentType. +type PostPortalAccountsApplicationVndPgrstObjectPlusJSONRequestBody = PortalAccounts + +// PostPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostPortalAccounts for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostPortalAccountsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalAccounts + +// PatchPortalApplicationRbacJSONRequestBody defines body for PatchPortalApplicationRbac for application/json ContentType. +type PatchPortalApplicationRbacJSONRequestBody = PortalApplicationRbac + +// PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchPortalApplicationRbac for application/vnd.pgrst.object+json ContentType. +type PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody = PortalApplicationRbac + +// PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchPortalApplicationRbac for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalApplicationRbac + +// PostPortalApplicationRbacJSONRequestBody defines body for PostPortalApplicationRbac for application/json ContentType. +type PostPortalApplicationRbacJSONRequestBody = PortalApplicationRbac + +// PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostPortalApplicationRbac for application/vnd.pgrst.object+json ContentType. +type PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONRequestBody = PortalApplicationRbac + +// PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostPortalApplicationRbac for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostPortalApplicationRbacApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalApplicationRbac + +// PatchPortalApplicationsJSONRequestBody defines body for PatchPortalApplications for application/json ContentType. +type PatchPortalApplicationsJSONRequestBody = PortalApplications + +// PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchPortalApplications for application/vnd.pgrst.object+json ContentType. +type PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody = PortalApplications + +// PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchPortalApplications for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalApplications + +// PostPortalApplicationsJSONRequestBody defines body for PostPortalApplications for application/json ContentType. +type PostPortalApplicationsJSONRequestBody = PortalApplications + +// PostPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostPortalApplications for application/vnd.pgrst.object+json ContentType. +type PostPortalApplicationsApplicationVndPgrstObjectPlusJSONRequestBody = PortalApplications + +// PostPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostPortalApplications for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostPortalApplicationsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalApplications + +// PatchPortalPlansJSONRequestBody defines body for PatchPortalPlans for application/json ContentType. +type PatchPortalPlansJSONRequestBody = PortalPlans + +// PatchPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchPortalPlans for application/vnd.pgrst.object+json ContentType. +type PatchPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody = PortalPlans + +// PatchPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchPortalPlans for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalPlans + +// PostPortalPlansJSONRequestBody defines body for PostPortalPlans for application/json ContentType. +type PostPortalPlansJSONRequestBody = PortalPlans + +// PostPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostPortalPlans for application/vnd.pgrst.object+json ContentType. +type PostPortalPlansApplicationVndPgrstObjectPlusJSONRequestBody = PortalPlans + +// PostPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostPortalPlans for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostPortalPlansApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalPlans + +// PatchPortalUsersJSONRequestBody defines body for PatchPortalUsers for application/json ContentType. +type PatchPortalUsersJSONRequestBody = PortalUsers + +// PatchPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchPortalUsers for application/vnd.pgrst.object+json ContentType. +type PatchPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody = PortalUsers + +// PatchPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchPortalUsers for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalUsers + +// PostPortalUsersJSONRequestBody defines body for PostPortalUsers for application/json ContentType. +type PostPortalUsersJSONRequestBody = PortalUsers + +// PostPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostPortalUsers for application/vnd.pgrst.object+json ContentType. +type PostPortalUsersApplicationVndPgrstObjectPlusJSONRequestBody = PortalUsers + +// PostPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostPortalUsers for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostPortalUsersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PortalUsers + +// PostRpcArmorJSONRequestBody defines body for PostRpcArmor for application/json ContentType. +type PostRpcArmorJSONRequestBody PostRpcArmorJSONBody + +// PostRpcArmorApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostRpcArmor for application/vnd.pgrst.object+json ContentType. +type PostRpcArmorApplicationVndPgrstObjectPlusJSONRequestBody PostRpcArmorApplicationVndPgrstObjectPlusJSONBody + +// PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostRpcArmor for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody PostRpcArmorApplicationVndPgrstObjectPlusJSONNullsStrippedBody + +// PostRpcDearmorJSONRequestBody defines body for PostRpcDearmor for application/json ContentType. +type PostRpcDearmorJSONRequestBody PostRpcDearmorJSONBody + +// PostRpcDearmorApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostRpcDearmor for application/vnd.pgrst.object+json ContentType. +type PostRpcDearmorApplicationVndPgrstObjectPlusJSONRequestBody PostRpcDearmorApplicationVndPgrstObjectPlusJSONBody + +// PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostRpcDearmor for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody PostRpcDearmorApplicationVndPgrstObjectPlusJSONNullsStrippedBody + +// PostRpcGenRandomUuidJSONRequestBody defines body for PostRpcGenRandomUuid for application/json ContentType. +type PostRpcGenRandomUuidJSONRequestBody = PostRpcGenRandomUuidJSONBody + +// PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostRpcGenRandomUuid for application/vnd.pgrst.object+json ContentType. +type PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONRequestBody = PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONBody + +// PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostRpcGenRandomUuid for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = PostRpcGenRandomUuidApplicationVndPgrstObjectPlusJSONNullsStrippedBody + +// PostRpcGenSaltJSONRequestBody defines body for PostRpcGenSalt for application/json ContentType. +type PostRpcGenSaltJSONRequestBody PostRpcGenSaltJSONBody + +// PostRpcGenSaltApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostRpcGenSalt for application/vnd.pgrst.object+json ContentType. +type PostRpcGenSaltApplicationVndPgrstObjectPlusJSONRequestBody PostRpcGenSaltApplicationVndPgrstObjectPlusJSONBody + +// PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostRpcGenSalt for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody PostRpcGenSaltApplicationVndPgrstObjectPlusJSONNullsStrippedBody + +// PostRpcPgpArmorHeadersJSONRequestBody defines body for PostRpcPgpArmorHeaders for application/json ContentType. +type PostRpcPgpArmorHeadersJSONRequestBody PostRpcPgpArmorHeadersJSONBody + +// PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostRpcPgpArmorHeaders for application/vnd.pgrst.object+json ContentType. +type PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONRequestBody PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONBody + +// PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostRpcPgpArmorHeaders for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody PostRpcPgpArmorHeadersApplicationVndPgrstObjectPlusJSONNullsStrippedBody + +// PostRpcPgpKeyIdJSONRequestBody defines body for PostRpcPgpKeyId for application/json ContentType. +type PostRpcPgpKeyIdJSONRequestBody PostRpcPgpKeyIdJSONBody + +// PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostRpcPgpKeyId for application/vnd.pgrst.object+json ContentType. +type PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONRequestBody PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONBody + +// PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostRpcPgpKeyId for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody PostRpcPgpKeyIdApplicationVndPgrstObjectPlusJSONNullsStrippedBody + +// PatchServiceEndpointsJSONRequestBody defines body for PatchServiceEndpoints for application/json ContentType. +type PatchServiceEndpointsJSONRequestBody = ServiceEndpoints + +// PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchServiceEndpoints for application/vnd.pgrst.object+json ContentType. +type PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody = ServiceEndpoints + +// PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchServiceEndpoints for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = ServiceEndpoints + +// PostServiceEndpointsJSONRequestBody defines body for PostServiceEndpoints for application/json ContentType. +type PostServiceEndpointsJSONRequestBody = ServiceEndpoints + +// PostServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostServiceEndpoints for application/vnd.pgrst.object+json ContentType. +type PostServiceEndpointsApplicationVndPgrstObjectPlusJSONRequestBody = ServiceEndpoints + +// PostServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostServiceEndpoints for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostServiceEndpointsApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = ServiceEndpoints + +// PatchServiceFallbacksJSONRequestBody defines body for PatchServiceFallbacks for application/json ContentType. +type PatchServiceFallbacksJSONRequestBody = ServiceFallbacks + +// PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchServiceFallbacks for application/vnd.pgrst.object+json ContentType. +type PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody = ServiceFallbacks + +// PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchServiceFallbacks for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = ServiceFallbacks + +// PostServiceFallbacksJSONRequestBody defines body for PostServiceFallbacks for application/json ContentType. +type PostServiceFallbacksJSONRequestBody = ServiceFallbacks + +// PostServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostServiceFallbacks for application/vnd.pgrst.object+json ContentType. +type PostServiceFallbacksApplicationVndPgrstObjectPlusJSONRequestBody = ServiceFallbacks + +// PostServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostServiceFallbacks for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostServiceFallbacksApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = ServiceFallbacks + +// PatchServicesJSONRequestBody defines body for PatchServices for application/json ContentType. +type PatchServicesJSONRequestBody = Services + +// PatchServicesApplicationVndPgrstObjectPlusJSONRequestBody defines body for PatchServices for application/vnd.pgrst.object+json ContentType. +type PatchServicesApplicationVndPgrstObjectPlusJSONRequestBody = Services + +// PatchServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PatchServices for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PatchServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = Services + +// PostServicesJSONRequestBody defines body for PostServices for application/json ContentType. +type PostServicesJSONRequestBody = Services + +// PostServicesApplicationVndPgrstObjectPlusJSONRequestBody defines body for PostServices for application/vnd.pgrst.object+json ContentType. +type PostServicesApplicationVndPgrstObjectPlusJSONRequestBody = Services + +// PostServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody defines body for PostServices for application/vnd.pgrst.object+json;nulls=stripped ContentType. +type PostServicesApplicationVndPgrstObjectPlusJSONNullsStrippedRequestBody = Services diff --git a/portal-db/sdk/typescript/README.md b/portal-db/sdk/typescript/README.md new file mode 100644 index 000000000..673d25028 --- /dev/null +++ b/portal-db/sdk/typescript/README.md @@ -0,0 +1,108 @@ +# Portal DB TypeScript SDK + + + +Type-safe TypeScript client for the Portal DB API, generated from OpenAPI specification using [openapi-typescript](https://github.com/openapi-ts/openapi-typescript) and [openapi-fetch](https://github.com/openapi-ts/openapi-typescript/tree/main/packages/openapi-fetch). + +## **Installation** + +```bash +npm install openapi-fetch +``` + +## Usage + +### Basic GET Request + +```typescript +import createClient from 'openapi-fetch'; +import type { paths } from '@buildwithgrove/portal-db-ts-sdk'; + +const client = createClient({ + baseUrl: 'http://localhost:3000', + headers: { + 'Authorization': `Bearer ${JWT_TOKEN}`, + }, +}); + +// Fetch all services +const { data, error } = await client.GET('/services'); + +if (error) { + console.error('Error:', error); +} else { + console.log('Services:', data); +} +``` + +### Query with Filters + +```typescript +// GET with PostgREST filters +const { data, error } = await client.GET('/services', { + params: { + query: { + active: 'eq.true', // Filter: active = true + service_id: 'like.*ethereum*', // Pattern match + } + } +}); +``` + +### React with @tanstack/react-query + +For React applications, you can use [openapi-react-query](https://openapi-ts.dev/openapi-react-query/) for a type-safe wrapper around React Query: + +```bash +npm install openapi-react-query openapi-fetch @tanstack/react-query +``` + +```typescript +import createFetchClient from 'openapi-fetch'; +import createClient from 'openapi-react-query'; +import type { paths } from '@buildwithgrove/portal-db-ts-sdk'; + +const fetchClient = createFetchClient({ + baseUrl: 'http://localhost:3000', + headers: { + 'Authorization': `Bearer ${JWT_TOKEN}`, + }, +}); + +const $api = createClient(fetchClient); + +const ServicesComponent = () => { + const { data, error, isLoading } = $api.useQuery( + 'get', + '/services', + { + params: { + query: { + active: 'eq.true', + } + } + } + ); + + if (isLoading || !data) return 'Loading...'; + if (error) return `Error: ${error.message}`; + + return ( +
+ {data.map(service => ( +
{service.service_id}
+ ))} +
+ ); +}; +``` + +## Documentation + +- **openapi-fetch**: https://openapi-ts.dev/openapi-fetch/ +- **openapi-react-query**: https://openapi-ts.dev/openapi-react-query/ +- **PostgREST API Reference**: https://postgrest.org/en/stable/references/api/tables_views.html + +## Type Safety + +All endpoints, parameters, and responses are fully typed based on the OpenAPI specification. TypeScript will provide autocomplete and catch errors at compile time. diff --git a/portal-db/sdk/typescript/client.ts b/portal-db/sdk/typescript/client.ts new file mode 100644 index 000000000..189af685d --- /dev/null +++ b/portal-db/sdk/typescript/client.ts @@ -0,0 +1,49 @@ +/** + * Grove Portal DB API Client + * + * This client uses openapi-fetch for type-safe API requests. + * It's lightweight with zero dependencies beyond native fetch. + * + * @example + * ```typescript + * import createClient from './client'; + * + * const client = createClient({ baseUrl: 'http://localhost:3000' }); + * + * // GET request with full type safety + * const { data, error } = await client.GET('/portal_accounts'); + * + * // POST request with typed body + * const { data, error } = await client.POST('/portal_accounts', { + * body: { + * portal_plan_type: 'PLAN_FREE', + * // ... other fields + * } + * }); + * ``` + */ +import createClient from 'openapi-fetch'; +import type { paths } from './types'; + +export type { paths } from './types'; + +/** + * Create a new API client instance + * + * @param options - Client configuration options + * @param options.baseUrl - Base URL for the API (default: http://localhost:3000) + * @param options.headers - Default headers to include with every request + * @returns Type-safe API client + */ +export default function createPortalDBClient(options?: { + baseUrl?: string; + headers?: HeadersInit; +}) { + return createClient({ + baseUrl: options?.baseUrl || 'http://localhost:3000', + headers: options?.headers, + }); +} + +// Re-export for convenience +export { createClient }; diff --git a/portal-db/sdk/typescript/package-lock.json b/portal-db/sdk/typescript/package-lock.json new file mode 100644 index 000000000..9bd9e0214 --- /dev/null +++ b/portal-db/sdk/typescript/package-lock.json @@ -0,0 +1,406 @@ +{ + "name": "@grove/portal-db-sdk", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@grove/portal-db-sdk", + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "openapi-fetch": "^0.12.2" + }, + "devDependencies": { + "openapi-typescript": "^7.4.3", + "typescript": "^5.0.0" + }, + "peerDependencies": { + "typescript": ">=5.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@redocly/ajv": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.3.tgz", + "integrity": "sha512-4P3iZse91TkBiY+Dx5DUgxQ9GXkVJf++cmI0MOyLDxV9b5MUBI4II6ES8zA5JCbO72nKAJxWrw4PUPW+YP3ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js-replace": "^1.0.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@redocly/config": { + "version": "0.22.2", + "resolved": "https://registry.npmjs.org/@redocly/config/-/config-0.22.2.tgz", + "integrity": "sha512-roRDai8/zr2S9YfmzUfNhKjOF0NdcOIqF7bhf4MVC5UxpjIysDjyudvlAiVbpPHp3eDRWbdzUgtkK1a7YiDNyQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@redocly/openapi-core": { + "version": "1.34.5", + "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.34.5.tgz", + "integrity": "sha512-0EbE8LRbkogtcCXU7liAyC00n9uNG9hJ+eMyHFdUsy9lB/WGqnEBgwjA9q2cyzAVcdTkQqTBBU1XePNnN3OijA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@redocly/ajv": "^8.11.2", + "@redocly/config": "^0.22.0", + "colorette": "^1.2.0", + "https-proxy-agent": "^7.0.5", + "js-levenshtein": "^1.1.6", + "js-yaml": "^4.1.0", + "minimatch": "^5.0.1", + "pluralize": "^8.0.0", + "yaml-ast-parser": "0.0.43" + }, + "engines": { + "node": ">=18.17.0", + "npm": ">=9.5.0" + } + }, + "node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/change-case": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-5.4.4.tgz", + "integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/index-to-position": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-1.2.0.tgz", + "integrity": "sha512-Yg7+ztRkqslMAS2iFaU+Oa4KTSidr63OsFGlOrJoW981kIYO3CGCS3wA95P1mUi/IVSJkn0D479KTJpVpvFNuw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", + "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, + "node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/openapi-fetch": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/openapi-fetch/-/openapi-fetch-0.12.5.tgz", + "integrity": "sha512-FnAMWLt0MNL6ComcL4q/YbB1tUgyz5YnYtwA1+zlJ5xcucmK5RlWsgH1ynxmEeu8fGJkYjm8armU/HVpORc9lw==", + "license": "MIT", + "dependencies": { + "openapi-typescript-helpers": "^0.0.15" + } + }, + "node_modules/openapi-typescript": { + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/openapi-typescript/-/openapi-typescript-7.9.1.tgz", + "integrity": "sha512-9gJtoY04mk6iPMbToPjPxEAtfXZ0dTsMZtsgUI8YZta0btPPig9DJFP4jlerQD/7QOwYgb0tl+zLUpDf7vb7VA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@redocly/openapi-core": "^1.34.5", + "ansi-colors": "^4.1.3", + "change-case": "^5.4.4", + "parse-json": "^8.3.0", + "supports-color": "^10.1.0", + "yargs-parser": "^21.1.1" + }, + "bin": { + "openapi-typescript": "bin/cli.js" + }, + "peerDependencies": { + "typescript": "^5.x" + } + }, + "node_modules/openapi-typescript-helpers": { + "version": "0.0.15", + "resolved": "https://registry.npmjs.org/openapi-typescript-helpers/-/openapi-typescript-helpers-0.0.15.tgz", + "integrity": "sha512-opyTPaunsklCBpTK8JGef6mfPhLSnyy5a0IN9vKtx3+4aExf+KxEqYwIy3hqkedXIB97u357uLMJsOnm3GVjsw==", + "license": "MIT" + }, + "node_modules/parse-json": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.3.0.tgz", + "integrity": "sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "index-to-position": "^1.1.0", + "type-fest": "^4.39.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/supports-color": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-10.2.2.tgz", + "integrity": "sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/type-fest": { + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", + "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/uri-js-replace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uri-js-replace/-/uri-js-replace-1.0.1.tgz", + "integrity": "sha512-W+C9NWNLFOoBI2QWDp4UT9pv65r2w5Cx+3sTYFvtMdDBxkKt1syCqsUdSFAChbEe1uK5TfS04wt/nGwmaeIQ0g==", + "dev": true, + "license": "MIT" + }, + "node_modules/yaml-ast-parser": { + "version": "0.0.43", + "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", + "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + } + } +} diff --git a/portal-db/sdk/typescript/package.json b/portal-db/sdk/typescript/package.json new file mode 100644 index 000000000..e05ddc7eb --- /dev/null +++ b/portal-db/sdk/typescript/package.json @@ -0,0 +1,24 @@ +{ + "name": "@grove/portal-db-sdk", + "version": "1.0.0", + "description": "TypeScript SDK for Grove Portal DB API", + "type": "module", + "main": "client.ts", + "types": "types.ts", + "scripts": { + "type-check": "tsc --noEmit" + }, + "keywords": ["grove", "portal", "db", "api", "sdk", "typescript"], + "author": "Grove Team", + "license": "MIT", + "dependencies": { + "openapi-fetch": "^0.12.2" + }, + "devDependencies": { + "typescript": "^5.0.0", + "openapi-typescript": "^7.4.3" + }, + "peerDependencies": { + "typescript": ">=5.0.0" + } +} diff --git a/portal-db/sdk/typescript/tsconfig.json b/portal-db/sdk/typescript/tsconfig.json new file mode 100644 index 000000000..16683e950 --- /dev/null +++ b/portal-db/sdk/typescript/tsconfig.json @@ -0,0 +1,18 @@ +{ + "compilerOptions": { + "target": "ES2020", + "module": "ESNext", + "lib": ["ES2020", "DOM"], + "moduleResolution": "Bundler", + "noUncheckedIndexedAccess": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "strict": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "declaration": true, + "declarationMap": true + }, + "include": ["*.ts"], + "exclude": ["node_modules", "dist"] +} diff --git a/portal-db/sdk/typescript/types.ts b/portal-db/sdk/typescript/types.ts new file mode 100644 index 000000000..e34045bd1 --- /dev/null +++ b/portal-db/sdk/typescript/types.ts @@ -0,0 +1,2861 @@ +/** + * This file was auto-generated by openapi-typescript. + * Do not make direct changes to the file. + */ + +export interface paths { + "/": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** OpenAPI description (this document) */ + get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/service_fallbacks": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Fallback URLs for services when primary endpoints fail */ + get: { + parameters: { + query?: { + service_fallback_id?: components["parameters"]["rowFilter.service_fallbacks.service_fallback_id"]; + service_id?: components["parameters"]["rowFilter.service_fallbacks.service_id"]; + fallback_url?: components["parameters"]["rowFilter.service_fallbacks.fallback_url"]; + created_at?: components["parameters"]["rowFilter.service_fallbacks.created_at"]; + updated_at?: components["parameters"]["rowFilter.service_fallbacks.updated_at"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["service_fallbacks"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["service_fallbacks"][]; + "application/vnd.pgrst.object+json": components["schemas"]["service_fallbacks"][]; + "text/csv": components["schemas"]["service_fallbacks"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** Fallback URLs for services when primary endpoints fail */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["service_fallbacks"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** Fallback URLs for services when primary endpoints fail */ + delete: { + parameters: { + query?: { + service_fallback_id?: components["parameters"]["rowFilter.service_fallbacks.service_fallback_id"]; + service_id?: components["parameters"]["rowFilter.service_fallbacks.service_id"]; + fallback_url?: components["parameters"]["rowFilter.service_fallbacks.fallback_url"]; + created_at?: components["parameters"]["rowFilter.service_fallbacks.created_at"]; + updated_at?: components["parameters"]["rowFilter.service_fallbacks.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** Fallback URLs for services when primary endpoints fail */ + patch: { + parameters: { + query?: { + service_fallback_id?: components["parameters"]["rowFilter.service_fallbacks.service_fallback_id"]; + service_id?: components["parameters"]["rowFilter.service_fallbacks.service_id"]; + fallback_url?: components["parameters"]["rowFilter.service_fallbacks.fallback_url"]; + created_at?: components["parameters"]["rowFilter.service_fallbacks.created_at"]; + updated_at?: components["parameters"]["rowFilter.service_fallbacks.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["service_fallbacks"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/portal_application_rbac": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** User access controls for specific applications */ + get: { + parameters: { + query?: { + id?: components["parameters"]["rowFilter.portal_application_rbac.id"]; + portal_application_id?: components["parameters"]["rowFilter.portal_application_rbac.portal_application_id"]; + portal_user_id?: components["parameters"]["rowFilter.portal_application_rbac.portal_user_id"]; + created_at?: components["parameters"]["rowFilter.portal_application_rbac.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_application_rbac.updated_at"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["portal_application_rbac"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_application_rbac"][]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_application_rbac"][]; + "text/csv": components["schemas"]["portal_application_rbac"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** User access controls for specific applications */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_application_rbac"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** User access controls for specific applications */ + delete: { + parameters: { + query?: { + id?: components["parameters"]["rowFilter.portal_application_rbac.id"]; + portal_application_id?: components["parameters"]["rowFilter.portal_application_rbac.portal_application_id"]; + portal_user_id?: components["parameters"]["rowFilter.portal_application_rbac.portal_user_id"]; + created_at?: components["parameters"]["rowFilter.portal_application_rbac.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_application_rbac.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** User access controls for specific applications */ + patch: { + parameters: { + query?: { + id?: components["parameters"]["rowFilter.portal_application_rbac.id"]; + portal_application_id?: components["parameters"]["rowFilter.portal_application_rbac.portal_application_id"]; + portal_user_id?: components["parameters"]["rowFilter.portal_application_rbac.portal_user_id"]; + created_at?: components["parameters"]["rowFilter.portal_application_rbac.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_application_rbac.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_application_rbac"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/portal_plans": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Available subscription plans for Portal Accounts */ + get: { + parameters: { + query?: { + portal_plan_type?: components["parameters"]["rowFilter.portal_plans.portal_plan_type"]; + portal_plan_type_description?: components["parameters"]["rowFilter.portal_plans.portal_plan_type_description"]; + /** @description Maximum usage allowed within the interval */ + plan_usage_limit?: components["parameters"]["rowFilter.portal_plans.plan_usage_limit"]; + plan_usage_limit_interval?: components["parameters"]["rowFilter.portal_plans.plan_usage_limit_interval"]; + /** @description Rate limit in requests per second */ + plan_rate_limit_rps?: components["parameters"]["rowFilter.portal_plans.plan_rate_limit_rps"]; + plan_application_limit?: components["parameters"]["rowFilter.portal_plans.plan_application_limit"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["portal_plans"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_plans"][]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_plans"][]; + "text/csv": components["schemas"]["portal_plans"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** Available subscription plans for Portal Accounts */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_plans"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** Available subscription plans for Portal Accounts */ + delete: { + parameters: { + query?: { + portal_plan_type?: components["parameters"]["rowFilter.portal_plans.portal_plan_type"]; + portal_plan_type_description?: components["parameters"]["rowFilter.portal_plans.portal_plan_type_description"]; + /** @description Maximum usage allowed within the interval */ + plan_usage_limit?: components["parameters"]["rowFilter.portal_plans.plan_usage_limit"]; + plan_usage_limit_interval?: components["parameters"]["rowFilter.portal_plans.plan_usage_limit_interval"]; + /** @description Rate limit in requests per second */ + plan_rate_limit_rps?: components["parameters"]["rowFilter.portal_plans.plan_rate_limit_rps"]; + plan_application_limit?: components["parameters"]["rowFilter.portal_plans.plan_application_limit"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** Available subscription plans for Portal Accounts */ + patch: { + parameters: { + query?: { + portal_plan_type?: components["parameters"]["rowFilter.portal_plans.portal_plan_type"]; + portal_plan_type_description?: components["parameters"]["rowFilter.portal_plans.portal_plan_type_description"]; + /** @description Maximum usage allowed within the interval */ + plan_usage_limit?: components["parameters"]["rowFilter.portal_plans.plan_usage_limit"]; + plan_usage_limit_interval?: components["parameters"]["rowFilter.portal_plans.plan_usage_limit_interval"]; + /** @description Rate limit in requests per second */ + plan_rate_limit_rps?: components["parameters"]["rowFilter.portal_plans.plan_rate_limit_rps"]; + plan_application_limit?: components["parameters"]["rowFilter.portal_plans.plan_application_limit"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_plans"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/portal_users": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Users who can access the portal and belong to multiple accounts */ + get: { + parameters: { + query?: { + portal_user_id?: components["parameters"]["rowFilter.portal_users.portal_user_id"]; + /** @description Unique email address for the user */ + portal_user_email?: components["parameters"]["rowFilter.portal_users.portal_user_email"]; + signed_up?: components["parameters"]["rowFilter.portal_users.signed_up"]; + /** @description Whether user has admin privileges across the portal */ + portal_admin?: components["parameters"]["rowFilter.portal_users.portal_admin"]; + deleted_at?: components["parameters"]["rowFilter.portal_users.deleted_at"]; + created_at?: components["parameters"]["rowFilter.portal_users.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_users.updated_at"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["portal_users"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_users"][]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_users"][]; + "text/csv": components["schemas"]["portal_users"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** Users who can access the portal and belong to multiple accounts */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_users"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** Users who can access the portal and belong to multiple accounts */ + delete: { + parameters: { + query?: { + portal_user_id?: components["parameters"]["rowFilter.portal_users.portal_user_id"]; + /** @description Unique email address for the user */ + portal_user_email?: components["parameters"]["rowFilter.portal_users.portal_user_email"]; + signed_up?: components["parameters"]["rowFilter.portal_users.signed_up"]; + /** @description Whether user has admin privileges across the portal */ + portal_admin?: components["parameters"]["rowFilter.portal_users.portal_admin"]; + deleted_at?: components["parameters"]["rowFilter.portal_users.deleted_at"]; + created_at?: components["parameters"]["rowFilter.portal_users.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_users.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** Users who can access the portal and belong to multiple accounts */ + patch: { + parameters: { + query?: { + portal_user_id?: components["parameters"]["rowFilter.portal_users.portal_user_id"]; + /** @description Unique email address for the user */ + portal_user_email?: components["parameters"]["rowFilter.portal_users.portal_user_email"]; + signed_up?: components["parameters"]["rowFilter.portal_users.signed_up"]; + /** @description Whether user has admin privileges across the portal */ + portal_admin?: components["parameters"]["rowFilter.portal_users.portal_admin"]; + deleted_at?: components["parameters"]["rowFilter.portal_users.deleted_at"]; + created_at?: components["parameters"]["rowFilter.portal_users.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_users.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_users"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/portal_applications": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Applications created within portal accounts with their own rate limits and settings */ + get: { + parameters: { + query?: { + portal_application_id?: components["parameters"]["rowFilter.portal_applications.portal_application_id"]; + portal_account_id?: components["parameters"]["rowFilter.portal_applications.portal_account_id"]; + portal_application_name?: components["parameters"]["rowFilter.portal_applications.portal_application_name"]; + emoji?: components["parameters"]["rowFilter.portal_applications.emoji"]; + portal_application_user_limit?: components["parameters"]["rowFilter.portal_applications.portal_application_user_limit"]; + portal_application_user_limit_interval?: components["parameters"]["rowFilter.portal_applications.portal_application_user_limit_interval"]; + portal_application_user_limit_rps?: components["parameters"]["rowFilter.portal_applications.portal_application_user_limit_rps"]; + portal_application_description?: components["parameters"]["rowFilter.portal_applications.portal_application_description"]; + favorite_service_ids?: components["parameters"]["rowFilter.portal_applications.favorite_service_ids"]; + /** @description Hashed secret key for application authentication */ + secret_key_hash?: components["parameters"]["rowFilter.portal_applications.secret_key_hash"]; + secret_key_required?: components["parameters"]["rowFilter.portal_applications.secret_key_required"]; + deleted_at?: components["parameters"]["rowFilter.portal_applications.deleted_at"]; + created_at?: components["parameters"]["rowFilter.portal_applications.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_applications.updated_at"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["portal_applications"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_applications"][]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_applications"][]; + "text/csv": components["schemas"]["portal_applications"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** Applications created within portal accounts with their own rate limits and settings */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_applications"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** Applications created within portal accounts with their own rate limits and settings */ + delete: { + parameters: { + query?: { + portal_application_id?: components["parameters"]["rowFilter.portal_applications.portal_application_id"]; + portal_account_id?: components["parameters"]["rowFilter.portal_applications.portal_account_id"]; + portal_application_name?: components["parameters"]["rowFilter.portal_applications.portal_application_name"]; + emoji?: components["parameters"]["rowFilter.portal_applications.emoji"]; + portal_application_user_limit?: components["parameters"]["rowFilter.portal_applications.portal_application_user_limit"]; + portal_application_user_limit_interval?: components["parameters"]["rowFilter.portal_applications.portal_application_user_limit_interval"]; + portal_application_user_limit_rps?: components["parameters"]["rowFilter.portal_applications.portal_application_user_limit_rps"]; + portal_application_description?: components["parameters"]["rowFilter.portal_applications.portal_application_description"]; + favorite_service_ids?: components["parameters"]["rowFilter.portal_applications.favorite_service_ids"]; + /** @description Hashed secret key for application authentication */ + secret_key_hash?: components["parameters"]["rowFilter.portal_applications.secret_key_hash"]; + secret_key_required?: components["parameters"]["rowFilter.portal_applications.secret_key_required"]; + deleted_at?: components["parameters"]["rowFilter.portal_applications.deleted_at"]; + created_at?: components["parameters"]["rowFilter.portal_applications.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_applications.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** Applications created within portal accounts with their own rate limits and settings */ + patch: { + parameters: { + query?: { + portal_application_id?: components["parameters"]["rowFilter.portal_applications.portal_application_id"]; + portal_account_id?: components["parameters"]["rowFilter.portal_applications.portal_account_id"]; + portal_application_name?: components["parameters"]["rowFilter.portal_applications.portal_application_name"]; + emoji?: components["parameters"]["rowFilter.portal_applications.emoji"]; + portal_application_user_limit?: components["parameters"]["rowFilter.portal_applications.portal_application_user_limit"]; + portal_application_user_limit_interval?: components["parameters"]["rowFilter.portal_applications.portal_application_user_limit_interval"]; + portal_application_user_limit_rps?: components["parameters"]["rowFilter.portal_applications.portal_application_user_limit_rps"]; + portal_application_description?: components["parameters"]["rowFilter.portal_applications.portal_application_description"]; + favorite_service_ids?: components["parameters"]["rowFilter.portal_applications.favorite_service_ids"]; + /** @description Hashed secret key for application authentication */ + secret_key_hash?: components["parameters"]["rowFilter.portal_applications.secret_key_hash"]; + secret_key_required?: components["parameters"]["rowFilter.portal_applications.secret_key_required"]; + deleted_at?: components["parameters"]["rowFilter.portal_applications.deleted_at"]; + created_at?: components["parameters"]["rowFilter.portal_applications.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_applications.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_applications"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/services": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Supported blockchain services from the Pocket Network */ + get: { + parameters: { + query?: { + service_id?: components["parameters"]["rowFilter.services.service_id"]; + service_name?: components["parameters"]["rowFilter.services.service_name"]; + /** @description Cost in compute units for each relay */ + compute_units_per_relay?: components["parameters"]["rowFilter.services.compute_units_per_relay"]; + /** @description Valid domains for this service */ + service_domains?: components["parameters"]["rowFilter.services.service_domains"]; + service_owner_address?: components["parameters"]["rowFilter.services.service_owner_address"]; + network_id?: components["parameters"]["rowFilter.services.network_id"]; + active?: components["parameters"]["rowFilter.services.active"]; + beta?: components["parameters"]["rowFilter.services.beta"]; + coming_soon?: components["parameters"]["rowFilter.services.coming_soon"]; + quality_fallback_enabled?: components["parameters"]["rowFilter.services.quality_fallback_enabled"]; + hard_fallback_enabled?: components["parameters"]["rowFilter.services.hard_fallback_enabled"]; + svg_icon?: components["parameters"]["rowFilter.services.svg_icon"]; + public_endpoint_url?: components["parameters"]["rowFilter.services.public_endpoint_url"]; + status_endpoint_url?: components["parameters"]["rowFilter.services.status_endpoint_url"]; + status_query?: components["parameters"]["rowFilter.services.status_query"]; + deleted_at?: components["parameters"]["rowFilter.services.deleted_at"]; + created_at?: components["parameters"]["rowFilter.services.created_at"]; + updated_at?: components["parameters"]["rowFilter.services.updated_at"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["services"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["services"][]; + "application/vnd.pgrst.object+json": components["schemas"]["services"][]; + "text/csv": components["schemas"]["services"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** Supported blockchain services from the Pocket Network */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["services"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** Supported blockchain services from the Pocket Network */ + delete: { + parameters: { + query?: { + service_id?: components["parameters"]["rowFilter.services.service_id"]; + service_name?: components["parameters"]["rowFilter.services.service_name"]; + /** @description Cost in compute units for each relay */ + compute_units_per_relay?: components["parameters"]["rowFilter.services.compute_units_per_relay"]; + /** @description Valid domains for this service */ + service_domains?: components["parameters"]["rowFilter.services.service_domains"]; + service_owner_address?: components["parameters"]["rowFilter.services.service_owner_address"]; + network_id?: components["parameters"]["rowFilter.services.network_id"]; + active?: components["parameters"]["rowFilter.services.active"]; + beta?: components["parameters"]["rowFilter.services.beta"]; + coming_soon?: components["parameters"]["rowFilter.services.coming_soon"]; + quality_fallback_enabled?: components["parameters"]["rowFilter.services.quality_fallback_enabled"]; + hard_fallback_enabled?: components["parameters"]["rowFilter.services.hard_fallback_enabled"]; + svg_icon?: components["parameters"]["rowFilter.services.svg_icon"]; + public_endpoint_url?: components["parameters"]["rowFilter.services.public_endpoint_url"]; + status_endpoint_url?: components["parameters"]["rowFilter.services.status_endpoint_url"]; + status_query?: components["parameters"]["rowFilter.services.status_query"]; + deleted_at?: components["parameters"]["rowFilter.services.deleted_at"]; + created_at?: components["parameters"]["rowFilter.services.created_at"]; + updated_at?: components["parameters"]["rowFilter.services.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** Supported blockchain services from the Pocket Network */ + patch: { + parameters: { + query?: { + service_id?: components["parameters"]["rowFilter.services.service_id"]; + service_name?: components["parameters"]["rowFilter.services.service_name"]; + /** @description Cost in compute units for each relay */ + compute_units_per_relay?: components["parameters"]["rowFilter.services.compute_units_per_relay"]; + /** @description Valid domains for this service */ + service_domains?: components["parameters"]["rowFilter.services.service_domains"]; + service_owner_address?: components["parameters"]["rowFilter.services.service_owner_address"]; + network_id?: components["parameters"]["rowFilter.services.network_id"]; + active?: components["parameters"]["rowFilter.services.active"]; + beta?: components["parameters"]["rowFilter.services.beta"]; + coming_soon?: components["parameters"]["rowFilter.services.coming_soon"]; + quality_fallback_enabled?: components["parameters"]["rowFilter.services.quality_fallback_enabled"]; + hard_fallback_enabled?: components["parameters"]["rowFilter.services.hard_fallback_enabled"]; + svg_icon?: components["parameters"]["rowFilter.services.svg_icon"]; + public_endpoint_url?: components["parameters"]["rowFilter.services.public_endpoint_url"]; + status_endpoint_url?: components["parameters"]["rowFilter.services.status_endpoint_url"]; + status_query?: components["parameters"]["rowFilter.services.status_query"]; + deleted_at?: components["parameters"]["rowFilter.services.deleted_at"]; + created_at?: components["parameters"]["rowFilter.services.created_at"]; + updated_at?: components["parameters"]["rowFilter.services.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["services"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/portal_accounts": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Multi-tenant accounts with plans and billing integration */ + get: { + parameters: { + query?: { + /** @description Unique identifier for the portal account */ + portal_account_id?: components["parameters"]["rowFilter.portal_accounts.portal_account_id"]; + organization_id?: components["parameters"]["rowFilter.portal_accounts.organization_id"]; + portal_plan_type?: components["parameters"]["rowFilter.portal_accounts.portal_plan_type"]; + user_account_name?: components["parameters"]["rowFilter.portal_accounts.user_account_name"]; + internal_account_name?: components["parameters"]["rowFilter.portal_accounts.internal_account_name"]; + portal_account_user_limit?: components["parameters"]["rowFilter.portal_accounts.portal_account_user_limit"]; + portal_account_user_limit_interval?: components["parameters"]["rowFilter.portal_accounts.portal_account_user_limit_interval"]; + portal_account_user_limit_rps?: components["parameters"]["rowFilter.portal_accounts.portal_account_user_limit_rps"]; + billing_type?: components["parameters"]["rowFilter.portal_accounts.billing_type"]; + /** @description Stripe subscription identifier for billing */ + stripe_subscription_id?: components["parameters"]["rowFilter.portal_accounts.stripe_subscription_id"]; + gcp_account_id?: components["parameters"]["rowFilter.portal_accounts.gcp_account_id"]; + gcp_entitlement_id?: components["parameters"]["rowFilter.portal_accounts.gcp_entitlement_id"]; + deleted_at?: components["parameters"]["rowFilter.portal_accounts.deleted_at"]; + created_at?: components["parameters"]["rowFilter.portal_accounts.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_accounts.updated_at"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["portal_accounts"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_accounts"][]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_accounts"][]; + "text/csv": components["schemas"]["portal_accounts"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** Multi-tenant accounts with plans and billing integration */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_accounts"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** Multi-tenant accounts with plans and billing integration */ + delete: { + parameters: { + query?: { + /** @description Unique identifier for the portal account */ + portal_account_id?: components["parameters"]["rowFilter.portal_accounts.portal_account_id"]; + organization_id?: components["parameters"]["rowFilter.portal_accounts.organization_id"]; + portal_plan_type?: components["parameters"]["rowFilter.portal_accounts.portal_plan_type"]; + user_account_name?: components["parameters"]["rowFilter.portal_accounts.user_account_name"]; + internal_account_name?: components["parameters"]["rowFilter.portal_accounts.internal_account_name"]; + portal_account_user_limit?: components["parameters"]["rowFilter.portal_accounts.portal_account_user_limit"]; + portal_account_user_limit_interval?: components["parameters"]["rowFilter.portal_accounts.portal_account_user_limit_interval"]; + portal_account_user_limit_rps?: components["parameters"]["rowFilter.portal_accounts.portal_account_user_limit_rps"]; + billing_type?: components["parameters"]["rowFilter.portal_accounts.billing_type"]; + /** @description Stripe subscription identifier for billing */ + stripe_subscription_id?: components["parameters"]["rowFilter.portal_accounts.stripe_subscription_id"]; + gcp_account_id?: components["parameters"]["rowFilter.portal_accounts.gcp_account_id"]; + gcp_entitlement_id?: components["parameters"]["rowFilter.portal_accounts.gcp_entitlement_id"]; + deleted_at?: components["parameters"]["rowFilter.portal_accounts.deleted_at"]; + created_at?: components["parameters"]["rowFilter.portal_accounts.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_accounts.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** Multi-tenant accounts with plans and billing integration */ + patch: { + parameters: { + query?: { + /** @description Unique identifier for the portal account */ + portal_account_id?: components["parameters"]["rowFilter.portal_accounts.portal_account_id"]; + organization_id?: components["parameters"]["rowFilter.portal_accounts.organization_id"]; + portal_plan_type?: components["parameters"]["rowFilter.portal_accounts.portal_plan_type"]; + user_account_name?: components["parameters"]["rowFilter.portal_accounts.user_account_name"]; + internal_account_name?: components["parameters"]["rowFilter.portal_accounts.internal_account_name"]; + portal_account_user_limit?: components["parameters"]["rowFilter.portal_accounts.portal_account_user_limit"]; + portal_account_user_limit_interval?: components["parameters"]["rowFilter.portal_accounts.portal_account_user_limit_interval"]; + portal_account_user_limit_rps?: components["parameters"]["rowFilter.portal_accounts.portal_account_user_limit_rps"]; + billing_type?: components["parameters"]["rowFilter.portal_accounts.billing_type"]; + /** @description Stripe subscription identifier for billing */ + stripe_subscription_id?: components["parameters"]["rowFilter.portal_accounts.stripe_subscription_id"]; + gcp_account_id?: components["parameters"]["rowFilter.portal_accounts.gcp_account_id"]; + gcp_entitlement_id?: components["parameters"]["rowFilter.portal_accounts.gcp_entitlement_id"]; + deleted_at?: components["parameters"]["rowFilter.portal_accounts.deleted_at"]; + created_at?: components["parameters"]["rowFilter.portal_accounts.created_at"]; + updated_at?: components["parameters"]["rowFilter.portal_accounts.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_accounts"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/organizations": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Companies or customer groups that can be attached to Portal Accounts */ + get: { + parameters: { + query?: { + organization_id?: components["parameters"]["rowFilter.organizations.organization_id"]; + /** @description Name of the organization */ + organization_name?: components["parameters"]["rowFilter.organizations.organization_name"]; + /** @description Soft delete timestamp */ + deleted_at?: components["parameters"]["rowFilter.organizations.deleted_at"]; + created_at?: components["parameters"]["rowFilter.organizations.created_at"]; + updated_at?: components["parameters"]["rowFilter.organizations.updated_at"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["organizations"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["organizations"][]; + "application/vnd.pgrst.object+json": components["schemas"]["organizations"][]; + "text/csv": components["schemas"]["organizations"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** Companies or customer groups that can be attached to Portal Accounts */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["organizations"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** Companies or customer groups that can be attached to Portal Accounts */ + delete: { + parameters: { + query?: { + organization_id?: components["parameters"]["rowFilter.organizations.organization_id"]; + /** @description Name of the organization */ + organization_name?: components["parameters"]["rowFilter.organizations.organization_name"]; + /** @description Soft delete timestamp */ + deleted_at?: components["parameters"]["rowFilter.organizations.deleted_at"]; + created_at?: components["parameters"]["rowFilter.organizations.created_at"]; + updated_at?: components["parameters"]["rowFilter.organizations.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** Companies or customer groups that can be attached to Portal Accounts */ + patch: { + parameters: { + query?: { + organization_id?: components["parameters"]["rowFilter.organizations.organization_id"]; + /** @description Name of the organization */ + organization_name?: components["parameters"]["rowFilter.organizations.organization_name"]; + /** @description Soft delete timestamp */ + deleted_at?: components["parameters"]["rowFilter.organizations.deleted_at"]; + created_at?: components["parameters"]["rowFilter.organizations.created_at"]; + updated_at?: components["parameters"]["rowFilter.organizations.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["organizations"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/networks": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Supported blockchain networks (Pocket mainnet, testnet, etc.) */ + get: { + parameters: { + query?: { + network_id?: components["parameters"]["rowFilter.networks.network_id"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["networks"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["networks"][]; + "application/vnd.pgrst.object+json": components["schemas"]["networks"][]; + "text/csv": components["schemas"]["networks"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** Supported blockchain networks (Pocket mainnet, testnet, etc.) */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["networks"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** Supported blockchain networks (Pocket mainnet, testnet, etc.) */ + delete: { + parameters: { + query?: { + network_id?: components["parameters"]["rowFilter.networks.network_id"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** Supported blockchain networks (Pocket mainnet, testnet, etc.) */ + patch: { + parameters: { + query?: { + network_id?: components["parameters"]["rowFilter.networks.network_id"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["networks"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/portal_workers_account_data": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Account data for portal-workers billing operations with owner email. Filter using WHERE portal_plan_type = 'PLAN_UNLIMITED' AND billing_type = 'stripe' */ + get: { + parameters: { + query?: { + portal_account_id?: components["parameters"]["rowFilter.portal_workers_account_data.portal_account_id"]; + user_account_name?: components["parameters"]["rowFilter.portal_workers_account_data.user_account_name"]; + portal_plan_type?: components["parameters"]["rowFilter.portal_workers_account_data.portal_plan_type"]; + billing_type?: components["parameters"]["rowFilter.portal_workers_account_data.billing_type"]; + portal_account_user_limit?: components["parameters"]["rowFilter.portal_workers_account_data.portal_account_user_limit"]; + gcp_entitlement_id?: components["parameters"]["rowFilter.portal_workers_account_data.gcp_entitlement_id"]; + owner_email?: components["parameters"]["rowFilter.portal_workers_account_data.owner_email"]; + owner_user_id?: components["parameters"]["rowFilter.portal_workers_account_data.owner_user_id"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["portal_workers_account_data"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_workers_account_data"][]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_workers_account_data"][]; + "text/csv": components["schemas"]["portal_workers_account_data"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/portal_account_rbac": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** User roles and permissions for specific portal accounts */ + get: { + parameters: { + query?: { + id?: components["parameters"]["rowFilter.portal_account_rbac.id"]; + portal_account_id?: components["parameters"]["rowFilter.portal_account_rbac.portal_account_id"]; + portal_user_id?: components["parameters"]["rowFilter.portal_account_rbac.portal_user_id"]; + role_name?: components["parameters"]["rowFilter.portal_account_rbac.role_name"]; + user_joined_account?: components["parameters"]["rowFilter.portal_account_rbac.user_joined_account"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["portal_account_rbac"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_account_rbac"][]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_account_rbac"][]; + "text/csv": components["schemas"]["portal_account_rbac"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** User roles and permissions for specific portal accounts */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_account_rbac"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** User roles and permissions for specific portal accounts */ + delete: { + parameters: { + query?: { + id?: components["parameters"]["rowFilter.portal_account_rbac.id"]; + portal_account_id?: components["parameters"]["rowFilter.portal_account_rbac.portal_account_id"]; + portal_user_id?: components["parameters"]["rowFilter.portal_account_rbac.portal_user_id"]; + role_name?: components["parameters"]["rowFilter.portal_account_rbac.role_name"]; + user_joined_account?: components["parameters"]["rowFilter.portal_account_rbac.user_joined_account"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** User roles and permissions for specific portal accounts */ + patch: { + parameters: { + query?: { + id?: components["parameters"]["rowFilter.portal_account_rbac.id"]; + portal_account_id?: components["parameters"]["rowFilter.portal_account_rbac.portal_account_id"]; + portal_user_id?: components["parameters"]["rowFilter.portal_account_rbac.portal_user_id"]; + role_name?: components["parameters"]["rowFilter.portal_account_rbac.role_name"]; + user_joined_account?: components["parameters"]["rowFilter.portal_account_rbac.user_joined_account"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["portal_account_rbac"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/service_endpoints": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Available endpoint types for each service */ + get: { + parameters: { + query?: { + endpoint_id?: components["parameters"]["rowFilter.service_endpoints.endpoint_id"]; + service_id?: components["parameters"]["rowFilter.service_endpoints.service_id"]; + endpoint_type?: components["parameters"]["rowFilter.service_endpoints.endpoint_type"]; + created_at?: components["parameters"]["rowFilter.service_endpoints.created_at"]; + updated_at?: components["parameters"]["rowFilter.service_endpoints.updated_at"]; + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + /** @description Ordering */ + order?: components["parameters"]["order"]; + /** @description Limiting and Pagination */ + offset?: components["parameters"]["offset"]; + /** @description Limiting and Pagination */ + limit?: components["parameters"]["limit"]; + }; + header?: { + /** @description Limiting and Pagination */ + Range?: components["parameters"]["range"]; + /** @description Limiting and Pagination */ + "Range-Unit"?: components["parameters"]["rangeUnit"]; + /** @description Preference */ + Prefer?: components["parameters"]["preferCount"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["service_endpoints"][]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["service_endpoints"][]; + "application/vnd.pgrst.object+json": components["schemas"]["service_endpoints"][]; + "text/csv": components["schemas"]["service_endpoints"][]; + }; + }; + /** @description Partial Content */ + 206: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + /** Available endpoint types for each service */ + post: { + parameters: { + query?: { + /** @description Filtering Columns */ + select?: components["parameters"]["select"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferPost"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["service_endpoints"]; + responses: { + /** @description Created */ + 201: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + /** Available endpoint types for each service */ + delete: { + parameters: { + query?: { + endpoint_id?: components["parameters"]["rowFilter.service_endpoints.endpoint_id"]; + service_id?: components["parameters"]["rowFilter.service_endpoints.service_id"]; + endpoint_type?: components["parameters"]["rowFilter.service_endpoints.endpoint_type"]; + created_at?: components["parameters"]["rowFilter.service_endpoints.created_at"]; + updated_at?: components["parameters"]["rowFilter.service_endpoints.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + options?: never; + head?: never; + /** Available endpoint types for each service */ + patch: { + parameters: { + query?: { + endpoint_id?: components["parameters"]["rowFilter.service_endpoints.endpoint_id"]; + service_id?: components["parameters"]["rowFilter.service_endpoints.service_id"]; + endpoint_type?: components["parameters"]["rowFilter.service_endpoints.endpoint_type"]; + created_at?: components["parameters"]["rowFilter.service_endpoints.created_at"]; + updated_at?: components["parameters"]["rowFilter.service_endpoints.updated_at"]; + }; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferReturn"]; + }; + path?: never; + cookie?: never; + }; + requestBody?: components["requestBodies"]["service_endpoints"]; + responses: { + /** @description No Content */ + 204: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + trace?: never; + }; + "/rpc/gen_salt": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: { + parameters: { + query: { + "": string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + post: { + parameters: { + query?: never; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferParams"]; + }; + path?: never; + cookie?: never; + }; + requestBody: components["requestBodies"]["Args2"]; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/rpc/pgp_armor_headers": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: { + parameters: { + query: { + "": string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + post: { + parameters: { + query?: never; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferParams"]; + }; + path?: never; + cookie?: never; + }; + requestBody: components["requestBodies"]["Args2"]; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/rpc/armor": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: { + parameters: { + query: { + "": string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + post: { + parameters: { + query?: never; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferParams"]; + }; + path?: never; + cookie?: never; + }; + requestBody: components["requestBodies"]["Args"]; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/rpc/pgp_key_id": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: { + parameters: { + query: { + "": string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + post: { + parameters: { + query?: never; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferParams"]; + }; + path?: never; + cookie?: never; + }; + requestBody: components["requestBodies"]["Args"]; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/rpc/dearmor": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: { + parameters: { + query: { + "": string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + post: { + parameters: { + query?: never; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferParams"]; + }; + path?: never; + cookie?: never; + }; + requestBody: components["requestBodies"]["Args2"]; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/rpc/gen_random_uuid": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + put?: never; + post: { + parameters: { + query?: never; + header?: { + /** @description Preference */ + Prefer?: components["parameters"]["preferParams"]; + }; + path?: never; + cookie?: never; + }; + requestBody: { + content: { + "application/json": Record; + "application/vnd.pgrst.object+json;nulls=stripped": Record; + "application/vnd.pgrst.object+json": Record; + "text/csv": Record; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; +} +export type webhooks = Record; +export interface components { + schemas: { + /** @description Fallback URLs for services when primary endpoints fail */ + service_fallbacks: { + /** + * Format: integer + * @description Note: + * This is a Primary Key. + */ + service_fallback_id: number; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `services.service_id`. + */ + service_id: string; + /** Format: character varying */ + fallback_url: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + created_at: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + updated_at: string; + }; + /** @description User access controls for specific applications */ + portal_application_rbac: { + /** + * Format: integer + * @description Note: + * This is a Primary Key. + */ + id: number; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `portal_applications.portal_application_id`. + */ + portal_application_id: string; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `portal_users.portal_user_id`. + */ + portal_user_id: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + created_at: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + updated_at: string; + }; + /** @description Available subscription plans for Portal Accounts */ + portal_plans: { + /** + * Format: character varying + * @description Note: + * This is a Primary Key. + */ + portal_plan_type: string; + /** Format: character varying */ + portal_plan_type_description?: string; + /** + * Format: integer + * @description Maximum usage allowed within the interval + */ + plan_usage_limit?: number; + /** + * Format: public.plan_interval + * @enum {string} + */ + plan_usage_limit_interval?: "day" | "month" | "year"; + /** + * Format: integer + * @description Rate limit in requests per second + */ + plan_rate_limit_rps?: number; + /** Format: integer */ + plan_application_limit?: number; + }; + /** @description Users who can access the portal and belong to multiple accounts */ + portal_users: { + /** + * Format: character varying + * @description Note: + * This is a Primary Key. + */ + portal_user_id: string; + /** + * Format: character varying + * @description Unique email address for the user + */ + portal_user_email: string; + /** @default false */ + signed_up: boolean; + /** + * @description Whether user has admin privileges across the portal + * @default false + */ + portal_admin: boolean; + /** Format: timestamp with time zone */ + deleted_at?: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + created_at: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + updated_at: string; + }; + /** @description Applications created within portal accounts with their own rate limits and settings */ + portal_applications: { + /** + * Format: character varying + * @description Note: + * This is a Primary Key. + * @default gen_random_uuid() + */ + portal_application_id: string; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `portal_accounts.portal_account_id`. + */ + portal_account_id: string; + /** Format: character varying */ + portal_application_name?: string; + /** Format: character varying */ + emoji?: string; + /** Format: integer */ + portal_application_user_limit?: number; + /** + * Format: public.plan_interval + * @enum {string} + */ + portal_application_user_limit_interval?: "day" | "month" | "year"; + /** Format: integer */ + portal_application_user_limit_rps?: number; + /** Format: character varying */ + portal_application_description?: string; + /** Format: character varying[] */ + favorite_service_ids?: string[]; + /** + * Format: character varying + * @description Hashed secret key for application authentication + */ + secret_key_hash?: string; + /** @default false */ + secret_key_required: boolean; + /** Format: timestamp with time zone */ + deleted_at?: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + created_at: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + updated_at: string; + }; + /** @description Supported blockchain services from the Pocket Network */ + services: { + /** + * Format: character varying + * @description Note: + * This is a Primary Key. + */ + service_id: string; + /** Format: character varying */ + service_name: string; + /** + * Format: integer + * @description Cost in compute units for each relay + */ + compute_units_per_relay?: number; + /** + * Format: character varying[] + * @description Valid domains for this service + */ + service_domains: string[]; + /** Format: character varying */ + service_owner_address?: string; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `networks.network_id`. + */ + network_id?: string; + /** @default false */ + active: boolean; + /** @default false */ + beta: boolean; + /** @default false */ + coming_soon: boolean; + /** @default false */ + quality_fallback_enabled: boolean; + /** @default false */ + hard_fallback_enabled: boolean; + /** Format: text */ + svg_icon?: string; + /** Format: character varying */ + public_endpoint_url?: string; + /** Format: character varying */ + status_endpoint_url?: string; + /** Format: text */ + status_query?: string; + /** Format: timestamp with time zone */ + deleted_at?: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + created_at: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + updated_at: string; + }; + /** @description Multi-tenant accounts with plans and billing integration */ + portal_accounts: { + /** + * Format: character varying + * @description Unique identifier for the portal account + * + * Note: + * This is a Primary Key. + * @default gen_random_uuid() + */ + portal_account_id: string; + /** + * Format: integer + * @description Note: + * This is a Foreign Key to `organizations.organization_id`. + */ + organization_id?: number; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `portal_plans.portal_plan_type`. + */ + portal_plan_type: string; + /** Format: character varying */ + user_account_name?: string; + /** Format: character varying */ + internal_account_name?: string; + /** Format: integer */ + portal_account_user_limit?: number; + /** + * Format: public.plan_interval + * @enum {string} + */ + portal_account_user_limit_interval?: "day" | "month" | "year"; + /** Format: integer */ + portal_account_user_limit_rps?: number; + /** Format: character varying */ + billing_type?: string; + /** + * Format: character varying + * @description Stripe subscription identifier for billing + */ + stripe_subscription_id?: string; + /** Format: character varying */ + gcp_account_id?: string; + /** Format: character varying */ + gcp_entitlement_id?: string; + /** Format: timestamp with time zone */ + deleted_at?: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + created_at: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + updated_at: string; + }; + /** @description Companies or customer groups that can be attached to Portal Accounts */ + organizations: { + /** + * Format: integer + * @description Note: + * This is a Primary Key. + */ + organization_id: number; + /** + * Format: character varying + * @description Name of the organization + */ + organization_name: string; + /** + * Format: timestamp with time zone + * @description Soft delete timestamp + */ + deleted_at?: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + created_at: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + updated_at: string; + }; + /** @description Supported blockchain networks (Pocket mainnet, testnet, etc.) */ + networks: { + /** + * Format: character varying + * @description Note: + * This is a Primary Key. + */ + network_id: string; + }; + /** @description Account data for portal-workers billing operations with owner email. Filter using WHERE portal_plan_type = 'PLAN_UNLIMITED' AND billing_type = 'stripe' */ + portal_workers_account_data: { + /** + * Format: character varying + * @description Note: + * This is a Primary Key. + */ + portal_account_id?: string; + /** Format: character varying */ + user_account_name?: string; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `portal_plans.portal_plan_type`. + */ + portal_plan_type?: string; + /** Format: character varying */ + billing_type?: string; + /** Format: integer */ + portal_account_user_limit?: number; + /** Format: character varying */ + gcp_entitlement_id?: string; + /** Format: character varying */ + owner_email?: string; + /** + * Format: character varying + * @description Note: + * This is a Primary Key. + */ + owner_user_id?: string; + }; + /** @description User roles and permissions for specific portal accounts */ + portal_account_rbac: { + /** + * Format: integer + * @description Note: + * This is a Primary Key. + */ + id: number; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `portal_accounts.portal_account_id`. + */ + portal_account_id: string; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `portal_users.portal_user_id`. + */ + portal_user_id: string; + /** Format: character varying */ + role_name: string; + /** @default false */ + user_joined_account: boolean; + }; + /** @description Available endpoint types for each service */ + service_endpoints: { + /** + * Format: integer + * @description Note: + * This is a Primary Key. + */ + endpoint_id: number; + /** + * Format: character varying + * @description Note: + * This is a Foreign Key to `services.service_id`. + */ + service_id: string; + /** + * Format: public.endpoint_type + * @enum {string} + */ + endpoint_type?: "cometBFT" | "cosmos" | "REST" | "JSON-RPC" | "WSS" | "gRPC"; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + created_at: string; + /** + * Format: timestamp with time zone + * @default CURRENT_TIMESTAMP + */ + updated_at: string; + }; + }; + responses: never; + parameters: { + /** @description Preference */ + preferParams: "params=single-object"; + /** @description Preference */ + preferReturn: "return=representation" | "return=minimal" | "return=none"; + /** @description Preference */ + preferCount: "count=none"; + /** @description Preference */ + preferPost: "return=representation" | "return=minimal" | "return=none" | "resolution=ignore-duplicates" | "resolution=merge-duplicates"; + /** @description Filtering Columns */ + select: string; + /** @description On Conflict */ + on_conflict: string; + /** @description Ordering */ + order: string; + /** @description Limiting and Pagination */ + range: string; + /** @description Limiting and Pagination */ + rangeUnit: string; + /** @description Limiting and Pagination */ + offset: string; + /** @description Limiting and Pagination */ + limit: string; + "rowFilter.service_fallbacks.service_fallback_id": string; + "rowFilter.service_fallbacks.service_id": string; + "rowFilter.service_fallbacks.fallback_url": string; + "rowFilter.service_fallbacks.created_at": string; + "rowFilter.service_fallbacks.updated_at": string; + "rowFilter.portal_application_rbac.id": string; + "rowFilter.portal_application_rbac.portal_application_id": string; + "rowFilter.portal_application_rbac.portal_user_id": string; + "rowFilter.portal_application_rbac.created_at": string; + "rowFilter.portal_application_rbac.updated_at": string; + "rowFilter.portal_plans.portal_plan_type": string; + "rowFilter.portal_plans.portal_plan_type_description": string; + /** @description Maximum usage allowed within the interval */ + "rowFilter.portal_plans.plan_usage_limit": string; + "rowFilter.portal_plans.plan_usage_limit_interval": string; + /** @description Rate limit in requests per second */ + "rowFilter.portal_plans.plan_rate_limit_rps": string; + "rowFilter.portal_plans.plan_application_limit": string; + "rowFilter.portal_users.portal_user_id": string; + /** @description Unique email address for the user */ + "rowFilter.portal_users.portal_user_email": string; + "rowFilter.portal_users.signed_up": string; + /** @description Whether user has admin privileges across the portal */ + "rowFilter.portal_users.portal_admin": string; + "rowFilter.portal_users.deleted_at": string; + "rowFilter.portal_users.created_at": string; + "rowFilter.portal_users.updated_at": string; + "rowFilter.portal_applications.portal_application_id": string; + "rowFilter.portal_applications.portal_account_id": string; + "rowFilter.portal_applications.portal_application_name": string; + "rowFilter.portal_applications.emoji": string; + "rowFilter.portal_applications.portal_application_user_limit": string; + "rowFilter.portal_applications.portal_application_user_limit_interval": string; + "rowFilter.portal_applications.portal_application_user_limit_rps": string; + "rowFilter.portal_applications.portal_application_description": string; + "rowFilter.portal_applications.favorite_service_ids": string; + /** @description Hashed secret key for application authentication */ + "rowFilter.portal_applications.secret_key_hash": string; + "rowFilter.portal_applications.secret_key_required": string; + "rowFilter.portal_applications.deleted_at": string; + "rowFilter.portal_applications.created_at": string; + "rowFilter.portal_applications.updated_at": string; + "rowFilter.services.service_id": string; + "rowFilter.services.service_name": string; + /** @description Cost in compute units for each relay */ + "rowFilter.services.compute_units_per_relay": string; + /** @description Valid domains for this service */ + "rowFilter.services.service_domains": string; + "rowFilter.services.service_owner_address": string; + "rowFilter.services.network_id": string; + "rowFilter.services.active": string; + "rowFilter.services.beta": string; + "rowFilter.services.coming_soon": string; + "rowFilter.services.quality_fallback_enabled": string; + "rowFilter.services.hard_fallback_enabled": string; + "rowFilter.services.svg_icon": string; + "rowFilter.services.public_endpoint_url": string; + "rowFilter.services.status_endpoint_url": string; + "rowFilter.services.status_query": string; + "rowFilter.services.deleted_at": string; + "rowFilter.services.created_at": string; + "rowFilter.services.updated_at": string; + /** @description Unique identifier for the portal account */ + "rowFilter.portal_accounts.portal_account_id": string; + "rowFilter.portal_accounts.organization_id": string; + "rowFilter.portal_accounts.portal_plan_type": string; + "rowFilter.portal_accounts.user_account_name": string; + "rowFilter.portal_accounts.internal_account_name": string; + "rowFilter.portal_accounts.portal_account_user_limit": string; + "rowFilter.portal_accounts.portal_account_user_limit_interval": string; + "rowFilter.portal_accounts.portal_account_user_limit_rps": string; + "rowFilter.portal_accounts.billing_type": string; + /** @description Stripe subscription identifier for billing */ + "rowFilter.portal_accounts.stripe_subscription_id": string; + "rowFilter.portal_accounts.gcp_account_id": string; + "rowFilter.portal_accounts.gcp_entitlement_id": string; + "rowFilter.portal_accounts.deleted_at": string; + "rowFilter.portal_accounts.created_at": string; + "rowFilter.portal_accounts.updated_at": string; + "rowFilter.organizations.organization_id": string; + /** @description Name of the organization */ + "rowFilter.organizations.organization_name": string; + /** @description Soft delete timestamp */ + "rowFilter.organizations.deleted_at": string; + "rowFilter.organizations.created_at": string; + "rowFilter.organizations.updated_at": string; + "rowFilter.networks.network_id": string; + "rowFilter.portal_workers_account_data.portal_account_id": string; + "rowFilter.portal_workers_account_data.user_account_name": string; + "rowFilter.portal_workers_account_data.portal_plan_type": string; + "rowFilter.portal_workers_account_data.billing_type": string; + "rowFilter.portal_workers_account_data.portal_account_user_limit": string; + "rowFilter.portal_workers_account_data.gcp_entitlement_id": string; + "rowFilter.portal_workers_account_data.owner_email": string; + "rowFilter.portal_workers_account_data.owner_user_id": string; + "rowFilter.portal_account_rbac.id": string; + "rowFilter.portal_account_rbac.portal_account_id": string; + "rowFilter.portal_account_rbac.portal_user_id": string; + "rowFilter.portal_account_rbac.role_name": string; + "rowFilter.portal_account_rbac.user_joined_account": string; + "rowFilter.service_endpoints.endpoint_id": string; + "rowFilter.service_endpoints.service_id": string; + "rowFilter.service_endpoints.endpoint_type": string; + "rowFilter.service_endpoints.created_at": string; + "rowFilter.service_endpoints.updated_at": string; + }; + requestBodies: { + /** @description portal_accounts */ + portal_accounts: { + content: { + "application/json": components["schemas"]["portal_accounts"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_accounts"]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_accounts"]; + "text/csv": components["schemas"]["portal_accounts"]; + }; + }; + /** @description networks */ + networks: { + content: { + "application/json": components["schemas"]["networks"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["networks"]; + "application/vnd.pgrst.object+json": components["schemas"]["networks"]; + "text/csv": components["schemas"]["networks"]; + }; + }; + /** @description portal_users */ + portal_users: { + content: { + "application/json": components["schemas"]["portal_users"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_users"]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_users"]; + "text/csv": components["schemas"]["portal_users"]; + }; + }; + /** @description service_endpoints */ + service_endpoints: { + content: { + "application/json": components["schemas"]["service_endpoints"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["service_endpoints"]; + "application/vnd.pgrst.object+json": components["schemas"]["service_endpoints"]; + "text/csv": components["schemas"]["service_endpoints"]; + }; + }; + Args: { + content: { + "application/json": { + /** Format: bytea */ + "": string; + }; + "application/vnd.pgrst.object+json;nulls=stripped": { + /** Format: bytea */ + "": string; + }; + "application/vnd.pgrst.object+json": { + /** Format: bytea */ + "": string; + }; + "text/csv": { + /** Format: bytea */ + "": string; + }; + }; + }; + /** @description portal_applications */ + portal_applications: { + content: { + "application/json": components["schemas"]["portal_applications"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_applications"]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_applications"]; + "text/csv": components["schemas"]["portal_applications"]; + }; + }; + /** @description portal_account_rbac */ + portal_account_rbac: { + content: { + "application/json": components["schemas"]["portal_account_rbac"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_account_rbac"]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_account_rbac"]; + "text/csv": components["schemas"]["portal_account_rbac"]; + }; + }; + /** @description service_fallbacks */ + service_fallbacks: { + content: { + "application/json": components["schemas"]["service_fallbacks"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["service_fallbacks"]; + "application/vnd.pgrst.object+json": components["schemas"]["service_fallbacks"]; + "text/csv": components["schemas"]["service_fallbacks"]; + }; + }; + /** @description portal_application_rbac */ + portal_application_rbac: { + content: { + "application/json": components["schemas"]["portal_application_rbac"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_application_rbac"]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_application_rbac"]; + "text/csv": components["schemas"]["portal_application_rbac"]; + }; + }; + /** @description portal_plans */ + portal_plans: { + content: { + "application/json": components["schemas"]["portal_plans"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["portal_plans"]; + "application/vnd.pgrst.object+json": components["schemas"]["portal_plans"]; + "text/csv": components["schemas"]["portal_plans"]; + }; + }; + /** @description services */ + services: { + content: { + "application/json": components["schemas"]["services"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["services"]; + "application/vnd.pgrst.object+json": components["schemas"]["services"]; + "text/csv": components["schemas"]["services"]; + }; + }; + /** @description organizations */ + organizations: { + content: { + "application/json": components["schemas"]["organizations"]; + "application/vnd.pgrst.object+json;nulls=stripped": components["schemas"]["organizations"]; + "application/vnd.pgrst.object+json": components["schemas"]["organizations"]; + "text/csv": components["schemas"]["organizations"]; + }; + }; + Args2: { + content: { + "application/json": { + /** Format: text */ + "": string; + }; + "application/vnd.pgrst.object+json;nulls=stripped": { + /** Format: text */ + "": string; + }; + "application/vnd.pgrst.object+json": { + /** Format: text */ + "": string; + }; + "text/csv": { + /** Format: text */ + "": string; + }; + }; + }; + }; + headers: never; + pathItems: never; +} +export type $defs = Record; +export type operations = Record;