From 11845d23579f6fbf660df97d09cbc04660ff45fb Mon Sep 17 00:00:00 2001 From: rajivbb Date: Thu, 18 Dec 2025 16:55:09 +0545 Subject: [PATCH 1/9] feat: gateway and auth0 implementation --- .pre-commit-config.yaml | 46 +++++ .prettierrc | 22 +++ .stylelintrc.json | 9 + 01cloud | 1 - Gateway.md | 0 README.md | 4 +- alerting/README.md | 7 +- alerting/alerting_rules.yaml | 10 +- alerting/prometheus_alert-manager.yaml | 1 - charts/templates/configmap.yaml | 11 +- charts/templates/deployment_backup.yaml | 32 ++- charts/templates/deployment_enduser.yaml | 8 +- charts/templates/deployment_exsecret.yaml | 2 - charts/templates/deployment_helper.yaml | 16 +- charts/templates/deployment_jobs.yaml | 8 +- charts/templates/deployment_logging.yaml | 2 - charts/templates/httproute.yaml | 129 ++++++++++++ charts/templates/ingress.yaml | 94 --------- charts/templates/secret.yaml | 34 +++- charts/templates/service.yaml | 2 +- charts/templates/tyk-gateway.yaml | 226 ++++++++++++++++++++++ charts/values.yaml | 8 +- gateway/README.md | 0 gateway/gateway.yaml | 36 ++++ gateway/krakend-0.1.0.tgz | Bin 0 -> 16644 bytes gateway/krakend-templates.tgz | Bin 0 -> 28177 bytes helper/db_services-mongo.yaml | 1 - helper/db_services.yaml | 12 +- helper/host.sh | 64 +++--- helper/install.sh | 1 + helper/metrics-server.sh | 2 +- helper/payment-cron.yaml | 1 - helper/pvc_rwo.yaml | 2 +- helper/pvc_rwx.yaml | 2 +- helper/setup.sh | 64 +++--- helper/setup_metallb.sh | 2 +- helper/velero-setup.sh | 2 +- seeder/external-logger.json | 2 +- seeder/package_install.json | 2 +- seeder/subscriptions.json | 2 +- test-cluster.yaml | 1 - 41 files changed, 624 insertions(+), 244 deletions(-) create mode 100644 .pre-commit-config.yaml create mode 100644 .prettierrc create mode 100644 .stylelintrc.json create mode 100644 Gateway.md create mode 100644 charts/templates/httproute.yaml delete mode 100644 charts/templates/ingress.yaml create mode 100644 charts/templates/tyk-gateway.yaml create mode 100644 gateway/README.md create mode 100644 gateway/gateway.yaml create mode 100644 gateway/krakend-0.1.0.tgz create mode 100644 gateway/krakend-templates.tgz diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..5b15f0f --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,46 @@ +repos: + # ========================================== + # Pre-commit default hooks + # ========================================== + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.4.0 + hooks: +# - id: check-yaml + - id: end-of-file-fixer + - id: trailing-whitespace + - id: check-added-large-files + - id: check-vcs-permalinks + - id: check-symlinks + - id: destroyed-symlinks +# - id: pretty-format-json + + # ========================================== + # Codespell + # ========================================== + - repo: https://github.com/codespell-project/codespell + rev: v2.2.5 + hooks: + - id: codespell + files: ^.*\.(py|c|h|md|rst|yml|go|sh|sql|tf|yaml)$ + args: ["--ignore-words-list", "hist,nd"] + + # ========================================== + # Gitleaks + # ========================================== + - repo: https://github.com/gitleaks/gitleaks + rev: v8.21.0 + hooks: + - id: gitleaks + args: ["detect", "--verbose"] + + # ========================================== + # FIXED STYLELINT HOOK (No nodeenv) + # ========================================== + - repo: local + hooks: + - id: stylelint + name: stylelint + entry: npx stylelint --fix + language: system + types: [css, scss] + exclude: "node_modules/|dist/|build/" diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..5902ac3 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,22 @@ +{ + "singleQuote": true, + "trailingComma": "es5", + "tabWidth": 2, + "semi": true, + "printWidth": 100, + "overrides": [ + { + "files": "*.html", + "options": { + "parser": "html" + } + }, + { + "files": "*.css", + "options": { + "parser": "css" + } + } + ], + "ignore": ["node_modules"] +} diff --git a/.stylelintrc.json b/.stylelintrc.json new file mode 100644 index 0000000..7ca7ebf --- /dev/null +++ b/.stylelintrc.json @@ -0,0 +1,9 @@ +{ + "extends": "stylelint-config-standard", + "rules": { + "no-duplicate-selectors": true, + "color-hex-length": "short", + "selector-no-qualifying-type": true, + "selector-max-id": 0 + } +} diff --git a/01cloud b/01cloud index 29244e3..34b1b48 100755 --- a/01cloud +++ b/01cloud @@ -95,4 +95,3 @@ echo " build build the image with skaffold." echo " deploy deploy 01cloud with default settings." echo " clean remove all the setup and deployed services." fi - diff --git a/Gateway.md b/Gateway.md new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md index bccaa95..44e7eed 100644 --- a/README.md +++ b/README.md @@ -124,7 +124,7 @@ Install snippets (Linux/Ubuntu): You can create your own cluster or use the provided multi-node config for kind: ```bash -# Creates a 3-node cluster (1 control-plane, 2 workers) +# Creates a 3-node cluster (1 control-plane, 2 workers) kind create cluster --name 01cloud-dev --config test-cluster.yaml ``` Verify: @@ -217,7 +217,7 @@ Notes: ### Environments, hosts, and data - Namespace: 01cloud-staging -- Hostnames (mapped to your local LB IP via host): +- Hostnames (mapped to your local LB IP via host): - console.staging.01cloud.dev - admin.staging.01cloud.dev - api.staging.01cloud.dev diff --git a/alerting/README.md b/alerting/README.md index 1674839..bebef86 100644 --- a/alerting/README.md +++ b/alerting/README.md @@ -1,4 +1,4 @@ -For implementing alert manager in the skaffold environemnt, follow the steps below: +For implementing alert manager in the skaffold environment, follow the steps below: ## Step 1: Add Prometheus repo in a separate namespace for monitoring @@ -32,8 +32,8 @@ data: receivers: webhook_configs: - url: 'http://gchat-alertmanager-gchat-integration:80/alerts?room=01cloudAlerts' ``` -``` - +``` + ## Step 5: Create configmap of prometheus-server with the necessary alerting rules. @@ -56,4 +56,3 @@ data: config.toml: > kind: Secret ``` - diff --git a/alerting/alerting_rules.yaml b/alerting/alerting_rules.yaml index cff5061..a338129 100644 --- a/alerting/alerting_rules.yaml +++ b/alerting/alerting_rules.yaml @@ -12,7 +12,7 @@ data: annotations: summary: Kubernetes Volume out of disk space (instance {{ $labels.instance }}) description: "Volume is almost full (< 10% left)\nVALUE = {{ $value }}\nLABELS = {{ $labels }}" - + - alert: KubernetesNodeReady expr: kube_node_status_condition{condition="Ready", status="true"} == 0 for: 1m @@ -21,7 +21,7 @@ data: annotations: summary: Kubernetes Node ready (instance {{ $labels.instance }}) description: "Node {{ $labels.node }} has been unready for a long time\nVALUE = {{ $value }}\nLABELS = {{ $labels }}" - + - alert: KubernetesPodNotHealthy expr: sum by (namespace, pod) (kube_pod_status_phase{phase=~"Pending|Unknown|Failed"}) > 0 for: 1m @@ -30,7 +30,7 @@ data: annotations: summary: Kubernetes Pod not healthy (instance {{ $labels.instance }}) description: "Pod has been in a non-ready state for longer than 5 minutes.\n VALUE = {{ $value }}\n LABELS = {{ $labels }}" - + - alert: KubernetesVolumeOutOfDiskSpace expr: kubelet_volume_stats_available_bytes / kubelet_volume_stats_capacity_bytes * 100 < 10 for: 1m @@ -38,7 +38,7 @@ data: severity: warning annotations: summary: Kubernetes Volume out of disk space (instance {{ $labels.instance }}) - description: "Volume is almost full (< 10% left)\n VALUE = {{ $value }}\n LABELS = {{ $labels }}" + description: "Volume is almost full (< 10% left)\n VALUE = {{ $value }}\n LABELS = {{ $labels }}" - alert: KubernetesPodCrashLooping expr: increase(kube_pod_container_status_restarts_total[1m]) > 3 @@ -48,7 +48,7 @@ data: annotations: summary: Kubernetes pod crash looping (instance {{ $labels.instance }}) description: "Pod {{ $labels.pod }} is crash looping\n VALUE = {{ $value }}\n LABELS = {{ $labels }}" - + - alert: KubernetesNetworkUnavailable expr: kube_node_status_condition{condition="NetworkUnavailable",status="true"} == 1 for: 1m diff --git a/alerting/prometheus_alert-manager.yaml b/alerting/prometheus_alert-manager.yaml index 10d5ba0..13f61a4 100644 --- a/alerting/prometheus_alert-manager.yaml +++ b/alerting/prometheus_alert-manager.yaml @@ -34,4 +34,3 @@ metadata: namespace: monitoring resourceVersion: "1236475124" uid: aa480f41-4468-4d88-a469-4227cf69ff61 - diff --git a/charts/templates/configmap.yaml b/charts/templates/configmap.yaml index e7e0ef5..7a1b585 100644 --- a/charts/templates/configmap.yaml +++ b/charts/templates/configmap.yaml @@ -20,7 +20,7 @@ items: REACT_APP_CLUSTER_MANAGER_OAUTH: " ", REACT_APP_CLUSTER_OAUTH_REDIRECT_URL: "https://console.staging.01cloud.dev/loginsso/clustermanager", REACT_APP_01CLOUD_APPID: "01cloud", - REACT_APP_AUTH0_MODE: "legacy", + REACT_APP_AUTH0_MODE: "", REACT_APP_AUTH0_DOMAIN: "--- YOUR-AUTH0-DOMAIN ---", REACT_APP_AUTH0_CLIENT_ID: "--- YOUR-AUTH0-CLIENT-ID ---", REACT_APP_AUTH0_AUDIENCE: "--- YOUR-AUTH0-AUDIENCE ---" @@ -32,8 +32,13 @@ items: data: config.js: | window.config = { - REACT_APP_RESTAPI_ENDPOINT: "https://api.staging.01cloud.dev", - REACT_APP_SOCKET_IO_ENDPOINT: "wss://api.staging.01cloud.dev/ws" + REACT_APP_RESTAPI_ENDPOINT: "https://api-gateway.staging.01cloud.dev", + REACT_APP_SOCKET_IO_ENDPOINT: "wss://ws-gateway.staging.01cloud.dev/ws", + REACT_APP_01CLOUD_CONSOLE_URL: "https://console.staging.01cloud.dev", + REACT_APP_AUTH0_DOMAIN: "--- YOUR-AUTH0-DOMAIN ---", + REACT_APP_AUTH0_CLIENT_ID: "--- YOUR-AUTH0-CLIENT-ID ---", + REACT_APP_AUTH0_AUDIENCE: "--- YOUR-AUTH0-AUDIENCE ---" + REACT_APP_AUTH0_MODE: "" } kind: ConfigMap metadata: diff --git a/charts/templates/deployment_backup.yaml b/charts/templates/deployment_backup.yaml index 2522148..5494023 100644 --- a/charts/templates/deployment_backup.yaml +++ b/charts/templates/deployment_backup.yaml @@ -20,25 +20,25 @@ spec: - name: DEBUG value: "true" - name: API_URL - value: {{.Values.env.API_SERVER_URL}} + value: {{.Values.env.API_SERVER_URL}} - name: API_SECRET valueFrom: secretKeyRef: key: API_SECRET name: env-secrets - - name: DB_HOST - value: {{.Values.env.DB_HOST}} - - name: DB_USER - value: {{.Values.env.DB_USER}} - - name: DB_PASSWORD + - name: DB_HOST + value: {{.Values.env.DB_HOST}} + - name: DB_USER + value: {{.Values.env.DB_USER}} + - name: DB_PASSWORD valueFrom: secretKeyRef: key: DB_PASSWORD - name: env-secrets - - name: DB_NAME - value: {{.Values.env.DB_NAME}} - - name: DB_PORT - value: {{.Values.env.DB_PORT | quote }} + name: env-secrets + - name: DB_NAME + value: {{.Values.env.DB_NAME}} + - name: DB_PORT + value: {{.Values.env.DB_PORT | quote }} - name: DB_BACKUP_PATH value: {{.Values.env.DB_BACKUP_PATH}} - name: GRPC_SERVER_PORT @@ -46,11 +46,11 @@ spec: - name: GCLOUD_PROJECT value: {{.Values.env.GCLOUD_PROJECT}} - name: GCLOUD_NAMESPACE - value: {{.Values.env.GCLOUD_NAMESPACE}} + value: {{.Values.env.GCLOUD_NAMESPACE}} - name: GRPC_NOTIFICATION_SERVER - value: {{.Values.env.GRPC_NOTIFICATION_SERVER}} + value: {{.Values.env.GRPC_NOTIFICATION_SERVER}} - name: HOST_URL - value: {{.Values.env.UI_SERVER_URL}} + value: {{.Values.env.UI_SERVER_URL}} - name: WS_SECRET valueFrom: secretKeyRef: @@ -86,11 +86,9 @@ spec: - mountPath: /data name: 01cloud-data dnsPolicy: ClusterFirst - imagePullSecrets: - - name: ovh-registry restartPolicy: Always schedulerName: default-scheduler volumes: - name: 01cloud-data persistentVolumeClaim: - claimName: pvc-01cloud-data \ No newline at end of file + claimName: pvc-01cloud-data diff --git a/charts/templates/deployment_enduser.yaml b/charts/templates/deployment_enduser.yaml index 8760cf1..c8898e3 100644 --- a/charts/templates/deployment_enduser.yaml +++ b/charts/templates/deployment_enduser.yaml @@ -42,8 +42,6 @@ spec: name: config subPath: config.js dnsPolicy: ClusterFirst - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - configMap: @@ -137,7 +135,7 @@ spec: - name: HELM_PLUGIN_ID value: {{.Values.env.dockerPluginId | quote}} - name: OPERATOR_PLUGIN_ID - value: {{.Values.env.dockerPluginId | quote}} + value: {{.Values.env.dockerPluginId | quote}} - name: PAYMENT_SERVER_URL value: {{.Values.env.paymentServerUrl}} - name: HELM_CD_SERVER_URL @@ -186,8 +184,6 @@ spec: - mountPath: /data name: 01cloud-data dnsPolicy: ClusterFirst - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - name: 01cloud-data @@ -239,8 +235,6 @@ spec: name: config subPath: config.js dnsPolicy: ClusterFirst - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - configMap: diff --git a/charts/templates/deployment_exsecret.yaml b/charts/templates/deployment_exsecret.yaml index aced63b..fde6e5a 100644 --- a/charts/templates/deployment_exsecret.yaml +++ b/charts/templates/deployment_exsecret.yaml @@ -54,8 +54,6 @@ spec: volumeMounts: - mountPath: /data name: 01cloud-data - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - name: 01cloud-data diff --git a/charts/templates/deployment_helper.yaml b/charts/templates/deployment_helper.yaml index cdfe0df..860c12a 100644 --- a/charts/templates/deployment_helper.yaml +++ b/charts/templates/deployment_helper.yaml @@ -77,8 +77,6 @@ spec: persistentVolumeClaim: claimName: pvc-01cloud-data dnsPolicy: ClusterFirst - imagePullSecrets: - - name: ovh-registry restartPolicy: Always schedulerName: default-scheduler --- @@ -197,8 +195,6 @@ spec: port: 01cloud-http timeoutSeconds: 1 dnsPolicy: ClusterFirst - imagePullSecrets: - - name: ovh-registry restartPolicy: Always schedulerName: default-scheduler terminationGracePeriodSeconds: 30 @@ -269,8 +265,6 @@ spec: - mountPath: /data name: 01cloud-data dnsPolicy: ClusterFirst - imagePullSecrets: - - name: ovh-registry restartPolicy: Always schedulerName: default-scheduler volumes: @@ -381,8 +375,6 @@ spec: volumeMounts: - mountPath: /data name: 01cloud-data - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - name: 01cloud-data @@ -447,8 +439,6 @@ spec: port: 01cloud timeoutSeconds: 1 dnsPolicy: ClusterFirst - imagePullSecrets: - - name: ovh-registry restartPolicy: Always --- @@ -458,7 +448,7 @@ metadata: labels: app: 01cloud-jobs name: 01cloud-jobs - + spec: replicas: 1 selector: @@ -499,8 +489,6 @@ spec: terminationMessagePath: /dev/termination-log terminationMessagePolicy: File dnsPolicy: ClusterFirst - imagePullSecrets: - - name: ovh-registry restartPolicy: Always schedulerName: default-scheduler --- @@ -538,8 +526,6 @@ spec: volumeMounts: - mountPath: /data name: 01cloud-data - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - name: 01cloud-data diff --git a/charts/templates/deployment_jobs.yaml b/charts/templates/deployment_jobs.yaml index d3cc649..dd20e73 100644 --- a/charts/templates/deployment_jobs.yaml +++ b/charts/templates/deployment_jobs.yaml @@ -69,8 +69,6 @@ spec: volumeMounts: - mountPath: /data name: 01cloud-data - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - name: 01cloud-data @@ -135,8 +133,6 @@ spec: volumeMounts: - mountPath: /data name: 01cloud-data - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - name: 01cloud-data @@ -195,7 +191,7 @@ spec: valueFrom: secretKeyRef: key: RABBITMQ_URL - name: env-secrets + name: env-secrets - name: TEKTON_FILE_PATH value: {{.Values.env.TEKTON_FILE_PATH}} - name: CLUSTER_VERSIONS @@ -209,8 +205,6 @@ spec: volumeMounts: - mountPath: /data name: 01cloud-data - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - name: 01cloud-data diff --git a/charts/templates/deployment_logging.yaml b/charts/templates/deployment_logging.yaml index bdfa057..2f10765 100644 --- a/charts/templates/deployment_logging.yaml +++ b/charts/templates/deployment_logging.yaml @@ -54,8 +54,6 @@ spec: volumeMounts: - mountPath: /data name: 01cloud-data - imagePullSecrets: - - name: ovh-registry restartPolicy: Always volumes: - name: 01cloud-data diff --git a/charts/templates/httproute.yaml b/charts/templates/httproute.yaml new file mode 100644 index 0000000..1825844 --- /dev/null +++ b/charts/templates/httproute.yaml @@ -0,0 +1,129 @@ +apiVersion: v1 +kind: List +items: +- apiVersion: gateway.networking.k8s.io/v1 + kind: HTTPRoute + metadata: + annotations: + gateway.networking.k8s.io/generator: ingress2gateway-v0.5.0-rc1-1-ge79e5af + name: 01cloud-api-test-01cloud-dev + namespace: 01cloud-staging + spec: + hostnames: + - api.staging.01cloud.dev + parentRefs: + - name: staging-gateway + namespace: envoy-gateway-system + rules: + - backendRefs: + - name: cloud-api + port: 8081 + matches: + - path: + type: PathPrefix + value: / +- apiVersion: gateway.networking.k8s.io/v1 + kind: HTTPRoute + metadata: + annotations: + gateway.networking.k8s.io/generator: ingress2gateway-v0.5.0-rc1-1-ge79e5af + name: 01cloud-terminal-test-01cloud-dev + namespace: 01cloud-staging + spec: + hostnames: + - terminal.staging.01cloud.dev + parentRefs: + - name: staging-gateway + namespace: envoy-gateway-system + rules: + - backendRefs: + - name: cloud-terminal + port: 8080 + matches: + - path: + type: PathPrefix + value: / +- apiVersion: gateway.networking.k8s.io/v1 + kind: HTTPRoute + metadata: + annotations: + gateway.networking.k8s.io/generator: ingress2gateway-v0.5.0-rc1-1-ge79e5af + name: tyk-gateway-ingress-ws-gateway-test-01cloud-dev + namespace: 01cloud-staging + spec: + hostnames: + - ws-gateway.staging.01cloud.dev + parentRefs: + - name: staging-gateway + namespace: envoy-gateway-system + rules: + - backendRefs: + - name: tyk-gateway + port: 8080 + matches: + - path: + type: PathPrefix + value: / +- apiVersion: gateway.networking.k8s.io/v1 + kind: HTTPRoute + metadata: + annotations: + gateway.networking.k8s.io/generator: ingress2gateway-v0.5.0-rc1-1-ge79e5af + name: 01cloud-admin-test-01cloud-dev + namespace: 01cloud-staging + spec: + hostnames: + - admin.staging.01cloud.dev + parentRefs: + - name: staging-gateway + namespace: envoy-gateway-system + rules: + - backendRefs: + - name: cloud-admin + port: 80 + matches: + - path: + type: PathPrefix + value: / +- apiVersion: gateway.networking.k8s.io/v1 + kind: HTTPRoute + metadata: + annotations: + gateway.networking.k8s.io/generator: ingress2gateway-v0.5.0-rc1-1-ge79e5af + name: krakend-ingress-api-gateway-test-01cloud-dev + namespace: krakend + spec: + hostnames: + - api-gateway.staging.01cloud.dev + parentRefs: + - name: staging-gateway + namespace: envoy-gateway-system + rules: + - backendRefs: + - name: krakend + port: 8080 + matches: + - path: + type: PathPrefix + value: / +- apiVersion: gateway.networking.k8s.io/v1 + kind: HTTPRoute + metadata: + annotations: + gateway.networking.k8s.io/generator: ingress2gateway-v0.5.0-rc1-1-ge79e5af + name: 01cloud-ui-console-test-01cloud-dev + namespace: 01cloud-staging + spec: + hostnames: + - console.staging.01cloud.dev + parentRefs: + - name: staging-gateway + namespace: envoy-gateway-system + rules: + - backendRefs: + - name: cloud-ui + port: 80 + matches: + - path: + type: PathPrefix + value: / diff --git a/charts/templates/ingress.yaml b/charts/templates/ingress.yaml deleted file mode 100644 index 65029c1..0000000 --- a/charts/templates/ingress.yaml +++ /dev/null @@ -1,94 +0,0 @@ -apiVersion: v1 -items: -- apiVersion: networking.k8s.io/v1 - kind: Ingress - metadata: - annotations: - kubernetes.io/ingress.class: nginx - name: 01cloud-admin - spec: - rules: - - host: {{.Values.env.hostAdmin}} - http: - paths: - - backend: - service: - name: cloud-admin - port: - number: 80 - path: / - pathType: ImplementationSpecific - tls: - - hosts: - - {{.Values.env.hostAdmin}} - secretName: zerone-tls-cert -- apiVersion: networking.k8s.io/v1 - kind: Ingress - metadata: - annotations: - kubernetes.io/ingress.class: nginx - nginx.org/websocket-services: cloud-api - name: 01cloud-api - spec: - rules: - - host: {{.Values.env.hostApi}} - http: - paths: - - backend: - service: - name: cloud-api - port: - number: 8081 - path: / - pathType: ImplementationSpecific - tls: - - hosts: - - {{.Values.env.hostApi}} - secretName: zerone-tls-cert -- apiVersion: networking.k8s.io/v1 - kind: Ingress - metadata: - annotations: - kubernetes.io/ingress.class: nginx - name: 01cloud-ui - spec: - rules: - - host: {{.Values.env.hostUI}} - http: - paths: - - backend: - service: - name: cloud-ui - port: - number: 80 - path: / - pathType: ImplementationSpecific - tls: - - hosts: - - {{.Values.env.hostUI}} - secretName: zerone-tls-cert -- apiVersion: networking.k8s.io/v1 - kind: Ingress - metadata: - annotations: - ingressClassName: nginx - name: 01cloud-terminal - spec: - rules: - - host: {{.Values.env.hostTerminal}} - http: - paths: - - backend: - service: - name: cloud-terminal - port: - number: 8080 - path: / - pathType: ImplementationSpecific - tls: - - hosts: - - {{.Values.env.hostTerminal}} - secretName: zerone-tls-cert -kind: List -metadata: - resourceVersion: "" diff --git a/charts/templates/secret.yaml b/charts/templates/secret.yaml index 2114b0e..460f165 100644 --- a/charts/templates/secret.yaml +++ b/charts/templates/secret.yaml @@ -2,26 +2,40 @@ apiVersion: v1 items: - apiVersion: v1 data: - API_SECRET: {{ .Values.secret.API_SECRET }} - DB_PASSWORD: {{ .Values.secret.DB_PASSWORD }} - DB_URL: {{ .Values.secret.DB_URL }} - MONGO_URL: {{ .Values.secret.MONGO_URL }} - RABBITMQ_URL: {{ .Values.secret.RABBITMQ_URL }} - RABBITMQ_PASSWORD: {{ .Values.secret.RABBITMQ_PASSWORD }} - SMTP_PASSWORD: {{ .Values.secret.SMTP_PASSWORD }} - MODE: {{ .Values.secret.MODE }} + API_SECRET: {{ .Values.secret.API_SECRET | quote }} + DB_PASSWORD: {{ .Values.secret.DB_PASSWORD | quote }} + DB_URL: {{ .Values.secret.DB_URL | quote }} + MONGO_URL: {{ .Values.secret.MONGO_URL | quote }} + RABBITMQ_URL: {{ .Values.secret.RABBITMQ_URL | quote }} + RABBITMQ_PASSWORD: {{ .Values.secret.RABBITMQ_PASSWORD | quote }} + SMTP_PASSWORD: {{ .Values.secret.SMTP_PASSWORD | quote }} + MODE: {{ .Values.secret.MODE | quote }} kind: Secret metadata: name: env-secrets type: Opaque - apiVersion: v1 data: - tls.crt: {{ .Values.secret.TLS_CRT }} - tls.key: {{ .Values.secret.TLS_KEY }} + tls.crt: {{ .Values.secret.TLS_CRT | quote }} + tls.key: {{ .Values.secret.TLS_KEY | quote }} kind: Secret metadata: name: zerone-tls-cert type: kubernetes.io/tls +- apiVersion: gateway.networking.k8s.io/v1beta1 + kind: ReferenceGrant + metadata: + name: staging-cert-reference + namespace: 01cloud-staging + spec: + from: + - group: gateway.networking.k8s.io + kind: Gateway + namespace: envoy-gateway-system + to: + - group: "" + kind: Secret + name: zerone-tls-cert kind: List metadata: resourceVersion: "" diff --git a/charts/templates/service.yaml b/charts/templates/service.yaml index 7901714..306ba8c 100644 --- a/charts/templates/service.yaml +++ b/charts/templates/service.yaml @@ -13,7 +13,7 @@ items: - port: 80 selector: app: 01cloud-admin -- apiVersion: v1 +- apiVersion: v1 kind: Service metadata: name: cloud-api diff --git a/charts/templates/tyk-gateway.yaml b/charts/templates/tyk-gateway.yaml new file mode 100644 index 0000000..5af6477 --- /dev/null +++ b/charts/templates/tyk-gateway.yaml @@ -0,0 +1,226 @@ +apiVersion: v1 +items: +- apiVersion: v1 + kind: ConfigMap + metadata: + name: tyk-conf + namespace: 01cloud-staging + data: + tyk.conf: | + { + "log_level": "info" , + "listen_port": 8080, + "secret": "352d20ee67be67f6340b4c0605b044b7", + "template_path": "/opt/tyk-gateway/templates", + "tyk_js_path": "/opt/tyk-gateway/js/tyk.js", + "middleware_path": "/opt/tyk-gateway/middleware", + "use_db_app_configs": false, + "app_path": "/opt/tyk-gateway/apps/", + "storage": { + "type": "redis", + "host": "tyk-redis", + "port": 6379, + "username": "", + "password": "", + "database": 0, + "optimisation_max_idle": 2000, + "optimisation_max_active": 4000, + "enable_cluster": false + }, + "enable_analytics": false, + "analytics_config": { + "type": "", + "ignored_ips": [] + }, + "health_check": { + "enable_health_checks": false, + "health_check_value_timeouts": 60 + }, + "enable_non_transactional_rate_limiter": true, + "enable_sentinel_rate_limiter": false, + "enable_redis_rolling_limiter": false, + "allow_master_keys": false, + "policies": { + "policy_source": "file", + "policy_path": "/opt/tyk-gateway/policies" + }, + "hash_keys": true, + "close_connections": false, + "http_server_options": { + "enable_websockets": true + }, + "allow_insecure_configs": true, + "security": { + "force_ssl": false, + "skip_ssl_verify": true + }, + "coprocess_options": { + "enable_coprocess": true, + "coprocess_grpc_server": "" + }, + "enable_bundle_downloader": true, + "bundle_base_url": "", + "global_session_lifetime": 100, + "force_global_session_lifetime": false, + "max_idle_connections_per_host": 500, + "enable_jsvm": true + } + test-ws-api.json: | + { + "name": "Test WebSocket API", + "slug": "test-ws-api", + "api_id": "2", + "org_id": "1", + "use_keyless": true, + "version_data": { + "not_versioned": true, + "versions": { + "Default": { + "name": "Default", + "use_extended_paths": true + } + } + }, + "proxy": { + "listen_path": "/ws", + "strip_listen_path": true, + "target_url": "wss://api.staging.01cloud.dev/ws", + "connection_type": "websocket", + "transport": { + "ssl_insecure_skip_verify": true + } + }, + "active": true + } +- apiVersion: apps/v1 + kind: Deployment + metadata: + name: tyk-gateway + namespace: 01cloud-staging + labels: + app: tyk-gateway + spec: + replicas: 1 + selector: + matchLabels: + app: tyk-gateway + template: + metadata: + labels: + app: tyk-gateway + spec: + containers: + - name: tyk-gateway + image: docker.tyk.io/tyk-gateway/tyk-gateway:latest + ports: + - containerPort: 8080 + volumeMounts: + - name: tyk-conf + mountPath: /opt/tyk-gateway/tyk.conf + subPath: tyk.conf + - name: tyk-conf + mountPath: /opt/tyk-gateway/apps/test-ws-api.json + subPath: test-ws-api.json + env: + - name: TYK_GW_STORAGE_HOST + value: "tyk-redis" + - name: TYK_GW_STORAGE_PORT + value: "6379" + resources: + requests: + memory: "512Mi" + cpu: "500m" + limits: + memory: "1Gi" + cpu: "1000m" + readinessProbe: + httpGet: + path: /hello + port: 8080 + initialDelaySeconds: 10 + periodSeconds: 5 + livenessProbe: + httpGet: + path: /hello + port: 8080 + initialDelaySeconds: 30 + periodSeconds: 10 + volumes: + - name: tyk-conf + configMap: + name: tyk-conf +- apiVersion: v1 + kind: Service + metadata: + name: tyk-gateway + namespace: 01cloud-staging + labels: + app: tyk-gateway + spec: + ports: + - port: 8080 + targetPort: 8080 + protocol: TCP + name: http + selector: + app: tyk-gateway + type: ClusterIP +- apiVersion: apps/v1 + kind: StatefulSet + metadata: + name: tyk-redis + namespace: 01cloud-staging + labels: + app: tyk-redis + spec: + replicas: 1 + serviceName: tyk-redis + selector: + matchLabels: + app: tyk-redis + template: + metadata: + labels: + app: tyk-redis + spec: + containers: + - name: redis + image: redis:4.0-alpine + ports: + - containerPort: 6379 + volumeMounts: + - name: redis-data + mountPath: /data + resources: + requests: + memory: "25Mi" + cpu: "25m" + limits: + memory: "51Mi" + cpu: "50m" + volumeClaimTemplates: + - metadata: + name: redis-data + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 1Gi +- apiVersion: v1 + kind: Service + metadata: + name: tyk-redis + namespace: 01cloud-staging + labels: + app: tyk-redis + spec: + ports: + - port: 6379 + targetPort: 6379 + protocol: TCP + selector: + app: tyk-redis + type: ClusterIP +kind: List +metadata: + resourceVersion: "" diff --git a/charts/values.yaml b/charts/values.yaml index ef1d03a..9162117 100644 --- a/charts/values.yaml +++ b/charts/values.yaml @@ -16,6 +16,7 @@ image: monitoring: 01community/01cloud-monitoring:v0.0.1 backup: 01community/01cloud-backup:v0.0.1 exsecret: 01community/01cloud-exsecret:v0.0.1 + logging: 01community/01cloud-exlogger:v0.0.1 secret: API_SECRET: --- YOUR-API-SECRET --- @@ -30,6 +31,7 @@ secret: TLS_KEY: --- YOUR-KEY --- MODE: bGVnYWN5 + env: API_SERVER_URL: https://api.staging.01cloud.dev UI_SERVER_URL: https://console.staging.01cloud.dev @@ -46,7 +48,7 @@ env: REACT_APP_AUTH0_CLIENT_ID: " " REACT_APP_AUTH0_AUDIENCE: " " - + API_SERVER_WS: ws://cloud-api.01cloud-staging.svc:8081 GRPC_NOTIFICATION_SERVER: cloud-notifications:10081 GRPC_SUPPORT_SERVER: cloud-support:10081 @@ -55,7 +57,7 @@ env: monitoringServerUrl: http://cloud-monitoring:8081 paymentServerUrl: http://cloud-payments:8080 helmcdServerUrl: http://cloud-helm-cd:8080 - + SMTP_FROM_ADDRESS: --- YOUR-EMAIL-ADDRESS --- SMTP_HOST: --- YOUR-SMTP-HOST --- SMTP_PORT: --- YOUR-SMTP-PORT --- @@ -67,7 +69,7 @@ env: DB_USER: berrybytes DB_BACKUP_PATH: /data/db-backup MONGO_DB: cloud - mongoUser: berrybytes + mongoUser: berrybytes rabbitmqUser: berrybytes STORE_TYPE: mongo MESSAGE_TYPE: rabbitmq diff --git a/gateway/README.md b/gateway/README.md new file mode 100644 index 0000000..e69de29 diff --git a/gateway/gateway.yaml b/gateway/gateway.yaml new file mode 100644 index 0000000..9c773a0 --- /dev/null +++ b/gateway/gateway.yaml @@ -0,0 +1,36 @@ +apiVersion: gateway.networking.k8s.io/v1 +kind: GatewayClass +metadata: + finalizers: + - gateway-exists-finalizer.gateway.networking.k8s.io + name: eg +spec: + controllerName: gateway.envoyproxy.io/gatewayclass-controller +--- +apiVersion: gateway.networking.k8s.io/v1 +kind: Gateway +metadata: + name: staging-gateway + namespace: envoy-gateway-system +spec: + gatewayClassName: eg + listeners: + - name: http + port: 80 + protocol: HTTP + allowedRoutes: + namespaces: + from: All + - name: https + port: 443 + protocol: HTTPS + allowedRoutes: + namespaces: + from: All + tls: + certificateRefs: + - group: "" + kind: Secret + name: zerone-tls-cert + namespace: 01cloud-stable + mode: Terminate diff --git a/gateway/krakend-0.1.0.tgz b/gateway/krakend-0.1.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..09095b0a685397168a949b33a4b4413bf9a45d94 GIT binary patch literal 16644 zcmbXKQ*dnU7xs;IY&%)8ZQFKMY}+sy$D-Y8=e& z+4G)b{O;?zy740*Q33xQ-;@Aq0|_MtBMDhH84pfYLuOS5V`WwgO=V6tc~w<5Sv6}* z16yMc6-7H<2@`7@z(wbJG%(~`2Y|BO2 z>F*jHx|WM8JXC0GQ&7@bENHQR33UsrtLo2A%yvw6jBfXcPP`cRkjw=8IULfdT%uBb zz`vEKMmQK=zHf>7@v2BV4Fi_nU1bWdrcMX=SKUvZ-#?49{cQQ)KYefO{k{hCE+&zW3u=>orT`gyAvH#sALZ%{VuK0@UH?uvG4d9OIsl6MlNP4;rbt@ z@2_6xZNC?c#u9lJo|?@L^iuf=t0-xWDM(&zJx7guSd@!_GHYOvF-nwq5mv!+4Njbr z(*}y`4+cK3JevL5uF1t22xq?|-;|4*K>SJH`2Bu9K;RetbG9%1=QWXpDcD~!2;$KMCJPM# zdY>bmSi(m%Zqk9rQY8!$%-fxQN(U zmSpXd#Afoi**uavG<9oe0YyCeN}{)U)W1b!^z^>K$e84nRv=%Wmv6u)b&9HM&PdU9 zjc!HL-ZeYKm2Rmdziha8W@Nw@V&E4$HOM_O%G6})>{3-aPJE=R(FiFq(`1FTP(7=C zKVApZtG;sBU86`p{61b3yL-N;@%z8lWjU_n_?cuMQcP@E@5be~ckttCbEoh-Vom5_#Ex&7qP);3Ri^*(NWJw5%zID%S4Q9eS?XK;emaDZyg zgOtZ~W>M0Pb4YJFmYxg$UH`AR?&r(L;Lc+V|L4czaJIHAeQLQ6lVKW%oMr@~6EQzy zw&Gx0^_-raT^R95wG`+PS@+q7^Y4+3D$a7xb-!h}z4Vq#lAGU0GCcO5rNa{Br5k^g zx7nA^V(D5tKO5|===CscCo)tw&!1XMQM}BglzD&aoOvAmW_Z{77`7SS^5;f>I@Eda z#2;>UxOGVT&D#3anX|>dP#iFBtUQGx1e-@UA}veiEXUGm7#v5~PKJUf!>Zh5U?}DM zlyGopl?T>p96UwwEGu{^W){)shpN0c=dZ1N84a}@E;5~(*xSAFidLQ~opFw)yU|Uf zyOEB;|9N`YjCMVhWt~_~*Zs>OBlxAj$!Wf|HSF;j3W4V-fP{W^`aqwEZ|-|xtlWwf zowC$P>-G!-!O_6B@kZ>je#w%dkxmtH_Z&YPL6`S^SCp__Xtz>x&Sx&yV5L(Er(TE7 zlWbS*w?^y8P`x7+9)(TadHLR=4BeuoWgp99Nzv1WgQ^(9^JPr6ukX{{VnlWs0}8ZV zBl!o%Xui}5O@*`*J!RlrHZgqRb@M%WRg0YN{cApb+ox@}m#;wue|~MLp)p+%lUBa7 z9F*jhcOf^M+b(QKN73B)Mpx_5;P9)=D6-G?Vi_O) zuJyG@orOioBh$#s1O2pYhlI8L@`L75zx`|cb+7Ih%SVj1mSGl*ym-{}?h`&I{;k_1 zp-~WCl1x9HG17eJ*N=5d$uT{Jv!@qvP+z(2yxW$;^YZC_j0zSy+m|; z()97!=N9s;k4aaYRL|P`YwiN(lMNjqLnb6a=g_h*`277@+UQjN(=vzYtw+&9Ni2Q^ z_BP{J_qoPLAMZ8WqJn{#7n(=*6eANWsz)qL?%ad}yMs>^b5-|)I}I|H9O5I+ z-dnOd3hMd`S?_yk=E|1@xkFkJT-V7ZW6`>Sv8NaxUb$P^#aHYvdg&;H{$s?y@Ui28^wYZkGL=_ zV@=oM(N|==l%o@{*K{Ky=eG2QL|<%U%ER%}q>NeP-&e3+94EbWP@W)xr{Yx0ptg~5DI z6E&6MmLyl=I{a@H?H!Hy+oGzTQEGO z^gV<*bLwAxk~0%V4ZjOUm6oHImm*ii>EDel*Kjk>%-ijxIhu@i3wAEaU(KoMQMMe* z_i7{l-q$upZTt`4_E}+!C|}Nfz6{m%&Vy3RoTDLOk}q72r%ab*jY3tf6eNoC;}n9j zzo^8|0y{28EM_=~aml-CUUj{~rrPH(_7}QO?vxL}VQBiG(ax71^aj7(6?%uL0!=>r z9u6b}zV&!sI}pCEiL9f(g*>Zd)!^XBbvvU=xVDLWho+_i`1L{x zppq9zL)_iURiMMzRoad37@i&r_y6jj*^#o`@MBrkx>D<(zD)aueSeC}_kQaH3ngy} zErk&B`f0iAnQ!1HS8@RtRflx!^_F-&nk+b_FA&q`GgqpGk%Txjjs+uPg9>R4JIQ1l zHd{V8-=_3SRhi@;SeBG#WBSPPFx67}@L*Gl9gUk zx6m9;uR5?ev=mg0zDMNUX5ijySX6KIf{s9NYc@Pk6ZSegjv6~9#^SICUTv@ngM7!s zZnJ&A53SJOegE43c0;Cm_cQ8Vp}X|ek*>b0sg6`U9RQhD0}=~Pxfpp^q@5mfcq_;J ze)sJj7t;8~VSb;hnfT)V?l}1Nc!2!u=7y3MbG#nCSWj$plP9)QZraS0ZM#%=Jd8f& z*0Nxj!ZWA1_cJop!%kZD(|eHq>K2c|3;J${#A*IsVtIF5+RA$xoq|yB1)tb8cR=SB z@JS_AHvlYU5{{wte{Mt>Z|JUC8T&>f%cUf3=vZnU$&AS)4ZLn^z|@6(wNG!uZkZFV zib<=Xrak(7d31k!IDCc<%jcixah=)i`xV}#zuad} zyk2lVNIo0;3dxg^YpE-O8o=~+w9m)e$q$h~h?s6~OY5~HceO;q4A;lU$6tLn^%lK% z%l{$&7~nS`FGIZVUK)N7Kep3mgvyuB{+j-n4RinE;hVPme*MPf`PTd1@8+c*x=9*< z9A2ePS?7G+4C6B(kB`3@;Lm;X+KuLaa|_|FlK9ts|NY&qHay1H`+YBe`uTh4K{Ybf zFYnv%>wP$W6^i#(zUat(6X*SeA0rDI2nfgki7%Yb_dVvl3kei7cnPc@0@=?O*Y8W~ z;Z@Q5gZ=iH-+1nW?~CO2c=`6YTQnPg@YWZ_?@RdOb^Yc3`IbD4zdM@$oAxa-_fc`< z<%Oc_PTT?JFn@bEo8;@mliMT6|7NED8_nlqYvG&zZ2cP&5)$GU-&^RhU6xU`t7YPJpr7~Q!#k!!hr?sZlWN3+4NL9cKFGT z8+<3w`2xC=GI=B1yPbmP8!8R`i;IvaM^hW_c(t~@M-N$9t1=8*X`hRCWX|oo*s`^mbc&M ze)_{RzTWr8-LRV7oN#x6cvknz*Wffg({joT0ti>#_3_7Si&GQk5}KaxM9HxAP*;@P z?SzX)N#?Z$Lt0wGZE81KfN6lMZ&v83ou5Ni$VS-kKN{Z;*RqBbj_D$`u#s@hW3H7?$F$R{MsxMqb;{gaP*L*$Fe0qQedhIHXZ@H=JIyu4!$j&4Ah8 zswx&43gHO%0mF&7qp8}o7^2~&rgfZhJOwqJ$S@rWHv;U#cdc_Ym;+XWY3W@rb>E?1 zhGV;zs}@hYq9cJ1)rRN;{m$S}E{0sNLX?qlD=Kh%6tC7{j?M%c6a`1U=7>zAA+5Xj zAH=JN?5Q+IJ_+@=q;q}sknDv(@syaf(M;?q?X?FRLfB$ox!gJp# zXh`CDh{cGc{MHYf7K{JZ=jT=QB9iwa{t0TJ_wc1NZu9KiV{HH2z7PuG_Ng|`o2T~d zET8AS#e27iAj>LmMyjOv=s8^#X=D5fVV(Dt*%D)|;gQq5PO?xRMr_!S3^ zrI*hI9$lhl3Gh|&I2m~p27M)H&Xf{GHWXR#O|eBa?K6x){oA|wprg3XRgaifquF+- zQoLYwO2hDv*U6<4=lDP+#*6vP zDaP`jao8toSE7oYNk{q|mXh)*f_C=ZD3R7y(c-SLTz`#~r7JpNwlg2c?6Mma4fjHG z%*}kdxO|qFS&?!~eUAx@Iyw2n$^?>H?}``G5i=t^-ZvM%OL3W%ZL1xne|>Zt&szfnjr5uoXEx>W37pYJ~tQJrae8L95J01c0}wf#QzEKarDI-q+7!Mvk;J8~8?Nz8wI9+7JS&-l`Sy<7eo8Fo!WAE0#6y;TGRU%ST%=m>Rx}qRpGQ1I7X9Ri z*TrQmlGOyZTDABd!3cfzPQdxPswD*BV4nHsGEz= zR2m{}q%&!;PEJWG-6I!0_^`&JF!B^=mR9t;@Zi}eCf7z0wfK_X+Gjf9+Y?xxZZqvc zTeuHb6)NBK{Nudmeh-%om3vhu>!Y67<(0(B|Eg8?5kh`JT?VU^S`l`7(hu^54`jmj zm62!ua$I9HoXE>Iv20vo%8biPQTtdWgyGrC(=iG6s6d%@BuD?j1}TLKz?4 zWoXD#CH#$)%PoDRbiol0zZID%QQAtZDz!$lMEYI|I~J&B*09tRfL6i4Ab%9~ShI31O| zzFOXFFa*k7xL&Dwz;)BF6VHRJseeRZ9Jj8;pGDPkNX^0_CBJ;XPR8-O2(z`PSd~c- z(6Ry!kd8lnPgC~%8Y#RVOjtsn8eUe)v2dZmAz-8T z89C<8IH@+Si)E%Dq@?j8^E`|UE>@b7{=O20*!le}gMOElxNPammJ584j~O?28}B^;lI3J$3`Ez;ov!7Tu@KuB)zy6SubgUkIiq|?;_DF8VY zXgi3q32@fP1ae&u(V-ZOeTTI3)S3;8)3EZ`!N}CDMOA(uiK-v|bVx z*Iv|A53mm|O*=bZ=#)_}Y3YBN3Agb9IOWs&&{nA{obv!PGwQwH{9TQHT^kQ|HEu|S zN=dKZ^1ig(Gk|4EfjDZ^j|!JM3Ghf~xZhc_z@IdadWv=P}UrV` z4)w_-b*_YCGJ!bb0dZ;Z<$^Ws$>l=uL$*L%HTEL_KiI(dL`Nndgi2VggznN~e$7$L zi}o<2ybCjIg#$8!FLUr{y7FsZu(`j`>qt&+*Qq{s(7^#fJ*vQnaGP+lK&Fm;iM_Bi zy#DYxR%j>Tdn7f_O;*>n`a^|~WHd9K=@a-MD*=_g#BblxrQdd~ge@xd76N)ZY3>tO zCXq!BUa^o7Na#j2B1ND}yKOHpg)fP%*e6zKZ~Cx!4UF#OcZsNJ;48jXv?%6|jek1^ zlO}$?0XLqJbsLZt4}gqnS}I_zQkI*>4QwmGjTYxRdEOLTpnY;4{!+vF5SQiZss%&0 z148%Q3@jNE%I{XSH*B@X|G2iVey~1(nj09X-KGb=-oKao#`e43KcGXl$_qiy?%h5# zt0(`?yJBvN*3)wqtp$s?T3lz+3`VXOq0a9kz!%~QqO}~SK&ccIb%Oz{^++8Y2oV%? z{p6%%!2%o5wQN~$hI#{ZaR*ep8GTi2LV|X? zrjDpn|CRs{+uLF^7HdO&Dtk5{sPkb!vqmB25ydD*qQC2`PI}9MuL8W@pUVI~ z#>*$d`B)nu&zf@|U=K|oop_mwSM$=@oGDts@PR=H0YNT#qyqaxMZfyffeG-~5fP@+ z=VK`BYT0&6h@Ipl! zR855u6{!zX4EmmD4jv5Glxo5X=45&)G z*>}kU0{AM#pSs-9DUYV?nv0k*hT8MAKA`nYVAlWq;85%kUbAA>@W_UJ+l4-1ufHS3 zL>sPZwGjCVZGLd0Mdx!vNrpB4xn*FCVl)=3>S#$HbezzTb3n?&^dW{6>Dq?h#IeyW z{x#pB(V77f78Jy-JMlxQmh2b=u^D(ED}|AB{{q_>6iaXjLTISN5(6k<1DUk+n3VZ~;x;GdSzL9B(F^;Scbjx=lrD0%N_lS3WF#=!>Quv3sS_1{dUCsFNm zk1qj~6dnpG4m-B`@5WQyz}WW7_~2>mpl|r}I2+85=DKOm5L?Meo;5kQg7VkM^VawOLJ!;)g?zrO;w3e7eVRTcz93eCg|z1u)*0j}@QZUA>J zU|qXDvShS$y8Lzc6_BU385^}EN}!J>7=Cr19{ihSs&WLt1||S4e-3w@_hWYe@E9HI z=|Zf1L4S!qt%O<=6)Z@r6>Ne_u0|=TPpR(NLu12B4%FL7h}n%2=>>G;-@0T_RUikv zVgu!h`3k%OW=fwujb>%n80mv&}aB3(nYxCdUl7zo?T9`k#ueWE3fuUL%7+{O- z-{~I6&HxDu9Aq=BuUZMppbhaSPH{4WBRPP72jRsE?Q86f1h6&a55Z1f0&&)u;c4%G z0qbM`2J9oSt((~;poi)j#U~RC@+r{$DIW|1*cV<0*T2>rDbJ;^+I<8-#QX~?r~TS^ zqjVfEw23#E+nDMZ0~r)If~5gfi-{{oh)m>cMDDQ{XBa5c${{pw+5X+^-=De9P;iBY z%LuU#*DJzsYoPuYEsYege{?A#>$4rkjB`XZ1IfY%=~PRi1DdqJ zHEOhn0<@CqHT}0J^4penlS!gc!xCWw6!lqrjBL#PlNV$GGl@W&jdSJFK?I{49L2cz z#1m3Ch&w)OF2VH?%==EXzyB%2lIYMiC>K0pu1zVSU^dA5H&vKC>dUoZ#E``?rzocYhB_363EH*8C zMxDfM{2wm?KX+`?<0^ktAMs7&`>Zza{_xVd%I?XX7;ZF|cel<~Vj@S`sf!l1`W;jY z$dzXEfpVe%RBSWvfk7#`0>Z-jw~{re z7x+Fp&SQLtWrg@CLYfsP?4%uN*5B(A|4d<_ISO=pD@kK5VjS8mhpNOgQpE>Rf@UlM z5UmxIA4`lq@K6>?RMKKag&yH7#n0g2BvTQx_f*=#ggy=|D~$5k)4A9RaRKDjqw7@* zadsK#iAnR9?8d;U8cufSs5g*x0pzYJhzB+c=mF6AiI7z~fcN&m7SOTGC)%wWQ4$J% z#fQ^!dv2le?wUI*<3HJq3`oAE$4(UanbO+**Xu;ceP33y=4s|3vCMOfQjEoIrR&9;$4!XnkJuERBwTEd1a1vQe%QZ7jP zskVRrEZk?zWJkNVhQOP_nnPmSrvEADHj>iR0o}0|=7_ArsLxmj7hzf0Eh!Z;RICQQ zJdn+`|7l6!wmk$tkA4$QkVYjkfju0k6x*JZkt<$_TfqW%tjh)r7uijf{^s6TuzE9x zZ(P21^Gd%jZOO6XH2;R@R{s|bw>ipx5WzMIK^23XXp>c$I8O$2#OB{Bb&X#klmlO~ zZWkk`m<8Ihj($}W0rs<{xOBpR*|806>CXX2L>O5A&H)#&tDor~dZ;A9`}1s@6^`(#Tas0frZFuiA6`oLdT`k&^XuGUGAp;=RAy>2!i#B?+g>NTUI2lKGW#H! z+Qt`ewSkAGppej|H7l7OBbyavSJHFEu^KI&9h;lx?q;&i6RT{N#15^>AO|lhU~Pq@ zI*B46q)oMc<8Og@|I9HR*av{Wr#kV*3YiKBcv(Q7CA3n62eu06&cCA*zG{>r9^ha_ zT-5|oXUkxzlCj7F8?peBJZzU|1mQcpoqt<4>sAGhf<1$D4<0^>B_As4g8I|Yiw}Rv zfGPJb&@wjGDp$1lO6EV5AL@w+Ac0I$Q0x$VBLaAi{0-n&{!Ic!{6nQ3(MUV+XC>Sv z<28=hCA1#+ojW7bvuF0KTgX%Itu)sDdLB)*KOzJPz3x>fCN!eGi)SrpdB*j@X5S1WvNLEp~D)19!Lh@B&vV(&<-hZ z)HY(RZ4Tg@eJJiHVerno2}{C$youmbpHXw*+uFC$4dwxV&Q0Hm{kINZ-t1woCzlQi zeyIsg%hqgzf2yzBWXrk8JU83)D>iy_!gWW{=G!m;!^iG3uzaP-by*?PNKCuD1sdkg zoo1v6%fZA0S^eKS2;R~O@O@9mC9~ZswocDhQ7s1KWaw>yNbXk3BCN55#KIHdiT ziF>Rfk`aPME&88o*mLj3a=We-4n-QtX=Hwo&bnAuomLI_*A;Z=O}T&Qj)B()6(A2T zJ<~+u7zO?0z-b~8y^aL~?9c8O_#(^H?FS7rD@wjywDE)NVIJf-j0Bo4&OtU5W{Wb+ zinrYF?uh2h>55-CM88XgELeW^i7 z?}GJpXtd8{W^%j~v+8=ywYCNJva?bUKMh2+)vgRw%D)4SAO=GFIWiG*>8eYC+c8p3 z#^FLAjJXEMT4sBtYeij!2?(Eka5#2K_$(-9hxp~C<~2p}r>1sfL`+~tq%m5D7u}F_Veh9cX?|Ag>M4Rf12VYb9stFc|3mmY8CRLdjiBi5Lwz zE8m*^`D@J>u!tIthN-A1098?7qIFN#esA*rNcR5VyRZB_cHGpWGTcym-6UAOnZmvo zid3&Oy44ZADY_J9@?LcZx&&LXKH>73GwgmJuIUEN0k(fL6WLFq%r{Z4Un1iH$aCVFJ%^D%YF1cS z)-p_28f>wKtlGyWI&2~|UcojG5V-2e`o(xD!PZA)aS24+(gH%q7QpDsPrGBNn0cBB zht@;KLC|XRugu0^j9jL zRO&OS%_zw|Km59tYWF8QlkO`p@d>on%Zl zZ#Z&*oHX~Qm76@-nu3IQdllm=qs8b*ml9_-YDVIZ5OQ*xk@CwZwL>P}&e+!!&s~E& zs*~tWsjb;4+}09aH!Yvmai>C4F!vLaXsGoQXJt%`jBp+p=k;^`I}y!H9J6RJi66h; z!y&?UtUTRu8YMEMEb4r)Pfpd-arV(9ENf95)**apwfa>oWt%qh_|m;^xAVkRq_^PI z|2uP~Jv~$};G0cy*$?>6YZ1Un7u>uVu^Cf$i9EgLwiUP6j%QCYbM5#zJPqB?F^IW#;%3wsaSY}CJ}=@_jGpBiEHL6 z03TG&*YY9(E%!BKd;P>@vMr0!+`K`)W}x{5UU-8E5he{~<^CL9Q*l&Se}Xg9iRwe_ zZW@1K+Fv)BG1+40F>at!^-=I(=hw6{cI25u!4A4`fu}oqh>;d2^9idFoZ zRt$p#o19k;b1|aSdFPp!W|3BmM+q!Cl$z%M`P>C891!?J=QLrIco3rWut0MMmO5G> zGGHxQ&cX-|n|MiR)SB)Jee_T;tdSVtq?ZR!d-G#sYGnKcwyp}Bd|~AxFk2si;sB18 z4we$=Va?cSwIm4;bQB>Iw?zr$KWyYMzr&%-r-hqxSK_$X%`b8!KS(n|7Fti$sd)#=Y(L=vb7ZRr#yo!aLrcRc@Wx%?vc{&(NkkR zDAW_BbwK<3oahI&G%tzSj?Xt_{fV`uAi{>1+7nb&X$dhW8iHH|RwBW$%PpEBlNd;A zVI>?`C-aoznR|n^C-t^EY8Vhu@uRFHQn1v)QGr7QcAL@`qd+)t7Sl3dSvL0i`a083 z>dUroUn8#dK0b)v&>}_l-vE@We}-JdOb@0m&#}=^Sc;k>WCt6LdLcXi0m%Gc^*xEH z2c!kYGOx4)Bolw8W9zm@{7Spw_0~n*<`xX8vdokeo-HEE04SrD{DdbhioP>_ltW}X zD0}aujnjSCKG`hhc5^S5JX=U7lx<)-!ur;PR4O3vnVr2jm%ijUa$~MdtjADVEvQ@z z=B^$-rH!~q%&s;+b(&0O++!LeU(vTRCwkg+BIaZBKZ6LYROlz%7W98RL{eTz;EvQt zrLA{^6dH@Pi4R{jx&v+jL=(Ma-D+8eO9Ba)I%JT2iH{e*01Ajn=)3x zp1OnZJ|%{;cN{yKce~9zOm(Cs7)|W+iBfQEO@E?Ns_l8o0UOy-FpG4+M|9S9jDScQ z5JJI`P*Dja;8+Xzn_yFqf7V0F z5$gd}J^YGI)j@<<0A&@NM5p5cvlq*i-5Cg0Q$Sg;z6@3)V1{mg4t(}zEZZ!>YXGGc z9A9dj7+)g=9NOyeGLY|{a%%H54a_^)IUz@9O#(BeHNg0}Sy4bT-RO&m!@-Bi5KfF8V>=IO7V zI4&stX10qn2DNruP4j0fGTdzW7B)R=)O*r4(tFwjZHcPOYPv;hl7o(W_ylt_Qk>Et*Bo5)W`3<&5~UxNbHi99hTuOyZWc#e+Wdnk-U)@^iT8V7 zTF_*48)h871mx_=V)Zvv0>HzHnBG^^d^*rGM_0O3ZH@xyg$;~P2JqibsLk}OxA738^x*S{Sx>_2}MD1o$%g=;43h=No(N)X`-ORa+42LM_mB3H_ohP3S`m<%&iO4y2MnS1wG&#w9PCQi;W?_LV z{cu03=W`3`jbkhFj=d8{2V|+2sQ5*qB9cBNCh(uj5Ch2yP>PLT(2G3w0RsOaA|tT! zzn>G?JjkNO^Ikn}$%hmjM$z{2)gWA~bH7umNCCPZ*=g!pVUFo@AWj-bU$vCTfi9Lp zGfPE!xN6`ltO(DQ9FTKtL2wietMi&}tJF)Bs{&kc@-{W(cEv}->i2}Z{*Mc3c9n&y zJZX$na->NncigAT=M+4dl97(_Y&#I$@Xpp{*{( zpvVdlq&CQM&tvV*n*l?mOzH2|BSyP3)yW8;vPpCo3+ulItLA z0-O=>y2dzb4Y|rOHoOVYVPJRwP7ip^zobCgkcF}zy9+!#j~2QH$Qq#K)thv%JJIp1{G%Thk|Kze zIo&qp!@+I=Mf4EWq;%Bc8r4emf=XU4+Lb!aVZ(-F`-7>*WANb@d91>T`1q)p3w@=SLY$;)H`OaV9nU~(>yI`2T{A9e1=EVgb=UBrqY zX3rbsCqCHCjJR*00tDAGmRA+-tQa@Q^y|7Sl6%>@hGS53)u#~)!!n&zQ68{Oyp;LHh-K4;pwj*};WYn|VY4_l3B5^lDxk7U-4 z7Bq0`BsR4YGhbX;Ps?NPOb5e!0z8P-J_F-p@c>t=o@gHiEa}fIV`hgzPj=*U z7GQ6{wr)?eb>@&~?T=dm2f5Z7KKoY_(|ZT6Wtl3dI!6w8q0;CY>_6g9&TSd}VBFcV zq1P3i2%}RrCQO;ttK?+V(Mi^a}lMtUU4%qy+ z<~>{VtHX+$=iaeNQGEwG2I8rclFPXDbPaI)*~_^nHSQrlqG%J;*5r;=S{BH^`@iOqD*yv~eo|sgqg_ zML*-M`uB-e-fv*UE70H@)}Ua5UElN$fnB;cFvd1)04P8Usz)jcS>H}e*p?*SL72#F zq=6e8Nl*l_R!5|x+#5>2)kXbHJF!CiffzVZz{Dz)JgHF{FlG~Q_kV=(UI_-|NN0EXrmg#FmZ*%*@#%`gok2VNl|;Y2i7iL)T(M6%e1hg@31yyT#oc$<06oGti%@ z%E!r|)E&Bd;d4QrAFa*`<<|1|&-i2AIR;BPg7|S6XmRE+l=dDIFsNRkqSv zYRVlb_bVs0xeTTstkPv}Lv~zAfzALqe(GjKQ)tf5{i6ih9X@_GNVFpY1SQzFBzHw^ zl?+I*f@e*jK^+Ij1`h2Zv~R&+mrfLc%4s$^M|33=fJEeDX-Blz#)(EjvZp0M5aazH z5=FF;dJ>~ENcyb&6(F8jp~G=tokjL{SoaBEdBFOiRs5pczp~lvY?SihJ-aAeW!q0! zBm;)N29zJ%cuI@P;%cZXok!ur;j2jRQ{2V|}ue*VvR)H98=o<`4-yu4SXD)agVz zMdb4x;5h#Syyf1`^#9zo09q_hp=i%6`|6aAcd`mQZm|HW0y^RRUl*X<&*u7UkZJx2 z=>&zwxeEHE>QJh9(A4E5vI66>vvtL%=F9^;5w7nL96)mZ%sxi%U}lMJP&=*QJjLOo zS@dE&CzPb&Efrd-CpO3Rn30LxWng_s24;Gq<+c=dzD@mmc+?R(qFn{-;jB7MDjUei z3+T;HXib{Ym3m8n#ziTtRwu@wbud-jinh#F9Y9CrHG6*pN_Uotv~bd~0TzrFsQC$S zn82RuzZH(^8WICwBHKJ=M6G&YcYrSU@*8DD0>G16__~T1iN1K_IjI64{@2d}+vU6H zZkJ55sol%y5gMn`vR)>ouVZ*BQH zao(4641P2JJn%d!Vr+C6J>agS^*;3GuGeUjmLypjXbhX6GNj6BQky-BuvfO+_Os6X zX+`g2?*mIGX*r!;;OstvoziFXJ%fQ}HhX%5<{cpgK;k{MN*!$IY9MMad`^`wbR)5E z;Qn2^9{xaM<5FFr;p&om?6aKvZo* z$kY~%U3v)-57Gh~f?{oohBzYykq{4{Hw#%0{|LldLC+;dS|-5;MtNY|2w0rG%Smif zw;MoO%KmlssBHB#AVRz{m034|hoxW+>xM9~)k|}0GOyPatrH23-F3v8V|ZxAY20Ky z&;5*xoNq8B@ikc`EWuh%IH2;WjU_eKAeVj^zUq?(78UyUtVoj3;xG+a07+RzHK^1| z7`vC09((imS1CFUFOfMbp&zc@&S``W&YMvg?S>nzj=jVFww z&c72?<-vq;+e(qZncHAKB+&NkRsLGzyo@rVeS;h<|JxHNZ-K3&R7azguhNa()Ot*+>Q)= z`qNJuUy)E}~ z5%H|nQLT>wp|rIPR%%)Ytm6x(xNTcDY6n8Dm1tq3!3yFf5?ohEL}G0y%ZBYr3>S=h zMV*TBwg&Y+Jt`~L3QygJKhSX>=)<3(i*M7fvqKPH#i-<#!?p}RaT=eyP`I#W=fg8SokXW*i*>weNNBBVJL|WXKQZAyv=Y;m*5w7c(eM&wkzNIew@v3H%xrZ%#6|r zsGL?ZmdfU73}PpUlUrLjPA%S*GIdjQpv=v4y5HI+z54cxzRv1;PO2F9Q(n2Aah9fP z5|@&Ui!$g|B+8L88B-y&8mYwALkAlj*W~dT64oEB7riZO ze;r&V>4t^06Umo1MdY=v$OBs&@h7hJ;wF!lEJ?!zDse2KZ*z(hN|^gBqXN$cozQJI zeAXW{uGpLU&nG@*emXC-mtTY^U9V6l?phnL8cgHkIL=O!rX=w*m1WcLWdM4Ep2C!- zV1tR3lmwTd{lBJ>yO4;ZziXdSa*01Z6cGP>eFFD+`WIq~hDh<6?9B`DTc^FyIKv5W zU<;%{b4&>tFg&^I;ODK~Y2*y{BNVL-J~tCxj|^Kkg7XE&?Cdwatng4lcyGYqpLa?q zss@Da5W2U-pp}j>>44tYnLQa8T%r&lNq{0ZhYS?L!1YRPAd!+2?PyBiMS7-Ri9hM0!1k9Mje&xp=3-{YO52ycx?%(lKkVTVo)1i^0TY{>@Y zQ!_$S9;+`J{+7%HU&jVxTBq(fQ(Nd*)Q9~O-{k922`tpyXhP&}?z z9~3)a2qJhW&=%^Xr9O$J=^Nyy@M+ihcj-Y+oUdvw0~|X*ET?wSTqNG}+`ht2`F{@5 ziYZ^7&d-RdEi;H3Tn!i^7TDi~bJCvsn5rNyJ&7&!5CtsjuuTQ1?V!2y0y>h?ZUENa z=GSoE4Cs+yM)-V2)a^k2t1mOA7=&Zi+w1wvV?Lgz%;dV1SpH!8Kr5lpD`*X}{!2RQ zHLhf3Wm`w}DqT}8d`Hb;wFQ#w2hH&q$PfmioY+(2^9JE#roI9q9#?=ihyho^Ix(H#c|8Zw zjA2k|1f&wJ-%x4(hgbTPtAD9!k9j>Sf8C3FP;0X+_YM&2?**_dpM%QIFl;a7a==B26{Z$O#*_SqEL1sn4)R$OWL3_>qhnlzPCLw&O(wS>(Wr?O}Z7 z&3_xU{VSgNCRXD?gLWdG)9pXZogC>g3CS6(xSy=T#ucV+WAfH zEzifLXFFl0GpX0k#EAye8f&OHpl5t=h!o|X-FIpcHf#BUiB#@oSWV0=&<~{!0w)nT zL(A}?h}P>y_TA2&YsB9ygKmO{!hD!UlcVizhU44;ZhmSo9#EJ>0mWH*+C%91tfShDYA zUq-f(HN#-W%(;K3@AJE!>v7G0&dhbrx$pb^e!n)6hy$qq{V}c8`bT}eR<4``IY4hd zf+{b*a>9#5-aq=vG2uPDsj4yk;@<1;GY|B?DsOLTVVF!!%fE!9-!=^lI+uG(LGJ!8 zHBxfIDTLGU`|W(o!sNZbe9lCy6%Pkv>-QzRL9692AiLQ-U|AsWxui6HQ7~d*+`S7e z{4K)fR*-p;cY9NlV3hWU8qGR;?Q@#OJCw-(n)dMFyZd{t8Le8O;A4p-P5Gol5N#w# z5|r3NZ!ft;WoaH)UU2MHNs0=7{Zp`9_KTJC; ztkmDmEo?u1c0zXYuj{3U>vDf-qIz3r9_;*W6`@cXHtx<=t{yy1xD4rUbN1TsQEddy z42{ie?Qlj-FY;EZxRH8S=V|!)5bG5Cq3X3l*&eq)+T@K-dkdW;X=bl@JfweWcj@8X z=o3lXZ5aM(^L<7oyJFSQ#C_cdMDysTa-{DJ#X1?*% zZzp|vhsp=jn@2;1&>V9iD{QS&0olq40h3pPyrLbM^JwZ{cVL2opcGK6?}Q@9p1N4g z?Oi#z|S3!rEq zc4(_tb;Q??p=2-C^mifp{t%B+!;Ds8O6NMbU_esbL&rgw*TFK6l2JKM2jpoSx(kFS z`yfSv3bxZBI_{z|M`|Fnzq3Jr_txm^RL9*jWh^Rc*4MPH>P4jD0CgI-tfe@J37dpn z3c+wv0<#o2jv56-D_mO-#8|G)?eBbTxfittVnicN+9hwiqn&S?15N<{u%Hj*u+-4v zyIR_?I;-Brlj)^fsCEoRO59JZTCGCuzpg!e?bChmlx+)?&M+0CdL|1rxcxh3mfzJ& zzhK-CzZo#LT^nRZIpY&`K=-~#`V&;!E|{d6m&^W8yt9G{A{7L5be zhu5ZjEJG^V8;SD19$7EcKLEmS8t7pk`S-qY7bYKxm-VsL%vWjuc$XY(#*KQcXcvj< z1O~xQ3HI&MwX_hoV}X}IMJ+t>Rbm)C4tfN7Uud9TM6Lu(9TZLPewlrbs}IKeC95%( ze+Rig7^2&N+xHn7;2H-$=|yy$;3Te%1l`vQlrO$u?G|UK_0#v|B&( zd!ALEcoW7BRJ;su)7^#EV00;98it-QpaHshYqGL|dU4{WwPcQOd1vvQ#TG^KjY-|_ zlTA?(623-zr4l25&-+jNiDQy^-qVgY3!$mY=m@-wLyA^~#BR1^PC$ZBlxg%=W@QP+ zRQ^*&@47yi%fHjYoo*;`N?0?F5(!V}rq8Hqel`*Ic7V@rO5J@_N7*RMM{UX&PQ}lh zk36_gJX`f8ioZ@h+~g%IQvl=cn+;SE6$^<7Ps)6X3SaU4vwnVuXHWBnFmM?GsvMKx z4?`h1mQ3VNuAcIDBZKl-oR3p#Qk|@EUXSjQfTY)fs%HJ0HiR%X&K8MLy|#XMR$V8W zmXp)!9`mv_NFd!0IF!*b1{}MPC2~qr$21-TDcXGwDCTdH-({U;aIF{ID_a3FzTuk~ z*`-}z+l{T*C4Q{cbkJSEaMnC1seS}p!ZtuP4r)hWrQZq8 z2`^+ss^Ahvhuy>?i!nx|D1G<}?poeKc62a|SIvnG9^C3R>e(%0m`R(ge#|aj!Xc`l zKF9M=TgQksm!^CV6_o-yhronE7Z?iBrbC2%rI~kCs1O>|d?@|Y@}i~%`e@bzqoC{+ z{7@SBZk68;3Xz}2s+L3sw{8)auQsgqu-aPNQyV6T2P?M;+e=Qt44ZTJ`cKpfF&}=Y zxNfK?fEqWubIT8B(>+4^xw$ zt&$7KfgbclMP@&`%R8lKTLEWIlffMoKft{W9D`oa^<0sZ5Q~6u7isXU1@FQ*xP@4NvO66PH*>$^S-IftqE;^ z-3OS)-5*xXkN;sXqZEFA3WJ~ju6)Pj!lLNi@6emzKYJXX{A|bP$GMn)8Zixn z%DQiqH-k7aSfl{HZC&4 zQaURfk_~?@CI?=X{L~dWakr0(?mwWCDa55cd-Z~o=q_+2i*WF+;7hf#fp3HJH`WkO z&qCg(nLd}NL3~dwbSk+&VU?vu!9Sc|4S&9Eo=`fmDdKBq2UiIEC7B%4bU37}|H^Be z7E{!yUibsM=xpmzcPV`ZNbKWBGhwt8ug0C7%Xg=Id_xU+{ zSZLE!BWwP64{Gya1b^t;V3(1T`LWxuz)Z`uL2;jY={MYm2dbeMSn<@a@WvEBnknV| zA4yGC)q63b8ZBX^uRk8->UN}W>ENfI1}iAmg>&EKx!y8j%7;HnIP+UcyqCp`BqDMJ zQoK3eRCaZ-K(r9p)nYmlKgYL$iug5}$Y2Aql!x~q4&x{uVrAlGt@fG?H6v=-F6USP zpBW|Uzsx+s4cdOF0$eh?4}D8v*#Z5GHt_RTUh00wi#7MZ9A|4XxFR>XrC-i*ww)l` zxaF1<7Yqa)H6qlRZ{4kL=1*#%PVgeL#8`#>p^U6NKwSw0a z!iioXwK5NCw(g84q5asI@SYz`Ye$~%m?wNnyjQM3ooWM0B)o6Wo0=BAZIeH$mCbGM z9MHb+G@!E8dt+|v)iy2f(6Ca?w+$I3=5@c@n-%jiB#`CxLN*|GFN^pBquaFBAZ=bA zpuFs|of7XzoP{Gs{N0VlF2w|w<~6{}`vHVAtS**s8>NL4XS+Y}`4fTXn~Ug&IsAqD zk5YLq?>A`5=^DWbB#dv5UT}`6n0jpR0U~Cm%_da(7Mh7-xFUX*&A6ZBsgJH^v(9_eJK&2NOx^T!=ta zpOkT`o$=GpzAM)nvdI`3kR=bvDS^0T;FJljb62f_{tp;ud+t6Qt>OKG+zvzFUhnxg zSb_qR**UNV2{VaLA@V zTsecW56_Kz=^nlDri%F&Kx1hU;?WElsK@Z`2OOxpvXABXNeApUc>mqP!*Y)>%TxE& z@hM-NqsiQPkJL`iG28}~2d88XR&>NbN9Restw6RElxaPq6JB216m?(YTpzf&_v&1q zKy$}N+8e^*D&P>)9=5=sy9**b>0y;EFvh386EmmaOz$OGXSKNttiMN5rR9cnY_t5YNUR=<6UO>W?6TY!is z%NzOzdQS|H2~T^0e5&FO)F1qgif-}nrW4gmS=IhLk11#P1v~IYmW_c$#x1B+s}Cp> z74-dlt9I8qUWnXW1sSSZX8X{T4OokdM4E)wQ_$(7HT7i;iaMDx&6*DINB2^lYZy+> z%u}GXJ)D!;Q7{tBUBj4esL7Ylwa7x`q)Lu6I~Wa^e3~#lTSS8_#pa4n+<+m$rZ=8`C6dtdpgbYKLB9^@Nu14*57Est!n*E7v6_Sjh9egwxE0a z0U=|`zlH{!c##dUM#Yhzl>MZM$R2$Fh^y=Jj0H}Nk19~V4tQ$kKTD*FoC8<6Y!g}J zAHerqXfEArAl~5L#uo)=9Li1Qg|62tKB$dQp!M`WsU4v}wJ*-SNe5Mo4z@UKPip6)8&@{o5b+Z0cvB22WiAo`+{2(i`6Y zNGm*P1;|>_p!J8wn-FM#k(-M&v~)hxPZ?kE`AWoN+4Yu*)uowRI3)>_q;3;tOpHja z-Tm7gAqFSSrjq5oPq}ntj;(7MGO<%|-ws_uvBr>wXLgb27VKmuJYso0Af zCB`4&tF~&AHt0aI$hQNu^P61BQ%iL0NgMb(h>*ei&r(*9-9Ee6aASh?8|o8j!BjzIbCtqCB57M|L26uh!uC4963@LGU}{{cY_1m(DmKe{xkvJlQob3SGLD7B6c1W~Y$ z{q&X2Y2cQl3xHz*+^O&#lnA^Yz_Z&EVzW(b9u&6PstG_bZw;jnIPHghJ;!-#pWq)J zV`5@T%S>ng1mitHeB9bMSNaI!)qVUte8s(qdH#fPfu1ERX^)VX%V3dDRnsYlx3+NI z51AhUB3L@T8iHhvE0T7q(A4(6i zsjquiz-UIkcQB^th}J&H9P^K3O<-U998>xa#vvTl^&-Rwf*b|r@pRjqmsZir$9F*WFScG zRbZm`dhzt8|AL8BysQOR3n)eQy-4Ue-$1v8JCWMhmYof2t|3 zuRs`z+DEVm26Q*l@xq6?fG_@Py;lsS6%_~mY8AwL#*-RDo-k`IgOZO{V5BS(Aw5qw zP1^5ZWNroqz1X^gqRf`~!dEFhmq<2n0J;D>l)t1Y{IV^9;n84XU_1GPouyn>+$y`+Z7J>puc_fVTmM7DDZ$(D6vm=ANDe8?_^-2K9X-Gm%4yz|vDO@Ho=|9dib} z3*CaYwGIQ`?cxFz%_9*rE$o5w;8lRCGJOFJt{nVJhAG_Oy|8y%^2n4RC6|j-FmwA_G4f!6t)V$TCI3 z%KM&@hM8|aJ7OpI2lyp9)s+KoqIeXZlHGzY{w;lA{rqxB>V`K)jtm*GdeIBFzALn6^A$-S`wK%L|t*@ zcD=YC0*l+7Um)o;#ZFrDv2=0mE&pzh7?|k{>m zA35;mD7%!8N0jIzI%XH;F{p6cnBijwMj5nT_zo(Bx5*%d*WTb8{c?)~mVRk}>s$1p z{@VZnBb&3eI_lQXFK(6{$iC$YxQ9k2-SZ0%q{AZ3Gf^2#s85@CMM2;-j36P@Do}mL z?aFSfwwX^h*p2K^Vs-%~8B84h=nkFK*<5kiFS~!ioHHJC!XlJyOyiods@hYbJ`-P%0(BL8sQrZCn zA@68}l$C4kWMf77aE%uuEQIdk{(AL0NOR#Fl<}58zx$r-onA~}M~*)RS(z-FBf_dl z6cS@co;R+zueV;YiJ8iqAdf7RewM)h>7QUOK|5^kum7M`VDqyh(tBz0oMGySnTzU6%Bpn&B z`vLaSK~`U$A_kNckErPQgKg%gu;4|T%h?5xgYG<3>H33)^$ps>l%)^C+-C*}b1g~q ziltU@x?3te`6|!QZ(nr#<&7EVn(lX>*Yl zFTFVao6|_u_br`9l?oSb+-`_?ePIVHqThai7Ddp|n6Eu8OjFV29%EYD+;M%&h~^Z| zwIM5w>DU-~!*L&j=_H*x@t&{z-+zSArh-?$#R*q_0O#w(xLs?M>m)@k>>Pd)6Zf9% zxZOziHv8FIV*T;tVBz8xUAmGOb!Cy*FwJqg>NV_K6yNMN;{9#^gt+_JO~*6GhI};~ zFrj)$-&cBiyMR)UEJL%yRhv0+YR+~_&7gpKTJ5Up4sEE|$_#uOyQvl-=HZmLb2IKQ?H$-7l_|ovV)HHJ_i+G77|Ejl{E?Bs~lvJ!X^M66M zNw9*f{Q>?c!%cg=H+5T(dUIlY@!*>g|5D?F8FX6_!B3LVaSBd@DBi$(WTNS_Xd|V! z?)j{gl-!%zPu^pOOg^U0v-Fj)xQ7=XZyN_BKz3(ChXkn&B}X8&RX;~T&DQEB>d44i zt2y<2Mc6UQyWcc#McgecSm`_ypOCzLW`;o8lz4q=Zcr>hYpkGa}+%@(;T0N!AqgDlf6fw`-&BP!#TmPfGB4Q|vvWMLiH zdF4r*+zfI~lEKR8C@|+%qv4-QtmHDjz_0kTIY~;5+^C<$RB|1)Vw5Tbj-7Y}Eo1+o z!=>Ph$#)r*=|ql!i$h!VH7>QY@gh^g4Ej3x zMC{*p*RSC%^$q9#-lc?E%|B0y3_YyOU<-S>sr^WHwPib63A_+={+niDbYmMVngoA8 z*e}7HvT1XAL_AJW2If6;Z{slRdxvsH6oh;QmdOd=D*_Hiyd&+>O46UZzt`I~TII+l z^$sW);Cru9@qa1U&$acii=`+Dq*#mH*|w&HkKe59dZJlND;xm#a7;N%3?HaawA86*n)3!f9GOvx<@+CP`aoT&1u9FI1|jnMPq$h$ws7li z(x^7pBfLwCo-8Cfrkg76b!B}zVzQ>(dwy@Dv6Qk`7*4@j_Pqy*Ti!OsbXF>!U2ab! zX{!SncEeOSaBl<-GP!AO9mV$2lyg!+S@Ey|!Yw1UnA6_m!BALPAoYW!-V5(!hK^rd z*=dec!65`Kwkw3shIf??El{s`Ji3qzfb0=14@7w?e1;&E<~>3+8E|Al$`AiUASAJu zcBz-L`WG|hQa$r;!|Y~hpot856~P9`Q|EN05xdfGi5f@LZ5gG#l)Vc|gYlfCJ&~{b zFC4+{G^N)MK@^t}!iO2gU(8Y8rF&U24{ta;;=Lw0sBFj5wgnEDH!)TIt?{*caTE`T zjo&9I_>Yh8)36+)b6=tv3~?-3J_5@W`OD^(dL}j9S8|`6QX6W%$9K*8q5InLn}Z?M zk5!Y(Zj8ueCY+Xmy@vgC^y{->Ow1NQBM%cYO@_|dV@Bx~H=i1}bhq{w-zXm(JFP{; zRCM5PHG;rB=pO9U*+6lzL@k3?S?SqV=gg<)b{WorN{;A{={A`_dIYqe+Q^`-XoZ0& zx8tq#5f89e(u897c{(USFS;e?0n-{?SF9V94X=?!h!{tt`{L*KtUsa@oC_Kw)yaIQ zkKjM9r`@4;m+FoiMO_OsM$jZjP8`5z%4Q&foR$n|em$s39FodosG?B=pA`)F)|yPE ztANyD)C=@!MEdD02gvk`3`#F3g_3cDhrAjcl}E*0687PBwz`V;(Lx<}$HR|c>==!5 zmbt>eP&5u&1)hormch}OoM`HqCupzNkqO4Oe}r{j^e5g5mNvbpygZ*8crLI5(iE2K zvI$c_y(a=UI_^7c!pppg4<5`?L{+A4<1{N5+6U0J%EiZSd2ZvKq&-|ZEQm<4 zOL-taLG~B(hBDKSC@tPQ{X?iop!gE{C(2c!@;dP)*8pC4djxcG7~el!RDC>GJ8M4% zQrZtH*mM85lYUU%Z69hL19!kzwoDpsubwr>D;rE@Z=w@<`akJ;Q}geE`aP_GONHr; zY}EWcu~0KnZyJ6Lcs)%4nQVc3AaP1#EifapUh;SHMs=-0JGt!G6hk%zJ@hwcsg(0~ zHcDp|+D23}G+5w^2_C!F@N^PXwAQ>n@T*Wm@)2*~Jidb-5ze13zgMOuJh$={C{|Jd z{~}lp5`|3?Chv%C1aOJp{M#Ix=NePZFhs@sFpB;{AG&o3g!`c zcOIUM&POv!!4_1IIl3iM+ot|B);_R(4)TLV)&UuH7&yApNR)0Z?klPLV*oO zomqe_sNBOR9$0Dnw;4*7u`CV8(Pa<-) zR-B_Yq|eZd8EY{b}B?}C90^J6DgiCCZNo|@ci=DT41o$&9c$DO^#bT_dM?F&%9tXK!0 zRf-B7+=>jQSUb;D>v0@w=a`hdOIa9f69{StN_bQ;X1YJVdN9ikw!qWWoj|Wo&=#&V zFdk~0QJo{FY+8P&bT;)~92b6HeqS@R&IiQj-D69A5;Vf`pP8{f18N1o+>N`A1NFO5 zQI{eWD$}|NZn-$W9j^QFXG?Z;=P-hzxBQj;H_InPpP7i6ZcR7rX6|WqHUujKt};9z z^>#xx=wa!91ojQkkYEivrd*!ua?i4*7EZyx)6$F%Ys0j$C4SqvD9kTuB|hiyb_K6Z z4~AN$-WKLAI44m?Y-|LT;?Ibvd2;Z5+2JKHh)64E3prb!o<8{c8P3z0%)hL;@gRqA zHRa-GyWtRqHDG4KkW=U%Vz%S%F0#;UJ3t3Xo#3;C9pXVqUjp|HagbaBL0x24uHry( zkGxK~sAy0k%wn(aQIb{|jM5Yj)EVMeK#Si#@7184q; zf!{Wdr=l9yqny}NpYf(4m}WO?H_7FGu{F=9YL(+2u%j=)7w73~QASYOu=3n?&FnUx zr1qnGlzj)~1A5P&I|iI2k-^O|&?=hoO-y{u@6>)F^uqU!iq<(`MUM~Jhm4j=0f&7r z{>w8VMQum!KD|%L{Rc%UF4XhZZrGPxHdoXw4_99wXS%iw?v>I(Crb}B$aEEeSJ%3# zhwAB0%+y#^w3&mU>va?fgtEDvFYW2z;1+BH&!5V{F8|RhgkwKsr86xJ+TJwLxm$MD zEiLl>4u{1d?uFe_k0u?Xz87@V$YGC@{R^@;Z}DFK?_I96zLP1u&rz27L=7>w^gf&; z2LF9?R||PDKWG3kO#EqJyUX~OR_S9ZkIlb8BaS^6;C-Kz`j99m{gTfuOkH!dpZSNME{7g{>^%ZK~Z-UzY~>q zi1{lx`w1x49W~pvS%5v=0 zoBK2KFck3>SpPH+YLUP{e@NaP z@mIj;evrd93qvf0rmM-dwB-ktdXI@2i1gbm+nNIAWqwe4hk20xc9aiXuTAG$!4=m9 zHiI{__)FXg_MRu>E}#}j_{9a0Eo79dhNCX{_9W!1ao8`e&GAyIcGd9NA;IQ18PX{( zR{;UR;6Aioo^4=#2eC$pc7VJ^d}RMDRy2A}PuwrDfMCkW`>m~?1EJ(ZqI1?!H+sS8 z;|z4jvM&`3s_$%S+@nn~C(SaVgZ${w#JI`(iM^>U5y71&V`<ZLm} zs?351CV>bOIv=zq0*pmGrZ=-ifzxjZgFUwIe;FTI%toykjTUmQEZfxl&g_(l<5sR% z!65tCrHkQ12c`me8BT(gpi$sec_RJn)0qwF5TX;}`em~erK~jRK3j@eh&5XLDfO0Q*ppYpXp?=d_5B~!h~&s!jXT~ zu9=3T9n_LQ>BFjnPa2a@u|P+Y{UAqU)5klE+8-h(LDSu`6=*FR;d2oTfJ~!^Pr~e= zysL1ZjIRdk;4#);Is=`#tSZ263$n>=z)O7Wnc2gcfx@`Qs&^3k$SDAn#52iiXRMTu zj=1RWA!Y^Zmk&-AdI{e-1K7yGZLG9xa|cY)M4pGj7+DmecM5KiKW7|}6rD6XXMOD* zxff)R0N;aT>n7eJF?2wrh+V(dA1Ypf0t18tOaB4Td(QJF%ukp`#Zm9K!7(CLp049@!ihBXZIySAWh|{j=__7m_Zd<_D0_=Tyq2yl@ z?xK(d*=(Pg7Jf^u_>9f=Fz_x_3A0;%0fwt7$qyCg> z?{}9?0d3(!^(|GoIG(J9uN$hrxHC~N9vRQx=fQ-Urn|EAnRiq_-#Y(&z_)AeJ$vhj zb8Koxy;kuLjj&@hF4mI;jkjjdzc!9}Ub}j0PgeYyIDUtu)%NUxLk;&}?8kU*e7SJK zKPB|@1}9AxF+lQXUrOhY)&ITqy!V(q$>GcNmFta%m|i?x^GWCC`I{UOrb}0|6>pzi zQ({lbVu@4jJFa_R;a+Y0!M`V>;cSlqGVeS`zh(eetZ^RJd~?G~Gsc~Y+enYfoIQW>euS$@Z}*oOXef ze%!gmROT=A5+M;%zI>VGl5d}dV8sEo+bZ6N_NMC1|2G@V<@&

c|Y?<0fg+2mJ#&41GOBs5CB7}yi7b)NlKwaI7L^1-I-*0~YO z{l7Dx|7UT#9v!L+JrKO&Tg>{Qllcj0nK?Z=Fbe&W$b8!h>n|5 zxrR7FJqcw}u8co&t~ww(uHIUIjSsJ`JT~A==;Rj_k@VI#KBXOJv)m*+{8?*`$C;zA3_>(CbOCRlxmO)lvONrPrCJD>~xZsYT?J z@gEt>zL!SZ7glqub$Rb<)6gdEo>!VzXAeASmBv|s@3NGoX7j4L9Tn-g!8VcWXfyRS zRjwdo;^JBNJn~#T(@B+dH=hhXzP!Rr{eeDiVU4!Mf=7WU8y~yO<22(fg__q@56XWQ zDWm zIO{rBlX*PI+u>Gi!u*cbkwZyGJ}*`}!TMPP2jD%{-W%9EYvQ@5L%n(y-N~Gi+3Q)w z92jU#(2VQWu>ahhTgHwwrAp6T-ID)4I89B*e&_nQO*uc+^5daKlN z13QZtsg&4rDLkv~{z9_V&TWZtPPu>i6$%T?${n%<-JPXjCiOF8X*$~avH8^m*n7w7 z9PVq2NzjO(yG@hT%T&_`FLO<^-D}&SvleE4hS~wsdEG9VUr1Jh7{fn!ow|(IFKJB^ z+-md_La5Z%0YU%W3iA|iBYiTDMfy**IR)apx$#AY0G)3*ACsqtIGM4hygPO_C3ix4 z%zqGzN4xhQs7{p94QefP{dGbwUUdt~o7rWL4{gkkGseA?Vv8cY>AY+48AGa5qf|zj z8s5HL#vAeSFO7Ej!j|rr#t}YGllX`fho{=}p5hYRta-FkUd6Mu_yt;H@Ak(+snQJY z!>^r>nNe!ZH5_kKwx6@-lk#e!u;jB&Egh7$%NQI-YQ9X%o6_tHu`6E9)n5&`mTs

HmHZ>db0Dc*=9B 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 literal 0 HcmV?d00001 diff --git a/helper/db_services-mongo.yaml b/helper/db_services-mongo.yaml index 471c228..3359b1f 100644 --- a/helper/db_services-mongo.yaml +++ b/helper/db_services-mongo.yaml @@ -369,4 +369,3 @@ items: app.kubernetes.io/name: mongodb statefulset.kubernetes.io/pod-name: mongodb-2 kind: List - diff --git a/helper/db_services.yaml b/helper/db_services.yaml index b27261f..3c746a4 100644 --- a/helper/db_services.yaml +++ b/helper/db_services.yaml @@ -112,7 +112,7 @@ items: name: dshm - mountPath: /bitnami/postgresql name: data - restartPolicy: Always + restartPolicy: Always securityContext: fsGroup: 1001 volumes: @@ -226,7 +226,7 @@ items: name: datadir - mountPath: /bitnami/scripts name: common-scripts - restartPolicy: Always + restartPolicy: Always securityContext: fsGroup: 1001 volumes: @@ -250,13 +250,13 @@ items: metadata: labels: app: staging-rabbitmq - spec: + spec: containers: - env: - name: RABBITMQ_DEFAULT_USER value: berrybytes - name: RABBITMQ_DEFAULT_PASS - valueFrom: + valueFrom: secretKeyRef: key: rabbitmq-password name: staging-db @@ -345,7 +345,7 @@ items: - ReadWriteOnce resources: requests: - storage: 1Gi + storage: 1Gi - apiVersion: v1 data: ping-mongodb.sh: | @@ -370,4 +370,4 @@ items: kind: ConfigMap metadata: name: staging-mongodb-common-scripts - namespace: 01cloud-staging \ No newline at end of file + namespace: 01cloud-staging diff --git a/helper/host.sh b/helper/host.sh index 9a1f7cb..dc31025 100644 --- a/helper/host.sh +++ b/helper/host.sh @@ -1,35 +1,37 @@ -network=`kubectl --kubeconfig $KUBECONFIG get svc ingress-nginx-controller -n ingress-nginx -o=jsonpath='{.status.loadBalancer.ingress[0].ip}'` -if [ -z "$network" ] -then - echo "External ip not found" - exit -fi -echo "External IP is :: $network" -host=`cat /etc/hosts | grep "console.staging.01cloud.dev"` -if [ "$1" == "remove" ] -then - if [ -z "$host" ] - then - echo "Hostname not found" - echo "Enter ./01cloud --help for more options" - else - sed "/$host/d" /etc/hosts -i - echo "Hostname removed successfully" - fi +# Get the External IP of the LoadBalancer service +ENVOY_IP=$(kubectl get svc "$LB_SVC_NAME" -n envoy-gateway-system -o=jsonpath='{.status.loadBalancer.ingress[0].ip}') + +if [ -z "$ENVOY_IP" ]; then + echo "Envoy external IP not found yet. Waiting for Envoy to be ready." else - if [ -z "$host" ] - then - if [ $(whoami) == "root" ] - then - echo "Setting up host name" - printf "$network console.staging.01cloud.dev api.staging.01cloud.dev admin.staging.01cloud.dev terminal.staging.01cloud.dev" >> /etc/hosts - sleep 2 - echo "Hostname added successfully" - else - echo "Need sudo permission for running host command" - fi + echo "Envoy External IP is :: $ENVOY_IP" + # Define hostnames to append/remove from /etc/hosts + HTTPROUTE_HOSTS=( + "api.staging.01cloud.dev" + "terminal.staging.01cloud.dev" + "ws-gateway.staging.01cloud.dev" + "admin.staging.01cloud.dev" + "api-gateway.staging.01cloud.dev" + "console.staging.01cloud.dev" + ) + + if [ "${1:-}" == "remove" ]; then + # Remove all hosts from /etc/hosts + for host in "${HTTPROUTE_HOSTS[@]}"; do + if grep -q "[[:space:]]$host[[:space:]]" /etc/hosts; then + sudo sed -i "/[[:space:]]$host[[:space:]]/d" /etc/hosts + echo "Removed $host from /etc/hosts" + fi + done else - echo "Hostname already exist" - echo "$host" + # Construct single line entry with ENVOY_IP + HOSTS_LINE="$ENVOY_IP" + for host in "${HTTPROUTE_HOSTS[@]}"; do + HOSTS_LINE+=" $host" + done + + # Append the new line without removing existing entries + printf "\n%s\n" "$HOSTS_LINE" | sudo tee -a /etc/hosts > /dev/null + echo "Added hosts -> $HOSTS_LINE" fi fi diff --git a/helper/install.sh b/helper/install.sh index 8b632c3..42fcd2c 100644 --- a/helper/install.sh +++ b/helper/install.sh @@ -40,6 +40,7 @@ then echo "Payment Pod status :: $ready, sleeping for 10 seconds..." sleep 10 done + sleep 10 bash seeder/seeder.sh else echo "Need sudo permission to run this command" diff --git a/helper/metrics-server.sh b/helper/metrics-server.sh index cfc54bd..d8be542 100644 --- a/helper/metrics-server.sh +++ b/helper/metrics-server.sh @@ -1,5 +1,5 @@ -# helm install -n metrics-server metrics-server bitnami/metrics-server --create-namespace --set apiService.create=true +# helm install -n metrics-server metrics-server bitnami/metrics-server --create-namespace --set apiService.create=true # sleep 5 # kubectl patch deployment metrics-server -n metrics-server --type=json -p='[{"op": "add", "path": "/spec/template/spec/containers/0/args/-", "value": "--kubelet-insecure-tls" }]' diff --git a/helper/payment-cron.yaml b/helper/payment-cron.yaml index 10a9ebb..f0b8537 100644 --- a/helper/payment-cron.yaml +++ b/helper/payment-cron.yaml @@ -68,4 +68,3 @@ items: kind: List metadata: resourceVersion: "" - \ No newline at end of file diff --git a/helper/pvc_rwo.yaml b/helper/pvc_rwo.yaml index 135f515..e3b9e2b 100644 --- a/helper/pvc_rwo.yaml +++ b/helper/pvc_rwo.yaml @@ -8,4 +8,4 @@ spec: - ReadWriteOnce resources: requests: - storage: 1Gi \ No newline at end of file + storage: 1Gi diff --git a/helper/pvc_rwx.yaml b/helper/pvc_rwx.yaml index 4f5d430..923cf87 100644 --- a/helper/pvc_rwx.yaml +++ b/helper/pvc_rwx.yaml @@ -9,4 +9,4 @@ spec: - ReadWriteMany resources: requests: - storage: 1Gi \ No newline at end of file + storage: 1Gi diff --git a/helper/setup.sh b/helper/setup.sh index 75b8d28..ad5745b 100644 --- a/helper/setup.sh +++ b/helper/setup.sh @@ -1,6 +1,9 @@ +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +GATEWAY_DIR="$SCRIPT_DIR/../gateway" + if [ "$1" != "remote" ] then - bash helper/setup_metallb.sh + bash helper/setup_metallb.sh fi if [ "$2" == "rwx" ] then @@ -13,28 +16,45 @@ fi echo "Installing tekton" kubectl apply --filename https://storage.googleapis.com/tekton-releases/pipeline/previous/v1.4.0/release.yaml sleep 5 -echo "Installing nginx ingress controller" -kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.14.0/deploy/static/provider/cloud/deploy.yaml -while true -do - loadbalancerIP=`kubectl get svc ingress-nginx-controller -n ingress-nginx -o=jsonpath='{.status.loadBalancer.ingress[0].ip}'` - if [ ! -z "$loadbalancerIP" ] - then - break - fi - echo "Loadbalancer IP :: $loadbalancerIP, sleeping for 10 seconds..." - sleep 10 + +echo "Installing Gateway API CRDs..." +kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.1/standard-install.yaml || echo " Warning: Failed to install Gateway API CRDs" + +echo "Installing KrakenD Helm chart..." +{ + helm upgrade --install krakend "$GATEWAY_DIR/krakend-0.1.0.tgz" -n krakend --create-namespace --wait --timeout 10m +} || echo " Warning: KrakenD Helm install timed out, continuing..." + +echo "Installing Envoy Helm chart..." +{ + helm upgrade --install eg oci://docker.io/envoyproxy/gateway-helm --version v1.4.6 -n envoy-gateway-system --create-namespace --wait --timeout 10m --skip-crds +} || echo " Warning: Envoy Helm install timed out, continuing..." + +echo "Applying Gateway resources..." +for f in "$GATEWAY_DIR/gateway.yaml"; do + kubectl apply -f "$f" || echo " Warning: Failed to apply $f" done -while true - do - ready=`kubectl get pod -n ingress-nginx -l app.kubernetes.io/component=controller | grep controller | awk '{print $2}'` - if [ "$ready" == "1/1" ] - then - sleep 10 +# --- Wait for Envoy LoadBalancer service and get External IP (MetalLB) --- +echo "Waiting for Envoy LoadBalancer service to get an external IP..." + +while true; do + LB_SVC_NAME=$(kubectl get svc -n envoy-gateway-system \ + --field-selector spec.type=LoadBalancer \ + -o jsonpath='{.items[0].metadata.name}' 2>/dev/null || echo "") + + if [ -n "$LB_SVC_NAME" ]; then + ENVOY_IP=$(kubectl get svc "$LB_SVC_NAME" -n envoy-gateway-system \ + -o jsonpath='{.status.loadBalancer.ingress[0].ip}' 2>/dev/null || echo "") + if [ -n "$ENVOY_IP" ]; then + echo "Envoy LoadBalancer is ready: $LB_SVC_NAME -> $ENVOY_IP" break fi - echo "Nginx status :: $ready, sleeping for 10 seconds..." - sleep 10 - done + fi + + echo "Waiting for LoadBalancer IP from MetalLB..." + sleep 5 +done + +sleep 15 echo "Completed setup, You IP is $loadbalancerIP" -echo "Run './01cloud --help' for more options" \ No newline at end of file +echo "Run './01cloud --help' for more options" diff --git a/helper/setup_metallb.sh b/helper/setup_metallb.sh index fdf6792..c051fa3 100644 --- a/helper/setup_metallb.sh +++ b/helper/setup_metallb.sh @@ -82,4 +82,4 @@ metadata: namespace: metallb-system EOF -echo "[INFO] MetalLB installed successfully on $cluster_name" \ No newline at end of file +echo "[INFO] MetalLB installed successfully on $cluster_name" diff --git a/helper/velero-setup.sh b/helper/velero-setup.sh index bbd98dc..05d61b6 100644 --- a/helper/velero-setup.sh +++ b/helper/velero-setup.sh @@ -12,4 +12,4 @@ metadata: name: csi-hostpath-snapclass parameters: force-create: "true" -EOF \ No newline at end of file +EOF diff --git a/seeder/external-logger.json b/seeder/external-logger.json index ef82ed8..3a02763 100644 --- a/seeder/external-logger.json +++ b/seeder/external-logger.json @@ -235,4 +235,4 @@ } } ] -} \ No newline at end of file +} diff --git a/seeder/package_install.json b/seeder/package_install.json index 7cf28e4..3aa6f37 100644 --- a/seeder/package_install.json +++ b/seeder/package_install.json @@ -24,7 +24,7 @@ "required_dns": true, "optional": false, "needs": ["lb-controller","dns-controller"], - "icon": "https://github.com/projectcontour/contour/raw/main/contour.png", + "icon": "https://github.com/projectcontour/contour/raw/main/contour.png", "description": "Contour is an Ingress controller for Kubernetes that works by deploying the Envoy proxy as a reverse proxy and load balancer." }, { "chart": "zerone/dns-controller", diff --git a/seeder/subscriptions.json b/seeder/subscriptions.json index 92bc6fe..762ece6 100644 --- a/seeder/subscriptions.json +++ b/seeder/subscriptions.json @@ -29,4 +29,4 @@ "updated": "2023-08-08T13:53:53.418103" } ] -} \ No newline at end of file +} diff --git a/test-cluster.yaml b/test-cluster.yaml index bc38268..05f296f 100644 --- a/test-cluster.yaml +++ b/test-cluster.yaml @@ -5,4 +5,3 @@ nodes: - role: control-plane - role: worker - role: worker - From 73a3286f8631fe4c5c5781e550c3953d00a85e3c Mon Sep 17 00:00:00 2001 From: rajivbb Date: Thu, 18 Dec 2025 16:55:22 +0545 Subject: [PATCH 2/9] feat: gateway and auth0 implementation --- commitlint.config.cjs | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 commitlint.config.cjs diff --git a/commitlint.config.cjs b/commitlint.config.cjs new file mode 100644 index 0000000..a0e89b0 --- /dev/null +++ b/commitlint.config.cjs @@ -0,0 +1,24 @@ +module.exports = { + extends: ['@commitlint/config-conventional'], + rules: { + 'type-enum': [2, 'always', [ + 'feat', // A new feature + 'fix', // A bug fix + 'docs', // Documentation only changes + 'style', // Changes that do not affect code meaning + 'refactor', // A code change that neither fixes a bug nor adds a feature + 'perf', // A code change that improves performance + 'test', // Adding missing tests or correcting existing tests + 'build', // Build system or external dependencies + 'ci', // CI configuration changes + 'chore', // Other changes that don't modify src or test files + 'revert', // Reverts a previous commit + ]], + 'type-case': [2, 'always', 'lowerCase'], + 'type-empty': [2, 'never'], + 'scope-case': [2, 'always', 'lowerCase'], + 'subject-empty': [2, 'never'], + 'subject-full-stop': [2, 'never', '.'], + 'header-max-length': [2, 'always', 72], + }, +}; From 073e42f785c3b6851da4c6627884f24e75f53206 Mon Sep 17 00:00:00 2001 From: rajivbb Date: Fri, 19 Dec 2025 14:46:07 +0545 Subject: [PATCH 3/9] chore: add the auth0 and krakend configuration docs and minor updates --- AUTHENTICATION-CONFIGURATION.md | 211 + Gateway.md | 0 charts/templates/configmap.yaml | 18 +- charts/templates/deployment_enduser.yaml | 7 +- gateway/gateway.yaml | 2 +- gateway/krakend-0.1.0.tgz | Bin 16644 -> 0 bytes gateway/krakend/.DS_Store | Bin 0 -> 6148 bytes gateway/krakend/Chart.yaml | 6 + gateway/krakend/files/krakend.json | 21963 ++++++++++++++++ gateway/krakend/templates/NOTES.txt | 22 + gateway/krakend/templates/_helpers.tpl | 62 + gateway/krakend/templates/configMap.yaml | 8 + gateway/krakend/templates/deployment.yaml | 31 + .../templates/designer-deployment.yaml | 21 + .../krakend/templates/designer-ingress.yaml | 21 + .../krakend/templates/designer-service.yaml | 12 + gateway/krakend/templates/ingress.yaml | 21 + gateway/krakend/templates/service.yaml | 16 + gateway/krakend/values.yaml | 46 + helper/setup.sh | 4 +- krakend.tmpl | 40 + 21 files changed, 22494 insertions(+), 17 deletions(-) create mode 100644 AUTHENTICATION-CONFIGURATION.md delete mode 100644 Gateway.md delete mode 100644 gateway/krakend-0.1.0.tgz create mode 100644 gateway/krakend/.DS_Store create mode 100644 gateway/krakend/Chart.yaml create mode 100644 gateway/krakend/files/krakend.json create mode 100644 gateway/krakend/templates/NOTES.txt create mode 100644 gateway/krakend/templates/_helpers.tpl create mode 100644 gateway/krakend/templates/configMap.yaml create mode 100644 gateway/krakend/templates/deployment.yaml create mode 100644 gateway/krakend/templates/designer-deployment.yaml create mode 100644 gateway/krakend/templates/designer-ingress.yaml create mode 100644 gateway/krakend/templates/designer-service.yaml create mode 100644 gateway/krakend/templates/ingress.yaml create mode 100644 gateway/krakend/templates/service.yaml create mode 100644 gateway/krakend/values.yaml create mode 100644 krakend.tmpl diff --git a/AUTHENTICATION-CONFIGURATION.md b/AUTHENTICATION-CONFIGURATION.md new file mode 100644 index 0000000..7b850ab --- /dev/null +++ b/AUTHENTICATION-CONFIGURATION.md @@ -0,0 +1,211 @@ +Auth0 and KrakenD Configuration Guide +===================================== + +Prerequisites +------------- + +Complete these configurations before running ./01cloud install. + +1\. Auth0 Setup +--------------- + +### Create Auth0 Account + +1. Go to [auth0.com](https://auth0.com) and create an account + +2. Create a new tenant + + +### Create Single Page Application + +1. Navigate to **Applications** → **Create Application** + +2. Select **Single Page Web Applications** + +3. Configure URLs: + + * **Allowed Callback URLs**: http://localhost:3000/callback, https://your-domain.com/callback + + * **Allowed Logout URLs**: http://localhost:3000, https://your-domain.com + + * **Allowed Web Origins**: http://localhost:3000, https://your-domain.com + + + +### Create User + +Create user with these credentials (required for database seeder): + +* **Email**: admin@admin + +* **Password**: 01cloud@2020 + +* **Connection**: Username-Password-Authentication + +### Create Action + +* Navigate to the **Actions** - **Triggers** +* Select the **post-login** - **create custom action** + + +```json +exports.onExecutePostLogin = async (event, api) => { + const namespace = 'https://myapp.com/'; // Must be a valid URI + + // Helper function to safely get string values + const getString = (value) => { + if (typeof value === 'string' && value.trim()) { + return value.trim(); + } + return null; + }; + + // Get name components with better fallback logic + let firstName = getString(event.user.given_name); + let lastName = getString(event.user.family_name); + + // Apply fallback only if both are missing + if (!firstName && !lastName) { + const fullName = getString(event.user.name); + const nickname = getString(event.user.nickname); + const emailUsername = event.user.email ? event.user.email.split('@')[0].trim() : null; + + if (fullName) { + const parts = fullName.split(/\s+/); + firstName = parts[0] || null; + lastName = parts.length > 1 ? parts.slice(1).join(' ') : null; + } else if (nickname) { + firstName = nickname; + lastName = null; + } else if (emailUsername) { + firstName = emailUsername; + lastName = null; + } + } + + // Ensure we have strings (not null) for names to avoid issues + firstName = firstName || '-'; + lastName = lastName || '-'; + + // Build profile object with proper null handling + const profile = { + email: getString(event.user.email), + email_verified: Boolean(event.user.email_verified), + first_name: firstName, + last_name: lastName, + image: getString(event.user.picture), + name: getString(event.user.name), + created_at: event.user.created_at || null, + updated_at: event.user.updated_at || null, + company: null, + designation: null, + active: true, + is_admin: false, + address_updated: false, + quotas: null, + used_demo: false, + reference: null + }; + + try { + // Set each profile key as an individual custom claim + Object.entries(profile).forEach(([key, value]) => { + api.accessToken.setCustomClaim(`${namespace}${key}`, value); + }); + + // Set roles if available + const roles = event.authorization?.roles || []; + api.accessToken.setCustomClaim(`${namespace}roles`, roles); + + } catch (error) { + console.error('Error setting custom claims:', error); + // You might want to handle this error based on your requirements + // For now, we'll let the login continue even if claims fail + } +}; + +``` + + + +### Save Auth0 Values + +ParameterLocation + +**Domain** Application → Settings → your-tenant.auth0.com + +**Client ID** Application → Settings + +**Audience** Applications → API → API Audience + +2\. KrakenD Configuration +------------------------- + +### Update Auth0 Settings + +Update Auth0 Partial Templates + +After configuring Auth0, update the following template files with your Auth0 values: + +``` +File: gateway/config/dev/partials/auth0_audience.tmpl +``` +```json +"https://{domain-name}.us.auth0.com/api/v2/" +``` +Update the audience value to match your Auth0 API identifier (e.g., https://api.01cloud.com) + +File: gateway/config/dev/partials/auth0_jwk_url.tmpl +```json +"https://{{ .auth0_domain }}/.well-known/jwks.json" +``` +Update the domain value to your Auth0 tenant domain (e.g., your-tenant.auth0.com) + +File: gateway/config/dev/partials/auth0_validator.tmpl +```json +{ + "audience": "https://{domain-name}.us.auth0.com/api/v2/", + "jwk_url": "https://{{ .auth0_domain }}/.well-known/jwks.json", +} +``` + +Generate KrakenD JSON +Run from /home/berrybytes/01cloud-platform/gateway: + +```bash +docker run \ + --rm -it \ + --user "$(id -u):$(id -g)" \ + -p "8080:8080" \ + -v "$PWD:/etc/krakend" \ + -e FC_ENABLE=1 \ + -e FC_SETTINGS=gateway/config/dev/settings/prod \ + -e FC_PARTIALS=gateway/config/dev/partials \ + -e FC_TEMPLATES=gateway/config/common/templates \ + -e FC_OUT=/etc/krakend/gateway/krakend/files/krakend.json \ + -e SERVICE_NAME="KrakenD API Gateway" \ + krakend:2.10.0 check -tdc "krakend.tmpl" +``` +Note: It will auto update the krakend json file in the krakend helm chart + +3. Update UI ConfigMaps +------------------------- +Console UI +```yaml +REACT_APP_AUTH0_DOMAIN: "your-tenant.auth0.com" +REACT_APP_AUTH0_CLIENT_ID: "your_client_id" +REACT_APP_AUTH0_AUDIENCE: "https://{{ .auth0_domain }}/.well-known/jwks.json" +``` +Admin UI +```yaml +REACT_APP_AUTH0_DOMAIN: "your-tenant.auth0.com" +REACT_APP_AUTH0_CLIENT_ID: "your_client_id" +REACT_APP_AUTH0_AUDIENCE: "https://{{ .auth0_domain }}/.well-known/jwks.json" +``` + +## 4. Installation + +After completing all configurations, run the installation script: + +```bash +./01cloud install diff --git a/Gateway.md b/Gateway.md deleted file mode 100644 index e69de29..0000000 diff --git a/charts/templates/configmap.yaml b/charts/templates/configmap.yaml index 7a1b585..ce92c94 100644 --- a/charts/templates/configmap.yaml +++ b/charts/templates/configmap.yaml @@ -5,8 +5,8 @@ items: config.js: | window.config = { REACT_APP_01CLOUD_DOCS: "https://docs.01cloud.io", - REACT_APP_RESTAPI_ENDPOINT: "https://api.staging.01cloud.dev", - REACT_APP_SOCKET_IO_ENDPOINT: "wss://api.staging.01cloud.dev/ws", + REACT_APP_RESTAPI_ENDPOINT: "https://api-gateway.staging.01cloud.dev", + REACT_APP_SOCKET_IO_ENDPOINT: "wss://ws-gateway.staging.01cloud.dev/ws", REACT_APP_RECAPTCHA_SITEKEY: "--- YOUR-RECAPTCHA-SITEKEY ---", REACT_APP_MESSAGE_ORIGIN_URL: "https://console.staging.01cloud.dev", REACT_APP_GITHUB_AUTHORIZE_ENDPOINT: "https://github.com/login/oauth/authorize", @@ -21,9 +21,9 @@ items: REACT_APP_CLUSTER_OAUTH_REDIRECT_URL: "https://console.staging.01cloud.dev/loginsso/clustermanager", REACT_APP_01CLOUD_APPID: "01cloud", REACT_APP_AUTH0_MODE: "", - REACT_APP_AUTH0_DOMAIN: "--- YOUR-AUTH0-DOMAIN ---", - REACT_APP_AUTH0_CLIENT_ID: "--- YOUR-AUTH0-CLIENT-ID ---", - REACT_APP_AUTH0_AUDIENCE: "--- YOUR-AUTH0-AUDIENCE ---" + REACT_APP_AUTH0_DOMAIN: "dev-xxxxx.us.auth0.com", + REACT_APP_AUTH0_CLIENT_ID: "xxxxxxx", + REACT_APP_AUTH0_AUDIENCE: "https://dev-xxxxx.us.auth0.com/api/v2/", } kind: ConfigMap metadata: @@ -35,10 +35,10 @@ items: REACT_APP_RESTAPI_ENDPOINT: "https://api-gateway.staging.01cloud.dev", REACT_APP_SOCKET_IO_ENDPOINT: "wss://ws-gateway.staging.01cloud.dev/ws", REACT_APP_01CLOUD_CONSOLE_URL: "https://console.staging.01cloud.dev", - REACT_APP_AUTH0_DOMAIN: "--- YOUR-AUTH0-DOMAIN ---", - REACT_APP_AUTH0_CLIENT_ID: "--- YOUR-AUTH0-CLIENT-ID ---", - REACT_APP_AUTH0_AUDIENCE: "--- YOUR-AUTH0-AUDIENCE ---" - REACT_APP_AUTH0_MODE: "" + REACT_APP_AUTH0_MODE: "", + REACT_APP_AUTH0_DOMAIN: "dev-xxxxx.us.auth0.com", + REACT_APP_AUTH0_CLIENT_ID: "xxxxxxx", + REACT_APP_AUTH0_AUDIENCE: "https://dev-xxxxx.us.auth0.com/api/v2/", } kind: ConfigMap metadata: diff --git a/charts/templates/deployment_enduser.yaml b/charts/templates/deployment_enduser.yaml index c8898e3..d0dab11 100644 --- a/charts/templates/deployment_enduser.yaml +++ b/charts/templates/deployment_enduser.yaml @@ -67,6 +67,8 @@ spec: spec: containers: - env: + - name: ALLOWED_ORIGINS + value: "{{.Values.env.ALLOWED_ORIGINS}}" - name: STORE_TYPE value: {{.Values.env.STORE_TYPE}} - name: MESSAGE_TYPE @@ -127,11 +129,6 @@ spec: value: {{.Values.env.adminEmail}} - name: DOCKER_PLUGIN_ID value: {{.Values.env.dockerPluginId | quote}} - - name: MODE - valueFrom: - secretKeyRef: - name: env-secrets - key: MODE - name: HELM_PLUGIN_ID value: {{.Values.env.dockerPluginId | quote}} - name: OPERATOR_PLUGIN_ID diff --git a/gateway/gateway.yaml b/gateway/gateway.yaml index 9c773a0..7b19114 100644 --- a/gateway/gateway.yaml +++ b/gateway/gateway.yaml @@ -32,5 +32,5 @@ spec: - group: "" kind: Secret name: zerone-tls-cert - namespace: 01cloud-stable + namespace: 01cloud-staging mode: Terminate diff --git a/gateway/krakend-0.1.0.tgz b/gateway/krakend-0.1.0.tgz deleted file mode 100644 index 09095b0a685397168a949b33a4b4413bf9a45d94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16644 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 NBOo+bV+{N%1D{WrgKGc) literal 0 HcmV?d00001 diff --git a/gateway/krakend/Chart.yaml b/gateway/krakend/Chart.yaml new file mode 100644 index 0000000..1b13b9c --- /dev/null +++ b/gateway/krakend/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +appVersion: 1.16.0 +description: A Helm chart for Kubernetes +name: krakend +type: application +version: 0.1.0 diff --git a/gateway/krakend/files/krakend.json b/gateway/krakend/files/krakend.json new file mode 100644 index 0000000..5c04138 --- /dev/null +++ b/gateway/krakend/files/krakend.json @@ -0,0 +1,21963 @@ +{ + "$schema": "https://www.krakend.io/schema/v3.json", + "version": 3, + "name": "test-api-gateway", + "timeout": "60s", + "extra_config": { + "github_com/devopsfaith/krakend-cors": { + "allow_origins": [ "http://localhost:3000","https://console.staging.01cloud.dev","https://admin.staging.01cloud.dev"], + "allow_methods": [ "GET", + "HEAD", + "POST", + "OPTIONS", + "PUT", + "DELETE"], + "max_age": "12h", + "allow_headers": [ + "Accept-Language", + "Content-Type", + "X-Api-Version", + "X-Custom-Auth", + "Authorization", + "X-Email", + "X-Circuit-Break" , + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID" + ], + "expose_headers": [ + "Content-Length", + "Content-Type", + "Content-Disposition", + "Cache-Control" + ], + "allow_credentials": false + + } + , + "telemetry/metrics": { + "collection_time": "60s", + "proxy_disabled": false, + "router_disabled": false, + "backend_disabled": false, + "endpoint_disabled": false, + "listen_address": ":8090" + }, + "telemetry/opentelemetry": { + "service_name": "krakend_prometheus_service", + "metric_reporting_period": 1, + "exporters": { + "prometheus": [ + { + "name": "local_prometheus", + "port": 9091, + "process_metrics": true, + "go_metrics": true + } + ] + } + } + +, + "telemetry/logging": { + "level": "DEBUG", + "prefix": "[KRAKEND]", + "syslog": false, + "stdout": true, + "access_enable": "true", + "access_log_format": "json", + "format": "json" + } +, + "router": { + "return_error_msg": true + } + }, + "endpoints": [ + { + "endpoint": "/v1/echo/{path}", + "method": "GET", + "input_headers": ["Authorization"], + "output_encoding": "json-collection", + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "is_collection": false, + "encoding": "json", + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "url_pattern": "/api/{path}", + "extra_config": { + "qos/ratelimit/router": { + "max_rate": 10, + "every": "5m", + "client_max_rate": 5, + "strategy": "ip", + "capacity": 10, + "client_capacity": 5 + } + } + } + ] + } + , + { + "endpoint": "/login", + "method": "POST", + "input_headers":["*"], + "extra_config": { +"auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"], + ["https://myapp.com/email_verified", "x-email-verified"], + ["https://myapp.com/first_name", "x-first-name"], + ["https://myapp.com/last_name", "x-last-name"], + ["https://myapp.com/image", "x-image"], + ["https://myapp.com/name", "x-name"], + ["https://myapp.com/created_at", "x-created-at"], + ["https://myapp.com/updated_at", "x-updated-at"], + ["https://myapp.com/company", "x-company"], + ["https://myapp.com/designation", "x-designation"], + ["https://myapp.com/active", "x-active"], + ["https://myapp.com/is_admin", "x-is-admin"], + ["https://myapp.com/address_updated", "x-address-updated"], + ["https://myapp.com/quotas", "x-quotas"], + ["https://myapp.com/used_demo", "x-used-demo"], + ["https://myapp.com/reference", "x-reference"], + ["https://myapp.com/roles", "x-roles"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json" +, + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "method": "POST", + "url_pattern": "/user/login" + } + ] +}, +{ + "endpoint": "/register", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user/register", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/logout", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user/logout", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/user/new", + "method": "GET", + "input_headers":["*"], + "extra_config": { + "proxy": { + "static": { + "strategy": "errored", + "data": { + "status_code": 503, + "headers": { + "Content-Type": "application/json" + }, + "body": "user is already registered.If login doesnt work please contact admin" + } + } + }, +"auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"], + ["https://myapp.com/email_verified", "x-email-verified"], + ["https://myapp.com/first_name", "x-first-name"], + ["https://myapp.com/last_name", "x-last-name"], + ["https://myapp.com/image", "x-image"], + ["https://myapp.com/name", "x-name"], + ["https://myapp.com/created_at", "x-created-at"], + ["https://myapp.com/updated_at", "x-updated-at"], + ["https://myapp.com/company", "x-company"], + ["https://myapp.com/designation", "x-designation"], + ["https://myapp.com/active", "x-active"], + ["https://myapp.com/is_admin", "x-is-admin"], + ["https://myapp.com/address_updated", "x-address-updated"], + ["https://myapp.com/quotas", "x-quotas"], + ["https://myapp.com/used_demo", "x-used-demo"], + ["https://myapp.com/reference", "x-reference"], + ["https://myapp.com/roles", "x-roles"] + ], + "alg": "RS256", + "audience": [ + "https://dev-oknhd5hivohn3jyg.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-oknhd5hivohn3jyg.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "method": "GET", + "url_pattern": "/user/new" + } + ] +}, +{ + "endpoint": "/user/forgot-password", + "method": "POST", + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user/forgot-password", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/reset-password", + "method": "POST", + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user/reset-password", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/change-password", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user/change-password", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "qos/ratelimit/router": { + "max_rate": 10, + "every": "5m", + "client_max_rate": 5, + "strategy": "ip", + "capacity": 10, + "client_capacity": 5 + } + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/user/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "modifier/martian": { + "header.Modifier": { + "scope": ["response"], + "name": "Cache-Control", + "value": "max-age=30, public", + "@comment": "We will change the max-age policy before KrakenD checks the content for caching. Now content is cached 60 seconds." + } + }, + "qos/http-cache": { + "@comment": "Allow up to 100 cache entries or ~128MB (bytes not set exactly)", + "shared": false, + "max_items": 100, + "max_size": 128000000 + } + } + } + ] +} +, +{ + "endpoint": "/users", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "role", "status", "sort-column", "sort-direction", "search"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/users", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/user/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/user/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/profile", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], +"input_headers":["*"], + "extra_config": { + "qos/ratelimit/router": { + "max_rate": 10, + "every": "5m", + "client_max_rate": 5, + "strategy": "ip", + "capacity": 10, + "client_capacity": 5 + }, + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/profile", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/profile", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, +"output_encoding": "no-op", +"input_headers":["*"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "encoding": "no-op", + "method": "PUT", + "url_pattern": "/profile", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/tokens", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/user/tokens", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/user/tokens", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user/tokens", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/token/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/user/token/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user-invite", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user-invite", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user-invite/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/user-invite/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user-invites", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/user-invites", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user-invite/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/user-invite/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user-invite/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/user-invite/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user-invite-request", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user-invite-request", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/roles", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/roles", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/role/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/role/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/permissions", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/permissions", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/role/environment/{environment_id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/role/environment/{environment_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/role/application/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/role/application/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/role/project/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/role/project/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/project", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/projects", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/projects", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/projects", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "status"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/projects", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/project/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/project/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/project/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/activation", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/project/{id}/activation", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/activities", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/activities", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} + +, +{ + "endpoint": "/project/{id}/resource", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/resource", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/users", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/users", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/user", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/project/{id}/user", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/user/{user_id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/project/{id}/user/{user_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/user/{user_id}", + "method": "GET", + "output_encoding": "json", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/user/{user_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/application", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/application", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/applications", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "status"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/applications", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/application/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/application/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/application/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}/available-resource", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/application/{id}/available-resource", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/applications", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "status"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/applications", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}/users", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/application/{id}/users", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}/deploy", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/application/{id}/deploy", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}/restart", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/application/{id}/restart", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}/stop", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/application/{id}/stop", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}/logs", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "start_date", "end_date", "level"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/application/{id}/logs", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}/metrics", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["period", "metric_type"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/application/{id}/metrics", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}/deployments", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/application/{id}/deployments", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/application/{id}/environments", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/application/{id}/environments", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/ws", + "input_query_strings": ["*"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "url_pattern": "/ws", + "disable_host_sanitization": true, + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "github.com/devopsfaith/krakend/proxy": { + "is_websocket": true + }, + "github.com/devopsfaith/krakend/router/proxy": { + "is_websocket": true + } + } + } + ] +} +, +{ + "endpoint": "/environment", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/overview", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/overview", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/addons", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/addons", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/fetch-state", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/fetch-state", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/rename/environment/{environment_id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/rename/environment/{environment_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/overview", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/overview", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/activity-log", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/activity-log", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + +{ + "endpoint": "/environment/{environment_id}/state", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/state", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} + +, +{ + "endpoint": "/environment/{environment_id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/environment/{environment_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/groups", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "status"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/groups", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/groups", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/groups", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/groups/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/groups/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/groups/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/groups/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/groups/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/groups/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/groups/{id}/members", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/groups/{id}/members", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/groups/{id}/members", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/groups/{id}/members", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/search/user", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["query"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/search/user", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/search", + "method": "GET", + "input_query_strings": ["query"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/search", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cluster/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/cluster/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cluster/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/cluster/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cluster/{id}/environments", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/cluster/{id}/environments", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cluster/{id}/operators", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/cluster/{id}/operators", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cluster/{id}/operator/status", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/cluster/{id}/operator/status", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/create-cluster/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/create-cluster/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}/workflows", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster/{id}/workflows", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}/insights", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster/{id}/insights", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}/insights", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/create-cluster/{id}/insights", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}/package-status", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster/{id}/package-status", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}/install-package", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/create-cluster/{id}/install-package", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}/uninstall-package", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/create-cluster/{id}/uninstall-package", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster/{id}/workflow-log", + "method": "GET", + "input_query_strings": ["workflow_name"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster/{id}/workflow-log", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + +{ + "endpoint": "/scanner/{id}/cluster-scan", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/scanner/{id}/cluster-scan", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/package-config", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/package-config", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/subscriptions", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/subscriptions", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/helm/repos", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/helm/repos", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "modifier/martian": { + "header.Modifier": { + "scope": ["response"], + "name": "Cache-Control", + "value": "max-age=30, public", + "@comment": "We will change the max-age policy before KrakenD checks the content for caching. Now content is cached 60 seconds." + } + }, + "qos/http-cache": { + "@comment": "Allow up to 100 cache entries or ~128MB (bytes not set exactly)", + "shared": false, + "max_items": 100, + "max_size": 128000000 + } + } + } + ] +} +, +{ + "endpoint": "/helm/repos", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/helm/repos", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/helm/repos/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/helm/repos/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/helm/repos/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/helm/repos/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/helm/repos/{id}/sync", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/helm/repos/{id}/sync", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/helm/charts", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "query", "category", "repo_id"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/helm/charts", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/helm/chart/categories", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/helm/chart/categories", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organizations", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/organizations", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organization", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/organization", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organization", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/organization", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organization", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/organization", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organizationPlans", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/organizationPlans", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/organization/{id}/activities", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "action", "userid", "datestart", "dateend", "module"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/organization/{id}/activities", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organization/{id}/switch", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/organization/{id}/switch", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organization/add-plugins", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/organization/add-plugins", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organization/plugin/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/organization/plugin/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organization/members", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/organization/members", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/registries", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/registries", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "modifier/martian": { + "header.Modifier": { + "scope": ["response"], + "name": "Cache-Control", + "value": "max-age=30, public", + "@comment": "We will change the max-age policy before KrakenD checks the content for caching. Now content is cached 60 seconds." + } + }, + "qos/http-cache": { + "@comment": "Allow up to 100 cache entries or ~128MB (bytes not set exactly)", + "shared": false, + "max_items": 100, + "max_size": 128000000 + } + } + } + ] +} +, +{ + "endpoint": "/dns", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/dns", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/resource", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/resource", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/resource/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/resource/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/resource/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/resource/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/resource/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/resource/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/subscriptions", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "qos/ratelimit/router": { + "max_rate": 10, + "every": "5m", + "client_max_rate": 5, + "strategy": "ip", + "capacity": 10, + "client_capacity": 5 + } + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/subscriptions" + } + ] +}, +{ + "endpoint": "/subscription/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/subscription/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/rename/application/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/rename/application/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/plugin", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/plugin", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/plugins", + "method": "GET", + "input_query_strings": [ + "support_ci", + "size", + "page", + "is_managed_service", + "search" + ], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/plugins", + "input_query_strings": [ + "support_ci", + "size", + "page", + "is_managed_service", + "search" + ], + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "modifier/martian": { + "header.Modifier": { + "scope": ["response"], + "name": "Cache-Control", + "value": "max-age=30, public", + "@comment": "We will change the max-age policy before KrakenD checks the content for caching. Now content is cached 60 seconds." + } + }, + "qos/http-cache": { + "@comment": "Allow up to 100 cache entries or ~128MB (bytes not set exactly)", + "shared": false, + "max_items": 100, + "max_size": 128000000 + } + } + } + ] +} +, +{ + "endpoint": "/plugins/active", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/plugins/active", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/plugin/{id}/latest-version", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/plugin/{id}/latest-version", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/plugin-version/{plugin_version}/config", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/plugin-version/{plugin_version}/config", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/plugin-version/{plugin_version}/settings", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/plugin-version/{plugin_version}/settings", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/plugin/{id}", + "method": "GET", + "input_query_strings": [ + "support_ci", + "size", + "page", + "is_managed_service", + "search" + ], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/plugin/{id}", + "input_query_strings": [ + "support_ci", + "size", + "page", + "is_managed_service", + "search" + ], + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/activity", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/activity", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/activities", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "type", "start_date", "end_date"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/activities", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/activity/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/activity/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/activity/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/activity/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/notification", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/notification", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/notification/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/notification/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/notifications", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "read", "start_date", "end_date"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/notifications", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/notification/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/notification/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/notification/mark-all-as-read", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/notification/mark-all-as-read", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/notification/mark-all-as-read", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/notification/mark-all-as-read", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/payment/paymenthistory", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "input_query_strings": [ + "*" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "input_query_strings": [ + "*" + ], + "url_pattern": "/payment/paymenthistory", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "input_query_strings":["*"] + } + ] +} +, + +{ + "endpoint": "/payment/threshold", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/threshold", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "input_query_strings":["*"] + } + ] +} +, +{ + "endpoint": "/payment/threshold", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/payment/threshold", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/payment/gateway", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/gateway", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/payment/init/stripe", + "method": "GET", + "input_query_strings": ["amount"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/init/stripe", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/payment/init/paypal", + "method": "GET", + "input_query_strings": ["amount"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/init/paypal", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + +{ + "endpoint": "/payment/invoice", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/invoice", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "input_query_strings":["*"] + } + ] +} +, +{ + "endpoint": "/payment/invoice/{id}/download", + "method": "GET", + "input_query_strings": ["token"], + "output_encoding": "no-op", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "encoding": "no-op", + "url_pattern": "/payment/invoice/{id}/download", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "github.com/devopsfaith/krakend-martian": { + "header.Blacklist": { + "scope": ["response"], + "names": ["Access-Control-Allow-Origin"] + } + } + } + } + ] +} +, + +{ + "endpoint": "/payment/paymentsetting", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "proxy": { + "sequential": true + } + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/paymentsetting", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "input_query_strings":["*"] + } + ] +} +, +{ + "endpoint": "/payment/paymentsetting", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/payment/paymentsetting", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "input_query_strings": [ + "*" + ] + } + ] +}, + +{ + "endpoint": "/sidebar", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/sidebar", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "input_query_strings":["*"] + } + ] +} +, +{ + "endpoint": "/get-regions", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/get-regions", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + +{ + "endpoint": "/regions", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/regions", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "modifier/martian": { + "header.Modifier": { + "scope": ["response"], + "name": "Cache-Control", + "value": "max-age=30, public", + "@comment": "We will change the max-age policy before KrakenD checks the content for caching. Now content is cached 60 seconds." + } + }, + "qos/http-cache": { + "@comment": "Allow up to 100 cache entries or ~128MB (bytes not set exactly)", + "shared": false, + "max_items": 100, + "max_size": 128000000 + } + }, + "input_query_strings":["*"] + } + ] +} +, +{ + "endpoint": "/public/file/external-logger.json", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/public/file/external-logger.json", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/external/connections", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/external/connections", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/import-cluster", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/import-cluster", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + +{ + "endpoint": "/monitoring/templates/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/monitoring/templates/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/backup", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/backup", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/variables", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/variables", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + +{ + "endpoint": "monitoring/podlist/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "monitoring/podlist/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/plugin/{id}/add-ons", + "method": "GET", + "input_query_strings": [ + "*" + ], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/plugin/{id}/add-ons", + "input_query_strings": [ + "*" + ], + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/plugin-category", + "method": "GET", + "input_query_strings": [ + "*" + ], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/plugin-category", + "input_query_strings": [ + "*" + ], + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/scanner/{id}/plugins", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "output_encoding": "json", + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/scanner/{id}/plugins", + "is_collection": false, + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/scanner/cluster-plugins", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/scanner/cluster-plugins", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/scanner/{id}/cluster-reports", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/scanner/{id}/cluster-reports", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/scanner/{id}/scan", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "output_encoding": "json", + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/scanner/{id}/scan", + "is_collection": false, + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/scanner/{id}/reports", + "method": "GET", + "output_encoding": "json", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/scanner/{id}/reports", + "is_collection": true, + "mapping": { + "collection": "reports" + }, + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, + { + "endpoint": "/environment/{environment_id}/restores", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/restores", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] + } +, + { + "endpoint": "/environment/{environment_id}/storage-fetch", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/storage-fetch", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] + } +, + { + "endpoint": "/environment/{environment_id}/users", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/users", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] + } +, +{ + "endpoint": "/environment/{environment_id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/storage", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/storage", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + +{ + "endpoint": "monitoring/events/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/monitoring/events/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, + +{ + "endpoint": "/monitoring/insights/{id}", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/monitoring/insights/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/backup/{backup_id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/environment/{environment_id}/backup/{backup_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/backup/setting", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/backup/setting", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/backup", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/backup", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/backup/{backup_id}/preserve", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/backup/{backup_id}/preserve", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/backup/setting", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/backup/setting", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/backup/{backup_id}/restore", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/backup/{backup_id}/restore", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/upload-gcs", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "output_encoding": "json", + "input_query_strings": ["*"], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "telemetry/logging": { + "level": "DEBUG", + "prefix": "[KRAKEND]", + "stdout": true, + "syslog": false + } + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "url_pattern": "/upload-gcs", + "method": "POST", + "is_collection": false, + "headers_to_pass": [ + "Authorization", + "Content-Type", + "X-Custom-Auth", + "X-API-Version" + ], + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "github.com/devopsfaith/krakend-http": { + "timeout": "60s", + "retries": 3, + "read_timeout": "60s", + "write_timeout": "60s" + }, + "backend/http": { + "return_error_code": true + } + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/addons", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/addons", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/start", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/start", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/stop", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/stop", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/schedule", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/schedule", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/re-deploy", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/re-deploy", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/clone", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/clone", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/addons/{addons_id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/addons/{addons_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/addons/{addons_id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/environment/{environment_id}/addons/{addons_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/addons/{addons_id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/addons/{addons_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/schedule/logs", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/schedule/logs", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/clone", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/clone", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/upload", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/upload", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/check-dns-permissions", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/check-dns-permissions", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/ticket/group", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/ticket/group", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/ticket", + "method": "GET", + "input_query_strings": ["page", "limit", "query", "status", "priority", "category"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/ticket", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/ticket/details/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/ticket/details/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/ticket", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/ticket", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/dashboard", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/dashboard", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/cluster/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/cluster/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/clusters", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/clusters", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/email-templates", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/email-templates", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/email-templates/{template}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/email-templates/{template}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/file/setting.json", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/file/setting.json", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/operators", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/operators", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/org/cluster/{oid}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/org/cluster/{oid}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/organizationPlans", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/organizationPlans", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/organization/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/organization/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/organizations", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/organizations", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/plugins", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/plugins", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/project/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/project/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/resources", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/admin/resources", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/subscription", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/admin/subscription", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/operator/enable-disable", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/admin/operator/enable-disable", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/operator/:packageName", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/admin/operator/:packageName", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/operator/sync", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/admin/operator/sync", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/admin/user/id/quotas", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/admin/user/id/quotas", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/ticket/admin", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/ticket/admin", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/ticket/user", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/ticket/user", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/ticket/dashboard", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "qos/ratelimit/router": { + "max_rate": 10, + "every": "5m", + "client_max_rate": 5, + "strategy": "ip", + "capacity": 10, + "client_capacity": 5 + } + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/ticket/dashboard" + } + ] +}, +{ + "endpoint": "/loadbalancers", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "qos/ratelimit/router": { + "max_rate": 10, + "every": "5m", + "client_max_rate": 5, + "strategy": "ip", + "capacity": 10, + "client_capacity": 5 + } + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/loadbalancers" + } + ] +}, +{ + "endpoint": "/payment/promocode", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/promocode" + } + ] +}, +{ + "endpoint": "/payment/deduction", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/deduction" + } + ] +}, +{ + "endpoint": "/payment/gateway-all", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/gateway-all" + } + ] +}, +{ + "endpoint": "/payment/invoices", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/invoices" + } + ] +}, +{ + "endpoint": "/payment/transaction", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/transaction" + } + ] +}, +{ + "endpoint": "/user/{id}/projects", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/user/{id}/projects", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "user/{id}/block", + "method": "GET", + "input_query_strings":["type"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "user/{id}/block", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "user/{id}/change-admin-status", + "method": "GET", + "input_query_strings":["is_admin"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "user/{id}/change-admin-status", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/subscription/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/subscription/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organizationPlan", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/organizationPlan", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organizationPlan/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/organizationPlan/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organizationPlan/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "qos/ratelimit/router": { + "max_rate": 10, + "every": "5m", + "client_max_rate": 5, + "strategy": "ip", + "capacity": 10, + "client_capacity": 5 + } + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/organizationPlan/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organizationPlan/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/organizationPlan/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/payment/promocode", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/payment/promocode" + } + ] +}, +{ + "endpoint": "/payment/promocode/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/promocode/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/payment/promocode/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/payment/promocode/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/payment/promocode/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/payment/promocode/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/plugin/{id}/versions", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "plugin/{id}/versions", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/create-cluster-config", + "input_query_strings":["provider"], + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster-config", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/operator", + "input_query_strings":["packageName"], + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/operator", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/payment/admin/setting/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/admin/setting/{id}" + } + ] +}, +{ + "endpoint": "/admin/user/{id}/quotas", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/admin/user/{id}/quotas" + } + ] +}, +{ + "endpoint": "/subscription/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/subscription/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/public/file/subscriptions.json", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/public/file/subscriptions.json", + "extra_config": { + "modifier/martian": { + "header.Modifier": { + "scope": ["response"], + "name": "Cache-Control", + "value": "max-age=30, public", + "@comment": "We will change the max-age policy before KrakenD checks the content for caching. Now content is cached 60 seconds." + } + }, + "qos/http-cache": { + "@comment": "Allow up to 100 cache entries or ~128MB (bytes not set exactly)", + "shared": false, + "max_items": 100, + "max_size": 128000000 + } , + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + +{ + "endpoint": "/create-cluster/vcluster/validate", + "method": "GET", + "input_query_strings":["vtoken"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster/vcluster/validate", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organization", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/organization", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/subscription", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} +, + "qos/http-cache": { + "@comment": "Allow up to 100 cache entries or ~128MB (bytes not set exactly)", + "shared": false, + "max_items": 100, + "max_size": 128000000 + } + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/subscription", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "modifier/martian": { + "header.Modifier": { + "scope": ["response"], + "name": "Cache-Control", + "value": "max-age=30, public", + "@comment": "We will change the max-age policy before KrakenD checks the content for caching. Now content is cached 60 seconds." + } + }, + "qos/http-cache": { + "@comment": "Allow up to 100 cache entries or ~128MB (bytes not set exactly)", + "shared": false, + "max_items": 100, + "max_size": 128000000 + } + } + } + ] +} +, +{ + "endpoint": "/organization/members", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/organization/members", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/organization/members", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/organization/members", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/git/org/{github}", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/git/org/{github}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/git/connect", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/git/connect", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/external/revoke/{rid}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/external/revoke/{rid}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/token", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user/token", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/package-status", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/package-status", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/resources", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit", "type"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/resources", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/registry/org", + "method": "POST", + "input_query_strings": ["namespace"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/registry/org", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/loadbalancer", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/loadbalancer", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/loadbalancers", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/loadbalancers", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/loadbalancers", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/project/{id}/loadbalancers", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/registry/connect", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/registry/connect", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/revision-fetch", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/revision-fetch", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/revision-list", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/revision-list", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/workflow", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/workflow", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/ci-metrics", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/ci-metrics", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/ci-trigger", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/ci-trigger", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/ci-trigger", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/ci-trigger", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/git/branch/github", + "method": "POST", + "input_query_strings": ["repo", "uid"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/git/branch/github", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cd-config", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/cd-config", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/payment/invoice/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/payment/invoice/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/dns", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/dns", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/registry-config", + "method": "GET", + "output_encoding": "json-collection", + "is_collection": true, + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/registry-config", + "is_collection": true, + "output_encoding": "json-collection", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} + , +{ + "endpoint": "/dns/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/dns/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/dns/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/dns/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/cronjob-fetch", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/cronjob-fetch", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/git/repo/github", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/git/repo/github", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/cronjob", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/cronjob", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/templates/{id}/general", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/monitoring/templates/{id}/general", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/cronjob-status", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/cronjob-status", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cron-images", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/cron-images", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/rerun-ci", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/rerun-ci", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/cronjob", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/cronjob", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/templates/{id}/general", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/monitoring/templates/{id}/general", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/templates/{id}/general", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/monitoring/templates/{id}/general", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/alerts/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit","type"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/monitoring/alerts/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/dns", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/dns", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/user", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/user", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/enable-disable-filemanager", + "method": "POST", + "input_query_strings":["status"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/enable-disable-filemanager", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/variables", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/variables", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/ip-whitelist", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/ip-whitelist", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/registry/org/dockerhub", + "method": "POST", + "input_query_strings":["namespace"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/registry/org/dockerhub", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/registry/repos/dockerhub", + "method": "POST", + "input_query_strings":["namespace"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/registry/repos/dockerhub", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/registry/repo/tags/dockerhub", + "method": "POST", + "input_query_strings":["namespace","repo"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/registry/repo/tags/dockerhub", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/login/sso", + "method": "GET", + "input_headers":["*"], + "output_encoding": "no-op", + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "encoding": "no-op", + "url_pattern": "/user/login/sso", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/user/login/sso", + "method": "POST", + "input_headers":["*"], + "output_encoding": "no-op", + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "encoding": "no-op", + "url_pattern": "/user/login/sso", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + { + "endpoint": "/user/login/sso", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/user/login/sso", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/get-clusters", + "method": "GET", + "input_query_strings": ["region"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/get-clusters", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/registry/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/registry/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + +{ + "endpoint": "/environment/{environment_id}/build-images", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/build-images", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/hpa-insight", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/hpa-insight", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/alert-status/{alert_id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings":["state_type","type"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/monitoring/alert-status/{alert_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/restart/{alert_id}", + "method": "POST", + "input_query_strings":["namespace"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/monitoring/restart/{alert_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/loadbalancer", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "output_encoding": "json", + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/loadbalancer", + "is_collection": false, + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/cli/organization/members", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/organization/members", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project/{id}/user", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/project/{id}/user", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/user/{id}/projects", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/user/{id}/projects", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/create-cluster/{id}/uninstall-package", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/create-cluster/{id}/uninstall-package", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/project", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/application/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/application/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/organization/members", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/organization/members", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/cli/organization", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/organization", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/project/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/application/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/application/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/application/{id}/environments", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/application/{id}/environments", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/create-cluster/{id}/package-status", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster/{id}/package-status", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/create-cluster", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/create-cluster", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/environment/{environment_id}/overview", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/overview", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/loadbalancer", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/loadbalancer", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/organization/{id}/switch", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/organization/{id}/switch", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/organizations", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/organizations", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/organization", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/organization", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/cli/package-config", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/package-config", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} + , +{ + "endpoint": "/cli/project/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + + + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project/{id}/user/{user_id}", + "method": "GET", + "output_encoding": "json", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/user/{user_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/cli/project/{id}/resource", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/resource", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/projects", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "input_query_strings": ["page", "limit", "status"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/projects", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project/{id}/users", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/users", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/rename/environment/{environment_id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/rename/environment/{environment_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/roles", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/roles", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/import-cluster", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/import-cluster", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/create-cluster/{id}/install-package", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/create-cluster/{id}/install-package", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/loadbalancer", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "output_encoding": "json", + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/loadbalancer", + "is_collection": false, + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/cli/environment/{environment_id}/overview", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/overview", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/environment/{environment_id}/start", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/start", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/environment/{environment_id}/stop", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/stop", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/organization", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/organization", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project/{id}/loadbalancers", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/project/{id}/loadbalancers", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/projects", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/projects", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project/{id}/loadbalancers", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/loadbalancers", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project/{id}/user/{user_id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/project/{id}/user/{user_id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/rename/application/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/rename/application/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project/{id}/activation", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/project/{id}/activation", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/cli/application/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/application/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/organization/members", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/organization/members", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/cli/organization", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/organization", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/project/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/project/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/profile", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, +"output_encoding": "no-op", +"input_headers":["*"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "encoding": "no-op", + "method": "PUT", + "url_pattern": "/profile", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/user/logout", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/user/logout", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/cli/profile", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], +"input_headers":["*"], + "extra_config": { + "qos/ratelimit/router": { + "max_rate": 10, + "every": "5m", + "client_max_rate": 5, + "strategy": "ip", + "capacity": 10, + "client_capacity": 5 + }, + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/profile", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/webhook/{environment_id}/{github}", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/webhook/{environment_id}/{github}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/user/login/sso", + "method": "GET", + "input_headers":["*"], + "output_encoding": "no-op", + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "encoding": "no-op", + "url_pattern": "/user/login/sso", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/cli/user/login/sso", + "method": "POST", + "input_headers":["*"], + "output_encoding": "no-op", + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "encoding": "no-op", + "url_pattern": "/user/login/sso", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + { + "endpoint": "/cli/user/login/sso", + "method": "PUT", +"input_headers":["*"], + "output_encoding": "no-op", + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "encoding": "no-op", + "url_pattern": "/user/login/sso", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/storage/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/storage/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/plugin-version/{plugin_version}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/plugin-version/{plugin_version}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/plugin-version/{plugin_version}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/plugin-version/{plugin_version}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/plugin-version", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/plugin-version", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/plugin-version/{plugin_version}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config":{ + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/plugin-version/{plugin_version}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/terminal", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/monitoring/terminal", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/external-url", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/external-url", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/monitoring/alert-history/{id}", + "method": "GET", + "input_query_strings": ["page", "limit","type"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/monitoring/alert-history/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/notifications/seen-unseen", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/notifications/seen-unseen", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/monitoring/templates/{id}/mysql", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/monitoring/templates/{id}/mysql", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/monitoring/templates/{id}/mongodb", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/monitoring/templates/{id}/mongodb", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/monitoring/templates/{id}/postgresql", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/monitoring/templates/{id}/postgresql", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/monitoring/templates/{id}/mysql", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/monitoring/templates/{id}/mysql", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/templates/{id}/mongodb", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/monitoring/templates/{id}/mongodb", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/templates/{id}/postgresql", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/monitoring/templates/{id}/postgresql", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/templates/{id}/mysql", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/monitoring/templates/{id}/mysql", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/templates/{id}/mongodb", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/monitoring/templates/{id}/mongodb", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/templates/{id}/postgresql", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/monitoring/templates/{id}/postgresql", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/project/{id}/available-storage", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/project/{id}/available-storage", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/monitoring/alerts/{id}", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit","type"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/monitoring/alerts/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/storage", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/storage", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/uploads/image/jpeg/{imageId}", + "method": "GET", + "input_query_strings": ["token"], + "output_encoding": "no-op", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "encoding": "no-op", + "url_pattern": "/uploads/image/jpeg/{imageId}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } +, + "github.com/devopsfaith/krakend-martian": { + "header.Blacklist": { + "scope": ["response"], + "names": ["Access-Control-Allow-Origin"] + } + } + } + } + ] +} , +{ + "endpoint": "/create-cluster/{id}/change-active-status", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/create-cluster/{id}/change-active-status", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/cronjob/{id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/cronjob/{id}", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/cronjob/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/cronjob/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/cronjob/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/environment/{environment_id}/cronjob/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/registry/aws-region", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "input_query_strings": ["page", "limit"], + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/registry/aws-region", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/registry/org/aws_ecr", + "method": "POST", + "input_query_strings":["namespace"], + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/registry/org/aws_ecr", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/user/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/user/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/user/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/environment/{environment_id}/user/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/external-logging", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/external-logging", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/environment/{environment_id}/addons/{addons_id}/external-url", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/addons/{addons_id}/external-url", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, + { + "endpoint": "/environment/{environment_id}/init-container", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/environment/{environment_id}/init-container", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] + } +, +{ + "endpoint": "/environment/{environment_id}/init-container", + "method": "POST", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "POST", + "url_pattern": "/environment/{environment_id}/init-container", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/init-container/{id}", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/environment/{environment_id}/init-container/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/environment/{environment_id}/init-container/{id}", + "method": "DELETE", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "DELETE", + "url_pattern": "/environment/{environment_id}/init-container/{id}", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/monitoring/templates/{id}/postgresql", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/monitoring/templates/{id}/postgresql", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/scanner/{id}/reports/{report_id}", + "method": "GET", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "GET", + "url_pattern": "/scanner/{id}/reports/{report_id}", + "encoding": "safejson", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/monitoring/templates/{id}/general", + "method": "PUT", + "input_headers": [ "X-Custom-Auth", + "Authorization", + "Accept", + "X-Api-Version", + "Origin", + "Referer", + "User-Agent", + "X-Email", + "X-Circuit-Break" , + "X-Request-Id", + "Content-Type", + "X-PERSONAL-TOKEN", + "X-ORG-ID", + "X-SESSION-ID", + "X-CUSTOM-AUTH" + ], + "extra_config": { + "auth/validator": { + "auth_header_name": "X-Custom-Auth", + "propagate_claims": [ + ["https://myapp.com/email", "x-email"] + ], + "alg": "RS256", + "audience": [ + "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + ], + "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "operation_debug": true +} + + }, + "backend": [ + { + "host": [ + "http://cloud-api.01cloud-staging.svc.cluster.local:8081" + ], + "method": "PUT", + "url_pattern": "/monitoring/templates/{id}/general", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +}, +{ + "endpoint": "/docs/swagger.yaml", + "method": "GET", + "output_encoding": "no-op", + "backend": [ + { + "host": ["http://cloud-api.01cloud-staging.svc.cluster.local:8081"], + "method": "GET", + "url_pattern": "/docs/swagger.yaml", + "encoding": "no-op", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/swagger/index.html", + "method": "GET", + "output_encoding": "no-op", + "backend": [ + { + "host": ["http://cloud-api.01cloud-staging.svc.cluster.local:8081"], + "method": "GET", + "url_pattern": "/swagger/index.html", + "encoding": "no-op" + } + ] +} +, +{ + "endpoint": "/docs/swagger.json", + "method": "GET", + "output_encoding": "no-op", + "backend": [ + { + "host": ["http://cloud-api.01cloud-staging.svc.cluster.local:8081"], + "method": "GET", + "url_pattern": "/docs/swagger.json", + "encoding": "no-op", + "extra_config": { + "backend/http": { + "return_error_code": true + }, +"github.com/devopsfaith/krakend-circuitbreaker/gobreaker": { + "interval": 60, + "timeout": 10, + "max_errors": 5, + "log_status_change": true + } + + } + } + ] +} +, +{ + "endpoint": "/swagger/swagger-ui-bundle.js", + "method": "GET", + "output_encoding": "no-op", + "backend": [ + { + "host": ["http://cloud-api.01cloud-staging.svc.cluster.local:8081"], + "method": "GET", + "url_pattern": "/swagger/swagger-ui-bundle.js", + "encoding": "no-op" + } + ] +} +, +{ + "endpoint": "/swagger/swagger-ui-standalone-preset.js", + "method": "GET", + "output_encoding": "no-op", + "backend": [ + { + "host": ["http://cloud-api.01cloud-staging.svc.cluster.local:8081"], + "method": "GET", + "url_pattern": "/swagger/swagger-ui-standalone-preset.js", + "encoding": "no-op" + } + ] +}, +{ + "endpoint": "/swagger/swagger-ui.css", + "method": "GET", + "output_encoding": "no-op", + "backend": [ + { + "host": ["http://cloud-api.01cloud-staging.svc.cluster.local:8081"], + "method": "GET", + "url_pattern": "/swagger/swagger-ui.css", + "encoding": "no-op" + } + ] +} + + + ] +} diff --git a/gateway/krakend/templates/NOTES.txt b/gateway/krakend/templates/NOTES.txt new file mode 100644 index 0000000..3b6739c --- /dev/null +++ b/gateway/krakend/templates/NOTES.txt @@ -0,0 +1,22 @@ +1. Get the application URL by running these commands: +{{- if .Values.ingress.enabled }} +{{- range $host := .Values.ingress.hosts }} + {{- range .paths }} + http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }} + {{- end }} +{{- end }} +{{- else if contains "NodePort" .Values.service.type }} + export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "krakend.fullname" . }}) + export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") + echo http://$NODE_IP:$NODE_PORT +{{- else if contains "LoadBalancer" .Values.service.type }} + NOTE: It may take a few minutes for the LoadBalancer IP to be available. + You can watch its status by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "krakend.fullname" . }}' + export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "krakend.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") + echo http://$SERVICE_IP:{{ .Values.service.port }} +{{- else if contains "ClusterIP" .Values.service.type }} + export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "krakend.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") + export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") + echo "Visit http://127.0.0.1:8080 to use your application" + kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:$CONTAINER_PORT +{{- end }} diff --git a/gateway/krakend/templates/_helpers.tpl b/gateway/krakend/templates/_helpers.tpl new file mode 100644 index 0000000..e736614 --- /dev/null +++ b/gateway/krakend/templates/_helpers.tpl @@ -0,0 +1,62 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "krakend.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "krakend.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- .Release.Name | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "krakend.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "krakend.labels" -}} +helm.sh/chart: {{ include "krakend.chart" . }} +{{ include "krakend.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "krakend.selectorLabels" -}} +app.kubernetes.io/name: {{ include "krakend.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "krakend.serviceAccountName" -}} +{{- if .Values.serviceAccount.create }} +{{- default (include "krakend.fullname" .) .Values.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.serviceAccount.name }} +{{- end }} +{{- end }} diff --git a/gateway/krakend/templates/configMap.yaml b/gateway/krakend/templates/configMap.yaml new file mode 100644 index 0000000..668f195 --- /dev/null +++ b/gateway/krakend/templates/configMap.yaml @@ -0,0 +1,8 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ .Values.configMap.name }} + namespace: {{ .Values.namespace }} +data: + krakend.json: |- + {{ .Files.Get "files/krakend.json" | nindent 4 }} diff --git a/gateway/krakend/templates/deployment.yaml b/gateway/krakend/templates/deployment.yaml new file mode 100644 index 0000000..0a88c57 --- /dev/null +++ b/gateway/krakend/templates/deployment.yaml @@ -0,0 +1,31 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "krakend.fullname" . }} + namespace: {{ .Values.namespace }} +spec: + replicas: {{ .Values.replicaCount }} + selector: + matchLabels: + app: {{ .Values.selector.app }} + template: + metadata: + labels: + app: {{ .Values.selector.app }} + spec: + containers: + - name: krakend + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + ports: + - containerPort: {{ .Values.service.port }} + - containerPort: 9091 + volumeMounts: + - name: krakend-config + mountPath: /etc/krakend/krakend.json + subPath: krakend.json + args: ["run", "--config", "/etc/krakend/krakend.json"] + volumes: + - name: krakend-config + configMap: + name: {{ .Values.configMap.name }} diff --git a/gateway/krakend/templates/designer-deployment.yaml b/gateway/krakend/templates/designer-deployment.yaml new file mode 100644 index 0000000..639fe13 --- /dev/null +++ b/gateway/krakend/templates/designer-deployment.yaml @@ -0,0 +1,21 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "krakend.fullname" . }}-designer + namespace: {{ .Values.namespace }} +spec: + replicas: {{ .Values.designer.replicaCount }} + selector: + matchLabels: + app: {{ .Values.designer.selector.app }} + template: + metadata: + labels: + app: {{ .Values.designer.selector.app }} + spec: + containers: + - name: {{ .Values.designer.containers.name }} + image: "{{ .Values.designer.image.repository }}:{{ .Values.designer.image.tag }}" + imagePullPolicy: {{ .Values.designer.image.pullPolicy }} + ports: + - containerPort: {{ .Values.designer.service.targetPort }} diff --git a/gateway/krakend/templates/designer-ingress.yaml b/gateway/krakend/templates/designer-ingress.yaml new file mode 100644 index 0000000..88881df --- /dev/null +++ b/gateway/krakend/templates/designer-ingress.yaml @@ -0,0 +1,21 @@ +{{- if .Values.designer.ingress.enabled | default false }} +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ include "krakend.fullname" . }}-designer-ingress + namespace: {{ .Values.namespace }} + annotations: + kubernetes.io/ingress.class: {{ .Values.designer.ingress.class }} +spec: + rules: + - host: {{ .Values.designer.ingress.host }} + http: + paths: + - path: {{ .Values.designer.ingress.path }} + pathType: {{ .Values.designer.ingress.pathType }} + backend: + service: + name: {{ include "krakend.fullname" . }}-designer + port: + number: {{ .Values.designer.service.port }} +{{- end }} diff --git a/gateway/krakend/templates/designer-service.yaml b/gateway/krakend/templates/designer-service.yaml new file mode 100644 index 0000000..7a83352 --- /dev/null +++ b/gateway/krakend/templates/designer-service.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "krakend.fullname" . }}-designer + namespace: {{ .Values.namespace }} +spec: + type: {{ .Values.designer.service.type }} + ports: + - port: {{ .Values.designer.service.port }} + targetPort: {{ .Values.designer.service.targetPort }} + selector: + app: {{ .Values.designer.selector.app }} diff --git a/gateway/krakend/templates/ingress.yaml b/gateway/krakend/templates/ingress.yaml new file mode 100644 index 0000000..50011e9 --- /dev/null +++ b/gateway/krakend/templates/ingress.yaml @@ -0,0 +1,21 @@ +{{- if .Values.ingress.enabled | default false }} +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ include "krakend.fullname" . }}-ingress + namespace: {{ .Values.namespace }} + annotations: + kubernetes.io/ingress.class: {{ .Values.ingress.class }} +spec: + rules: + - host: {{ .Values.ingress.host }} + http: + paths: + - path: {{ .Values.ingress.path }} + pathType: {{ .Values.ingress.pathType }} + backend: + service: + name: krakend + port: + number: {{ .Values.service.port }} +{{- end }} diff --git a/gateway/krakend/templates/service.yaml b/gateway/krakend/templates/service.yaml new file mode 100644 index 0000000..3ca4302 --- /dev/null +++ b/gateway/krakend/templates/service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "krakend.fullname" . }} + namespace: {{ .Values.namespace }} +spec: + type: {{ .Values.service.type | default "ClusterIP" }} + ports: + - port: {{ .Values.service.port | default 8080 }} + targetPort: {{ .Values.service.targetPort | default 8080 }} + name: http + - port: 9091 + targetPort: 9091 + name: metric + selector: + app: {{ .Values.selector.app | default "krakend" }} diff --git a/gateway/krakend/values.yaml b/gateway/krakend/values.yaml new file mode 100644 index 0000000..679da5d --- /dev/null +++ b/gateway/krakend/values.yaml @@ -0,0 +1,46 @@ +replicaCount: 1 + +image: + repository: devopsfaith/krakend + tag: latest + pullPolicy: IfNotPresent + +service: + type: ClusterIP + port: 8080 + targetPort: 8080 + +ingress: + enabled: false + class: nginx + host: devopstest-krakend.checkmysite.live + path: / + pathType: Prefix + +namespace: krakend +selector: + app: krakend + +configMap: + name: krakend-config + +designer: + replicaCount: 0 + selector: + app: designer-krakend + containers: + name: designer-krakend + image: + repository: krakend/designer + tag: latest + pullPolicy: IfNotPresent + service: + type: ClusterIP + port: 8080 + targetPort: 80 + ingress: + enabled: false + class: nginx-internal + host: devopstest-krakend-designer.checkmysite.live + path: / + pathType: Prefix diff --git a/helper/setup.sh b/helper/setup.sh index ad5745b..c7168c8 100644 --- a/helper/setup.sh +++ b/helper/setup.sh @@ -22,7 +22,7 @@ kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/re echo "Installing KrakenD Helm chart..." { - helm upgrade --install krakend "$GATEWAY_DIR/krakend-0.1.0.tgz" -n krakend --create-namespace --wait --timeout 10m + helm upgrade --install krakend "$GATEWAY_DIR/krakend" -n krakend --create-namespace --wait --timeout 10m } || echo " Warning: KrakenD Helm install timed out, continuing..." echo "Installing Envoy Helm chart..." @@ -56,5 +56,5 @@ while true; do done sleep 15 -echo "Completed setup, You IP is $loadbalancerIP" + echo "Run './01cloud --help' for more options" diff --git a/krakend.tmpl b/krakend.tmpl new file mode 100644 index 0000000..af96765 --- /dev/null +++ b/krakend.tmpl @@ -0,0 +1,40 @@ +{ + "$schema": "https://www.krakend.io/schema/v3.json", + "version": 3, + "name": "test-api-gateway", + "timeout": "60s", + "extra_config": { + {{ include "cors_config_global.tmpl" }}, + {{ include "extra_config_monitoring.tmpl" }}, + {{ include "extra_config_logging.tmpl" }}, + "router": { + "return_error_msg": true + } + }, + "endpoints": [{{ range $idx, $endpoint := .endpoints.endpoints }}{{if $idx}},{{end}} + { + "endpoint": "{{ $endpoint.endpoint }}", + "method": "{{ $endpoint.method }}", + "input_headers": {{ marshal $endpoint.input_headers }}, + "output_encoding": "{{ $endpoint.output_encoding }}", + "extra_config": { + {{ include "auth0_validator.tmpl" }} + }, + "backend": [ + { + "is_collection": {{ if eq $endpoint.is_collection "true" }}true{{ else }}false{{ end }}, + "encoding": "json", + "host": [ + "{{ $endpoint.backend_host }}" + ], + "url_pattern": "{{ $endpoint.backend_url_pattern }}", + "extra_config": { + {{ include "rate_limit_backend.tmpl" }} + } + } + ] + } + {{ end }}, + {{ template "endpoints.tmpl" . }} + ] +} From db23c77700255f79085a1d89e78ce09161f98090 Mon Sep 17 00:00:00 2001 From: rajivbb Date: Fri, 19 Dec 2025 17:03:21 +0545 Subject: [PATCH 4/9] chore: update the api and ui image --- charts/values.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/charts/values.yaml b/charts/values.yaml index 9162117..078d44e 100644 --- a/charts/values.yaml +++ b/charts/values.yaml @@ -4,9 +4,9 @@ image: - ui: 01community/01cloud:v0.0.1 + ui: 01community/01cloud-ui:v0.0.2 admin: 01community/01cloud-admin:v0.0.1 - api: 01community/01cloud-api:v0.0.1 + api: 01community/01cloud-api:v0.0.2 core: 01community/01cloud-core:v0.0.1 ci: 01community/01cloud-tekton-ci:v0.0.1 provision: 01community/01cloud-tekton-provision:v0.0.1 From b1d529ddcc2a4655b87c6d2176bde426c1ba82ff Mon Sep 17 00:00:00 2001 From: rajivbb Date: Fri, 19 Dec 2025 17:10:35 +0545 Subject: [PATCH 5/9] chore: update the admin image --- charts/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/values.yaml b/charts/values.yaml index 078d44e..7293cd1 100644 --- a/charts/values.yaml +++ b/charts/values.yaml @@ -5,7 +5,7 @@ image: ui: 01community/01cloud-ui:v0.0.2 - admin: 01community/01cloud-admin:v0.0.1 + admin: 01community/01cloud-admin:v0.0.2 api: 01community/01cloud-api:v0.0.2 core: 01community/01cloud-core:v0.0.1 ci: 01community/01cloud-tekton-ci:v0.0.1 From 7cd3e2588f57ef860dd1f040cb9e874948c9e4e9 Mon Sep 17 00:00:00 2001 From: rajivbb Date: Mon, 22 Dec 2025 11:58:10 +0545 Subject: [PATCH 6/9] chore: readme file updates --- AUTHENTICATION-CONFIGURATION.md | 2 +- README.md | 33 ++++++++++++++++++++------------- gateway/README.md | 0 3 files changed, 21 insertions(+), 14 deletions(-) delete mode 100644 gateway/README.md diff --git a/AUTHENTICATION-CONFIGURATION.md b/AUTHENTICATION-CONFIGURATION.md index 7b850ab..138dbda 100644 --- a/AUTHENTICATION-CONFIGURATION.md +++ b/AUTHENTICATION-CONFIGURATION.md @@ -193,7 +193,7 @@ Note: It will auto update the krakend json file in the krakend helm chart Console UI ```yaml REACT_APP_AUTH0_DOMAIN: "your-tenant.auth0.com" -REACT_APP_AUTH0_CLIENT_ID: "your_client_id" +REACT_APP_AUTH0_CLIENT_ID: "your_client_id"` REACT_APP_AUTH0_AUDIENCE: "https://{{ .auth0_domain }}/.well-known/jwks.json" ``` Admin UI diff --git a/README.md b/README.md index 44e7eed..215a0b4 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ A local, reproducible Kubernetes development environment for the 01Cloud platfor - [Stopping and cleanup](#stopping-and-cleanup) - [Configuration](#configuration) - [Helm values](#helm-values) - - [Ingress and hostnames](#ingress-and-hostnames) + - [Httproutes and hostnames](#httproute-and-hostnames) - [Images and building locally](#images-and-building-locally) - [Alerting and Monitoring](#alerting-and-monitoring) - [Contributing](#contributing) @@ -47,11 +47,11 @@ A local, reproducible Kubernetes development environment for the 01Cloud platfor ## Overview -01Cloud Development Environment is a batteries-included local stack to run the full 01Cloud platform on Kubernetes. It automates cluster setup, installs core controllers (Ingress, Tekton, MetalLB), provisions databases and messaging, deploys all 01Cloud services via a Helm chart, and optionally seeds the system with sample configuration and data for an instant test drive. +01Cloud Development Environment is a batteries-included local stack to run the full 01Cloud platform on Kubernetes. It automates cluster setup, installs core controllers (Gateway API, Tekton, MetalLB), provisions databases and messaging, deploys all 01Cloud services via a Helm chart, and optionally seeds the system with sample configuration and data for an instant test drive. What it does: - Creates or prepares a local Kubernetes cluster (Kind) -- Installs ingress and load balancer controllers +- Installs Gateway API and load balancer controllers - Deploys databases and queues (PostgreSQL, MongoDB, RabbitMQ) - Deploys all 01Cloud microservices via Helm and Skaffold - Sets up local hostnames and TLS for easy browsing @@ -77,26 +77,28 @@ Why it was created: ## Features - One-command bootstrap of the full stack via a friendly CLI -- Local Kubernetes with Kind and MetalLB, plus NGINX Ingress +- Local Kubernetes with Kind and MetalLB, plus Gateway API Controller - Tekton installation for CI/CD workflows inside the cluster - Helm chart to deploy 01Cloud microservices with configurable values - Skaffold integration for dev/run/build workflows -- Predefined services and ingresses for UI, Admin, API, Terminal, etc. +- Predefined services and httproute for UI, Admin, API, Terminal, etc. - Data layer ready out-of-the-box: PostgreSQL, MongoDB, RabbitMQ - Seeder utility to populate default configuration and sample data - Hostname automation to route staging.* domains to your local cluster - Clean teardown of services and data +- Integrated Auth0 authentication with KrakenD API Gateway --- ## Architecture and Components Core components deployed by this environment: -- Controllers: NGINX Ingress Controller, MetalLB, Tekton +- Controllers: Gateway API Controller, MetalLB, Tekton - Data services: PostgreSQL, MongoDB, RabbitMQ - 01Cloud services: UI, Admin, API, Core, Notifications, Payments, Support, Monitoring, Backup, Helm CD, Terminal +- Authentication: Auth0 + KrakenD API Gateway for JWT validation - Observability hooks: optional logging and monitoring configuration -- TLS integration and ingress with hostnames like console.staging.01cloud.dev +- TLS integration and httproute with hostnames like console.staging.01cloud.dev All services are orchestrated via: - Helm chart at charts/ @@ -116,6 +118,10 @@ All services are orchestrated via: - Helm 3.x - Skaffold 2.x - git, curl, jq + - - **Auth0 and KrakenD**: Configuration is required before installation. + - See [Authentication Configuration Guide](AUTHENTICATION-CONFIGURATION.md) for detailed steps. + + Install snippets (Linux/Ubuntu): @@ -133,6 +139,7 @@ Verify: kubectl cluster-info kubectl get nodes ``` + ### 2)Template preparation: Fill the values [`Values.yaml`](charts/template/values.yaml) and [`ConfigMap.yaml`](charts/template/configmap.yaml) inside the charts/template folder. These Template are necessary during provision for one to get features like 0Auth, mail service etc. @@ -154,7 +161,7 @@ chmod +x ./01cloud Option B: Step-by-step ```bash -# Install MetalLB, Tekton, and NGINX Ingress Controller +# Install MetalLB, Tekton, and Gateway API Controller ./01cloud setup # Add hostnames (requires sudo) @@ -175,7 +182,7 @@ Option B: Step-by-step ```bash kubectl get pods -n 01cloud-staging -kubectl get ing -A +kubectl get httproutes -A ``` Then open in your browser: - https://console.staging.01cloud.dev @@ -197,7 +204,7 @@ Common commands: ```bash ./01cloud install [env [mode]] # setup + host + dbrun + run (+ seed in install.sh) -./01cloud setup [env [mode]] # install required controllers (Tekton, Ingress, MetalLB) +./01cloud setup [env [mode]] # install required controllers (Tekton, Gateway API, MetalLB) ./01cloud host [add|remove] # map local LB IP to staging.* hostnames in /etc/hosts ./01cloud dbrun [rwo|rwx] # install PostgreSQL, MongoDB, RabbitMQ with PVCs ./01cloud dbseed # seed sample data and defaults @@ -242,7 +249,7 @@ Tip: Review seeder/seeder.sh to understand exactly what is being created and adj # Remove app + DB resources ./01cloud dbstop -# Remove all setup (ingress, controllers) and resources +# Remove all setup (Gateway API, controllers) and resources ./01cloud clean # Optionally delete the Kind cluster when finished @@ -291,7 +298,7 @@ This project is licensed under the MIT License. See the LICENSE file for details ## Credits - 01Cloud team at [BerryBytes](https://01cloud.io/) -- Open-source projects that make this possible: Kubernetes, Kind, Helm, Skaffold, Tekton, MetalLB, NGINX Ingress Controller, PostgreSQL, MongoDB, RabbitMQ, Loki, and others. +- Open-source projects that make this possible: Kubernetes, Kind, Helm, Skaffold, Tekton, MetalLB, Gateway API Controller, PostgreSQL, MongoDB, RabbitMQ, Loki, and others. If your organization uses this environment or contributes improvements, consider adding yourself to CONTRIBUTORS.md in a future PR. @@ -307,7 +314,7 @@ If your organization uses this environment or contributes improvements, consider ## Troubleshooting -- No external IP for ingress: +- No external IP for gatewway: - Ensure MetalLB installed and ready: kubectl get pods -n metallb-system - Re-run: ./01cloud setup - Hostnames not resolving: diff --git a/gateway/README.md b/gateway/README.md deleted file mode 100644 index e69de29..0000000 From ef0630cbdfc82e0f3062db2f8214c8c62d78451c Mon Sep 17 00:00:00 2001 From: rajivbb Date: Mon, 22 Dec 2025 14:37:33 +0545 Subject: [PATCH 7/9] chore: minor updates on readme files --- AUTHENTICATION-CONFIGURATION.md | 166 ++++++++++++++++---------------- README.md | 1 - 2 files changed, 82 insertions(+), 85 deletions(-) diff --git a/AUTHENTICATION-CONFIGURATION.md b/AUTHENTICATION-CONFIGURATION.md index 138dbda..7b1c171 100644 --- a/AUTHENTICATION-CONFIGURATION.md +++ b/AUTHENTICATION-CONFIGURATION.md @@ -1,54 +1,36 @@ -Auth0 and KrakenD Configuration Guide -===================================== - -Prerequisites -------------- - -Complete these configurations before running ./01cloud install. - -1\. Auth0 Setup ---------------- - -### Create Auth0 Account - -1. Go to [auth0.com](https://auth0.com) and create an account - -2. Create a new tenant - - -### Create Single Page Application - -1. Navigate to **Applications** → **Create Application** - -2. Select **Single Page Web Applications** - -3. Configure URLs: - - * **Allowed Callback URLs**: http://localhost:3000/callback, https://your-domain.com/callback - - * **Allowed Logout URLs**: http://localhost:3000, https://your-domain.com - - * **Allowed Web Origins**: http://localhost:3000, https://your-domain.com - - - -### Create User - -Create user with these credentials (required for database seeder): - -* **Email**: admin@admin - -* **Password**: 01cloud@2020 - -* **Connection**: Username-Password-Authentication - -### Create Action - -* Navigate to the **Actions** - **Triggers** -* Select the **post-login** - **create custom action** - - -```json +AUTHENTICATION-CONFIGURATION.md +# Auth0 and KrakenD Configuration Guide + +## Prerequisites +Complete these configurations **before** running `./01cloud install`. + +## 1. Auth0 Setup + +### 1.1 Create Auth0 Account +1. Go to [auth0.com](https://auth0.com) and create an account +2. Create a new tenant + +### 1.2 Create Single Page Application +1. Navigate to **Applications** → **Create Application** +2. Select **Single Page Web Applications** +3. Configure URLs: + - **Allowed Callback URLs**: `http://localhost:3000/callback`, `https://your-domain.com/callback` + - **Allowed Logout URLs**: `http://localhost:3000`, `https://your-domain.com` + - **Allowed Web Origins**: `http://localhost:3000`, `https://your-domain.com` + +### 1.3 Create Admin User +Create a user with these credentials (required for database seeder): +- **Email**: `admin@admin` +- **Password**: `01cloud@2020` +- **Connection**: `Username-Password-Authentication` + +### 1.4 Create Post-Login Action +1. Navigate to **Actions** → **Triggers** +2. Select **Post Login** → **Create Custom Action** +3. Name the action (e.g., "Set Custom Claims") +4. Copy and paste the following code: + +```javascript exports.onExecutePostLogin = async (event, api) => { const namespace = 'https://myapp.com/'; // Must be a valid URI @@ -123,54 +105,57 @@ exports.onExecutePostLogin = async (event, api) => { // For now, we'll let the login continue even if claims fail } }; - ``` +5. Click **Deploy** to save the action +### 1.5 Save Auth0 Configuration Values +Save these values for later use: -### Save Auth0 Values - -ParameterLocation +| Parameter | Location | Example | +|-----------|----------|---------| +| **Domain** | Application → Settings → Domain | `your-tenant.auth0.com` | +| **Client ID** | Application → Settings | `your_client_id_here` | +| **Audience** | Applications → API → API Identifier | `https://api.01cloud.com` | -**Domain** Application → Settings → your-tenant.auth0.com +## 2. KrakenD Configuration -**Client ID** Application → Settings +### 2.1 Prepare Gateway Templates +1. Navigate to the gateway directory: + ```bash + cd gateway + ``` +2. Extract the template files: + ```bash + tar -xzf krakend-templates.tgz + ``` -**Audience** Applications → API → API Audience +### 2.2 Update Auth0 Template Files +Update the following template files with your Auth0 values: -2\. KrakenD Configuration -------------------------- - -### Update Auth0 Settings - -Update Auth0 Partial Templates - -After configuring Auth0, update the following template files with your Auth0 values: - -``` -File: gateway/config/dev/partials/auth0_audience.tmpl -``` +**File:** `gateway/config/dev/partials/auth0_audience.tmpl` ```json "https://{domain-name}.us.auth0.com/api/v2/" ``` -Update the audience value to match your Auth0 API identifier (e.g., https://api.01cloud.com) +Replace with your actual API audience (e.g., `"https://api.01cloud.com"`) -File: gateway/config/dev/partials/auth0_jwk_url.tmpl +**File:** `gateway/config/dev/partials/auth0_jwk_url.tmpl` ```json "https://{{ .auth0_domain }}/.well-known/jwks.json" ``` -Update the domain value to your Auth0 tenant domain (e.g., your-tenant.auth0.com) +Replace `{{ .auth0_domain }}` with your Auth0 tenant domain (e.g., `your-tenant.auth0.com`) -File: gateway/config/dev/partials/auth0_validator.tmpl +**File:** `gateway/config/dev/partials/auth0_validator.tmpl` ```json { "audience": "https://{domain-name}.us.auth0.com/api/v2/", "jwk_url": "https://{{ .auth0_domain }}/.well-known/jwks.json", } ``` +Update both `audience` and `jwk_url` with your actual values. -Generate KrakenD JSON -Run from /home/berrybytes/01cloud-platform/gateway: +### 2.3 Generate KrakenD Configuration +From the project root directory (`01cloud-platform/`), run: ```bash docker run \ @@ -186,21 +171,27 @@ docker run \ -e SERVICE_NAME="KrakenD API Gateway" \ krakend:2.10.0 check -tdc "krakend.tmpl" ``` -Note: It will auto update the krakend json file in the krakend helm chart -3. Update UI ConfigMaps -------------------------- -Console UI +**Note:** This command will automatically update the `krakend.json` file in the KrakenD Helm chart. + +## 3. Update UI Configuration + +### 3.1 Console UI ConfigMap +Update the following environment variables: + ```yaml REACT_APP_AUTH0_DOMAIN: "your-tenant.auth0.com" -REACT_APP_AUTH0_CLIENT_ID: "your_client_id"` -REACT_APP_AUTH0_AUDIENCE: "https://{{ .auth0_domain }}/.well-known/jwks.json" +REACT_APP_AUTH0_CLIENT_ID: "your_client_id" +REACT_APP_AUTH0_AUDIENCE: "https://your-tenant.auth0.com/api/v2/" ``` -Admin UI + +### 3.2 Admin UI ConfigMap +Update the following environment variables: + ```yaml REACT_APP_AUTH0_DOMAIN: "your-tenant.auth0.com" REACT_APP_AUTH0_CLIENT_ID: "your_client_id" -REACT_APP_AUTH0_AUDIENCE: "https://{{ .auth0_domain }}/.well-known/jwks.json" +REACT_APP_AUTH0_AUDIENCE: "https://your-tenant.auth0.com/api/v2/" ``` ## 4. Installation @@ -209,3 +200,10 @@ After completing all configurations, run the installation script: ```bash ./01cloud install +``` + +## Troubleshooting + +- **Missing templates**: Ensure you've extracted `krakend-templates.tgz` in the gateway directory +- **Invalid JSON**: Verify your Auth0 values are correctly formatted in the template files +- **Authentication failures**: Double-check that all URLs and domains match exactly between Auth0 and your configuration diff --git a/README.md b/README.md index 215a0b4..29cb4d0 100644 --- a/README.md +++ b/README.md @@ -118,7 +118,6 @@ All services are orchestrated via: - Helm 3.x - Skaffold 2.x - git, curl, jq - - - **Auth0 and KrakenD**: Configuration is required before installation. - See [Authentication Configuration Guide](AUTHENTICATION-CONFIGURATION.md) for detailed steps. From 7266f44b6da7292ad57e0b535c64571be672f556 Mon Sep 17 00:00:00 2001 From: rajivbb Date: Mon, 22 Dec 2025 16:14:54 +0545 Subject: [PATCH 8/9] chore: minor updates on readme files --- gateway/krakend/files/krakend.json | 1350 ++++++++++++++-------------- 1 file changed, 675 insertions(+), 675 deletions(-) diff --git a/gateway/krakend/files/krakend.json b/gateway/krakend/files/krakend.json index 5c04138..388671e 100644 --- a/gateway/krakend/files/krakend.json +++ b/gateway/krakend/files/krakend.json @@ -5,7 +5,7 @@ "timeout": "60s", "extra_config": { "github_com/devopsfaith/krakend-cors": { - "allow_origins": [ "http://localhost:3000","https://console.staging.01cloud.dev","https://admin.staging.01cloud.dev"], + "allow_origins": [ "http://localhost:3000","https://console.staging.01cloud.dev","https://console.test.01cloud.dev","https://admin.test.01cloud.dev","https://admin.staging.01cloud.dev"], "allow_methods": [ "GET", "HEAD", "POST", @@ -87,9 +87,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -144,10 +144,10 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json" + "jwk_url": "https://"domain-name"/.well-known/jwks.json" , "operation_debug": true } @@ -202,9 +202,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -259,9 +259,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -436,9 +436,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -493,9 +493,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -550,9 +550,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -629,9 +629,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -688,9 +688,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -745,9 +745,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -811,9 +811,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -868,9 +868,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -928,9 +928,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -984,9 +984,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1041,9 +1041,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1098,9 +1098,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1155,9 +1155,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1212,9 +1212,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1271,9 +1271,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1328,9 +1328,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1385,9 +1385,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1442,9 +1442,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1500,9 +1500,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1557,9 +1557,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1616,9 +1616,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1673,9 +1673,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1730,9 +1730,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1787,9 +1787,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1845,9 +1845,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1902,9 +1902,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -1961,9 +1961,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2018,9 +2018,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2075,9 +2075,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2133,9 +2133,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2190,9 +2190,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2248,9 +2248,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2305,9 +2305,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2362,9 +2362,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2419,9 +2419,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2477,9 +2477,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2533,9 +2533,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2590,9 +2590,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2649,9 +2649,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2706,9 +2706,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2763,9 +2763,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2820,9 +2820,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2877,9 +2877,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2936,9 +2936,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -2993,9 +2993,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3050,9 +3050,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3107,9 +3107,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3164,9 +3164,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3223,9 +3223,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3282,9 +3282,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3341,9 +3341,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3446,9 +3446,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3503,9 +3503,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3560,9 +3560,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3617,9 +3617,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3674,9 +3674,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3732,9 +3732,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3789,9 +3789,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3846,9 +3846,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3904,9 +3904,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -3963,9 +3963,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4020,9 +4020,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4079,9 +4079,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4136,9 +4136,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4193,9 +4193,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4250,9 +4250,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4307,9 +4307,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4364,9 +4364,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4421,9 +4421,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4481,9 +4481,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4538,9 +4538,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4595,9 +4595,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4652,9 +4652,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4709,9 +4709,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4766,9 +4766,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4823,9 +4823,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4880,9 +4880,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4937,9 +4937,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -4994,9 +4994,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5051,9 +5051,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5110,9 +5110,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5167,9 +5167,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5224,9 +5224,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5281,9 +5281,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5338,9 +5338,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5396,9 +5396,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5454,9 +5454,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5511,9 +5511,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5568,9 +5568,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5627,9 +5627,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5699,9 +5699,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5756,9 +5756,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5813,9 +5813,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5870,9 +5870,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5927,9 +5927,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -5986,9 +5986,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6044,9 +6044,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6102,9 +6102,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6160,9 +6160,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6217,9 +6217,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6274,9 +6274,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6330,9 +6330,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6389,9 +6389,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6446,9 +6446,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6503,9 +6503,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6560,9 +6560,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6617,9 +6617,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6690,9 +6690,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6749,9 +6749,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6806,9 +6806,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6863,9 +6863,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6920,9 +6920,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -6977,9 +6977,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -7039,9 +7039,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7096,9 +7096,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7153,9 +7153,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7217,9 +7217,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7295,9 +7295,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7352,9 +7352,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7409,9 +7409,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7467,9 +7467,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7531,9 +7531,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7594,9 +7594,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7651,9 +7651,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7710,9 +7710,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7767,9 +7767,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7824,9 +7824,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7881,9 +7881,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7938,9 +7938,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -7997,9 +7997,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8054,9 +8054,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8111,9 +8111,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8171,9 +8171,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8233,9 +8233,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8292,9 +8292,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8349,9 +8349,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8407,9 +8407,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8465,9 +8465,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8523,9 +8523,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8635,9 +8635,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -8697,9 +8697,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8758,9 +8758,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8817,9 +8817,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8876,9 +8876,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -8948,9 +8948,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9005,9 +9005,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9062,9 +9062,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9120,9 +9120,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9177,9 +9177,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9234,9 +9234,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9292,9 +9292,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9352,9 +9352,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9414,9 +9414,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9474,9 +9474,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9531,9 +9531,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9588,9 +9588,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9648,9 +9648,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9706,9 +9706,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9766,9 +9766,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9823,9 +9823,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9880,9 +9880,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9937,9 +9937,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -9994,9 +9994,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10053,9 +10053,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10111,9 +10111,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10168,9 +10168,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10224,9 +10224,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10280,9 +10280,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10337,9 +10337,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10393,9 +10393,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10450,9 +10450,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10508,9 +10508,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -10587,9 +10587,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10644,9 +10644,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10701,9 +10701,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10758,9 +10758,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10815,9 +10815,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10872,9 +10872,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10929,9 +10929,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -10986,9 +10986,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11043,9 +11043,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11100,9 +11100,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11157,9 +11157,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11214,9 +11214,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11271,9 +11271,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11328,9 +11328,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11386,9 +11386,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11443,9 +11443,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11500,9 +11500,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11557,9 +11557,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11614,9 +11614,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11671,9 +11671,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11728,9 +11728,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11785,9 +11785,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11842,9 +11842,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11899,9 +11899,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -11956,9 +11956,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12013,9 +12013,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12070,9 +12070,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12127,9 +12127,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12184,9 +12184,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12241,9 +12241,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12298,9 +12298,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12355,9 +12355,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12412,9 +12412,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12469,9 +12469,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12526,9 +12526,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12583,9 +12583,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12640,9 +12640,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12697,9 +12697,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -12754,9 +12754,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -12816,9 +12816,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -12878,9 +12878,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -12932,9 +12932,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -12986,9 +12986,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -13040,9 +13040,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -13094,9 +13094,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -13148,9 +13148,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13206,9 +13206,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13264,9 +13264,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13321,9 +13321,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13378,9 +13378,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13435,9 +13435,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13492,9 +13492,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -13557,9 +13557,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13614,9 +13614,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -13668,9 +13668,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13725,9 +13725,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13782,9 +13782,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13839,9 +13839,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13897,9 +13897,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -13955,9 +13955,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14012,9 +14012,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -14066,9 +14066,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -14120,9 +14120,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14177,9 +14177,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14250,9 +14250,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14307,9 +14307,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14364,9 +14364,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } , @@ -14441,9 +14441,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14498,9 +14498,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14555,9 +14555,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14612,9 +14612,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14669,9 +14669,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14726,9 +14726,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14783,9 +14783,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14840,9 +14840,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14900,9 +14900,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -14957,9 +14957,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15014,9 +15014,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15071,9 +15071,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15128,9 +15128,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15185,9 +15185,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15242,9 +15242,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15299,9 +15299,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15356,9 +15356,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15413,9 +15413,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15470,9 +15470,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15528,9 +15528,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15585,9 +15585,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15642,9 +15642,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15699,9 +15699,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15758,9 +15758,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15817,9 +15817,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15874,9 +15874,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15931,9 +15931,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -15988,9 +15988,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16045,9 +16045,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16102,9 +16102,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16159,9 +16159,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16216,9 +16216,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16273,9 +16273,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16329,9 +16329,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16386,9 +16386,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16443,9 +16443,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16502,9 +16502,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16559,9 +16559,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16615,9 +16615,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16673,9 +16673,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16730,9 +16730,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16787,9 +16787,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16845,9 +16845,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16903,9 +16903,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -16961,9 +16961,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -17076,9 +17076,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -17134,9 +17134,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -17191,9 +17191,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -17249,9 +17249,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -17306,9 +17306,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -17363,9 +17363,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -17422,9 +17422,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -17480,9 +17480,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -18167,9 +18167,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -19363,9 +19363,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -19473,9 +19473,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -19660,9 +19660,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -19716,9 +19716,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -19773,9 +19773,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -19830,9 +19830,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -19887,9 +19887,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -19944,9 +19944,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20000,9 +20000,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20057,9 +20057,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20114,9 +20114,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20170,9 +20170,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20226,9 +20226,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20282,9 +20282,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20338,9 +20338,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20395,9 +20395,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20452,9 +20452,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20509,9 +20509,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20568,9 +20568,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20627,9 +20627,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20686,9 +20686,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20745,9 +20745,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20802,9 +20802,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20910,9 +20910,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -20967,9 +20967,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21026,9 +21026,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21083,9 +21083,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21140,9 +21140,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21199,9 +21199,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21256,9 +21256,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21313,9 +21313,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21369,9 +21369,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21426,9 +21426,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21483,9 +21483,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21540,9 +21540,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21596,9 +21596,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21652,9 +21652,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21708,9 +21708,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21765,9 +21765,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } @@ -21822,9 +21822,9 @@ ], "alg": "RS256", "audience": [ - "https://dev-xtsht1rd77wbvbyp.us.auth0.com/api/v2/" + "https://dev-xxx.us.auth0.com/api/v2/" ], - "jwk_url": "https://dev-xtsht1rd77wbvbyp.us.auth0.com/.well-known/jwks.json", + "jwk_url": "https://"domain-name"/.well-known/jwks.json", "operation_debug": true } From 7e1a311c264d9a6d4cc84f101c00ed21f35e1fb5 Mon Sep 17 00:00:00 2001 From: rajivbb Date: Mon, 22 Dec 2025 16:20:22 +0545 Subject: [PATCH 9/9] chore: minor updates on readme files --- AUTHENTICATION-CONFIGURATION.md | 17 ++++++++--------- README.md | 2 +- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/AUTHENTICATION-CONFIGURATION.md b/AUTHENTICATION-CONFIGURATION.md index 7b1c171..55baf1e 100644 --- a/AUTHENTICATION-CONFIGURATION.md +++ b/AUTHENTICATION-CONFIGURATION.md @@ -114,9 +114,9 @@ Save these values for later use: | Parameter | Location | Example | |-----------|----------|---------| -| **Domain** | Application → Settings → Domain | `your-tenant.auth0.com` | -| **Client ID** | Application → Settings | `your_client_id_here` | -| **Audience** | Applications → API → API Identifier | `https://api.01cloud.com` | +| **Domain** | Application → Settings → Domain | `dev-xxx.us.auth0.comcom` | +| **Client ID** | Application → Settings | `eyxxxxxME` | +| **Audience** | Applications → API → API Identifier | `https://dev-xxx.us.auth0.com/api/v2/` | ## 2. KrakenD Configuration @@ -135,21 +135,20 @@ Update the following template files with your Auth0 values: **File:** `gateway/config/dev/partials/auth0_audience.tmpl` ```json -"https://{domain-name}.us.auth0.com/api/v2/" +"https://{{ domain-name }}.us.auth0.com/api/v2/" ``` -Replace with your actual API audience (e.g., `"https://api.01cloud.com"`) **File:** `gateway/config/dev/partials/auth0_jwk_url.tmpl` ```json -"https://{{ .auth0_domain }}/.well-known/jwks.json" +"https://{{ domain-name }}/.well-known/jwks.json" ``` -Replace `{{ .auth0_domain }}` with your Auth0 tenant domain (e.g., `your-tenant.auth0.com`) +Replace `{{ domain-name }}` with your Auth0 tenant domain **File:** `gateway/config/dev/partials/auth0_validator.tmpl` ```json { - "audience": "https://{domain-name}.us.auth0.com/api/v2/", - "jwk_url": "https://{{ .auth0_domain }}/.well-known/jwks.json", + "audience": "https://{{ domain-name }}.us.auth0.com/api/v2/", + "jwk_url": "https://{{ domain-name }}/.well-known/jwks.json", } ``` Update both `audience` and `jwk_url` with your actual values. diff --git a/README.md b/README.md index 29cb4d0..2154528 100644 --- a/README.md +++ b/README.md @@ -118,7 +118,7 @@ All services are orchestrated via: - Helm 3.x - Skaffold 2.x - git, curl, jq - - See [Authentication Configuration Guide](AUTHENTICATION-CONFIGURATION.md) for detailed steps. + - Configure Auth0 and KrankenD, see [Authentication Configuration Guide](AUTHENTICATION-CONFIGURATION.md) for detailed steps Install snippets (Linux/Ubuntu):