diff --git a/legacy/dash-prototype/README.md b/legacy/dash-prototype/README.md
deleted file mode 100644
index 2db282e..0000000
--- a/legacy/dash-prototype/README.md
+++ /dev/null
@@ -1,54 +0,0 @@
-# سامانه مدیریت انبار — فرانتاند متصل به استک (FastAPI + PostgreSQL + Casdoor)
-
-معماری نهایی:
-
-```
-مرورگر (فرانت HTML — inventory-system.html / change-inventory.html)
- │
- ├── ورود: Casdoor (OIDC + PKCE) یا رمز آزمایشی محلی
- │ → نقش/پروژه از پروفایل محلی (ایمیل ⇄ مدیر پروژه)
- │
- └── داده: هدرهای X-User-Role / X-Project-Id / X-User-Name-B64
- → FastAPI (/api/v1) → PostgreSQL
-```
-
-## اجرا
-
-**استک (Docker):**
-```
-cd v1.2
-docker compose up -d --build
-```
-- فرانت: http://localhost:3000 (nginx — پراکسی /api به بکاند)
-- API: http://localhost:8000/docs
-- Casdoor: http://localhost:8080 (admin/123) — بعد از seed: کاربرها mousavi/goli/mohaghegh/razaei با رمز 123456
-- seed استک: `py seed_stack.py` (واحد/پروژه/برند/متریال/انبار/تراکنش نمونه)
-- seed Casdoor: `cd casdoor && py seed.py` (سازمان/اپلیکیشن OIDC/کاربران + تولید casdoor-config.js)
-
-**اجرای محلی بدون Docker برای فرانت:**
-```
-py -m http.server 8123
-```
-و `app-config.js` را با `apiBase: 'http://localhost:8000/api/v1'` بگذارید.
-
-## ساختار
-
-| فایل | نقش |
-|---|---|
-| `inventory-system.html` | داشبورد، کنترل روزانه، انبارها، سازماندهی، ورود |
-| `change-inventory.html` | صفحه تغییر موجودی (فایل مستقل — فقط «برگشت به داشبوردها») |
-| `core.js` | هویت/نشست + لایه API (fetch + هدرهای نقش) + آینه دادهها |
-| `style.css` | استایل مشترک |
-| `casdoor-config.js` | تنظیمات اتصال به Casdoor (تولیدشده توسط seed) |
-| `app-config.js` | آدرس API بکاند |
-| `callback.html` | بازگشت OIDC (تبدیل کد به توکن و نشست) |
-| `test-logic-v3.mjs` | تست (هویت + لایه API در برابر استک واقعی) → ALL_LOGIC_V3_OK |
-| `v1.2/` | استک: backend (FastAPI) + frontend (nginx) + sql + seed_stack.py + docker-compose.yml |
-| `casdoor/` | docker-compose Casdoor + PostgreSQL + seed.py |
-
-## مدل دسترسی
-
-- **ادمین**: فقطخواندنی برای موجودی؛ مدیریت ساختار (پروژه/انبار/مدیران) در «سازماندهی».
-- **مدیر پروژه**: ثبت و مشاهده فقط در انبارهای پروژه خودش (اعمال در بکاند با هدر X-Project-Id).
-- کاربران محلی (ایمیل ⇄ نقش/پروژه) در `localStorage` نگهداری میشوند؛ هویت واقعی از Casdoor.
-- رمزهای آزمایشی محلی: 10 ادمین، 1/2 مدیر پروژه برج آیتا، 3 مدیر پروژه الماس.
diff --git a/legacy/dash-prototype/app-config.js b/legacy/dash-prototype/app-config.js
deleted file mode 100644
index ef59ce0..0000000
--- a/legacy/dash-prototype/app-config.js
+++ /dev/null
@@ -1,6 +0,0 @@
-// پیکربندی برنامه — آدرس API بکاند
-// - در استک Docker (nginx): '/api/v1' (پراکسی به کانتینر api)
-// - در اجرای محلی با http.server: آدرس کامل http://localhost:8000/api/v1
-window.APP_CONFIG = {
- apiBase: 'http://localhost:8000/api/v1'
-};
diff --git a/legacy/dash-prototype/callback.html b/legacy/dash-prototype/callback.html
deleted file mode 100644
index 642f138..0000000
--- a/legacy/dash-prototype/callback.html
+++ /dev/null
@@ -1,92 +0,0 @@
-
-
-
-
-
-
-ورود — سامانه مدیریت انبار
-
-
-
-
-
-
-
-
-
-
سامانه مدیریت انبار
-
در حال بازگشت از حساب سازمانی…
-
-
-
-
-
-
-
-
-
سامانه مدیریت انبار
-
در حال بازگشت از حساب سازمانی…
-
-
-
-
-
diff --git a/legacy/dash-prototype/casdoor-config.js b/legacy/dash-prototype/casdoor-config.js
deleted file mode 100644
index 8645e46..0000000
--- a/legacy/dash-prototype/casdoor-config.js
+++ /dev/null
@@ -1,9 +0,0 @@
-// تنظیمات اتصال به Casdoor — توسط casdoor/seed.py تولید شده
-window.CASDOOR_CONFIG = {
- serverUrl: 'http://localhost:8080',
- clientId: 'inventory-app-client',
- clientSecret: 'inventory-app-secret-2026',
- organization: 'inventory',
- appName: 'inventory-app',
- redirectUri: 'http://localhost:8123/callback.html'
-};
diff --git a/legacy/dash-prototype/change-inventory.html b/legacy/dash-prototype/change-inventory.html
deleted file mode 100644
index f6a2c82..0000000
--- a/legacy/dash-prototype/change-inventory.html
+++ /dev/null
@@ -1,797 +0,0 @@
-
-
-
-
-
-
-تغییر موجودی — سامانه مدیریت انبار
-
-
-
-
-
-
-
-
-
-
-
-
سامانه مدیریت انبار
-
برای ورود، رمز عبور خود را وارد کنید
-
رمز عبور
-
-
-
- ورود به سامانه
-
-
یا
-
-
- ورود با حساب سازمانی
-
-
-
- رمزهای آزمایشی:
- ۱ ← مدیر پروژه برج آیتا — فاز ۳ (آقای موسوی) | ۲ ← مدیر پروژه برج آیتا — فاز ۳ (آقای گلی)
- ۳ ← مدیر پروژه مجتمع تجاری الماس (آقای محقق) | ۱۰ ← ادمین (آقای رضایی — فقط خواندنی)
-
-
-
-
-
-
-
-
-
-
-
-
سامانه مدیریت انبار
-
دادهها در پایگاه داده ذخیره میشوند
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/legacy/dash-prototype/core.js b/legacy/dash-prototype/core.js
deleted file mode 100644
index 65950a3..0000000
--- a/legacy/dash-prototype/core.js
+++ /dev/null
@@ -1,582 +0,0 @@
-/* ============================================================
- core.js — بخش مشترک سامانه مدیریت انبار (نسخه متصل به API)
- (ثابتها، هویت/نشست، لایه API، نوار بالا، توست)
- بارگذاری مشترک در inventory-system.html و change-inventory.html
- دادهها از بکاند (FastAPI /api/v1) خوانده میشوند.
- ============================================================ */
-
-/* ---------- متریالها و فهرستها از API میآیند ---------- */
-var API_BASE = (typeof window!=='undefined' && window.APP_CONFIG && window.APP_CONFIG.apiBase) || '/api/v1';
-
-var CATEGORY_FA = {
- 'mechanical-installations-pipes': 'تأسیسات مکانیکی و آبی',
- 'electrical-equipment-supplies': 'تجهیزات و لوازم برقی',
- 'doors-windows-glass': 'درب، پنجره و شیشه',
- 'metals-steel-sections': 'فلزات و مقاطع فولادی',
- 'construction-materials': 'مصالح ساختمانی',
- 'construction-chemicals': 'مواد شیمیایی ساختمانی',
- 'finishing-interior-decoration': 'نازککاری و دکوراسیون داخلی',
- 'construction-tools-equipment': 'ابزار و تجهیزات کارگاهی'
-};
-
-var TX = {
- PURCHASE: {label:'خرید', icon:'cart', color:'#16a34a', dir:'+', grp:'in'},
- WITHDRAWAL: {label:'برداشت', icon:'minusCirc', color:'#1d4ed8', dir:'−', grp:'out'},
- RETURN: {label:'برگشت', icon:'undo', color:'#16a34a', dir:'+', grp:'in'},
- TRANSFER_IN: {label:'انتقال (ورودی)', icon:'in', color:'#16a34a', dir:'+', grp:'in'},
- TRANSFER_OUT:{label:'انتقال (خروجی)', icon:'out', color:'#1d4ed8', dir:'−', grp:'out'},
- DAMAGE: {label:'ضایعات', icon:'warn', color:'#1d4ed8', dir:'−', grp:'out'},
- WASTE: {label:'اتلاف', icon:'trash', color:'#1d4ed8', dir:'−', grp:'out'},
- LOSS: {label:'مفقودی', icon:'pkgX', color:'#1d4ed8', dir:'−', grp:'out'},
- FOUND: {label:'پیدا شده', icon:'search', color:'#16a34a', dir:'+', grp:'in'},
- STOCK_COUNT: {label:'شمارش موجودی', icon:'check', color:'#64748b', dir:'±', grp:'cnt'}
-};
-var TX_ORDER = ['PURCHASE','WITHDRAWAL','RETURN','TRANSFER_IN','TRANSFER_OUT','DAMAGE','WASTE','LOSS','FOUND','STOCK_COUNT'];
-
-var FORM_TYPES = [
- {t:'PURCHASE', icon:'cart', dirTxt:'افزایش', cls:'in'},
- {t:'WITHDRAWAL', icon:'minusCirc', dirTxt:'کاهش', cls:'out'},
- {t:'RETURN', icon:'undo', dirTxt:'افزایش', cls:'in'},
- {t:'TRANSFER', icon:'out', dirTxt:'جابهجایی', cls:'mv'},
- {t:'DAMAGE', icon:'warn', dirTxt:'کاهش', cls:'out'},
- {t:'WASTE', icon:'trash', dirTxt:'کاهش', cls:'out'},
- {t:'LOSS', icon:'pkgX', dirTxt:'کاهش', cls:'out'},
- {t:'FOUND', icon:'search', dirTxt:'افزایش', cls:'in'},
- {t:'STOCK_COUNT', icon:'check', dirTxt:'اصلاح', cls:'cnt'}
-];
-var FORM_CLS_COLOR = {in:'#16a34a', out:'#1d4ed8', mv:'#4f46e5', cnt:'#64748b'};
-
-var ICON_PATHS = {
- cart: ['M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12'],
- minusCirc: ['M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Z','M8 12h8'],
- undo: ['M3 7v6h6','M21 17a9 9 0 0 0-15-6.7L3 13'],
- in: ['M12 3v14','m6 9 6 6 6-6','M5 21h14'],
- out: ['M12 21V7','m6 13 6-6 6 6','M5 3h14'],
- warn: ['m21.73 18-8-14a2 2 0 0 0-3.46 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z','M12 9v4','M12 17h.01'],
- trash: ['M3 6h18','M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6','M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2'],
- pkgX: ['M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z','M3.3 7 12 12l8.7-5','M12 22V12','M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4','m10 17 5-5-5-5','M15 12H3'],
- search: ['m21 21-4.34-4.34','M11 19a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z'],
- check: ['M20 6 9 17l-5-5'],
- box: ['M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z','M3.3 7 12 12l8.7-5','M12 22V12'],
- warehouse: ['M22 8.35V20a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8.35A2 2 0 0 1 3.26 6.5l8-3.2a2 2 0 0 1 1.48 0l8 3.2A2 2 0 0 1 22 8.35Z','M6 18h12','M6 14h12','M6 10h12'],
- plus: ['M12 5v14','M5 12h14'],
- pencil: ['M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z'],
- x: ['M18 6 6 18','m6 6 12 12'],
- chev: ['m9 18 6-6-6-6'],
- user: ['M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2','M12 3a4 4 0 1 0 0 8 4 4 0 0 0 0-8Z'],
- note: ['M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z','M14 2v6h6','M16 13H8','M16 17H8','M10 9H8'],
- lock: ['M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10Z','M12 8v4','M12 16h.01'],
- sort: ['M11 5h10','M11 9h7','M11 13h4','m3 17 3 3 3-3','M6 18V4'],
- tag: ['M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z','M7 7h.01'],
- clock: ['M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20Z','M12 6v6l4 2'],
- building: ['M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z','M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2','M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2','M10 6h4','M10 10h4','M10 14h4','M10 18h4'],
- info: ['M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20Z','M12 16v-4','M12 8h.01'],
- history: ['M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8','M3 3v5h5','M12 7v5l4 2'],
- calendar: ['M8 2v4','M16 2v4','M3 10h18','M5 4h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2Z'],
- logout: ['M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4','m16 17 5-5-5-5','M21 12H9']
-};
-
-function icon(name, cls){
- var paths=(ICON_PATHS[name]||ICON_PATHS.box).map(function(d){
- return ' ';
- }).join('');
- return ''+paths+' ';
-}
-function datalist(id,vals){
- return ''+vals.map(function(v){return '';}).join('')+' ';
-}
-
-/* ============================================================
- ابزار
- ============================================================ */
-
-function esc(s){
- return String(s==null?'':s).replace(/&/g,'&').replace(//g,'>').replace(/"/g,'"').replace(/'/g,''');
-}
-function fa(n){ return Number(n).toLocaleString('fa-IR',{maximumFractionDigits:4}); }
-function faInt(n){ return String(n).replace(/\d/g,function(d){return '۰۱۲۳۴۵۶۷۸۹'[d];}); }
-function toEnNum(s){
- if(typeof s!=='string') s=String(s);
- return s.replace(/[۰-۹]/g,function(d){return '۰۱۲۳۴۵۶۷۸۹'.indexOf(d);})
- .replace(/[٠-٩]/g,function(d){return '٠١٢٣٤٥٦٧٨٩'.indexOf(d);})
- .replace(/[،,]/g,'');
-}
-function parseNum(s){
- var v=Number(toEnNum(s));
- return isFinite(v)?v:NaN;
-}
-function fmtDate(iso){
- try{return new Intl.DateTimeFormat('fa-IR',{year:'numeric',month:'2-digit',day:'2-digit'}).format(new Date(iso));}
- catch(e){return iso;}
-}
-function fmtDateLong(iso){
- try{return new Intl.DateTimeFormat('fa-IR',{dateStyle:'full'}).format(new Date(iso));}
- catch(e){return fmtDate(iso);}
-}
-function fmtTime(iso){
- try{return new Intl.DateTimeFormat('fa-IR',{timeStyle:'short'}).format(new Date(iso));}
- catch(e){return '';}
-}
-function fmtDateTime(iso){
- try{return new Intl.DateTimeFormat('fa-IR',{dateStyle:'medium',timeStyle:'short'}).format(new Date(iso));}
- catch(e){return iso;}
-}
-function toLocalInput(d){
- var x=new Date(d); x.setMinutes(x.getMinutes()-x.getTimezoneOffset());
- return x.toISOString().slice(0,16);
-}
-function gregKey(d){
- var y=d.getFullYear(),m=d.getMonth()+1,dd=d.getDate();
- return y+'-'+(m<10?'0':'')+m+'-'+(dd<10?'0':'')+dd;
-}
-function todayKey(){ return gregKey(new Date()); }
-function specsHash(specs){
- var keys=Object.keys(specs||{}).filter(function(k){return specs[k]!==''&&specs[k]!=null;}).sort();
- var s=keys.map(function(k){return k+'='+specs[k];}).join('|');
- if(!s) return '';
- var h=5381,i;
- for(i=0;i>>0; }
- return 'h'+h.toString(16);
-}
-function specsText(specs){
- var keys=Object.keys(specs||{}).filter(function(k){return specs[k]!==''&&specs[k]!=null;});
- if(!keys.length) return '—';
- return keys.map(function(k){return k+' : '+specs[k];}).join(' · ');
-}
-function specsChips(specs){
- var keys=Object.keys(specs||{}).filter(function(k){return specs[k]!==''&&specs[k]!=null;});
- if(!keys.length) return '';
- return keys.map(function(k){return ''+esc(k)+' : '+esc(specs[k])+' ';}).join('');
-}
-function hexBg(hex,alpha){
- var r=parseInt(hex.slice(1,3),16),g=parseInt(hex.slice(3,5),16),b=parseInt(hex.slice(5,7),16);
- return 'rgba('+r+','+g+','+b+','+alpha+')';
-}
-function keyOf(wh,m,b,sh){ return wh+'|'+m+'|'+(b||'')+'|'+sh; }
-function recById(id){
- if(!id) return null;
- for(var i=0;i'+esc(msg)+'';
- document.getElementById('toasts').appendChild(el);
- setTimeout(function(){ el.classList.add('hide'); setTimeout(function(){el.remove();},350); },4000);
-}
-
-/* ============================================================
- login / logout
- ============================================================ */
-
-function doLogin(){
- var pw=document.getElementById('login-pass').value.trim();
- var u=state.users.find(function(x){return x.pw===pw;});
- if(!u){
- document.getElementById('login-err').textContent='رمز عبور اشتباه است.';
- return;
- }
- session={pw:pw};
- saveSession();
- ui.form=emptyForm('PURCHASE');
- document.getElementById('login').classList.add('hidden');
- document.getElementById('app').classList.remove('hidden');
- toast('خوش آمدید، '+u.name+' ✓','ok');
- loadAll().then(function(ok){ renderChrome(); renderPage(); });
-}
-function logout(){
- session=null;
- try{ localStorage.removeItem(SESSION_KEY); }catch(e){}
- document.getElementById('app').classList.add('hidden');
- document.getElementById('login').classList.remove('hidden');
- document.getElementById('login-pass').value='';
- document.getElementById('login-err').textContent='';
-}
-
-/* ============================================================
- ورود با حساب سازمانی (Casdoor — OIDC Authorization Code + PKCE)
- ============================================================ */
-
-function casdoorConfig(){ return (typeof window!=='undefined'&&window.CASDOOR_CONFIG)||null; }
-
-function b64urlFromBytes(bytes){
- var s='';
- for(var i=0;i'+icon(it.ic,'')+esc(it.label)+'';
- return ''+icon(it.ic,'')+esc(it.label)+' ';
- }).join('');
- var backBtn=document.getElementById('back-btn');
- if(backBtn){
- backBtn.style.display=ui.history.length?'inline-flex':'none';
- backBtn.title=ui.history.length?'بازگشت به '+esc(viewName(ui.history[ui.history.length-1])):'';
- }
- /* دکمه «تغییر موجودی» گوشه بالا-چپ — فقط برای مدیران پروژه (ادمین فقطخواندنی) */
- var chLink=document.getElementById('change-link');
- if(chLink) chLink.style.display=isAdmin()?'none':'inline-flex';
-}
-
-function renderSession(){
- var u=user();
- if(!u){ return; }
- var html='';
- html+=''+icon('user','')+esc(u.name)+' — '+esc(u.label)+'
';
- if(session&&session.mode==='casdoor'){
- html+=''+icon('lock','')+'حساب سازمانی (Casdoor) ';
- }
- if(u.role==='admin'){
- html+=''+icon('building','')+'پروژه: '
- +''
- +'همه پروژهها '
- +state.projects.map(function(p){return ''+esc(p.name)+' ';}).join('')
- +'
';
- html+=''+icon('lock','')+' فقط خواندنی — امکان ثبت و ویرایش وجود ندارد
';
- }else{
- html+=''
- +icon('building','')+esc(projName(u.projectId))+' — مدیر پروژه
';
- }
- html+=''+icon('logout','')+'خروج ';
- document.getElementById('sessionbar').innerHTML=html;
-}
-
-function renderChrome(){
- renderNav();
- renderSession();
-}
-function renderPage(){
- if(typeof renderAll==='function') renderAll();
- else if(typeof renderChange==='function') renderChange();
-}
-
-function onAdminProjectChange(v){
- ui.adminProject=v;
- ui.filters={category:'',warehouse:'',material:''};
- ui.expandedId=null; ui.selTx=null;
- renderChrome();
- renderPage();
-}
-
-/* ============================================================
- UI state
- ============================================================ */
-
-function emptyForm(type){
- return {
- type:type||'PURCHASE',
- whId:'',
- matTxt:'', brandTxt:'', unitTxt:'',
- specsRows:[{rid:1,label:'',value:''}], specSeq:2,
- qty:'', note:'', dateInput:toLocalInput(new Date()),
- selMatId:'', matTxt:'',
- rows:[],
- fromId:'', toId:''
- };
-}
-
-var ui={
- view:'dashboard',
- adminProject:'',
- filters:{category:'',warehouse:'',material:''},
- sort:'',
- expandedId:null, selTx:null,
- form:emptyForm('PURCHASE'),
- cal:{anchor:new Date(), sel:todayKey(), actRec:null},
- history:[],
- whEditId:null, whEditName:'', whEditDesc:'',
- whNewName:'', whNewDesc:'', whNewProj:'',
- newUserName:'', newUserPw:'', newUserProj:'', newUserEmail:'',
- pmEditId:null, pmEditName:'', pmEditPw:'', pmEditProj:'', pmEditEmail:''
-};
-
-/* ============================================================
- scope (انبارها/پروژههای قابل مشاهده)
- ============================================================ */
-
-function scopedWarehouses(){
- var u=user();
- if(!u) return [];
- if(u.role==='admin'){
- var pid=ui.adminProject;
- return pid?state.warehouses.filter(function(w){return w.project_id===pid;}):state.warehouses.slice();
- }
- return state.warehouses.filter(function(w){return String(w.project_id)===String(u.projectId);});
-}
-function scopedProjects(){
- var u=user();
- if(!u) return [];
- if(u.role==='admin'){
- return ui.adminProject?[ui.adminProject]:state.projects.map(function(p){return p.id;});
- }
- return u.projectId?[u.projectId]:[];
-}
diff --git a/legacy/dash-prototype/inventory-system.html b/legacy/dash-prototype/inventory-system.html
deleted file mode 100644
index 146bc18..0000000
--- a/legacy/dash-prototype/inventory-system.html
+++ /dev/null
@@ -1,909 +0,0 @@
-
-
-
-
-
-
-سامانه مدیریت انبار
-
-
-
-
-
-
-
-
-
-
-
-
سامانه مدیریت انبار
-
برای ورود، رمز عبور خود را وارد کنید
-
رمز عبور
-
-
-
- ورود به سامانه
-
-
یا
-
-
- ورود با حساب سازمانی
-
-
-
- رمزهای آزمایشی:
- ۱ ← مدیر پروژه برج آیتا — فاز ۳ (آقای موسوی) | ۲ ← مدیر پروژه برج آیتا — فاز ۳ (آقای گلی)
- ۳ ← مدیر پروژه مجتمع تجاری الماس (آقای محقق) | ۱۰ ← ادمین (آقای رضایی — فقط خواندنی)
-
-
-
-
-
-
-
-
-
-
-
سامانه مدیریت انبار
-
دادهها در پایگاه داده ذخیره میشوند
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/legacy/dash-prototype/serve.py b/legacy/dash-prototype/serve.py
deleted file mode 100644
index a3f4c72..0000000
--- a/legacy/dash-prototype/serve.py
+++ /dev/null
@@ -1,19 +0,0 @@
-# -*- coding: utf-8 -*-
-"""سرور استاتیک محلی بدون کش (جایگزین py -m http.server)
-اجرا: py serve.py
-"""
-import http.server
-import socketserver
-
-PORT = 8123
-
-
-class NoCacheHandler(http.server.SimpleHTTPRequestHandler):
- def end_headers(self):
- self.send_header('Cache-Control', 'no-store')
- super().end_headers()
-
-
-with socketserver.TCPServer(('', PORT), NoCacheHandler) as httpd:
- print('Serving on http://localhost:%d (no-cache)' % PORT)
- httpd.serve_forever()
diff --git a/legacy/dash-prototype/style.css b/legacy/dash-prototype/style.css
deleted file mode 100644
index ebb2dfd..0000000
--- a/legacy/dash-prototype/style.css
+++ /dev/null
@@ -1,685 +0,0 @@
-:root{
- --bg:#f3f5f9; --panel:#ffffff; --ink:#0f172a; --muted:#64748b; --line:#e5e9f0;
- --accent:#4f46e5; --accent-dark:#4338ca; --accent-bg:#eef2ff;
- --green:#16a34a; --green-bg:#dcfce7;
- --blue:#1d4ed8; --blue-bg:#dbeafe;
- --indigo:#4f46e5; --indigo-bg:#e0e7ff;
- --red:#dc2626; --red-bg:#fee2e2;
- --orange:#c2410c; --orange-bg:#ffedd5;
- --slate:#64748b; --slate-bg:#f1f5f9;
-}
-*{box-sizing:border-box; margin:0; padding:0;}
-html{font-size:14px;}
-body{
- font-family:'Vazirmatn',Tahoma,'Segoe UI',sans-serif;
- background:var(--bg); color:var(--ink);
- min-height:100vh; line-height:1.7;
- -webkit-font-smoothing:antialiased;
-}
-button{font-family:inherit; cursor:pointer;}
-input,select,textarea{font-family:inherit; font-size:13px; color:var(--ink);}
-svg{width:16px; height:16px; flex:none;} /* اندازه پیشفرض همه آیکونها */
-.hidden{display:none !important;}
-
-/* ---------- login ---------- */
-#login{
- position:fixed; inset:0; background:linear-gradient(160deg,#eef2ff 0%,#f3f5f9 55%,#e0e7ff 100%);
- display:flex; align-items:center; justify-content:center; padding:20px; z-index:200;
-}
-.login-card{
- background:#fff; border:1px solid var(--line); border-radius:16px;
- padding:34px 30px 28px; width:min(420px,94vw); text-align:center;
- box-shadow:0 20px 50px rgba(15,23,42,.12);
-}
-.login-logo{
- width:60px; height:60px; margin:0 auto 12px; border-radius:16px; background:var(--accent);
- color:#fff; display:flex; align-items:center; justify-content:center;
-}
-.login-logo svg{width:30px; height:30px;}
-.login-card h1{font-size:18px; font-weight:800; margin-bottom:4px;}
-.login-card .sub{font-size:12px; color:var(--muted); margin-bottom:20px;}
-.login-card label{display:block; text-align:right; font-size:12px; font-weight:700; color:var(--muted); margin-bottom:6px;}
-.login-card input{
- width:100%; border:1px solid var(--line); border-radius:10px; padding:11px 14px;
- font-size:14px; outline:none; text-align:center; letter-spacing:2px; direction:ltr;
- transition:all .15s;
-}
-.login-card input:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.login-btn{
- width:100%; margin-top:14px; background:var(--accent); color:#fff; border:none;
- font-size:14px; font-weight:700; padding:11px; border-radius:10px;
- display:flex; align-items:center; justify-content:center; gap:8px;
-}
-.login-btn:hover{background:var(--accent-dark);}
-.login-btn svg{width:16px; height:16px;}
-.login-divider{
- display:flex; align-items:center; gap:10px; margin-top:14px;
- color:var(--muted); font-size:11px; font-weight:600;
-}
-.login-divider::before,.login-divider::after{content:""; flex:1; height:1px; background:var(--line);}
-.casdoor-btn{
- background:#0ea5e9; box-shadow:0 2px 8px rgba(14,165,233,.3);
-}
-.casdoor-btn:hover{background:#0284c7 !important;}
-.login-err{color:var(--red); font-size:12px; font-weight:600; margin-top:10px; min-height:18px;}
-.demo-hint{
- margin-top:18px; padding:10px 12px; background:#f8fafc; border:1px dashed #cbd5e1;
- border-radius:10px; font-size:11px; color:var(--muted); text-align:right; line-height:2;
-}
-.demo-hint b{color:var(--ink);}
-
-/* ---------- top bar ---------- */
-.topbar{
- background:var(--panel); border-bottom:1px solid var(--line);
- padding:0 22px; display:flex; align-items:center; gap:20px; flex-wrap:wrap;
- position:sticky; top:0; z-index:50;
-}
-.brand{display:flex; align-items:center; gap:12px; padding:10px 0;}
-.brand .logo{
- width:38px; height:38px; border-radius:10px; background:var(--accent); color:#fff;
- display:flex; align-items:center; justify-content:center;
-}
-.brand .logo svg{width:20px; height:20px;}
-.brand h1{font-size:16px; font-weight:800;}
-.brand .sub{font-size:11px; color:var(--muted);}
-.nav{display:flex; gap:6px; margin-inline-start:auto; flex-wrap:wrap;}
-.nav-btn{
- display:flex; align-items:center; gap:7px; border:1px solid var(--line);
- background:var(--panel); color:var(--ink); padding:7px 14px; border-radius:9px;
- font-size:13px; font-weight:500; transition:all .15s;
-}
-.nav-btn:hover{border-color:#c7d2fe; background:var(--accent-bg);}
-.nav-btn.active{background:var(--accent); border-color:var(--accent); color:#fff;}
-.nav-btn svg{width:16px; height:16px;}
-.top-actions{margin-inline-start:auto;}
-.ghost-btn{
- display:inline-flex; align-items:center; gap:6px; border:1px dashed #cbd5e1;
- background:transparent; color:var(--muted); padding:6px 12px; border-radius:8px; font-size:12px;
-}
-.ghost-btn:hover{color:var(--red); border-color:#fca5a5; background:#fff5f5;}
-.ghost-btn svg{width:14px; height:14px;}
-
-/* دکمه «تغییر موجودی» گوشه بالا-چپ صفحه اصلی */
-.change-link{
- display:inline-flex; align-items:center; gap:7px; text-decoration:none;
- background:var(--accent); color:#fff; border:1px solid var(--accent);
- border-radius:10px; padding:7px 14px; font-size:12.5px; font-weight:700;
- transition:all .15s;
-}
-.change-link:hover{background:var(--accent-dark); border-color:var(--accent-dark); transform:translateY(-1px); box-shadow:0 3px 8px rgba(79,70,229,.25);}
-.change-link svg{width:14px; height:14px;}
-
-/* دکمه «برگشت به داشبوردها» صفحه تغییر موجودی */
-.change-back{
- display:inline-flex; align-items:center; gap:7px; text-decoration:none;
- background:#fff; color:var(--ink); border:1px solid var(--line);
- border-radius:10px; padding:7px 14px; font-size:12.5px; font-weight:700;
- transition:all .15s;
-}
-.change-back:hover{border-color:var(--accent); color:var(--accent-dark); background:var(--accent-bg);}
-.change-back svg{width:14px; height:14px;}
-
-/* ---------- session bar ---------- */
-.sessionbar{
- background:var(--panel); border-bottom:1px solid var(--line);
- padding:9px 22px; display:flex; align-items:center; gap:14px; flex-wrap:wrap;
-}
-.sb-field{display:flex; align-items:center; gap:7px; font-size:12px; color:var(--muted);}
-.sb-field svg{width:14px; height:14px;}
-.sb-field label{font-weight:600; white-space:nowrap;}
-.sb-field select{
- border:1px solid var(--line); border-radius:8px; background:#fff;
- padding:6px 10px; font-size:12.5px; min-width:130px; outline:none;
-}
-.sb-field select:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.user-chip{
- display:inline-flex; align-items:center; gap:8px; background:var(--accent-bg);
- color:var(--accent-dark); border:1px solid #c7d2fe; font-size:12px; font-weight:700;
- padding:5px 14px; border-radius:999px;
-}
-.idp-chip{
- display:inline-flex; align-items:center; gap:6px; background:#e0f2fe;
- color:#0369a1; border:1px solid #bae6fd; font-size:11px; font-weight:700;
- padding:4px 12px; border-radius:999px;
-}
-.idp-chip svg{width:12px; height:12px;}
-.user-chip svg{width:13px; height:13px;}
-.readonly-chip{
- display:inline-flex; align-items:center; gap:6px; background:#fff7ed;
- color:var(--orange); border:1px solid #fed7aa; font-size:12px; font-weight:600;
- padding:5px 12px; border-radius:999px;
-}
-.readonly-chip svg{width:13px; height:13px;}
-.logout-btn{
- margin-inline-start:auto; display:inline-flex; align-items:center; gap:6px;
- border:1px solid var(--line); background:#fff; color:var(--red);
- font-size:12px; font-weight:600; padding:6px 14px; border-radius:8px;
-}
-.logout-btn:hover{background:var(--red-bg); border-color:#fca5a5;}
-.logout-btn svg{width:13px; height:13px;}
-
-/* ---------- layout ---------- */
-main{max-width:1280px; margin:0 auto; padding:20px 22px 60px;}
-.card{background:var(--panel); border:1px solid var(--line); border-radius:12px; overflow:hidden;}
-.card-head{
- padding:13px 18px; border-bottom:1px solid var(--line);
- display:flex; align-items:center; gap:12px; flex-wrap:wrap;
-}
-.card-head h2{font-size:15px; font-weight:700; display:flex; align-items:center; gap:8px;}
-.card-head h2 svg{width:17px; height:17px; color:var(--accent);}
-.card-body{padding:16px 18px;}
-
-/* ---------- dashboard filters ---------- */
-.filterbar{display:flex; align-items:flex-end; gap:10px; flex-wrap:wrap; margin-bottom:14px;}
-.fb-field{display:flex; flex-direction:column; gap:4px;}
-.fb-field label{font-size:11.5px; font-weight:600; color:var(--muted);}
-.fb-field select{
- border:1px solid var(--line); border-radius:9px; background:#fff;
- padding:8px 12px; min-width:170px; outline:none; font-size:13px;
-}
-.fb-field select:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.fb-field select:disabled{background:#f8fafc; color:#94a3b8; cursor:not-allowed;}
-/* باکس تایپی متریال — دقیقاً همشکل باکسهای انتخاب و دکمه مرتبسازی */
-.fb-field input[list], #filt-mat-input{
- border:1px solid var(--line); border-radius:9px; background:#fff;
- padding:8px 12px; min-width:170px; outline:none; font-size:13px;
-}
-.fb-field input[list]:focus, #filt-mat-input:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.sort-btn{
- display:inline-flex; align-items:center; gap:7px; border:1px solid var(--line);
- background:#fff; padding:8px 14px; border-radius:9px; font-size:12.5px; font-weight:500;
- color:var(--ink); transition:all .15s;
-}
-.sort-btn:hover{border-color:#c7d2fe; background:var(--accent-bg);}
-.sort-btn.active{background:var(--accent); color:#fff; border-color:var(--accent);}
-.sort-btn svg{width:15px; height:15px;}
-.clear-btn{
- border:none; background:transparent; color:var(--red); font-size:12px; font-weight:600;
- padding:8px 6px; display:inline-flex; align-items:center; gap:5px;
-}
-.clear-btn:hover{text-decoration:underline;}
-.clear-btn svg{width:13px; height:13px;}
-.count-chip{
- margin-inline-start:auto; background:var(--slate-bg); color:var(--muted);
- font-size:12px; font-weight:600; padding:6px 14px; border-radius:999px;
-}
-
-/* ---------- inventory table ---------- */
-.tbl-wrap{overflow-x:auto;}
-table.inv{width:100%; border-collapse:collapse; min-width:900px;}
-table.inv th{
- font-size:12px; font-weight:700; color:var(--muted); text-align:right;
- padding:10px 14px; background:#f8fafc; border-bottom:1px solid var(--line); white-space:nowrap;
-}
-table.inv td{padding:11px 14px; border-bottom:1px solid var(--line); font-size:13px; vertical-align:middle;}
-table.inv tr.data-row{cursor:pointer; transition:background .12s;}
-table.inv tr.data-row:hover{background:#f8faff;}
-table.inv tr.data-row.expanded{background:var(--accent-bg);}
-table.inv tr.data-row.expanded td{border-bottom-color:#c7d2fe;}
-tr.tl-row td{background:#fbfcfe; padding:14px 18px; border-bottom:1px solid var(--line);}
-.mat-cell{font-weight:700;}
-.spec-chip{
- display:inline-block; background:var(--slate-bg); border:1px solid var(--line);
- color:var(--ink); font-size:10.5px; padding:1px 8px; border-radius:5px; margin-inline-start:4px; font-weight:500;
-}
-.caret{width:18px; height:18px; color:#94a3b8; transition:transform .15s;}
-tr.expanded .caret{transform:rotate(90deg); color:var(--accent);}
-.qty-cell{font-weight:800; font-size:14px; white-space:nowrap;}
-.unit-cell{color:var(--muted); font-size:12px;}
-.date-cell{color:var(--muted); font-size:12px; white-space:nowrap;}
-.wh-cell small{display:block; font-size:10.5px; color:var(--muted);}
-.row-ico{width:16px; height:16px; color:#94a3b8;}
-.empty-box{padding:34px; text-align:center; color:var(--muted); font-size:13px;}
-
-/* ---------- timeline ---------- */
-.tl-head{display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:8px;}
-.tl-title{font-size:13px; font-weight:700; display:flex; align-items:center; gap:7px;}
-.tl-title svg{width:15px; height:15px; color:var(--accent);}
-.tl-hint{font-size:11px; color:var(--muted);}
-.tl-track{
- display:flex; gap:24px; overflow-x:auto; padding:12px 4px 14px;
- direction:rtl; align-items:stretch;
-}
-.tl-box{
- position:relative; min-width:118px; max-width:118px; flex:0 0 auto;
- background:#fff; border:2px solid var(--line); border-radius:0;
- padding:8px 10px 9px; cursor:pointer; transition:all .12s; text-align:center;
-}
-.tl-box::before{
- content:""; position:absolute; top:-2px; right:-2px; left:-2px; height:3px;
- background:var(--boxc,#94a3b8);
-}
-.tl-box::after{
- content:"←"; position:absolute; left:-23px; top:50%; transform:translateY(-50%);
- color:#94a3b8; font-size:13px; font-weight:700; width:16px; text-align:center;
-}
-.tl-box:last-child::after{content:none;}
-.tl-box:hover{transform:translateY(-3px); box-shadow:0 6px 14px rgba(15,23,42,.12);}
-.tl-box.sel{border-color:var(--boxc,#94a3b8); box-shadow:0 0 0 3px rgba(79,70,229,.18);}
-.tl-ico{width:20px; height:20px; margin:0 auto 4px; color:var(--boxc,#64748b);}
-.tl-type{font-size:11px; font-weight:700; color:var(--ink); white-space:nowrap;}
-.tl-qty{font-size:13px; font-weight:800; margin-top:1px; white-space:nowrap; direction:ltr; color:var(--boxc,#0f172a);}
-.tl-bal{font-size:11px; font-weight:700; margin-top:3px; white-space:nowrap; color:var(--ink);}
-.tl-bal b{color:var(--accent-dark,#4338ca);}
-.tl-scroll-hint{font-size:10.5px; color:#94a3b8; text-align:left; margin-top:-6px;}
-.brand-break{display:flex; gap:8px; flex-wrap:wrap; margin:2px 0 10px;}
-.brand-btn{
- display:inline-flex; align-items:center; gap:5px; border:1px solid var(--line);
- background:#fff; border-radius:9px; padding:6px 12px; font-size:12px; color:var(--ink);
- cursor:pointer; transition:all .12s;
-}
-.brand-btn:hover{border-color:#c7d2fe; background:var(--accent-bg);}
-.brand-btn b{font-weight:800; color:var(--accent-dark,#4338ca);}
-.brand-btn.act{background:var(--accent); border-color:var(--accent); color:#fff;}
-.brand-btn.act b{color:#fff;}
-.brand-btn .b-close{font-size:10px; opacity:.85;}
-.tl-sub{
- display:flex; align-items:center; gap:6px; font-size:11.5px; font-weight:700; color:var(--muted);
- margin:8px 0 2px;
-}
-.tl-sub svg{width:13px; height:13px;}
-.tl-sub b{color:var(--ink);}
-
-/* ---------- tx detail (جمعوجور — فقط اطلاعات جدید) ---------- */
-.txdetail-min{
- background:#fff; border:1px solid var(--line); border-right:3px solid var(--boxc,#64748b);
- border-radius:8px; padding:9px 14px; margin-top:6px;
- display:flex; align-items:center; gap:8px 22px; flex-wrap:wrap; font-size:12px;
-}
-.txdetail-min .d-min{display:inline-flex; align-items:baseline; gap:6px;}
-.txdetail-min .d-min .k{color:var(--muted); font-size:11px;}
-.txdetail-min .d-min b{font-weight:600; color:var(--ink);}
-.diff-row{
- display:flex; align-items:center; gap:10px; margin-top:12px; padding-top:10px;
- border-top:1px dashed var(--line); flex-wrap:wrap;
-}
-.diff-pill{display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:700; padding:4px 12px; border-radius:6px;}
-.diff-pill.up{background:var(--green-bg); color:var(--green);}
-.diff-pill.down{background:var(--blue-bg); color:var(--blue);}
-.diff-pill.same{background:var(--slate-bg); color:var(--muted);}
-
-/* ---------- change-inventory page (تغییر موجودی) ---------- */
-.txp-layout{display:grid; grid-template-columns:240px 1fr; gap:16px; align-items:start;}
-@media (max-width:860px){.txp-layout{grid-template-columns:1fr;}}
-.tx-types{
- background:#fff; border:1px solid var(--line); border-radius:14px; padding:10px;
- display:flex; flex-direction:column; gap:6px;
- position:sticky; top:14px; box-shadow:0 1px 2px rgba(15,23,42,.04);
-}
-.tx-types h3{
- font-size:11.5px; font-weight:800; color:var(--muted); padding:6px 12px 4px;
- display:flex; align-items:center; gap:7px;
-}
-.tx-types h3 svg{width:13px; height:13px;}
-.tx-type-btn{
- position:relative; display:flex; align-items:center; gap:10px;
- border:1px solid var(--line); background:#fff; border-radius:10px;
- padding:10px 12px; font-size:12.5px; font-weight:600; color:var(--ink);
- transition:all .15s; text-align:right; width:100%;
-}
-.tx-type-btn svg{width:16px; height:16px; color:var(--tc,#64748b); transition:color .15s;}
-.tx-type-btn .dir{
- font-size:9.5px; font-weight:800; margin-inline-start:auto;
- background:var(--tc-bg,#f1f5f9); color:var(--tc,#64748b);
- border-radius:999px; padding:2px 9px; letter-spacing:.3px; white-space:nowrap;
-}
-.tx-type-btn:hover{border-color:var(--tc,#94a3b8); background:var(--tc-bg,#f8fafc); transform:translateY(-1px);}
-.tx-type-btn.active{
- background:#fff; border-color:var(--tc,#4f46e5);
- box-shadow:0 0 0 1px var(--tc,#4f46e5), 0 4px 10px rgba(79,70,229,.12);
-}
-.tx-type-btn.active::before{
- content:""; position:absolute; inset-inline-start:-1px; top:9px; bottom:9px; width:3px;
- border-radius:3px; background:var(--tc,#4f46e5);
-}
-.tx-type-btn.active svg{color:var(--tc,#4f46e5);}
-.tx-type-btn.active .dir{background:var(--tc,#4f46e5); color:#fff;}
-.tx-form-card{
- background:#fff; border:1px solid var(--line); border-radius:14px;
- padding:20px 22px; box-shadow:0 1px 2px rgba(15,23,42,.04);
-}
-.tx-form-card h2{
- font-size:15.5px; font-weight:800; display:flex; align-items:center; gap:10px;
- padding-bottom:13px; border-bottom:1px solid var(--line); margin-bottom:6px;
-}
-.tx-form-card h2 svg{
- width:16px; height:16px; color:var(--tc,#4f46e5);
- background:var(--tc-bg,#eef2ff); padding:6px; border-radius:9px;
- box-sizing:content-box;
-}
-.tx-desc{font-size:12px; color:var(--muted); margin-bottom:18px; line-height:1.9;}
-.f-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px 22px;}
-@media (max-width:760px){.f-grid{grid-template-columns:1fr;}}
-.f-grid .f-row{margin-bottom:0;}
-.f-row{margin-bottom:14px;}
-.f-row label{
- display:flex; align-items:center; gap:5px; flex-wrap:wrap;
- font-size:12px; font-weight:700; color:var(--ink); margin-bottom:6px;
-}
-.f-row label .req{color:var(--red);}
-.f-row label .lbl-hint{font-size:10.5px; color:var(--muted); font-weight:500;}
-.f-row select,.f-row input[type=text],.f-row input[type=number],.f-row input[type=datetime-local],.f-row textarea{
- width:100%; border:1px solid var(--line); border-radius:10px; padding:9px 13px;
- outline:none; background:#fff; font-size:13px; color:var(--ink);
- transition:border-color .15s, box-shadow .15s;
-}
-.f-row select:focus,.f-row input:focus,.f-row textarea:focus{
- border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);
-}
-.f-row textarea{min-height:72px; resize:vertical; line-height:1.8;}
-.f-row input.ltr{direction:ltr; text-align:left;}
-.f-help{font-size:11px; color:var(--muted); margin-top:4px; line-height:1.7;}
-.f-help.warn{color:var(--red); font-weight:600;}
-.f-help.ok{color:var(--green); font-weight:600;}
-.fromto{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:2px;}
-.fromto .box{
- border:1px solid var(--line); border-radius:12px; padding:12px 14px; background:#fbfcfe;
- transition:border-color .15s, box-shadow .15s;
-}
-.fromto .box:focus-within{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.fromto .box .lbl{font-size:11px; font-weight:800; color:var(--tc,#4f46e5); margin-bottom:7px; display:flex; align-items:center; gap:6px;}
-.fromto .box .lbl svg{width:13px; height:13px;}
-.fromto .box select{
- width:100%; border:1px solid var(--line); border-radius:9px; padding:8px 11px;
- font-size:13px; outline:none; background:#fff; transition:border-color .15s;
-}
-.fromto .box select:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.spec-box{
- border:1px solid var(--line); border-radius:12px; background:#fbfcfe;
- padding:13px 13px 11px; margin-top:2px;
-}
-.spec-rows{margin-bottom:10px;}
-.spec-row{display:flex; gap:8px; margin-bottom:8px; align-items:center;}
-.spec-row input{
- border:1px solid var(--line); border-radius:9px; padding:8px 12px; font-size:13px;
- outline:none; background:#fff; transition:border-color .15s, box-shadow .15s;
-}
-.spec-row input:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.spec-row input.k{flex:0 0 30%;}
-.spec-row input.v{flex:1;}
-.spec-del{
- flex:none; width:32px; height:32px; border-radius:9px; border:1px solid var(--line);
- background:#fff; color:var(--red); display:flex; align-items:center; justify-content:center;
- transition:all .15s;
-}
-.spec-del:hover{background:var(--red-bg); border-color:#fca5a5;}
-.spec-del svg{width:13px; height:13px;}
-.add-spec{
- display:inline-flex; align-items:center; gap:6px; border:1.5px dashed var(--accent);
- color:var(--accent-dark); background:var(--accent-bg); font-size:12px; font-weight:700;
- padding:7px 14px; border-radius:9px; transition:all .15s;
-}
-.add-spec:hover{background:#e0e7ff; border-style:solid;}
-.add-spec svg{width:13px; height:13px;}
-.pcat-wrap{margin-top:14px;}
-.pcat-wrap .f-row{margin-bottom:0;}
-
-/* ---------- records table (list ops) ---------- */
-.rows-tbl{
- width:100%; border-collapse:separate; border-spacing:0;
- border:1px solid var(--line); border-radius:12px; overflow:hidden;
-}
-.rows-tbl th{
- font-size:11.5px; font-weight:800; color:var(--muted); text-align:right;
- padding:10px 12px; background:#f8fafc; border-bottom:1px solid var(--line); white-space:nowrap;
-}
-.rows-tbl td{padding:10px 12px; border-bottom:1px solid var(--line); font-size:12.5px; vertical-align:middle;}
-.rows-tbl tbody tr:last-child td{border-bottom:none;}
-.rows-tbl tbody tr:hover{background:#f8faff;}
-.rows-tbl td .cur{font-weight:800;}
-.rows-tbl input.qty{
- width:92px; border:1px solid var(--line); border-radius:8px; padding:6px 10px;
- font-size:12.5px; direction:ltr; text-align:center; outline:none; background:#fff;
- transition:border-color .15s, box-shadow .15s;
-}
-.rows-tbl input.qty:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.rows-tbl input.note{
- width:100%; min-width:130px; border:1px solid var(--line); border-radius:8px;
- padding:6px 10px; font-size:12px; outline:none; background:#fff;
- transition:border-color .15s, box-shadow .15s;
-}
-.rows-tbl input.note:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.diff-live{font-size:11.5px; font-weight:800; white-space:nowrap;}
-.diff-live.up{color:var(--green);}
-.diff-live.down{color:var(--blue);}
-.diff-live.same{color:var(--muted);}
-.rows-empty{padding:30px 20px; text-align:center; color:var(--muted); font-size:12.5px; line-height:1.9;}
-.hint-box{
- background:#f8fafc; border:1px solid var(--line); border-radius:10px;
- padding:10px 13px; font-size:12px; color:var(--muted); margin-bottom:14px;
- display:flex; align-items:flex-start; gap:8px; line-height:1.8;
-}
-.hint-box b{color:var(--ink);}
-.hint-box.alert{background:#fff5f5; border-color:#fecaca; color:var(--red);}
-.hint-box.alert b{color:var(--red);}
-.hint-box svg{width:14px; height:14px; flex:none; margin-top:4px;}
-.submit-bar{
- margin-top:18px; display:flex; align-items:center; gap:12px; flex-wrap:wrap;
- background:#f8fafc; border:1px solid var(--line); border-radius:12px; padding:12px 16px;
-}
-.submit-bar .actor{font-size:12px; color:var(--muted); display:flex; align-items:center; gap:7px;}
-.submit-bar .actor svg{width:14px; height:14px;}
-.submit-bar .actor b{color:var(--ink); font-weight:700;}
-.submit-btn{
- margin-inline-start:auto; background:var(--tc,#4f46e5); color:#fff; border:none; font-size:13.5px;
- font-weight:700; padding:11px 28px; border-radius:10px; display:flex; align-items:center; gap:8px;
- box-shadow:0 2px 8px rgba(79,70,229,.25);
- transition:opacity .15s, transform .15s, box-shadow .15s;
-}
-.submit-btn:hover{opacity:.92; transform:translateY(-1px);}
-.submit-btn:disabled{background:#cbd5e1; cursor:not-allowed; box-shadow:none; transform:none;}
-.submit-btn svg{width:16px; height:16px;}
-.readonly-block{
- max-width:520px; margin:60px auto; background:#fff; border:1px solid var(--line);
- border-radius:14px; padding:34px; text-align:center;
-}
-.readonly-block .big-ico{
- width:52px; height:52px; margin:0 auto 14px; color:#f59e0b; background:#fffbeb;
- border:1px solid #fde68a; border-radius:14px; display:flex; align-items:center; justify-content:center;
-}
-.readonly-block .big-ico svg{width:26px; height:26px;}
-.readonly-block h3{font-size:16px; font-weight:800; margin-bottom:6px;}
-.readonly-block p{font-size:13px; color:var(--muted);}
-
-/* ---------- calendar (کنترل روزانه) ---------- */
-.cal-layout{display:grid; grid-template-columns:390px 1fr; gap:16px; align-items:start;}
-@media (max-width:960px){.cal-layout{grid-template-columns:1fr;}}
-.cal-card{background:#fff; border:1px solid var(--line); border-radius:12px; padding:16px;}
-.cal-head{display:flex; align-items:center; justify-content:space-between; margin-bottom:12px;}
-.cal-head .month{font-size:14.5px; font-weight:800; display:flex; align-items:center; gap:8px;}
-.cal-head .month svg{width:16px; height:16px; color:var(--accent);}
-.cal-nav{display:flex; gap:6px; direction:ltr;}
-.cal-nav button{
- width:30px; height:30px; border-radius:8px; border:1px solid var(--line); background:#fff;
- color:var(--ink); display:flex; align-items:center; justify-content:center; font-size:15px; font-weight:700;
-}
-.cal-nav button:hover{border-color:#c7d2fe; background:var(--accent-bg);}
-.cal-grid{display:grid; grid-template-columns:repeat(7,1fr); gap:4px;}
-.cal-dow{font-size:11px; font-weight:700; color:var(--muted); text-align:center; padding:4px 0;}
-.day-cell{
- position:relative; aspect-ratio:1/1.15; border:1px solid var(--line); border-radius:8px;
- background:#fff; font-size:12.5px; font-weight:600; color:var(--ink);
- display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px;
- transition:all .12s; min-height:52px;
-}
-.day-cell:hover{border-color:#c7d2fe; background:var(--accent-bg);}
-.day-cell.out{color:#cbd5e1; background:#fafbfd;}
-.day-cell.today{border-color:var(--accent); box-shadow:0 0 0 2px var(--accent-bg);}
-.day-cell.sel{background:var(--accent); border-color:var(--accent); color:#fff;}
-.day-cell.sel .d-dot{background:#fff; color:var(--accent);}
-.d-dot{
- min-width:17px; height:17px; padding:0 4px; border-radius:999px; background:var(--green);
- color:#fff; font-size:9.5px; font-weight:800; display:flex; align-items:center; justify-content:center;
-}
-.day-cell.out .d-dot{opacity:.4;}
-.day-panel{background:#fff; border:1px solid var(--line); border-radius:12px; overflow:hidden;}
-.day-panel .dp-head{
- padding:13px 18px; border-bottom:1px solid var(--line);
- display:flex; align-items:center; gap:12px; flex-wrap:wrap;
-}
-.day-panel .dp-head h2{font-size:14.5px; font-weight:800; display:flex; align-items:center; gap:8px;}
-.day-panel .dp-head h2 svg{width:16px; height:16px; color:var(--accent);}
-.dp-chips{display:flex; gap:8px; margin-inline-start:auto; flex-wrap:wrap;}
-.dp-chip{font-size:11px; font-weight:700; padding:4px 12px; border-radius:999px;}
-.dp-chip.in{background:var(--green-bg); color:var(--green);}
-.dp-chip.out{background:var(--blue-bg); color:var(--blue);}
-.dp-list{max-height:560px; overflow-y:auto;}
-.dp-item{border-bottom:1px solid var(--line); font-size:12.5px;}
-.dp-item.act{background:#f8faff;}
-.dp-hit{
- display:flex; align-items:center; gap:12px; padding:11px 18px; width:100%;
- background:none; border:none; text-align:right; color:inherit; font:inherit; cursor:pointer;
-}
-.dp-hit:hover{background:#f8faff;}
-.dp-item .badge{
- flex:none; width:34px; height:34px; border-radius:9px; display:flex; align-items:center; justify-content:center;
-}
-.dp-item .badge svg{width:16px; height:16px;}
-.dp-item .main{flex:1; min-width:0;}
-.dp-item .main .t{font-weight:700;}
-.dp-item .main .s{font-size:11px; color:var(--muted); margin-top:1px;}
-.dp-item .qty{font-weight:800; white-space:nowrap;}
-.dp-item .qty.in{color:var(--green);}
-.dp-item .qty.out{color:var(--blue);}
-.dp-item .time{color:var(--muted); font-size:11px; white-space:nowrap;}
-.dp-actions{display:flex; gap:8px; padding:0 18px 12px;}
-.dp-actions button{
- flex:1; display:inline-flex; align-items:center; justify-content:center; gap:6px;
- border:1px solid var(--line); border-radius:8px; padding:8px 10px; font-size:12px; font-weight:700;
- background:#fff; cursor:pointer;
-}
-.dp-actions button:hover{opacity:.85;}
-.dp-actions button svg{width:13px; height:13px;}
-.dp-actions .act-ret{color:var(--green); border-color:#bbf7d0; background:var(--green-bg);}
-.dp-actions .act-out{color:var(--blue); border-color:#bfdbfe; background:var(--blue-bg);}
-.dp-actions-noact{padding:0 18px 12px; font-size:11px; color:var(--muted);}
-.dp-hint{padding:9px 18px; font-size:11.5px; color:var(--muted); background:#fbfcfe; border-bottom:1px solid var(--line);}
-
-/* ---------- warehouses ---------- */
-.wh-add{margin-bottom:14px;}
-.wh-add h3{font-size:13.5px; font-weight:700; display:flex; align-items:center; gap:7px; margin-bottom:10px;}
-.wh-add h3 svg{width:15px; height:15px; color:var(--accent);}
-.wh-add-row{display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
-.wh-add-row input,.wh-add-row select{
- border:1px solid var(--line); border-radius:9px; background:#fff; padding:8px 12px;
- outline:none; font-size:13px; min-width:180px;
-}
-.wh-add-row input:focus,.wh-add-row select:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-
-/* ---------- org view (سازماندهی) ---------- */
-.org-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(360px,1fr)); gap:16px;}
-@media (max-width:900px){.org-grid{grid-template-columns:1fr;}}
-.org-card{
- background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden;
- box-shadow:0 1px 2px rgba(15,23,42,.04);
-}
-.org-head{
- display:flex; align-items:center; gap:9px; padding:14px 16px;
- background:linear-gradient(180deg,#f8faff,#fff); border-bottom:1px solid var(--line);
-}
-.org-head svg{width:17px; height:17px; color:var(--accent);}
-.org-head h3{font-size:14px; font-weight:800; flex:1;}
-.org-badge{
- font-size:10.5px; font-weight:700; color:var(--accent-dark);
- background:var(--accent-bg); border:1px solid #e0e7ff;
- border-radius:999px; padding:3px 10px; white-space:nowrap;
-}
-.org-sec{padding:13px 16px 15px; border-bottom:1px solid var(--line);}
-.org-sec:last-child{border-bottom:none;}
-.org-sec h4{
- font-size:11.5px; font-weight:800; color:var(--muted); margin-bottom:9px;
- display:flex; align-items:center; gap:6px;
-}
-.org-sec h4 svg{width:13px; height:13px;}
-.org-chip{
- display:flex; align-items:center; gap:8px; border:1px solid var(--line);
- border-radius:10px; padding:7px 11px; margin-bottom:7px; background:#fbfcfe;
-}
-.org-chip svg{width:14px; height:14px; color:var(--green);}
-.org-chip .nm{font-weight:700; font-size:12.5px;}
-.org-chip .pw{font-size:10.5px; color:var(--muted); background:#fff; border:1px solid var(--line);
- border-radius:6px; padding:1px 7px;}
-.org-chip.org-edit{flex-wrap:wrap; background:#fff;}
-.org-chip.org-edit input{
- flex:1; min-width:110px; border:1px solid var(--line); border-radius:8px;
- padding:6px 10px; font-size:12px; outline:none; background:#fff;
-}
-.org-chip.org-edit input:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.org-chip.org-edit select{
- border:1px solid var(--line); border-radius:8px; padding:5px 8px; font-size:11.5px;
- outline:none; background:#fff;
-}
-.org-chip.org-edit select:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.org-del{
- margin-inline-start:auto; width:26px; height:26px; border-radius:8px; border:1px solid var(--line);
- background:#fff; color:var(--red); display:flex; align-items:center; justify-content:center;
- transition:all .15s;
-}
-.org-del:hover{background:var(--red-bg); border-color:#fca5a5;}
-.org-del svg{width:12px; height:12px;}
-.org-wh{
- display:flex; align-items:center; gap:10px; border:1px solid var(--line);
- border-radius:10px; padding:8px 11px; margin-bottom:7px; background:#fbfcfe;
-}
-.org-wh .info{flex:1; min-width:0;}
-.org-wh .info b{font-size:12.5px; display:block;}
-.org-wh .info small{font-size:10.5px; color:var(--muted); display:block; overflow:hidden;
- text-overflow:ellipsis; white-space:nowrap;}
-.org-wh select{
- border:1px solid var(--line); border-radius:8px; padding:5px 8px; font-size:11.5px;
- outline:none; background:#fff; max-width:170px;
-}
-.org-wh select:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.org-none{font-size:11.5px; color:var(--muted); background:var(--slate-bg); border-radius:8px;
- padding:8px 12px; margin-bottom:7px;}
-.org-add{display:flex; gap:8px; flex-wrap:wrap;}
-.org-add input{
- flex:1; min-width:120px; border:1px solid var(--line); border-radius:9px;
- padding:7px 11px; font-size:12.5px; outline:none; background:#fff;
-}
-.org-add input:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.wh-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:14px;}
-.wh-card{background:#fff; border:1px solid var(--line); border-radius:12px; padding:16px;}
-.wh-card h3{font-size:14px; font-weight:700; display:flex; align-items:center; gap:8px; margin-bottom:4px;}
-.wh-card h3 svg{width:16px; height:16px; color:var(--accent);}
-.wh-card .desc{font-size:12px; color:var(--muted); min-height:20px;}
-.wh-meta{display:flex; gap:14px; flex-wrap:wrap; margin-top:10px; font-size:11.5px; color:var(--muted);}
-.wh-meta b{color:var(--ink);}
-.wh-actions{display:flex; gap:8px; margin-top:12px; padding-top:12px; border-top:1px solid var(--line);}
-.wh-actions button{
- display:inline-flex; align-items:center; gap:5px; font-size:12px; font-weight:600;
- border:1px solid var(--line); background:#fff; border-radius:8px; padding:5px 12px; color:var(--ink);
-}
-.wh-actions button:hover{border-color:#c7d2fe; background:var(--accent-bg);}
-.wh-actions button svg{width:13px; height:13px;}
-.wh-edit{border-top:1px dashed var(--line); margin-top:12px; padding-top:12px;}
-.wh-edit input{
- width:100%; border:1px solid var(--line); border-radius:9px; padding:7px 12px; font-size:12.5px;
- margin-bottom:8px; outline:none;
-}
-.wh-edit input:focus{border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-bg);}
-.mini-btn{
- border:1px solid var(--accent); background:var(--accent); color:#fff; font-size:12px; font-weight:600;
- padding:7px 14px; border-radius:8px; white-space:nowrap;
- display:inline-flex; align-items:center; gap:6px;
-}
-.mini-btn:hover{background:var(--accent-dark);}
-.mini-btn svg{width:13px; height:13px;}
-
-/* ---------- toast ---------- */
-#toasts{position:fixed; top:14px; left:50%; transform:translateX(-50%); z-index:999; display:flex; flex-direction:column; gap:8px; width:min(92vw,430px);}
-.toast{
- background:#0f172a; color:#fff; font-size:12.5px; font-weight:500; border-radius:10px;
- padding:11px 16px; display:flex; align-items:center; gap:9px;
- box-shadow:0 10px 26px rgba(15,23,42,.28); animation:tin .25s ease;
-}
-.toast svg{width:15px; height:15px; flex:none;}
-.toast.ok svg{color:#4ade80;}
-.toast.err{background:#7f1d1d;}
-.toast.err svg{color:#fca5a5;}
-.toast.info svg{color:#93c5fd;}
-.toast.hide{opacity:0; transition:opacity .3s;}
-@keyframes tin{from{opacity:0; transform:translateY(-8px);} to{opacity:1; transform:translateY(0);}}
-.footer-note{margin-top:22px; text-align:center; font-size:11px; color:#94a3b8;}
-/* nav buttons as links */
-a.nav-btn{display:inline-flex; text-decoration:none;}
diff --git a/legacy/dash-prototype/swagger.json b/legacy/dash-prototype/swagger.json
deleted file mode 100644
index c130700..0000000
--- a/legacy/dash-prototype/swagger.json
+++ /dev/null
@@ -1,10555 +0,0 @@
-{
- "swagger": "2.0",
- "info": {
- "title": "Casdoor RESTful API",
- "description": "Swagger Docs of Casdoor Backend API",
- "version": "1.503.0",
- "contact": {
- "email": "casbin@googlegroups.com"
- }
- },
- "basePath": "/",
- "schemes": [
- "https",
- "http"
- ],
- "paths": {
- "/.well-known/jwks": {
- "get": {
- "tags": [
- "OIDC API"
- ],
- "operationId": "RootController.GetJwks",
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/jose.JSONWebKey"
- }
- }
- }
- }
- },
- "/.well-known/openid-configuration": {
- "get": {
- "tags": [
- "OIDC API"
- ],
- "description": "Get Oidc Discovery",
- "operationId": "RootController.GetOidcDiscovery",
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/object.OidcDiscovery"
- }
- }
- }
- }
- },
- "/.well-known/webfinger": {
- "get": {
- "tags": [
- "OIDC API"
- ],
- "operationId": "RootController.GetWebFinger",
- "parameters": [
- {
- "in": "query",
- "name": "resource",
- "description": "resource",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/object.WebFinger"
- }
- }
- }
- }
- },
- "/.well-known/{application}/jwks": {
- "get": {
- "tags": [
- "OIDC API"
- ],
- "operationId": "RootController.GetJwksByApplication",
- "parameters": [
- {
- "in": "path",
- "name": "application",
- "description": "application name",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/jose.JSONWebKey"
- }
- }
- }
- }
- },
- "/.well-known/{application}/openid-configuration": {
- "get": {
- "tags": [
- "OIDC API"
- ],
- "description": "Get Oidc Discovery for specific application",
- "operationId": "RootController.GetOidcDiscoveryByApplication",
- "parameters": [
- {
- "in": "path",
- "name": "application",
- "description": "application name",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/object.OidcDiscovery"
- }
- }
- }
- }
- },
- "/.well-known/{application}/webfinger": {
- "get": {
- "tags": [
- "OIDC API"
- ],
- "operationId": "RootController.GetWebFingerByApplication",
- "parameters": [
- {
- "in": "path",
- "name": "application",
- "description": "application name",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "resource",
- "description": "resource",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/object.WebFinger"
- }
- }
- }
- }
- },
- "/api/Callback": {
- "post": {
- "tags": [
- "Callback API"
- ],
- "description": "Get Login Error Counts",
- "operationId": "ApiController.Callback",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/add-adapter": {
- "post": {
- "tags": [
- "Adapter API"
- ],
- "description": "add adapter",
- "operationId": "ApiController.AddAdapter",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the adapter",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Adapter"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-application": {
- "post": {
- "tags": [
- "Application API"
- ],
- "description": "add an application",
- "operationId": "ApiController.AddApplication",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the application",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Application"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-cert": {
- "post": {
- "tags": [
- "Cert API"
- ],
- "description": "add cert",
- "operationId": "ApiController.AddCert",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the cert",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Cert"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-enforcer": {
- "post": {
- "tags": [
- "Enforcer API"
- ],
- "description": "add enforcer",
- "operationId": "ApiController.AddEnforcer",
- "parameters": [
- {
- "in": "body",
- "name": "enforcer",
- "description": "The enforcer object",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/object.Enforcer"
- }
- }
- }
- }
- },
- "/api/add-form": {
- "post": {
- "tags": [
- "Form API"
- ],
- "description": "add form",
- "operationId": "ApiController.AddForm",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the form",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Form"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-group": {
- "post": {
- "tags": [
- "Group API"
- ],
- "description": "add group",
- "operationId": "ApiController.AddGroup",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the group",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Group"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-invitation": {
- "post": {
- "tags": [
- "Invitation API"
- ],
- "description": "add invitation",
- "operationId": "ApiController.AddInvitation",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the invitation",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Invitation"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-ldap": {
- "post": {
- "tags": [
- "Account API"
- ],
- "description": "add ldap",
- "operationId": "ApiController.AddLdap",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the ldap",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Ldap"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-model": {
- "post": {
- "tags": [
- "Model API"
- ],
- "description": "add model",
- "operationId": "ApiController.AddModel",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the model",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Model"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-order": {
- "post": {
- "tags": [
- "Order API"
- ],
- "description": "add order",
- "operationId": "ApiController.AddOrder",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the order",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Order"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-organization": {
- "post": {
- "tags": [
- "Organization API"
- ],
- "description": "add organization",
- "operationId": "ApiController.AddOrganization",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the organization",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Organization"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-payment": {
- "post": {
- "tags": [
- "Payment API"
- ],
- "description": "add payment",
- "operationId": "ApiController.AddPayment",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the payment",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Payment"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-permission": {
- "post": {
- "tags": [
- "Permission API"
- ],
- "description": "add permission",
- "operationId": "ApiController.AddPermission",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the permission",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Permission"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-plan": {
- "post": {
- "tags": [
- "Plan API"
- ],
- "description": "add plan",
- "operationId": "ApiController.AddPlan",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the plan",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Plan"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-policy": {
- "post": {
- "tags": [
- "Enforcer API"
- ],
- "description": "add policy",
- "operationId": "ApiController.AddPolicy",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of enforcer",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The policy to add",
- "required": true,
- "schema": {
- "$ref": "#/definitions/xormadapter.CasbinRule"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/Response"
- }
- }
- }
- }
- },
- "/api/add-pricing": {
- "post": {
- "tags": [
- "Pricing API"
- ],
- "description": "add pricing",
- "operationId": "ApiController.AddPricing",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the pricing",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Pricing"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-product": {
- "post": {
- "tags": [
- "Product API"
- ],
- "description": "add product",
- "operationId": "ApiController.AddProduct",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the product",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Product"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-provider": {
- "post": {
- "tags": [
- "Provider API"
- ],
- "description": "add provider",
- "operationId": "ApiController.AddProvider",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the provider",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Provider"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-record": {
- "post": {
- "tags": [
- "Record API"
- ],
- "description": "add a record",
- "operationId": "ApiController.AddRecord",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the record",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Record"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-resource": {
- "post": {
- "tags": [
- "Resource API"
- ],
- "operationId": "ApiController.AddResource",
- "parameters": [
- {
- "in": "body",
- "name": "resource",
- "description": "Resource object",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Resource"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success or error",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-role": {
- "post": {
- "tags": [
- "Role API"
- ],
- "description": "add role",
- "operationId": "ApiController.AddRole",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the role",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Role"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-session": {
- "post": {
- "tags": [
- "Session API"
- ],
- "description": "Add session for one user in one application. If there are other existing sessions, join the session into the list.",
- "operationId": "ApiController.AddSession",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The session object to add",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Session"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-subscription": {
- "post": {
- "tags": [
- "Subscription API"
- ],
- "description": "add subscription",
- "operationId": "ApiController.AddSubscription",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the subscription",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Subscription"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-syncer": {
- "post": {
- "tags": [
- "Syncer API"
- ],
- "description": "add syncer",
- "operationId": "ApiController.AddSyncer",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the syncer",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Syncer"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-ticket": {
- "post": {
- "tags": [
- "Ticket API"
- ],
- "description": "add ticket",
- "operationId": "ApiController.AddTicket",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the ticket",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Ticket"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-ticket-message": {
- "post": {
- "tags": [
- "Ticket API"
- ],
- "description": "add a message to a ticket",
- "operationId": "ApiController.AddTicketMessage",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the ticket",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The message to add",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.TicketMessage"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-token": {
- "post": {
- "tags": [
- "Token API"
- ],
- "description": "add token",
- "operationId": "ApiController.AddToken",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "Details of the token",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Token"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-transaction": {
- "post": {
- "tags": [
- "Transaction API"
- ],
- "description": "add transaction",
- "operationId": "ApiController.AddTransaction",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the transaction",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Transaction"
- }
- },
- {
- "in": "query",
- "name": "dryRun",
- "description": "Dry run mode: set to 'true' or '1' to validate without committing",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-user": {
- "post": {
- "tags": [
- "User API"
- ],
- "description": "add user",
- "operationId": "ApiController.AddUser",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the user",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.User"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/add-user-keys": {
- "post": {
- "tags": [
- "User API"
- ],
- "operationId": "ApiController.AddUserKeys",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/add-webhook": {
- "post": {
- "tags": [
- "Webhook API"
- ],
- "description": "add webhook",
- "operationId": "ApiController.AddWebhook",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the webhook",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Webhook"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/batch-enforce": {
- "post": {
- "tags": [
- "Enforcer API"
- ],
- "description": "Call Casbin BatchEnforce API",
- "operationId": "ApiController.BatchEnforce",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "array of casbin requests",
- "required": true,
- "schema": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- {
- "in": "query",
- "name": "permissionId",
- "description": "permission id",
- "type": "string"
- },
- {
- "in": "query",
- "name": "modelId",
- "description": "model id",
- "type": "string"
- },
- {
- "in": "query",
- "name": "owner",
- "description": "owner",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/cancel-order": {
- "post": {
- "tags": [
- "Order API"
- ],
- "description": "cancel an order",
- "operationId": "ApiController.CancelOrder",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the order",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/check-user-password": {
- "post": {
- "tags": [
- "User API"
- ],
- "operationId": "ApiController.CheckUserPassword",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/buy-product": {
- "post": {
- "tags": [
- "Product API"
- ],
- "description": "buy product using the deprecated compatibility endpoint, prefer place-order plus pay-order for new integrations",
- "operationId": "ApiController.BuyProduct",
- "deprecated": true,
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the product",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "providerName",
- "description": "The name of the provider",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "pricingName",
- "description": "The name of the pricing (for subscription)",
- "type": "string"
- },
- {
- "in": "query",
- "name": "planName",
- "description": "The name of the plan (for subscription)",
- "type": "string"
- },
- {
- "in": "query",
- "name": "userName",
- "description": "The username to buy product for (admin only)",
- "type": "string"
- },
- {
- "in": "query",
- "name": "paymentEnv",
- "description": "The payment environment",
- "type": "string"
- },
- {
- "in": "query",
- "name": "customPrice",
- "description": "Custom price for recharge products",
- "type": "number"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-adapter": {
- "post": {
- "tags": [
- "Adapter API"
- ],
- "description": "delete adapter",
- "operationId": "ApiController.DeleteAdapter",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the adapter",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Adapter"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-application": {
- "post": {
- "tags": [
- "Application API"
- ],
- "description": "delete an application",
- "operationId": "ApiController.DeleteApplication",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the application",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Application"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-cert": {
- "post": {
- "tags": [
- "Cert API"
- ],
- "description": "delete cert",
- "operationId": "ApiController.DeleteCert",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the cert",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Cert"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-enforcer": {
- "post": {
- "tags": [
- "Enforcer API"
- ],
- "description": "delete enforcer",
- "operationId": "ApiController.DeleteEnforcer",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The enforcer object",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Enforcer"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/object.Enforcer"
- }
- }
- }
- }
- },
- "/api/delete-form": {
- "post": {
- "tags": [
- "Form API"
- ],
- "description": "delete form",
- "operationId": "ApiController.DeleteForm",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the form",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Form"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-group": {
- "post": {
- "tags": [
- "Group API"
- ],
- "description": "delete group",
- "operationId": "ApiController.DeleteGroup",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the group",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Group"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-invitation": {
- "post": {
- "tags": [
- "Invitation API"
- ],
- "description": "delete invitation",
- "operationId": "ApiController.DeleteInvitation",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the invitation",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Invitation"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-ldap": {
- "post": {
- "tags": [
- "Account API"
- ],
- "description": "delete ldap",
- "operationId": "ApiController.DeleteLdap",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the ldap",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Ldap"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-mfa/": {
- "post": {
- "tags": [
- "MFA API"
- ],
- "description": ": Delete MFA",
- "operationId": "ApiController.DeleteMfa",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-model": {
- "post": {
- "tags": [
- "Model API"
- ],
- "description": "delete model",
- "operationId": "ApiController.DeleteModel",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the model",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Model"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-order": {
- "post": {
- "tags": [
- "Order API"
- ],
- "description": "delete order",
- "operationId": "ApiController.DeleteOrder",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the order",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Order"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-organization": {
- "post": {
- "tags": [
- "Organization API"
- ],
- "description": "delete organization",
- "operationId": "ApiController.DeleteOrganization",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the organization",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Organization"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-payment": {
- "post": {
- "tags": [
- "Payment API"
- ],
- "description": "delete payment",
- "operationId": "ApiController.DeletePayment",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the payment",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Payment"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-permission": {
- "post": {
- "tags": [
- "Permission API"
- ],
- "description": "delete permission",
- "operationId": "ApiController.DeletePermission",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the permission",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Permission"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-plan": {
- "post": {
- "tags": [
- "Plan API"
- ],
- "description": "delete plan",
- "operationId": "ApiController.DeletePlan",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the plan",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Plan"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-pricing": {
- "post": {
- "tags": [
- "Pricing API"
- ],
- "description": "delete pricing",
- "operationId": "ApiController.DeletePricing",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the pricing",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Pricing"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-product": {
- "post": {
- "tags": [
- "Product API"
- ],
- "description": "delete product",
- "operationId": "ApiController.DeleteProduct",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the product",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Product"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-provider": {
- "post": {
- "tags": [
- "Provider API"
- ],
- "description": "delete provider",
- "operationId": "ApiController.DeleteProvider",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the provider",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Provider"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-resource": {
- "post": {
- "tags": [
- "Resource API"
- ],
- "operationId": "ApiController.DeleteResource",
- "parameters": [
- {
- "in": "body",
- "name": "resource",
- "description": "Resource object",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Resource"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success or error",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-role": {
- "post": {
- "tags": [
- "Role API"
- ],
- "description": "delete role",
- "operationId": "ApiController.DeleteRole",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the role",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Role"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-session": {
- "post": {
- "tags": [
- "Session API"
- ],
- "description": "Delete session for one user in one application.",
- "operationId": "ApiController.DeleteSession",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The session object to delete",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Session"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-subscription": {
- "post": {
- "tags": [
- "Subscription API"
- ],
- "description": "delete subscription",
- "operationId": "ApiController.DeleteSubscription",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the subscription",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Subscription"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-syncer": {
- "post": {
- "tags": [
- "Syncer API"
- ],
- "description": "delete syncer",
- "operationId": "ApiController.DeleteSyncer",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the syncer",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Syncer"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-ticket": {
- "post": {
- "tags": [
- "Ticket API"
- ],
- "description": "delete ticket",
- "operationId": "ApiController.DeleteTicket",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the ticket",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Ticket"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-token": {
- "post": {
- "tags": [
- "Token API"
- ],
- "description": "delete token",
- "operationId": "ApiController.DeleteToken",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "Details of the token",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Token"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-transaction": {
- "post": {
- "tags": [
- "Transaction API"
- ],
- "description": "delete transaction",
- "operationId": "ApiController.DeleteTransaction",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the transaction",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Transaction"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-user": {
- "post": {
- "tags": [
- "User API"
- ],
- "description": "delete user",
- "operationId": "ApiController.DeleteUser",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the user",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.User"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/delete-webhook": {
- "post": {
- "tags": [
- "Webhook API"
- ],
- "description": "delete webhook",
- "operationId": "ApiController.DeleteWebhook",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the webhook",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Webhook"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/device-auth": {
- "post": {
- "tags": [
- "Device Authorization Endpoint"
- ],
- "description": "Endpoint for the device authorization flow",
- "operationId": "ApiController.DeviceAuth",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.DeviceAuthResponse"
- }
- }
- }
- }
- },
- "/api/enforce": {
- "post": {
- "tags": [
- "Enforcer API"
- ],
- "description": "Call Casbin Enforce API",
- "operationId": "ApiController.Enforce",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "Casbin request",
- "required": true,
- "schema": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- {
- "in": "query",
- "name": "permissionId",
- "description": "permission id",
- "type": "string"
- },
- {
- "in": "query",
- "name": "modelId",
- "description": "model id",
- "type": "string"
- },
- {
- "in": "query",
- "name": "resourceId",
- "description": "resource id",
- "type": "string"
- },
- {
- "in": "query",
- "name": "owner",
- "description": "owner",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/exit-impersonation-user": {
- "post": {
- "tags": [
- "User API"
- ],
- "description": "clear impersonation info for current session",
- "operationId": "ApiController.ExitImpersonateUser",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/faceid-signin-begin": {
- "get": {
- "tags": [
- "Login API"
- ],
- "description": "FaceId Login Flow 1st stage",
- "operationId": "ApiController.FaceIDSigninBegin",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "owner",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "name",
- "description": "name",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-account": {
- "get": {
- "tags": [
- "Account API"
- ],
- "description": "get the details of the current account",
- "operationId": "ApiController.GetAccount",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-adapter": {
- "get": {
- "tags": [
- "Adapter API"
- ],
- "description": "get adapter",
- "operationId": "ApiController.GetAdapter",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the adapter",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Adapter"
- }
- }
- }
- }
- },
- "/api/get-adapters": {
- "get": {
- "tags": [
- "Adapter API"
- ],
- "description": "get adapters",
- "operationId": "ApiController.GetAdapters",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of adapters",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Adapter"
- }
- }
- }
- }
- }
- },
- "/api/get-all-actions": {
- "get": {
- "tags": [
- "Enforcer API"
- ],
- "description": "Get all actions for a user (Casbin API)",
- "operationId": "ApiController.GetAllActions",
- "parameters": [
- {
- "in": "query",
- "name": "userId",
- "description": "user id like built-in/admin",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-all-objects": {
- "get": {
- "tags": [
- "Enforcer API"
- ],
- "description": "Get all objects for a user (Casbin API)",
- "operationId": "ApiController.GetAllObjects",
- "parameters": [
- {
- "in": "query",
- "name": "userId",
- "description": "user id like built-in/admin",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-all-roles": {
- "get": {
- "tags": [
- "Enforcer API"
- ],
- "description": "Get all roles for a user (Casbin API)",
- "operationId": "ApiController.GetAllRoles",
- "parameters": [
- {
- "in": "query",
- "name": "userId",
- "description": "user id like built-in/admin",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-app-login": {
- "get": {
- "tags": [
- "Login API"
- ],
- "description": "get application login",
- "operationId": "ApiController.GetApplicationLogin",
- "parameters": [
- {
- "in": "query",
- "name": "clientId",
- "description": "client id",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "responseType",
- "description": "response type",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "redirectUri",
- "description": "redirect uri",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "scope",
- "description": "scope",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "state",
- "description": "state",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-application": {
- "get": {
- "tags": [
- "Application API"
- ],
- "description": "get the detail of an application",
- "operationId": "ApiController.GetApplication",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the application.",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Application"
- }
- }
- }
- }
- },
- "/api/get-applications": {
- "get": {
- "tags": [
- "Application API"
- ],
- "description": "get all applications",
- "operationId": "ApiController.GetApplications",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of applications.",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Application"
- }
- }
- }
- }
- }
- },
- "/api/get-captcha": {
- "get": {
- "tags": [
- "Login API"
- ],
- "operationId": "ApiController.GetCaptcha",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/get-captcha-status": {
- "get": {
- "tags": [
- "Token API"
- ],
- "description": "Get Login Error Counts",
- "operationId": "ApiController.GetCaptchaStatus",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of user",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-cert": {
- "get": {
- "tags": [
- "Cert API"
- ],
- "description": "get cert",
- "operationId": "ApiController.GetCert",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the cert",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Cert"
- }
- }
- }
- }
- },
- "/api/get-certs": {
- "get": {
- "tags": [
- "Cert API"
- ],
- "description": "get certs",
- "operationId": "ApiController.GetCerts",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of certs",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Cert"
- }
- }
- }
- }
- }
- },
- "/api/get-dashboard": {
- "get": {
- "tags": [
- "System API"
- ],
- "description": "get information of dashboard",
- "operationId": "ApiController.GetDashboard",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-default-application": {
- "get": {
- "tags": [
- "Organization API"
- ],
- "description": "get default application",
- "operationId": "ApiController.GetDefaultApplication",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "organization id",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-email-and-phone": {
- "get": {
- "tags": [
- "User API"
- ],
- "description": "get email and phone by username",
- "operationId": "ApiController.GetEmailAndPhone",
- "parameters": [
- {
- "in": "formData",
- "name": "username",
- "description": "The username of the user",
- "required": true,
- "type": "string"
- },
- {
- "in": "formData",
- "name": "organization",
- "description": "The organization of the user",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-enforcer": {
- "get": {
- "tags": [
- "Enforcer API"
- ],
- "description": "get enforcer",
- "operationId": "ApiController.GetEnforcer",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of enforcer",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/object.Enforcer"
- }
- }
- }
- }
- },
- "/api/get-enforcers": {
- "get": {
- "tags": [
- "Enforcer API"
- ],
- "description": "get enforcers",
- "operationId": "ApiController.GetEnforcers",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of enforcers",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Enforcer"
- }
- }
- }
- }
- }
- },
- "/api/get-filtered-policies": {
- "post": {
- "tags": [
- "Enforcer API"
- ],
- "description": "get filtered policies with support for multiple filters via POST body",
- "operationId": "ApiController.GetFilteredPolicies",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of enforcer",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "Array of filter objects for multiple filters",
- "required": true,
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Filter"
- }
- }
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/xormadapter.CasbinRule"
- }
- }
- }
- }
- }
- },
- "/api/get-form": {
- "get": {
- "tags": [
- "Form API"
- ],
- "description": "get form",
- "operationId": "ApiController.GetForm",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id (owner/name) of form",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Form"
- }
- }
- }
- }
- },
- "/api/get-forms": {
- "get": {
- "tags": [
- "Form API"
- ],
- "description": "get forms",
- "operationId": "ApiController.GetForms",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of form",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Form"
- }
- }
- }
- }
- }
- },
- "/api/get-global-certs": {
- "get": {
- "tags": [
- "Cert API"
- ],
- "description": "get global certs",
- "operationId": "ApiController.GetGlobalCerts",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Cert"
- }
- }
- }
- }
- }
- },
- "/api/get-global-forms": {
- "get": {
- "tags": [
- "Form API"
- ],
- "description": "get global forms",
- "operationId": "ApiController.GetGlobalForms",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Form"
- }
- }
- }
- }
- }
- },
- "/api/get-global-providers": {
- "get": {
- "tags": [
- "Provider API"
- ],
- "description": "get Global providers",
- "operationId": "ApiController.GetGlobalProviders",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Provider"
- }
- }
- }
- }
- }
- },
- "/api/get-global-users": {
- "get": {
- "tags": [
- "User API"
- ],
- "description": "get global users",
- "operationId": "ApiController.GetGlobalUsers",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.User"
- }
- }
- }
- }
- }
- },
- "/api/get-group": {
- "get": {
- "tags": [
- "Group API"
- ],
- "description": "get group",
- "operationId": "ApiController.GetGroup",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the group",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Group"
- }
- }
- }
- }
- },
- "/api/get-groups": {
- "get": {
- "tags": [
- "Group API"
- ],
- "description": "get groups",
- "operationId": "ApiController.GetGroups",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of groups",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Group"
- }
- }
- }
- }
- }
- },
- "/api/get-invitation": {
- "get": {
- "tags": [
- "Invitation API"
- ],
- "description": "get invitation",
- "operationId": "ApiController.GetInvitation",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the invitation",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Invitation"
- }
- }
- }
- }
- },
- "/api/get-invitation-info": {
- "get": {
- "tags": [
- "Invitation API"
- ],
- "description": "get invitation code information",
- "operationId": "ApiController.GetInvitationCodeInfo",
- "parameters": [
- {
- "in": "query",
- "name": "code",
- "description": "Invitation code",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Invitation"
- }
- }
- }
- }
- },
- "/api/get-invitations": {
- "get": {
- "tags": [
- "Invitation API"
- ],
- "description": "get invitations",
- "operationId": "ApiController.GetInvitations",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of invitations",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Invitation"
- }
- }
- }
- }
- }
- },
- "/api/get-ldap": {
- "get": {
- "tags": [
- "Account API"
- ],
- "description": "get ldap",
- "operationId": "ApiController.GetLdap",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "id",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Ldap"
- }
- }
- }
- }
- },
- "/api/get-ldap-users": {
- "get": {
- "tags": [
- "Account API"
- ],
- "description": "get ldap users",
- "operationId": "ApiController.GetLdapser",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.LdapResp"
- }
- }
- }
- }
- },
- "/api/get-ldaps": {
- "get": {
- "tags": [
- "Account API"
- ],
- "description": "get ldaps",
- "operationId": "ApiController.GetLdaps",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "owner",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Ldap"
- }
- }
- }
- }
- }
- },
- "/api/get-model": {
- "get": {
- "tags": [
- "Model API"
- ],
- "description": "get model",
- "operationId": "ApiController.GetModel",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the model",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Model"
- }
- }
- }
- }
- },
- "/api/get-models": {
- "get": {
- "tags": [
- "Model API"
- ],
- "description": "get models",
- "operationId": "ApiController.GetModels",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of models",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Model"
- }
- }
- }
- }
- }
- },
- "/api/get-order": {
- "get": {
- "tags": [
- "Order API"
- ],
- "description": "get order",
- "operationId": "ApiController.GetOrder",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the order",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Order"
- }
- }
- }
- }
- },
- "/api/get-orders": {
- "get": {
- "tags": [
- "Order API"
- ],
- "description": "get orders",
- "operationId": "ApiController.GetOrders",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of orders",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Order"
- }
- }
- }
- }
- }
- },
- "/api/get-organization": {
- "get": {
- "tags": [
- "Organization API"
- ],
- "description": "get organization",
- "operationId": "ApiController.GetOrganization",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "organization id",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Organization"
- }
- }
- }
- }
- },
- "/api/get-organization-applications": {
- "get": {
- "tags": [
- "Application API"
- ],
- "description": "get the detail of the organization's application",
- "operationId": "ApiController.GetOrganizationApplications",
- "parameters": [
- {
- "in": "query",
- "name": "organization",
- "description": "The organization name",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Application"
- }
- }
- }
- }
- }
- },
- "/api/get-organization-names": {
- "get": {
- "tags": [
- "Organization API"
- ],
- "description": "get all organization name and displayName",
- "operationId": "ApiController.GetOrganizationNames",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "owner",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Organization"
- }
- }
- }
- }
- }
- },
- "/api/get-organizations": {
- "get": {
- "tags": [
- "Organization API"
- ],
- "description": "get organizations",
- "operationId": "ApiController.GetOrganizations",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "owner",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Organization"
- }
- }
- }
- }
- }
- },
- "/api/get-payment": {
- "get": {
- "tags": [
- "Verification API"
- ],
- "description": "get payment",
- "operationId": "ApiController.GetVerification",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the payment",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Verification"
- }
- }
- }
- }
- },
- "/api/get-payments": {
- "get": {
- "tags": [
- "Verification API"
- ],
- "description": "get payments",
- "operationId": "ApiController.GetVerifications",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of payments",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Verification"
- }
- }
- }
- }
- }
- },
- "/api/get-permission": {
- "get": {
- "tags": [
- "Permission API"
- ],
- "description": "get permission",
- "operationId": "ApiController.GetPermission",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the permission",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Permission"
- }
- }
- }
- }
- },
- "/api/get-permissions": {
- "get": {
- "tags": [
- "Permission API"
- ],
- "description": "get permissions",
- "operationId": "ApiController.GetPermissions",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of permissions",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Permission"
- }
- }
- }
- }
- }
- },
- "/api/get-permissions-by-role": {
- "get": {
- "tags": [
- "Permission API"
- ],
- "description": "get permissions by role",
- "operationId": "ApiController.GetPermissionsByRole",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the role",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Permission"
- }
- }
- }
- }
- }
- },
- "/api/get-permissions-by-submitter": {
- "get": {
- "tags": [
- "Permission API"
- ],
- "description": "get permissions by submitter",
- "operationId": "ApiController.GetPermissionsBySubmitter",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Permission"
- }
- }
- }
- }
- }
- },
- "/api/get-plan": {
- "get": {
- "tags": [
- "Plan API"
- ],
- "description": "get plan",
- "operationId": "ApiController.GetPlan",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the plan",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "includeOption",
- "description": "Should include plan's option",
- "type": "boolean"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Plan"
- }
- }
- }
- }
- },
- "/api/get-plans": {
- "get": {
- "tags": [
- "Plan API"
- ],
- "description": "get plans",
- "operationId": "ApiController.GetPlans",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of plans",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Plan"
- }
- }
- }
- }
- }
- },
- "/api/get-policies": {
- "get": {
- "tags": [
- "Enforcer API"
- ],
- "description": "get policies",
- "operationId": "ApiController.GetPolicies",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of enforcer",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "adapterId",
- "description": "The adapter id",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/xormadapter.CasbinRule"
- }
- }
- }
- }
- }
- },
- "/api/get-pricing": {
- "get": {
- "tags": [
- "Pricing API"
- ],
- "description": "get pricing",
- "operationId": "ApiController.GetPricing",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the pricing",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Pricing"
- }
- }
- }
- }
- },
- "/api/get-pricings": {
- "get": {
- "tags": [
- "Pricing API"
- ],
- "description": "get pricings",
- "operationId": "ApiController.GetPricings",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of pricings",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Pricing"
- }
- }
- }
- }
- }
- },
- "/api/get-product": {
- "get": {
- "tags": [
- "Product API"
- ],
- "description": "get product",
- "operationId": "ApiController.GetProduct",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the product",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Product"
- }
- }
- }
- }
- },
- "/api/get-products": {
- "get": {
- "tags": [
- "Product API"
- ],
- "description": "get products",
- "operationId": "ApiController.GetProducts",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of products",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Product"
- }
- }
- }
- }
- }
- },
- "/api/get-prometheus-info": {
- "get": {
- "tags": [
- "System API"
- ],
- "description": "get Prometheus Info",
- "operationId": "ApiController.GetPrometheusInfo",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.PrometheusInfo"
- }
- }
- }
- }
- },
- "/api/get-provider": {
- "get": {
- "tags": [
- "Provider API"
- ],
- "description": "get provider",
- "operationId": "ApiController.GetProvider",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the provider",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Provider"
- }
- }
- }
- }
- },
- "/api/get-providers": {
- "get": {
- "tags": [
- "Provider API"
- ],
- "description": "get providers",
- "operationId": "ApiController.GetProviders",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of providers",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Provider"
- }
- }
- }
- }
- }
- },
- "/api/get-qrcode": {
- "get": {
- "tags": [
- "System API"
- ],
- "operationId": "ApiController.GetWechatQRCode",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of provider",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-records": {
- "get": {
- "tags": [
- "Record API"
- ],
- "description": "get all records",
- "operationId": "ApiController.GetRecords",
- "parameters": [
- {
- "in": "query",
- "name": "pageSize",
- "description": "The size of each page",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "p",
- "description": "The number of the page",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Record"
- }
- }
- }
- }
- },
- "/api/get-records-filter": {
- "post": {
- "tags": [
- "Record API"
- ],
- "description": "get records by filter",
- "operationId": "ApiController.GetRecordsByFilter",
- "parameters": [
- {
- "in": "body",
- "name": "filter",
- "description": "filter Record message",
- "required": true,
- "schema": {
- "type": "string"
- },
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Record"
- }
- }
- }
- }
- },
- "/api/get-resource": {
- "get": {
- "tags": [
- "Resource API"
- ],
- "description": "get resource",
- "operationId": "ApiController.GetResource",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of resource",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Resource"
- }
- }
- }
- }
- },
- "/api/get-resources": {
- "get": {
- "tags": [
- "Resource API"
- ],
- "description": "get resources",
- "operationId": "ApiController.GetResources",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "Owner",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "user",
- "description": "User",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "pageSize",
- "description": "Page Size",
- "type": "integer"
- },
- {
- "in": "query",
- "name": "p",
- "description": "Page Number",
- "type": "integer"
- },
- {
- "in": "query",
- "name": "field",
- "description": "Field",
- "type": "string"
- },
- {
- "in": "query",
- "name": "value",
- "description": "Value",
- "type": "string"
- },
- {
- "in": "query",
- "name": "sortField",
- "description": "Sort Field",
- "type": "string"
- },
- {
- "in": "query",
- "name": "sortOrder",
- "description": "Sort Order",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Resource"
- }
- }
- }
- }
- }
- },
- "/api/get-role": {
- "get": {
- "tags": [
- "Role API"
- ],
- "description": "get role",
- "operationId": "ApiController.GetRole",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the role",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Role"
- }
- }
- }
- }
- },
- "/api/get-roles": {
- "get": {
- "tags": [
- "Role API"
- ],
- "description": "get roles",
- "operationId": "ApiController.GetRoles",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of roles",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Role"
- }
- }
- }
- }
- }
- },
- "/api/get-session": {
- "get": {
- "tags": [
- "Session API"
- ],
- "description": "Get session for one user in one application.",
- "operationId": "ApiController.GetSingleSession",
- "parameters": [
- {
- "in": "query",
- "name": "sessionPkId",
- "description": "The session ID in format: organization/user/application (e.g., built-in/admin/app-built-in)",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- }
- }
- },
- "/api/get-sessions": {
- "get": {
- "tags": [
- "Session API"
- ],
- "description": "Get organization user sessions.",
- "operationId": "ApiController.GetSessions",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The organization name",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- }
- }
- },
- "/api/get-sorted-users": {
- "get": {
- "tags": [
- "User API"
- ],
- "operationId": "ApiController.GetSortedUsers",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of users",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "sorter",
- "description": "The DB column name to sort by, e.g., created_time",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "limit",
- "description": "The count of users to return, e.g., 25",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.User"
- }
- }
- }
- }
- }
- },
- "/api/get-subscription": {
- "get": {
- "tags": [
- "Subscription API"
- ],
- "description": "get subscription",
- "operationId": "ApiController.GetSubscription",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the subscription",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Subscription"
- }
- }
- }
- }
- },
- "/api/get-subscriptions": {
- "get": {
- "tags": [
- "Subscription API"
- ],
- "description": "get subscriptions",
- "operationId": "ApiController.GetSubscriptions",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of subscriptions",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Subscription"
- }
- }
- }
- }
- }
- },
- "/api/get-syncer": {
- "get": {
- "tags": [
- "Syncer API"
- ],
- "description": "get syncer",
- "operationId": "ApiController.GetSyncer",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the syncer",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Syncer"
- }
- }
- }
- }
- },
- "/api/get-syncers": {
- "get": {
- "tags": [
- "Syncer API"
- ],
- "description": "get syncers",
- "operationId": "ApiController.GetSyncers",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of syncers",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Syncer"
- }
- }
- }
- }
- }
- },
- "/api/get-system-info": {
- "get": {
- "tags": [
- "System API"
- ],
- "description": "get system info like CPU and memory usage",
- "operationId": "ApiController.GetSystemInfo",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/util.SystemInfo"
- }
- }
- }
- }
- },
- "/api/get-ticket": {
- "get": {
- "tags": [
- "Ticket API"
- ],
- "description": "get ticket",
- "operationId": "ApiController.GetTicket",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the ticket",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Ticket"
- }
- }
- }
- }
- },
- "/api/get-tickets": {
- "get": {
- "tags": [
- "Ticket API"
- ],
- "description": "get tickets",
- "operationId": "ApiController.GetTickets",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of tickets",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Ticket"
- }
- }
- }
- }
- }
- },
- "/api/get-token": {
- "get": {
- "tags": [
- "Token API"
- ],
- "description": "get token",
- "operationId": "ApiController.GetToken",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The token ID in format: organization/token-name (e.g., built-in/token-123456)",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Token"
- }
- }
- }
- }
- },
- "/api/get-tokens": {
- "get": {
- "tags": [
- "Token API"
- ],
- "description": "get tokens",
- "operationId": "ApiController.GetTokens",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The organization name (e.g., built-in)",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "pageSize",
- "description": "The size of each page",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "p",
- "description": "The number of the page",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Token"
- }
- }
- }
- }
- }
- },
- "/api/get-transaction": {
- "get": {
- "tags": [
- "Transaction API"
- ],
- "description": "get transaction",
- "operationId": "ApiController.GetTransaction",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the transaction",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Transaction"
- }
- }
- }
- }
- },
- "/api/get-transactions": {
- "get": {
- "tags": [
- "Transaction API"
- ],
- "description": "get transactions",
- "operationId": "ApiController.GetTransactions",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of transactions",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Transaction"
- }
- }
- }
- }
- }
- },
- "/api/get-user": {
- "get": {
- "tags": [
- "User API"
- ],
- "description": "get user",
- "operationId": "ApiController.GetUser",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the user",
- "type": "string"
- },
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of the user",
- "type": "string"
- },
- {
- "in": "query",
- "name": "email",
- "description": "The email of the user",
- "type": "string"
- },
- {
- "in": "query",
- "name": "phone",
- "description": "The phone of the user",
- "type": "string"
- },
- {
- "in": "query",
- "name": "userId",
- "description": "The userId of the user",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.User"
- }
- }
- }
- }
- },
- "/api/get-user-application": {
- "get": {
- "tags": [
- "Application API"
- ],
- "description": "get the detail of the user's application",
- "operationId": "ApiController.GetUserApplication",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the user",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Application"
- }
- }
- }
- }
- },
- "/api/get-user-count": {
- "get": {
- "tags": [
- "User API"
- ],
- "operationId": "ApiController.GetUserCount",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of users",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "isOnline",
- "description": "The filter for query, 1 for online, 0 for offline, empty string for all users",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "{int} int The count of filtered users for an organization"
- }
- }
- }
- },
- "/api/get-user-orders": {
- "get": {
- "tags": [
- "Order API"
- ],
- "description": "get orders for a user",
- "operationId": "ApiController.GetUserOrders",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of orders",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "user",
- "description": "The username of the user",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Order"
- }
- }
- }
- }
- }
- },
- "/api/get-user-payments": {
- "get": {
- "tags": [
- "Verification API"
- ],
- "description": "get payments for a user",
- "operationId": "ApiController.GetUserVerifications",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of payments",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "organization",
- "description": "The organization of the user",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "user",
- "description": "The username of the user",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Verification"
- }
- }
- }
- }
- }
- },
- "/api/get-users": {
- "get": {
- "tags": [
- "User API"
- ],
- "operationId": "ApiController.GetUsers",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of users",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.User"
- }
- }
- }
- }
- }
- },
- "/api/get-version-info": {
- "get": {
- "tags": [
- "System API"
- ],
- "description": "get version info like Casdoor release version and commit ID",
- "operationId": "ApiController.GetVersionInfo",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/util.VersionInfo"
- }
- }
- }
- }
- },
- "/api/get-webhook": {
- "get": {
- "tags": [
- "Webhook API"
- ],
- "description": "get webhook",
- "operationId": "ApiController.GetWebhook",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the webhook",
- "required": true,
- "type": "string",
- "default": "built-in/admin"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Webhook"
- }
- }
- }
- }
- },
- "/api/get-webhook-event": {
- "get": {
- "tags": [
- "System API"
- ],
- "operationId": "ApiController.GetWebhookEventType",
- "parameters": [
- {
- "in": "query",
- "name": "ticket",
- "description": "The eventId of QRCode",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/get-webhooks": {
- "get": {
- "tags": [
- "Webhook API"
- ],
- "description": "get webhooks",
- "operationId": "ApiController.GetWebhooks",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of webhooks",
- "required": true,
- "type": "string",
- "default": "built-in/admin"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Webhook"
- }
- }
- }
- },
- "security": [
- {
- "test_apiKey": []
- }
- ]
- }
- },
- "/api/health": {
- "get": {
- "tags": [
- "System API"
- ],
- "description": "check if the system is live",
- "operationId": "ApiController.Health",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/impersonation-user": {
- "post": {
- "tags": [
- "User API"
- ],
- "description": "set impersonation user for current admin session",
- "operationId": "ApiController.ImpersonateUser",
- "parameters": [
- {
- "in": "formData",
- "name": "username",
- "description": "The username to impersonate (owner/name)",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/invoice-payment": {
- "post": {
- "tags": [
- "Payment API"
- ],
- "description": "invoice payment",
- "operationId": "ApiController.InvoicePayment",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the payment",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/is-session-duplicated": {
- "get": {
- "tags": [
- "Session API"
- ],
- "description": "Check if there are other different sessions for one user in one application.",
- "operationId": "ApiController.IsSessionDuplicated",
- "parameters": [
- {
- "in": "query",
- "name": "sessionPkId",
- "description": "The session ID in format: organization/user/application (e.g., built-in/admin/app-built-in)",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "sessionId",
- "description": "The specific session ID to check",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- }
- }
- },
- "/api/login": {
- "post": {
- "tags": [
- "Login API"
- ],
- "description": "login",
- "operationId": "ApiController.Login",
- "parameters": [
- {
- "in": "query",
- "name": "clientId",
- "description": "clientId",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "responseType",
- "description": "responseType",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "redirectUri",
- "description": "redirectUri",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "scope",
- "description": "scope",
- "type": "string"
- },
- {
- "in": "query",
- "name": "state",
- "description": "state",
- "type": "string"
- },
- {
- "in": "query",
- "name": "nonce",
- "description": "nonce",
- "type": "string"
- },
- {
- "in": "query",
- "name": "code_challenge_method",
- "description": "code_challenge_method",
- "type": "string"
- },
- {
- "in": "query",
- "name": "code_challenge",
- "description": "code_challenge",
- "type": "string"
- },
- {
- "in": "body",
- "name": "form",
- "description": "Login information",
- "required": true,
- "schema": {
- "$ref": "#/definitions/controllers.AuthForm"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/login/oauth/access_token": {
- "post": {
- "tags": [
- "Token API"
- ],
- "description": "get OAuth access token",
- "operationId": "ApiController.GetOAuthToken",
- "parameters": [
- {
- "in": "query",
- "name": "grant_type",
- "description": "OAuth grant type",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "client_id",
- "description": "OAuth client id",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "client_secret",
- "description": "OAuth client secret",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "code",
- "description": "OAuth code",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.TokenWrapper"
- }
- },
- "400": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.TokenError"
- }
- },
- "401": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.TokenError"
- }
- }
- }
- }
- },
- "/api/login/oauth/introspect": {
- "post": {
- "tags": [
- "Login API"
- ],
- "description": "The introspection endpoint is an OAuth 2.0 endpoint that takes a",
- "operationId": "ApiController.IntrospectToken",
- "parameters": [
- {
- "in": "formData",
- "name": "token",
- "description": "access_token's value or refresh_token's value",
- "required": true,
- "type": "string"
- },
- {
- "in": "formData",
- "name": "token_type_hint",
- "description": "the token type access_token or refresh_token",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.IntrospectionResponse"
- }
- },
- "400": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.TokenError"
- }
- },
- "401": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.TokenError"
- }
- }
- }
- }
- },
- "/api/login/oauth/refresh_token": {
- "post": {
- "tags": [
- "Token API"
- ],
- "description": "refresh OAuth access token",
- "operationId": "ApiController.RefreshToken",
- "parameters": [
- {
- "in": "query",
- "name": "grant_type",
- "description": "OAuth grant type",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "refresh_token",
- "description": "OAuth refresh token",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "scope",
- "description": "OAuth scope",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "client_id",
- "description": "OAuth client id",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "client_secret",
- "description": "OAuth client secret",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.TokenWrapper"
- }
- },
- "400": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.TokenError"
- }
- },
- "401": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.TokenError"
- }
- }
- }
- }
- },
- "/api/logout": {
- "post": {
- "tags": [
- "Login API"
- ],
- "description": "logout the current user",
- "operationId": "ApiController.Logout",
- "parameters": [
- {
- "in": "query",
- "name": "id_token_hint",
- "description": "id_token_hint",
- "type": "string"
- },
- {
- "in": "query",
- "name": "post_logout_redirect_uri",
- "description": "post_logout_redirect_uri",
- "type": "string"
- },
- {
- "in": "query",
- "name": "state",
- "description": "state",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/metrics": {
- "get": {
- "tags": [
- "System API"
- ],
- "description": "get Prometheus metrics",
- "operationId": "ApiController.GetMetrics",
- "responses": {
- "200": {
- "description": "{string} Prometheus metrics in text format"
- }
- }
- }
- },
- "/api/mfa/setup/enable": {
- "post": {
- "tags": [
- "MFA API"
- ],
- "description": "enable totp",
- "operationId": "ApiController.MfaSetupEnable",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/mfa/setup/initiate": {
- "post": {
- "tags": [
- "MFA API"
- ],
- "description": "setup MFA",
- "operationId": "ApiController.MfaSetupInitiate",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/mfa/setup/verify": {
- "post": {
- "tags": [
- "MFA API"
- ],
- "description": "setup verify totp",
- "operationId": "ApiController.MfaSetupVerify",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/notify-payment": {
- "post": {
- "tags": [
- "Payment API"
- ],
- "description": "notify payment",
- "operationId": "ApiController.NotifyPayment",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the payment",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Payment"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/pay-order": {
- "post": {
- "tags": [
- "Order API"
- ],
- "description": "pay an existing order",
- "operationId": "ApiController.PayOrder",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the order",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "providerName",
- "description": "The name of the provider",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/place-order": {
- "post": {
- "tags": [
- "Order API"
- ],
- "description": "place an order for a product",
- "operationId": "ApiController.PlaceOrder",
- "parameters": [
- {
- "in": "query",
- "name": "productId",
- "description": "The id ( owner/name ) of the product",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "pricingName",
- "description": "The name of the pricing (for subscription)",
- "type": "string"
- },
- {
- "in": "query",
- "name": "planName",
- "description": "The name of the plan (for subscription)",
- "type": "string"
- },
- {
- "in": "query",
- "name": "customPrice",
- "description": "Custom price for recharge products",
- "type": "number"
- },
- {
- "in": "query",
- "name": "userName",
- "description": "The username to place order for (admin only)",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Order"
- }
- }
- }
- }
- },
- "/api/refresh-engines": {
- "post": {
- "tags": [
- "CLI API"
- ],
- "description": "Refresh all CLI engines",
- "operationId": "ApiController.RefreshEngines",
- "parameters": [
- {
- "in": "query",
- "name": "m",
- "description": "Hash for request validation",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "t",
- "description": "Timestamp for request validation",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/remove-policy": {
- "post": {
- "tags": [
- "Enforcer API"
- ],
- "description": "remove policy",
- "operationId": "ApiController.RemovePolicy",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of enforcer",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The policy to remove",
- "required": true,
- "schema": {
- "$ref": "#/definitions/xormadapter.CasbinRule"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/Response"
- }
- }
- }
- }
- },
- "/api/reset-email-or-phone": {
- "post": {
- "tags": [
- "Account API"
- ],
- "operationId": "ApiController.ResetEmailOrPhone",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/run-casbin-command": {
- "get": {
- "tags": [
- "Enforcer API"
- ],
- "description": "Call Casbin CLI commands",
- "operationId": "ApiController.RunCasbinCommand",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/run-syncer": {
- "get": {
- "tags": [
- "Syncer API"
- ],
- "description": "run syncer",
- "operationId": "ApiController.RunSyncer",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the syncer",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Syncer"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/send-email": {
- "post": {
- "tags": [
- "Service API"
- ],
- "description": "This API is not for Casdoor frontend to call, it is for Casdoor SDKs.",
- "operationId": "ApiController.SendEmail",
- "parameters": [
- {
- "in": "query",
- "name": "clientId",
- "description": "The clientId of the application",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "clientSecret",
- "description": "The clientSecret of the application",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "from",
- "description": "Details of the email request",
- "required": true,
- "schema": {
- "$ref": "#/definitions/controllers.EmailForm"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/send-invitation": {
- "post": {
- "tags": [
- "Invitation API"
- ],
- "description": "verify invitation",
- "operationId": "ApiController.VerifyInvitation",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the invitation",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the invitation",
- "required": true,
- "schema": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/send-notification": {
- "post": {
- "tags": [
- "Service API"
- ],
- "description": "This API is not for Casdoor frontend to call, it is for Casdoor SDKs.",
- "operationId": "ApiController.SendNotification",
- "parameters": [
- {
- "in": "body",
- "name": "from",
- "description": "Details of the notification request",
- "required": true,
- "schema": {
- "$ref": "#/definitions/controllers.NotificationForm"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/send-sms": {
- "post": {
- "tags": [
- "Service API"
- ],
- "description": "This API is not for Casdoor frontend to call, it is for Casdoor SDKs.",
- "operationId": "ApiController.SendSms",
- "parameters": [
- {
- "in": "query",
- "name": "clientId",
- "description": "The clientId of the application",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "clientSecret",
- "description": "The clientSecret of the application",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "from",
- "description": "Details of the sms request",
- "required": true,
- "schema": {
- "$ref": "#/definitions/controllers.SmsForm"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/send-verification-code": {
- "post": {
- "tags": [
- "Verification API"
- ],
- "operationId": "ApiController.SendVerificationCode",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/set-password": {
- "post": {
- "tags": [
- "Account API"
- ],
- "description": "set password",
- "operationId": "ApiController.SetPassword",
- "parameters": [
- {
- "in": "formData",
- "name": "userOwner",
- "description": "The owner of the user",
- "required": true,
- "type": "string"
- },
- {
- "in": "formData",
- "name": "userName",
- "description": "The name of the user",
- "required": true,
- "type": "string"
- },
- {
- "in": "formData",
- "name": "oldPassword",
- "description": "The old password of the user",
- "required": true,
- "type": "string"
- },
- {
- "in": "formData",
- "name": "newPassword",
- "description": "The new password of the user",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/set-preferred-mfa": {
- "post": {
- "tags": [
- "MFA API"
- ],
- "description": ": Set specific Mfa Preferred",
- "operationId": "ApiController.SetPreferredMfa",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/signup": {
- "post": {
- "tags": [
- "Login API"
- ],
- "description": "sign up a new user",
- "operationId": "ApiController.Signup",
- "parameters": [
- {
- "in": "formData",
- "name": "username",
- "description": "The username to sign up",
- "required": true,
- "type": "string"
- },
- {
- "in": "formData",
- "name": "password",
- "description": "The password",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/sso-logout": {
- "get": {
- "tags": [
- "Login API"
- ],
- "description": "logout the current user from all applications or current session only",
- "operationId": "ApiController.SsoLogout",
- "parameters": [
- {
- "in": "query",
- "name": "logoutAll",
- "description": "Whether to logout from all sessions. Accepted values: 'true', '1', or empty (default: true). Any other value means false.",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- },
- "post": {
- "tags": [
- "Login API"
- ],
- "description": "logout the current user from all applications or current session only",
- "operationId": "ApiController.SsoLogout",
- "parameters": [
- {
- "in": "query",
- "name": "logoutAll",
- "description": "Whether to logout from all sessions. Accepted values: 'true', '1', or empty (default: true). Any other value means false.",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/sync-ldap-users": {
- "post": {
- "tags": [
- "Account API"
- ],
- "description": "sync ldap users",
- "operationId": "ApiController.SyncLdapUsers",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "id",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.LdapSyncResp"
- }
- }
- }
- }
- },
- "/api/unlink": {
- "post": {
- "tags": [
- "Login API"
- ],
- "operationId": "ApiController.Unlink",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/update-adapter": {
- "post": {
- "tags": [
- "Adapter API"
- ],
- "description": "update adapter",
- "operationId": "ApiController.UpdateAdapter",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the adapter",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the adapter",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Adapter"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-application": {
- "post": {
- "tags": [
- "Application API"
- ],
- "description": "update an application",
- "operationId": "ApiController.UpdateApplication",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the application",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the application",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Application"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-cert": {
- "post": {
- "tags": [
- "Cert API"
- ],
- "description": "update cert",
- "operationId": "ApiController.UpdateCert",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the cert",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the cert",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Cert"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-enforcer": {
- "post": {
- "tags": [
- "Enforcer API"
- ],
- "description": "update enforcer",
- "operationId": "ApiController.UpdateEnforcer",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of enforcer",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "enforcer",
- "description": "The enforcer object",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/object.Enforcer"
- }
- }
- }
- }
- },
- "/api/update-form": {
- "post": {
- "tags": [
- "Form API"
- ],
- "description": "update form",
- "operationId": "ApiController.UpdateForm",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id (owner/name) of the form",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the form",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Form"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-group": {
- "post": {
- "tags": [
- "Group API"
- ],
- "description": "update group",
- "operationId": "ApiController.UpdateGroup",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the group",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the group",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Group"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-invitation": {
- "post": {
- "tags": [
- "Invitation API"
- ],
- "description": "update invitation",
- "operationId": "ApiController.UpdateInvitation",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the invitation",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the invitation",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Invitation"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-ldap": {
- "post": {
- "tags": [
- "Account API"
- ],
- "description": "update ldap",
- "operationId": "ApiController.UpdateLdap",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The details of the ldap",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Ldap"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-model": {
- "post": {
- "tags": [
- "Model API"
- ],
- "description": "update model",
- "operationId": "ApiController.UpdateModel",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the model",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the model",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Model"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-order": {
- "post": {
- "tags": [
- "Order API"
- ],
- "description": "update order",
- "operationId": "ApiController.UpdateOrder",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the order",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the order",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Order"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-organization": {
- "post": {
- "tags": [
- "Organization API"
- ],
- "description": "update organization",
- "operationId": "ApiController.UpdateOrganization",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the organization",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the organization",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Organization"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-payment": {
- "post": {
- "tags": [
- "Payment API"
- ],
- "description": "update payment",
- "operationId": "ApiController.UpdatePayment",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the payment",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the payment",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Payment"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-permission": {
- "post": {
- "tags": [
- "Permission API"
- ],
- "description": "update permission",
- "operationId": "ApiController.UpdatePermission",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the permission",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the permission",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Permission"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-plan": {
- "post": {
- "tags": [
- "Plan API"
- ],
- "description": "update plan",
- "operationId": "ApiController.UpdatePlan",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the plan",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the plan",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Plan"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-policy": {
- "post": {
- "tags": [
- "Enforcer API"
- ],
- "description": "update policy",
- "operationId": "ApiController.UpdatePolicy",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of enforcer",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "Array containing old and new policy",
- "required": true,
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/xormadapter.CasbinRule"
- }
- }
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "schema": {
- "$ref": "#/definitions/Response"
- }
- }
- }
- }
- },
- "/api/update-pricing": {
- "post": {
- "tags": [
- "Pricing API"
- ],
- "description": "update pricing",
- "operationId": "ApiController.UpdatePricing",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the pricing",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the pricing",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Pricing"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-product": {
- "post": {
- "tags": [
- "Product API"
- ],
- "description": "update product",
- "operationId": "ApiController.UpdateProduct",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the product",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the product",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Product"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-provider": {
- "post": {
- "tags": [
- "Provider API"
- ],
- "description": "update provider",
- "operationId": "ApiController.UpdateProvider",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the provider",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the provider",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Provider"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-resource": {
- "post": {
- "tags": [
- "Resource API"
- ],
- "description": "get resource",
- "operationId": "ApiController.UpdateResource",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of resource",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "resource",
- "description": "The resource object",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Resource"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "Success or error",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-role": {
- "post": {
- "tags": [
- "Role API"
- ],
- "description": "update role",
- "operationId": "ApiController.UpdateRole",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the role",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the role",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Role"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-session": {
- "post": {
- "tags": [
- "Session API"
- ],
- "description": "Update session for one user in one application.",
- "operationId": "ApiController.UpdateSession",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "The session object to update",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Session"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-subscription": {
- "post": {
- "tags": [
- "Subscription API"
- ],
- "description": "update subscription",
- "operationId": "ApiController.UpdateSubscription",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the subscription",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the subscription",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Subscription"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-syncer": {
- "post": {
- "tags": [
- "Syncer API"
- ],
- "description": "update syncer",
- "operationId": "ApiController.UpdateSyncer",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the syncer",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the syncer",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Syncer"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-ticket": {
- "post": {
- "tags": [
- "Ticket API"
- ],
- "description": "update ticket",
- "operationId": "ApiController.UpdateTicket",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the ticket",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the ticket",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Ticket"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-token": {
- "post": {
- "tags": [
- "Token API"
- ],
- "description": "update token",
- "operationId": "ApiController.UpdateToken",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The token ID in format: organization/token-name (e.g., built-in/token-123456)",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "Details of the token",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Token"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-transaction": {
- "post": {
- "tags": [
- "Transaction API"
- ],
- "description": "update transaction",
- "operationId": "ApiController.UpdateTransaction",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the transaction",
- "required": true,
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the transaction",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Transaction"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-user": {
- "post": {
- "tags": [
- "User API"
- ],
- "description": "update user",
- "operationId": "ApiController.UpdateUser",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the user",
- "type": "string"
- },
- {
- "in": "query",
- "name": "userId",
- "description": "The userId (UUID) of the user",
- "type": "string"
- },
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of the user (required when using userId)",
- "type": "string"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the user",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.User"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/update-webhook": {
- "post": {
- "tags": [
- "Webhook API"
- ],
- "description": "update webhook",
- "operationId": "ApiController.UpdateWebhook",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the webhook",
- "required": true,
- "type": "string",
- "default": "built-in/admin"
- },
- {
- "in": "body",
- "name": "body",
- "description": "The details of the webhook",
- "required": true,
- "schema": {
- "$ref": "#/definitions/object.Webhook"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/upload-resource": {
- "post": {
- "tags": [
- "Resource API"
- ],
- "operationId": "ApiController.UploadResource",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "Owner",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "user",
- "description": "User",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "application",
- "description": "Application",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "tag",
- "description": "Tag",
- "type": "string"
- },
- {
- "in": "query",
- "name": "parent",
- "description": "Parent",
- "type": "string"
- },
- {
- "in": "query",
- "name": "fullFilePath",
- "description": "Full File Path",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "createdTime",
- "description": "Created Time",
- "type": "string"
- },
- {
- "in": "query",
- "name": "description",
- "description": "Description",
- "type": "string"
- },
- {
- "in": "formData",
- "name": "file",
- "description": "Resource file",
- "required": true,
- "type": "file"
- }
- ],
- "responses": {
- "200": {
- "description": "FileUrl, objectKey",
- "schema": {
- "$ref": "#/definitions/object.Resource"
- }
- }
- }
- }
- },
- "/api/user": {
- "get": {
- "tags": [
- "Account API"
- ],
- "description": "return Laravel compatible user information according to OAuth 2.0",
- "operationId": "ApiController.UserInfo2",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.LaravelResponse"
- }
- }
- }
- }
- },
- "/api/userinfo": {
- "get": {
- "tags": [
- "Account API"
- ],
- "description": "return user information according to OIDC standards",
- "operationId": "ApiController.UserInfo",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/verify-captcha": {
- "post": {
- "tags": [
- "Verification API"
- ],
- "operationId": "ApiController.VerifyCaptcha",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/verify-code": {
- "post": {
- "tags": [
- "Verification API"
- ],
- "operationId": "ApiController.VerifyCode",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/object.Userinfo"
- }
- }
- }
- }
- },
- "/api/verify-identification": {
- "post": {
- "tags": [
- "User API"
- ],
- "description": "verify user's real identity using ID Verification provider",
- "operationId": "ApiController.VerifyIdentification",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "The owner of the user (optional, defaults to logged-in user)",
- "type": "string"
- },
- {
- "in": "query",
- "name": "name",
- "description": "The name of the user (optional, defaults to logged-in user)",
- "type": "string"
- },
- {
- "in": "query",
- "name": "provider",
- "description": "The name of the ID Verification provider (optional, auto-selected if not provided)",
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/verify-invitation": {
- "get": {
- "tags": [
- "Invitation API"
- ],
- "description": "verify invitation",
- "operationId": "ApiController.VerifyInvitation",
- "parameters": [
- {
- "in": "query",
- "name": "id",
- "description": "The id ( owner/name ) of the invitation",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/webauthn/signin/begin": {
- "get": {
- "tags": [
- "Login API"
- ],
- "description": "WebAuthn Login Flow 1st stage",
- "operationId": "ApiController.WebAuthnSigninBegin",
- "parameters": [
- {
- "in": "query",
- "name": "owner",
- "description": "owner",
- "required": true,
- "type": "string"
- },
- {
- "in": "query",
- "name": "name",
- "description": "name",
- "required": true,
- "type": "string"
- }
- ],
- "responses": {
- "200": {
- "description": "The CredentialAssertion object",
- "schema": {
- "$ref": "#/definitions/protocol.CredentialAssertion"
- }
- }
- }
- }
- },
- "/api/webauthn/signin/finish": {
- "post": {
- "tags": [
- "Login API"
- ],
- "description": "WebAuthn Login Flow 2nd stage",
- "operationId": "ApiController.WebAuthnSigninFinish",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "authenticator assertion Response",
- "required": true,
- "schema": {
- "$ref": "#/definitions/protocol.CredentialAssertionResponse"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "\"The Response object\"",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/webauthn/signup/begin": {
- "get": {
- "tags": [
- "User API"
- ],
- "description": "WebAuthn Registration Flow 1st stage",
- "operationId": "ApiController.WebAuthnSignupBegin",
- "responses": {
- "200": {
- "description": "The CredentialCreationOptions object",
- "schema": {
- "$ref": "#/definitions/protocol.CredentialCreation"
- }
- }
- }
- }
- },
- "/api/webauthn/signup/finish": {
- "post": {
- "tags": [
- "User API"
- ],
- "description": "WebAuthn Registration Flow 2nd stage",
- "operationId": "ApiController.WebAuthnSignupFinish",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "description": "authenticator attestation Response",
- "required": true,
- "schema": {
- "$ref": "#/definitions/protocol.CredentialCreationResponse"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "\"The Response object\"",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- },
- "/api/webhook": {
- "post": {
- "tags": [
- "System API"
- ],
- "operationId": "ApiController.HandleOfficialAccountEvent",
- "responses": {
- "200": {
- "description": "The Response object",
- "schema": {
- "$ref": "#/definitions/controllers.Response"
- }
- }
- }
- }
- }
- },
- "definitions": {
- "232967.\u003cnil\u003e.string": {
- "title": "string",
- "type": "object"
- },
- "233025.string.string": {
- "title": "string",
- "type": "object"
- },
- "McpResponse": {
- "title": "McpResponse",
- "type": "object"
- },
- "Response": {
- "title": "Response",
- "type": "object"
- },
- "casbin.Enforcer": {
- "title": "Enforcer",
- "type": "object"
- },
- "casvisorsdk.Record": {
- "title": "Record",
- "type": "object"
- },
- "controllers.AuthForm": {
- "title": "AuthForm",
- "type": "object"
- },
- "controllers.EmailForm": {
- "title": "EmailForm",
- "type": "object",
- "properties": {
- "content": {
- "type": "string"
- },
- "provider": {
- "type": "string"
- },
- "providerObject": {
- "$ref": "#/definitions/object.Provider"
- },
- "receivers": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "sender": {
- "type": "string"
- },
- "title": {
- "type": "string"
- }
- }
- },
- "controllers.LaravelResponse": {
- "title": "LaravelResponse",
- "type": "object",
- "properties": {
- "created_at": {
- "type": "string"
- },
- "email": {
- "type": "string"
- },
- "email_verified_at": {
- "type": "string"
- },
- "id": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "updated_at": {
- "type": "string"
- }
- }
- },
- "controllers.LdapResp": {
- "title": "LdapResp",
- "type": "object",
- "properties": {
- "existUuids": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "users": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.LdapUser"
- }
- }
- }
- },
- "controllers.LdapSyncResp": {
- "title": "LdapSyncResp",
- "type": "object",
- "properties": {
- "exist": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.LdapUser"
- }
- },
- "failed": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.LdapUser"
- }
- }
- }
- },
- "controllers.NotificationForm": {
- "title": "NotificationForm",
- "type": "object",
- "properties": {
- "content": {
- "type": "string"
- }
- }
- },
- "controllers.Response": {
- "title": "Response",
- "type": "object",
- "properties": {
- "data": {
- "additionalProperties": {
- "description": "support string, struct or []struct",
- "type": "string"
- }
- },
- "data2": {
- "additionalProperties": {
- "description": "support string, struct or []struct",
- "type": "string"
- }
- },
- "data3": {
- "additionalProperties": {
- "description": "support string, struct or []struct",
- "type": "string"
- }
- },
- "msg": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "status": {
- "type": "string"
- },
- "sub": {
- "type": "string"
- }
- }
- },
- "controllers.SmsForm": {
- "title": "SmsForm",
- "type": "object",
- "properties": {
- "content": {
- "type": "string"
- },
- "organizationId": {
- "type": "string"
- },
- "receivers": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "jose.JSONWebKey": {
- "title": "JSONWebKey",
- "type": "object"
- },
- "model.Model": {
- "title": "Model",
- "type": "object"
- },
- "object": {
- "title": "object",
- "type": "object"
- },
- "object.AccountItem": {
- "title": "AccountItem",
- "type": "object",
- "properties": {
- "modifyRule": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "regex": {
- "type": "string"
- },
- "tab": {
- "type": "string"
- },
- "viewRule": {
- "type": "string"
- },
- "visible": {
- "type": "boolean"
- }
- }
- },
- "object.Adapter": {
- "title": "Adapter",
- "type": "object",
- "properties": {
- "createdTime": {
- "type": "string"
- },
- "database": {
- "type": "string"
- },
- "databaseType": {
- "type": "string"
- },
- "host": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "password": {
- "type": "string"
- },
- "port": {
- "type": "integer",
- "format": "int64"
- },
- "table": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "useSameDb": {
- "type": "boolean"
- },
- "user": {
- "type": "string"
- }
- }
- },
- "object.Address": {
- "title": "Address",
- "type": "object",
- "properties": {
- "city": {
- "type": "string"
- },
- "line1": {
- "type": "string"
- },
- "line2": {
- "type": "string"
- },
- "region": {
- "type": "string"
- },
- "state": {
- "type": "string"
- },
- "tag": {
- "type": "string"
- },
- "zipCode": {
- "type": "string"
- }
- }
- },
- "object.Application": {
- "title": "Application",
- "type": "object",
- "properties": {
- "affiliationUrl": {
- "type": "string"
- },
- "cert": {
- "type": "string"
- },
- "certPublicKey": {
- "type": "string"
- },
- "clientId": {
- "type": "string"
- },
- "clientSecret": {
- "type": "string"
- },
- "codeResendTimeout": {
- "type": "integer",
- "format": "int64"
- },
- "cookieExpireInHours": {
- "type": "integer",
- "format": "int64"
- },
- "createdTime": {
- "type": "string"
- },
- "defaultGroup": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "disableSamlAttributes": {
- "type": "boolean"
- },
- "disableSignin": {
- "type": "boolean"
- },
- "displayName": {
- "type": "string"
- },
- "enableAutoSignin": {
- "type": "boolean"
- },
- "enableCodeSignin": {
- "type": "boolean"
- },
- "enableExclusiveSignin": {
- "type": "boolean"
- },
- "enableLinkWithEmail": {
- "type": "boolean"
- },
- "enablePassword": {
- "type": "boolean"
- },
- "enableSamlAssertionSignature": {
- "type": "boolean"
- },
- "enableSamlC14n10": {
- "type": "boolean"
- },
- "enableSamlCompress": {
- "type": "boolean"
- },
- "enableSamlPostBinding": {
- "type": "boolean"
- },
- "enableSignUp": {
- "type": "boolean"
- },
- "enableSigninSession": {
- "type": "boolean"
- },
- "enableWebAuthn": {
- "type": "boolean"
- },
- "expireInHours": {
- "type": "number",
- "format": "double"
- },
- "failedSigninFrozenTime": {
- "type": "integer",
- "format": "int64"
- },
- "failedSigninLimit": {
- "type": "integer",
- "format": "int64"
- },
- "favicon": {
- "type": "string"
- },
- "footerHtml": {
- "type": "string"
- },
- "forcedRedirectOrigin": {
- "type": "string"
- },
- "forgetUrl": {
- "type": "string"
- },
- "formBackgroundUrl": {
- "type": "string"
- },
- "formBackgroundUrlMobile": {
- "type": "string"
- },
- "formCss": {
- "type": "string"
- },
- "formCssMobile": {
- "type": "string"
- },
- "formOffset": {
- "type": "integer",
- "format": "int64"
- },
- "formSideHtml": {
- "type": "string"
- },
- "grantTypes": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "headerHtml": {
- "type": "string"
- },
- "homepageUrl": {
- "type": "string"
- },
- "ipRestriction": {
- "type": "string"
- },
- "ipWhitelist": {
- "type": "string"
- },
- "isShared": {
- "type": "boolean"
- },
- "logo": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "order": {
- "type": "integer",
- "format": "int64"
- },
- "orgChoiceMode": {
- "type": "string"
- },
- "organization": {
- "type": "string"
- },
- "organizationObj": {
- "$ref": "#/definitions/object.Organization"
- },
- "owner": {
- "type": "string"
- },
- "providers": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.ProviderItem"
- }
- },
- "redirectUris": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "refreshExpireInHours": {
- "type": "number",
- "format": "double"
- },
- "samlAttributes": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.SamlItem"
- }
- },
- "samlHashAlgorithm": {
- "type": "string"
- },
- "samlReplyUrl": {
- "type": "string"
- },
- "signinHtml": {
- "type": "string"
- },
- "signinItems": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.SigninItem"
- }
- },
- "signinMethods": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.SigninMethod"
- }
- },
- "signinUrl": {
- "type": "string"
- },
- "signupHtml": {
- "type": "string"
- },
- "signupItems": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.SignupItem"
- }
- },
- "signupUrl": {
- "type": "string"
- },
- "tags": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "termsOfUse": {
- "type": "string"
- },
- "themeData": {
- "$ref": "#/definitions/object.ThemeData"
- },
- "title": {
- "type": "string"
- },
- "tokenAttributes": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.JwtItem"
- }
- },
- "tokenFields": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "tokenFormat": {
- "type": "string"
- },
- "tokenSigningMethod": {
- "type": "string"
- },
- "useEmailAsSamlNameId": {
- "type": "boolean"
- }
- }
- },
- "object.Cert": {
- "title": "Cert",
- "type": "object",
- "properties": {
- "bitSize": {
- "type": "integer",
- "format": "int64"
- },
- "certificate": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "cryptoAlgorithm": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "expireInYears": {
- "type": "integer",
- "format": "int64"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "privateKey": {
- "type": "string"
- },
- "scope": {
- "type": "string"
- },
- "type": {
- "type": "string"
- }
- }
- },
- "object.DeviceAuthResponse": {
- "title": "DeviceAuthResponse",
- "type": "object",
- "properties": {
- "device_code": {
- "type": "string"
- },
- "expires_in": {
- "type": "integer",
- "format": "int64"
- },
- "interval": {
- "type": "integer",
- "format": "int64"
- },
- "user_code": {
- "type": "string"
- },
- "verification_uri": {
- "type": "string"
- }
- }
- },
- "object.Enforcer": {
- "title": "Enforcer",
- "type": "object",
- "properties": {
- "adapter": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "model": {
- "type": "string"
- },
- "modelCfg": {
- "additionalProperties": {
- "type": "string"
- }
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "updatedTime": {
- "type": "string"
- }
- }
- },
- "object.FaceId": {
- "title": "FaceId",
- "type": "object",
- "properties": {
- "ImageUrl": {
- "type": "string"
- },
- "faceIdData": {
- "type": "array",
- "items": {
- "type": "number",
- "format": "double"
- }
- },
- "name": {
- "type": "string"
- }
- }
- },
- "object.Filter": {
- "title": "Filter",
- "type": "object",
- "properties": {
- "fieldIndex": {
- "type": "integer",
- "format": "int64"
- },
- "fieldValues": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "ptype": {
- "type": "string"
- }
- }
- },
- "object.Form": {
- "title": "Form",
- "type": "object",
- "properties": {
- "createdTime": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "formItems": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.FormItem"
- }
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "tag": {
- "type": "string"
- },
- "type": {
- "type": "string"
- }
- }
- },
- "object.FormItem": {
- "title": "FormItem",
- "type": "object",
- "properties": {
- "label": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "visible": {
- "type": "boolean"
- },
- "width": {
- "type": "string"
- }
- }
- },
- "object.GaugeVecInfo": {
- "title": "GaugeVecInfo",
- "type": "object",
- "properties": {
- "method": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "throughput": {
- "type": "number",
- "format": "double"
- }
- }
- },
- "object.Group": {
- "title": "Group",
- "type": "object",
- "properties": {
- "children": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Group"
- }
- },
- "contactEmail": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "haveChildren": {
- "type": "boolean"
- },
- "isEnabled": {
- "type": "boolean"
- },
- "isTopGroup": {
- "type": "boolean"
- },
- "key": {
- "type": "string"
- },
- "manager": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "parentId": {
- "type": "string"
- },
- "parentName": {
- "type": "string"
- },
- "title": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "updatedTime": {
- "type": "string"
- },
- "users": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "object.Header": {
- "title": "Header",
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "value": {
- "type": "string"
- }
- }
- },
- "object.HistogramVecInfo": {
- "title": "HistogramVecInfo",
- "type": "object",
- "properties": {
- "count": {
- "type": "integer",
- "format": "int64"
- },
- "latency": {
- "type": "string"
- },
- "method": {
- "type": "string"
- },
- "name": {
- "type": "string"
- }
- }
- },
- "object.IntrospectionResponse": {
- "title": "IntrospectionResponse",
- "type": "object",
- "properties": {
- "active": {
- "type": "boolean"
- },
- "aud": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "client_id": {
- "type": "string"
- },
- "exp": {
- "type": "integer",
- "format": "int64"
- },
- "iat": {
- "type": "integer",
- "format": "int64"
- },
- "iss": {
- "type": "string"
- },
- "jti": {
- "type": "string"
- },
- "nbf": {
- "type": "integer",
- "format": "int64"
- },
- "scope": {
- "type": "string"
- },
- "sub": {
- "type": "string"
- },
- "token_type": {
- "type": "string"
- },
- "username": {
- "type": "string"
- }
- }
- },
- "object.Invitation": {
- "title": "Invitation",
- "type": "object",
- "properties": {
- "application": {
- "type": "string"
- },
- "code": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "defaultCode": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "email": {
- "type": "string"
- },
- "isRegexp": {
- "type": "boolean"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "phone": {
- "type": "string"
- },
- "quota": {
- "type": "integer",
- "format": "int64"
- },
- "signupGroup": {
- "type": "string"
- },
- "state": {
- "type": "string"
- },
- "updatedTime": {
- "type": "string"
- },
- "usedCount": {
- "type": "integer",
- "format": "int64"
- },
- "username": {
- "type": "string"
- }
- }
- },
- "object.JwtItem": {
- "title": "JwtItem",
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "value": {
- "type": "string"
- }
- }
- },
- "object.Ldap": {
- "title": "Ldap",
- "type": "object",
- "properties": {
- "allowSelfSignedCert": {
- "type": "boolean"
- },
- "autoSync": {
- "type": "integer",
- "format": "int64"
- },
- "baseDn": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "customAttributes": {
- "additionalProperties": {
- "type": "string"
- }
- },
- "defaultGroup": {
- "type": "string"
- },
- "enableSsl": {
- "type": "boolean"
- },
- "filter": {
- "type": "string"
- },
- "filterFields": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "host": {
- "type": "string"
- },
- "id": {
- "type": "string"
- },
- "lastSync": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "password": {
- "type": "string"
- },
- "passwordType": {
- "type": "string"
- },
- "port": {
- "type": "integer",
- "format": "int64"
- },
- "serverName": {
- "type": "string"
- },
- "username": {
- "type": "string"
- }
- }
- },
- "object.LdapUser": {
- "title": "LdapUser",
- "type": "object",
- "properties": {
- "EmailAddress": {
- "type": "string"
- },
- "Mail": {
- "type": "string"
- },
- "MobileTelephoneNumber": {
- "type": "string"
- },
- "PostalAddress": {
- "type": "string"
- },
- "RegisteredAddress": {
- "type": "string"
- },
- "TelephoneNumber": {
- "type": "string"
- },
- "address": {
- "type": "string"
- },
- "attributes": {
- "additionalProperties": {
- "type": "string"
- }
- },
- "cn": {
- "type": "string"
- },
- "country": {
- "type": "string"
- },
- "countryName": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "email": {
- "type": "string"
- },
- "gidNumber": {
- "type": "string"
- },
- "groupId": {
- "type": "string"
- },
- "memberOf": {
- "type": "string"
- },
- "mobile": {
- "type": "string"
- },
- "uid": {
- "type": "string"
- },
- "uidNumber": {
- "type": "string"
- },
- "userPrincipalName": {
- "type": "string"
- },
- "uuid": {
- "type": "string"
- }
- }
- },
- "object.ManagedAccount": {
- "title": "ManagedAccount",
- "type": "object",
- "properties": {
- "application": {
- "type": "string"
- },
- "password": {
- "type": "string"
- },
- "signinUrl": {
- "type": "string"
- },
- "username": {
- "type": "string"
- }
- }
- },
- "object.MfaAccount": {
- "title": "MfaAccount",
- "type": "object",
- "properties": {
- "accountName": {
- "type": "string"
- },
- "issuer": {
- "type": "string"
- },
- "origin": {
- "type": "string"
- },
- "secretKey": {
- "type": "string"
- }
- }
- },
- "object.MfaItem": {
- "title": "MfaItem",
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "rule": {
- "type": "string"
- }
- }
- },
- "object.MfaProps": {
- "title": "MfaProps",
- "type": "object",
- "properties": {
- "countryCode": {
- "type": "string"
- },
- "enabled": {
- "type": "boolean"
- },
- "isPreferred": {
- "type": "boolean"
- },
- "mfaRememberInHours": {
- "type": "integer",
- "format": "int64"
- },
- "mfaType": {
- "type": "string"
- },
- "recoveryCodes": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "secret": {
- "type": "string"
- },
- "url": {
- "type": "string"
- }
- }
- },
- "object.Model": {
- "title": "Model",
- "type": "object",
- "properties": {
- "createdTime": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "modelText": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- }
- }
- },
- "object.OidcDiscovery": {
- "title": "OidcDiscovery",
- "type": "object",
- "properties": {
- "authorization_endpoint": {
- "type": "string"
- },
- "claims_supported": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "device_authorization_endpoint": {
- "type": "string"
- },
- "end_session_endpoint": {
- "type": "string"
- },
- "grant_types_supported": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "id_token_signing_alg_values_supported": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "introspection_endpoint": {
- "type": "string"
- },
- "issuer": {
- "type": "string"
- },
- "jwks_uri": {
- "type": "string"
- },
- "request_object_signing_alg_values_supported": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "request_parameter_supported": {
- "type": "boolean"
- },
- "response_modes_supported": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "response_types_supported": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "scopes_supported": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "subject_types_supported": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "token_endpoint": {
- "type": "string"
- },
- "userinfo_endpoint": {
- "type": "string"
- }
- }
- },
- "object.Order": {
- "title": "Order",
- "type": "object",
- "properties": {
- "createdTime": {
- "type": "string"
- },
- "currency": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "message": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "payment": {
- "type": "string"
- },
- "price": {
- "type": "number",
- "format": "double"
- },
- "productInfos": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.ProductInfo"
- }
- },
- "products": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "state": {
- "type": "string"
- },
- "updateTime": {
- "type": "string"
- },
- "user": {
- "type": "string"
- }
- }
- },
- "object.Organization": {
- "title": "Organization",
- "type": "object",
- "properties": {
- "accountItems": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.AccountItem"
- }
- },
- "accountMenu": {
- "type": "string"
- },
- "balanceCredit": {
- "type": "number",
- "format": "double"
- },
- "balanceCurrency": {
- "type": "string"
- },
- "countryCodes": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "createdTime": {
- "type": "string"
- },
- "defaultApplication": {
- "type": "string"
- },
- "defaultAvatar": {
- "type": "string"
- },
- "defaultPassword": {
- "type": "string"
- },
- "disableSignin": {
- "type": "boolean"
- },
- "displayName": {
- "type": "string"
- },
- "enableSoftDeletion": {
- "type": "boolean"
- },
- "enableTour": {
- "type": "boolean"
- },
- "favicon": {
- "type": "string"
- },
- "hasPrivilegeConsent": {
- "type": "boolean"
- },
- "initScore": {
- "type": "integer",
- "format": "int64"
- },
- "ipRestriction": {
- "type": "string"
- },
- "ipWhitelist": {
- "type": "string"
- },
- "isProfilePublic": {
- "type": "boolean"
- },
- "languages": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "logo": {
- "type": "string"
- },
- "logoDark": {
- "type": "string"
- },
- "masterPassword": {
- "type": "string"
- },
- "masterVerificationCode": {
- "type": "string"
- },
- "mfaItems": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.MfaItem"
- }
- },
- "mfaRememberInHours": {
- "type": "integer",
- "format": "int64"
- },
- "name": {
- "type": "string"
- },
- "navItems": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "orgBalance": {
- "type": "number",
- "format": "double"
- },
- "owner": {
- "type": "string"
- },
- "passwordExpireDays": {
- "type": "integer",
- "format": "int64"
- },
- "passwordObfuscatorKey": {
- "type": "string"
- },
- "passwordObfuscatorType": {
- "type": "string"
- },
- "passwordOptions": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "passwordSalt": {
- "type": "string"
- },
- "passwordType": {
- "type": "string"
- },
- "tags": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "themeData": {
- "$ref": "#/definitions/object.ThemeData"
- },
- "useEmailAsUsername": {
- "type": "boolean"
- },
- "userBalance": {
- "type": "number",
- "format": "double"
- },
- "userNavItems": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "userTypes": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "websiteUrl": {
- "type": "string"
- },
- "widgetItems": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "object.Ormer": {
- "title": "Ormer",
- "type": "object",
- "properties": {
- "Db": {
- "$ref": "#/definitions/sql.DB"
- },
- "Engine": {
- "$ref": "#/definitions/xorm.Engine"
- },
- "dataSourceName": {
- "type": "string"
- },
- "dbName": {
- "type": "string"
- },
- "driverName": {
- "type": "string"
- }
- }
- },
- "object.Payment": {
- "title": "Payment",
- "type": "object",
- "properties": {
- "createdTime": {
- "type": "string"
- },
- "currency": {
- "type": "string"
- },
- "detail": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "invoiceRemark": {
- "type": "string"
- },
- "invoiceTaxId": {
- "type": "string"
- },
- "invoiceTitle": {
- "type": "string"
- },
- "invoiceType": {
- "type": "string"
- },
- "invoiceUrl": {
- "type": "string"
- },
- "message": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "order": {
- "type": "string"
- },
- "orderObj": {
- "$ref": "#/definitions/object.Order"
- },
- "outOrderId": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "payUrl": {
- "type": "string"
- },
- "personEmail": {
- "type": "string"
- },
- "personIdCard": {
- "type": "string"
- },
- "personName": {
- "type": "string"
- },
- "personPhone": {
- "type": "string"
- },
- "price": {
- "type": "number",
- "format": "double"
- },
- "products": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "productsDisplayName": {
- "type": "string"
- },
- "provider": {
- "type": "string"
- },
- "state": {
- "$ref": "#/definitions/pp.PaymentState"
- },
- "successUrl": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "user": {
- "type": "string"
- }
- }
- },
- "object.Permission": {
- "title": "Permission",
- "type": "object",
- "properties": {
- "actions": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "adapter": {
- "type": "string"
- },
- "approveTime": {
- "type": "string"
- },
- "approver": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "domains": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "effect": {
- "type": "string"
- },
- "groups": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "isEnabled": {
- "type": "boolean"
- },
- "model": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "resourceType": {
- "type": "string"
- },
- "resources": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "state": {
- "type": "string"
- },
- "submitter": {
- "type": "string"
- },
- "users": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "object.Plan": {
- "title": "Plan",
- "type": "object",
- "properties": {
- "createdTime": {
- "type": "string"
- },
- "currency": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "isEnabled": {
- "type": "boolean"
- },
- "name": {
- "type": "string"
- },
- "options": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "owner": {
- "type": "string"
- },
- "paymentProviders": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "period": {
- "type": "string"
- },
- "price": {
- "type": "number",
- "format": "double"
- },
- "product": {
- "type": "string"
- },
- "role": {
- "type": "string"
- }
- }
- },
- "object.Pricing": {
- "title": "Pricing",
- "type": "object",
- "properties": {
- "application": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "isEnabled": {
- "type": "boolean"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "plans": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "trialDuration": {
- "type": "integer",
- "format": "int64"
- }
- }
- },
- "object.Product": {
- "title": "Product",
- "type": "object",
- "properties": {
- "createdTime": {
- "type": "string"
- },
- "currency": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "detail": {
- "type": "string"
- },
- "disableCustomRecharge": {
- "type": "boolean"
- },
- "displayName": {
- "type": "string"
- },
- "image": {
- "type": "string"
- },
- "isRecharge": {
- "type": "boolean"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "price": {
- "type": "number",
- "format": "double"
- },
- "providerObjs": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Provider"
- }
- },
- "providers": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "quantity": {
- "type": "integer",
- "format": "int64"
- },
- "rechargeOptions": {
- "type": "array",
- "items": {
- "type": "number",
- "format": "double"
- }
- },
- "sold": {
- "type": "integer",
- "format": "int64"
- },
- "state": {
- "type": "string"
- },
- "successUrl": {
- "type": "string"
- },
- "tag": {
- "type": "string"
- }
- }
- },
- "object.ProductInfo": {
- "title": "ProductInfo",
- "type": "object",
- "properties": {
- "currency": {
- "type": "string"
- },
- "detail": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "image": {
- "type": "string"
- },
- "isRecharge": {
- "type": "boolean"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "planName": {
- "type": "string"
- },
- "price": {
- "type": "number",
- "format": "double"
- },
- "pricingName": {
- "type": "string"
- },
- "quantity": {
- "type": "integer",
- "format": "int64"
- }
- }
- },
- "object.PrometheusInfo": {
- "title": "PrometheusInfo",
- "type": "object",
- "properties": {
- "apiLatency": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.HistogramVecInfo"
- }
- },
- "apiThroughput": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.GaugeVecInfo"
- }
- },
- "totalThroughput": {
- "type": "number",
- "format": "double"
- }
- }
- },
- "object.Provider": {
- "title": "Provider",
- "type": "object",
- "properties": {
- "appId": {
- "type": "string"
- },
- "bucket": {
- "type": "string"
- },
- "category": {
- "type": "string"
- },
- "cert": {
- "type": "string"
- },
- "clientId": {
- "type": "string"
- },
- "clientId2": {
- "type": "string"
- },
- "clientSecret": {
- "type": "string"
- },
- "clientSecret2": {
- "type": "string"
- },
- "content": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "customAuthUrl": {
- "type": "string"
- },
- "customLogo": {
- "type": "string"
- },
- "customTokenUrl": {
- "type": "string"
- },
- "customUserInfoUrl": {
- "type": "string"
- },
- "disableSsl": {
- "type": "boolean"
- },
- "displayName": {
- "type": "string"
- },
- "domain": {
- "type": "string"
- },
- "emailRegex": {
- "type": "string"
- },
- "enablePkce": {
- "type": "boolean"
- },
- "enableProxy": {
- "type": "boolean"
- },
- "enableSignAuthnRequest": {
- "type": "boolean"
- },
- "endpoint": {
- "type": "string"
- },
- "host": {
- "type": "string"
- },
- "httpHeaders": {
- "additionalProperties": {
- "type": "string"
- }
- },
- "idP": {
- "type": "string"
- },
- "intranetEndpoint": {
- "type": "string"
- },
- "issuerUrl": {
- "type": "string"
- },
- "metadata": {
- "type": "string"
- },
- "method": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "pathPrefix": {
- "type": "string"
- },
- "port": {
- "type": "integer",
- "format": "int64"
- },
- "providerUrl": {
- "type": "string"
- },
- "receiver": {
- "type": "string"
- },
- "regionId": {
- "type": "string"
- },
- "scopes": {
- "type": "string"
- },
- "signName": {
- "type": "string"
- },
- "subType": {
- "type": "string"
- },
- "templateCode": {
- "type": "string"
- },
- "title": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "userMapping": {
- "additionalProperties": {
- "type": "string"
- }
- }
- }
- },
- "object.ProviderItem": {
- "title": "ProviderItem",
- "type": "object",
- "properties": {
- "canSignIn": {
- "type": "boolean"
- },
- "canSignUp": {
- "type": "boolean"
- },
- "canUnlink": {
- "type": "boolean"
- },
- "countryCodes": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "prompted": {
- "type": "boolean"
- },
- "provider": {
- "$ref": "#/definitions/object.Provider"
- },
- "rule": {
- "type": "string"
- },
- "signupGroup": {
- "type": "string"
- }
- }
- },
- "object.Record": {
- "title": "Record",
- "type": "object"
- },
- "object.Resource": {
- "title": "Resource",
- "type": "object",
- "properties": {
- "application": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "fileFormat": {
- "type": "string"
- },
- "fileName": {
- "type": "string"
- },
- "fileSize": {
- "type": "integer",
- "format": "int64"
- },
- "fileType": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "parent": {
- "type": "string"
- },
- "provider": {
- "type": "string"
- },
- "tag": {
- "type": "string"
- },
- "url": {
- "type": "string"
- },
- "user": {
- "type": "string"
- }
- }
- },
- "object.Role": {
- "title": "Role",
- "type": "object",
- "properties": {
- "createdTime": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "domains": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "groups": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "isEnabled": {
- "type": "boolean"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "users": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "object.SamlItem": {
- "title": "SamlItem",
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "nameFormat": {
- "type": "string"
- },
- "value": {
- "type": "string"
- }
- }
- },
- "object.Session": {
- "title": "Session",
- "type": "object",
- "properties": {
- "ExclusiveSignin": {
- "type": "boolean"
- },
- "application": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "sessionId": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "object.SigninItem": {
- "title": "SigninItem",
- "type": "object",
- "properties": {
- "customCss": {
- "type": "string"
- },
- "isCustom": {
- "type": "boolean"
- },
- "label": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "placeholder": {
- "type": "string"
- },
- "rule": {
- "type": "string"
- },
- "visible": {
- "type": "boolean"
- }
- }
- },
- "object.SigninMethod": {
- "title": "SigninMethod",
- "type": "object",
- "properties": {
- "displayName": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "rule": {
- "type": "string"
- }
- }
- },
- "object.SignupItem": {
- "title": "SignupItem",
- "type": "object",
- "properties": {
- "customCss": {
- "type": "string"
- },
- "label": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "options": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "placeholder": {
- "type": "string"
- },
- "prompted": {
- "type": "boolean"
- },
- "regex": {
- "type": "string"
- },
- "required": {
- "type": "boolean"
- },
- "rule": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "visible": {
- "type": "boolean"
- }
- }
- },
- "object.Subscription": {
- "title": "Subscription",
- "type": "object",
- "properties": {
- "createdTime": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "endTime": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "payment": {
- "type": "string"
- },
- "period": {
- "type": "string"
- },
- "plan": {
- "type": "string"
- },
- "pricing": {
- "type": "string"
- },
- "startTime": {
- "type": "string"
- },
- "state": {
- "$ref": "#/definitions/object.SubscriptionState"
- },
- "user": {
- "type": "string"
- }
- }
- },
- "object.SubscriptionState": {
- "title": "SubscriptionState",
- "type": "string",
- "enum": [
- "SubStatePending = \"Pending\"",
- "SubStateError = \"Error\"",
- "SubStateSuspended = \"Suspended\"",
- "SubStateActive = \"Active\"",
- "SubStateUpcoming = \"Upcoming\"",
- "SubStateExpired = \"Expired\""
- ],
- "example": "Pending"
- },
- "object.Syncer": {
- "title": "Syncer",
- "type": "object",
- "properties": {
- "affiliationTable": {
- "type": "string"
- },
- "avatarBaseUrl": {
- "type": "string"
- },
- "cert": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "database": {
- "type": "string"
- },
- "databaseType": {
- "type": "string"
- },
- "errorText": {
- "type": "string"
- },
- "host": {
- "type": "string"
- },
- "isEnabled": {
- "type": "boolean"
- },
- "isReadOnly": {
- "type": "boolean"
- },
- "name": {
- "type": "string"
- },
- "organization": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "password": {
- "type": "string"
- },
- "port": {
- "type": "integer",
- "format": "int64"
- },
- "sshHost": {
- "type": "string"
- },
- "sshPassword": {
- "type": "string"
- },
- "sshPort": {
- "type": "integer",
- "format": "int64"
- },
- "sshType": {
- "type": "string"
- },
- "sshUser": {
- "type": "string"
- },
- "sslMode": {
- "type": "string"
- },
- "syncInterval": {
- "type": "integer",
- "format": "int64"
- },
- "table": {
- "type": "string"
- },
- "tableColumns": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.TableColumn"
- }
- },
- "type": {
- "type": "string"
- },
- "user": {
- "type": "string"
- }
- }
- },
- "object.TableColumn": {
- "title": "TableColumn",
- "type": "object",
- "properties": {
- "casdoorName": {
- "type": "string"
- },
- "isHashed": {
- "type": "boolean"
- },
- "isKey": {
- "type": "boolean"
- },
- "name": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "values": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "object.ThemeData": {
- "title": "ThemeData",
- "type": "object",
- "properties": {
- "borderRadius": {
- "type": "integer",
- "format": "int64"
- },
- "colorPrimary": {
- "type": "string"
- },
- "isCompact": {
- "type": "boolean"
- },
- "isEnabled": {
- "type": "boolean"
- },
- "themeType": {
- "type": "string"
- }
- }
- },
- "object.Ticket": {
- "title": "Ticket",
- "type": "object",
- "properties": {
- "content": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "messages": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.TicketMessage"
- }
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "state": {
- "type": "string"
- },
- "title": {
- "type": "string"
- },
- "updatedTime": {
- "type": "string"
- },
- "user": {
- "type": "string"
- }
- }
- },
- "object.TicketMessage": {
- "title": "TicketMessage",
- "type": "object",
- "properties": {
- "author": {
- "type": "string"
- },
- "isAdmin": {
- "type": "boolean"
- },
- "text": {
- "type": "string"
- },
- "timestamp": {
- "type": "string"
- }
- }
- },
- "object.Token": {
- "title": "Token",
- "type": "object",
- "properties": {
- "accessToken": {
- "type": "string"
- },
- "accessTokenHash": {
- "type": "string"
- },
- "application": {
- "type": "string"
- },
- "code": {
- "type": "string"
- },
- "codeChallenge": {
- "type": "string"
- },
- "codeExpireIn": {
- "type": "integer",
- "format": "int64"
- },
- "codeIsUsed": {
- "type": "boolean"
- },
- "createdTime": {
- "type": "string"
- },
- "expiresIn": {
- "type": "integer",
- "format": "int64"
- },
- "name": {
- "type": "string"
- },
- "organization": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "refreshToken": {
- "type": "string"
- },
- "refreshTokenHash": {
- "type": "string"
- },
- "scope": {
- "type": "string"
- },
- "tokenType": {
- "type": "string"
- },
- "user": {
- "type": "string"
- }
- }
- },
- "object.TokenError": {
- "title": "TokenError",
- "type": "object",
- "properties": {
- "error": {
- "type": "string"
- },
- "error_description": {
- "type": "string"
- }
- }
- },
- "object.TokenWrapper": {
- "title": "TokenWrapper",
- "type": "object",
- "properties": {
- "access_token": {
- "type": "string"
- },
- "expires_in": {
- "type": "integer",
- "format": "int64"
- },
- "id_token": {
- "type": "string"
- },
- "refresh_token": {
- "type": "string"
- },
- "scope": {
- "type": "string"
- },
- "token_type": {
- "type": "string"
- }
- }
- },
- "object.Transaction": {
- "title": "Transaction",
- "type": "object",
- "properties": {
- "amount": {
- "type": "number",
- "format": "double"
- },
- "application": {
- "type": "string"
- },
- "category": {
- "$ref": "#/definitions/object.TransactionCategory"
- },
- "createdTime": {
- "type": "string"
- },
- "currency": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "domain": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "payment": {
- "type": "string"
- },
- "provider": {
- "type": "string"
- },
- "state": {
- "type": "string"
- },
- "subtype": {
- "type": "string"
- },
- "tag": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "user": {
- "type": "string"
- }
- }
- },
- "object.TransactionCategory": {
- "title": "TransactionCategory",
- "type": "string",
- "enum": [
- "TransactionCategoryPurchase = \"Purchase\"",
- "TransactionCategoryRecharge = \"Recharge\""
- ],
- "example": "Purchase"
- },
- "object.User": {
- "title": "User",
- "type": "object",
- "properties": {
- "accessKey": {
- "type": "string"
- },
- "accessSecret": {
- "type": "string"
- },
- "accessToken": {
- "type": "string"
- },
- "address": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "addresses": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Address"
- }
- },
- "adfs": {
- "type": "string"
- },
- "affiliation": {
- "type": "string"
- },
- "alipay": {
- "type": "string"
- },
- "amazon": {
- "type": "string"
- },
- "apple": {
- "type": "string"
- },
- "auth0": {
- "type": "string"
- },
- "avatar": {
- "type": "string"
- },
- "avatarType": {
- "type": "string"
- },
- "azuread": {
- "type": "string"
- },
- "azureadb2c": {
- "type": "string"
- },
- "baidu": {
- "type": "string"
- },
- "balance": {
- "type": "number",
- "format": "double"
- },
- "balanceCredit": {
- "type": "number",
- "format": "double"
- },
- "balanceCurrency": {
- "type": "string"
- },
- "battlenet": {
- "type": "string"
- },
- "bilibili": {
- "type": "string"
- },
- "bio": {
- "type": "string"
- },
- "birthday": {
- "type": "string"
- },
- "bitbucket": {
- "type": "string"
- },
- "box": {
- "type": "string"
- },
- "cart": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.ProductInfo"
- }
- },
- "casdoor": {
- "type": "string"
- },
- "cloudfoundry": {
- "type": "string"
- },
- "countryCode": {
- "type": "string"
- },
- "createdIp": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "currency": {
- "type": "string"
- },
- "custom": {
- "type": "string"
- },
- "custom10": {
- "type": "string"
- },
- "custom2": {
- "type": "string"
- },
- "custom3": {
- "type": "string"
- },
- "custom4": {
- "type": "string"
- },
- "custom5": {
- "type": "string"
- },
- "custom6": {
- "type": "string"
- },
- "custom7": {
- "type": "string"
- },
- "custom8": {
- "type": "string"
- },
- "custom9": {
- "type": "string"
- },
- "dailymotion": {
- "type": "string"
- },
- "deezer": {
- "type": "string"
- },
- "deletedTime": {
- "type": "string"
- },
- "digitalocean": {
- "type": "string"
- },
- "dingtalk": {
- "type": "string"
- },
- "discord": {
- "type": "string"
- },
- "displayName": {
- "type": "string"
- },
- "douyin": {
- "type": "string"
- },
- "dropbox": {
- "type": "string"
- },
- "education": {
- "type": "string"
- },
- "email": {
- "type": "string"
- },
- "emailVerified": {
- "type": "boolean"
- },
- "eveonline": {
- "type": "string"
- },
- "externalId": {
- "type": "string"
- },
- "faceIds": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.FaceId"
- }
- },
- "facebook": {
- "type": "string"
- },
- "firstName": {
- "type": "string"
- },
- "fitbit": {
- "type": "string"
- },
- "gender": {
- "type": "string"
- },
- "gitea": {
- "type": "string"
- },
- "gitee": {
- "type": "string"
- },
- "github": {
- "type": "string"
- },
- "gitlab": {
- "type": "string"
- },
- "google": {
- "type": "string"
- },
- "groups": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "hash": {
- "type": "string"
- },
- "heroku": {
- "type": "string"
- },
- "homepage": {
- "type": "string"
- },
- "id": {
- "type": "string"
- },
- "idCard": {
- "type": "string"
- },
- "idCardType": {
- "type": "string"
- },
- "influxcloud": {
- "type": "string"
- },
- "infoflow": {
- "type": "string"
- },
- "instagram": {
- "type": "string"
- },
- "intercom": {
- "type": "string"
- },
- "invitation": {
- "type": "string"
- },
- "invitationCode": {
- "type": "string"
- },
- "ipWhitelist": {
- "type": "string"
- },
- "isAdmin": {
- "type": "boolean"
- },
- "isDefaultAvatar": {
- "type": "boolean"
- },
- "isDeleted": {
- "type": "boolean"
- },
- "isForbidden": {
- "type": "boolean"
- },
- "isOnline": {
- "type": "boolean"
- },
- "isVerified": {
- "type": "boolean"
- },
- "kakao": {
- "type": "string"
- },
- "karma": {
- "type": "integer",
- "format": "int64"
- },
- "kwai": {
- "type": "string"
- },
- "language": {
- "type": "string"
- },
- "lark": {
- "type": "string"
- },
- "lastChangePasswordTime": {
- "type": "string"
- },
- "lastName": {
- "type": "string"
- },
- "lastSigninIp": {
- "type": "string"
- },
- "lastSigninTime": {
- "type": "string"
- },
- "lastSigninWrongTime": {
- "type": "string"
- },
- "lastfm": {
- "type": "string"
- },
- "ldap": {
- "type": "string"
- },
- "line": {
- "type": "string"
- },
- "linkedin": {
- "type": "string"
- },
- "location": {
- "type": "string"
- },
- "mailru": {
- "type": "string"
- },
- "managedAccounts": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.ManagedAccount"
- }
- },
- "meetup": {
- "type": "string"
- },
- "metamask": {
- "type": "string"
- },
- "mfaAccounts": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.MfaAccount"
- }
- },
- "mfaEmailEnabled": {
- "type": "boolean"
- },
- "mfaItems": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.MfaItem"
- }
- },
- "mfaPhoneEnabled": {
- "type": "boolean"
- },
- "mfaPushEnabled": {
- "type": "boolean"
- },
- "mfaPushProvider": {
- "type": "string"
- },
- "mfaPushReceiver": {
- "type": "string"
- },
- "mfaRadiusEnabled": {
- "type": "boolean"
- },
- "mfaRadiusProvider": {
- "type": "string"
- },
- "mfaRadiusUsername": {
- "type": "string"
- },
- "mfaRememberDeadline": {
- "type": "string"
- },
- "microsoftonline": {
- "type": "string"
- },
- "multiFactorAuths": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.MfaProps"
- }
- },
- "name": {
- "type": "string"
- },
- "naver": {
- "type": "string"
- },
- "needUpdatePassword": {
- "type": "boolean"
- },
- "nextcloud": {
- "type": "string"
- },
- "okta": {
- "type": "string"
- },
- "onedrive": {
- "type": "string"
- },
- "originalRefreshToken": {
- "type": "string"
- },
- "originalToken": {
- "type": "string"
- },
- "oura": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "password": {
- "type": "string"
- },
- "passwordSalt": {
- "type": "string"
- },
- "passwordType": {
- "type": "string"
- },
- "patreon": {
- "type": "string"
- },
- "paypal": {
- "type": "string"
- },
- "permanentAvatar": {
- "type": "string"
- },
- "permissions": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Permission"
- }
- },
- "phone": {
- "type": "string"
- },
- "preHash": {
- "type": "string"
- },
- "preferredMfaType": {
- "type": "string"
- },
- "properties": {
- "additionalProperties": {
- "type": "string"
- }
- },
- "qq": {
- "type": "string"
- },
- "ranking": {
- "type": "integer",
- "format": "int64"
- },
- "realName": {
- "type": "string"
- },
- "recoveryCodes": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "region": {
- "type": "string"
- },
- "registerSource": {
- "type": "string"
- },
- "registerType": {
- "type": "string"
- },
- "roles": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Role"
- }
- },
- "salesforce": {
- "type": "string"
- },
- "score": {
- "type": "integer",
- "format": "int64"
- },
- "shopify": {
- "type": "string"
- },
- "signinWrongTimes": {
- "type": "integer",
- "format": "int64"
- },
- "signupApplication": {
- "type": "string"
- },
- "slack": {
- "type": "string"
- },
- "soundcloud": {
- "type": "string"
- },
- "spotify": {
- "type": "string"
- },
- "steam": {
- "type": "string"
- },
- "strava": {
- "type": "string"
- },
- "stripe": {
- "type": "string"
- },
- "tag": {
- "type": "string"
- },
- "tiktok": {
- "type": "string"
- },
- "title": {
- "type": "string"
- },
- "totpSecret": {
- "type": "string"
- },
- "tumblr": {
- "type": "string"
- },
- "twitch": {
- "type": "string"
- },
- "twitter": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "typetalk": {
- "type": "string"
- },
- "uber": {
- "type": "string"
- },
- "updatedTime": {
- "type": "string"
- },
- "vk": {
- "type": "string"
- },
- "web3onboard": {
- "type": "string"
- },
- "webauthnCredentials": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/webauthn.Credential"
- }
- },
- "wechat": {
- "type": "string"
- },
- "wecom": {
- "type": "string"
- },
- "weibo": {
- "type": "string"
- },
- "wepay": {
- "type": "string"
- },
- "xero": {
- "type": "string"
- },
- "yahoo": {
- "type": "string"
- },
- "yammer": {
- "type": "string"
- },
- "yandex": {
- "type": "string"
- },
- "zoom": {
- "type": "string"
- }
- }
- },
- "object.Userinfo": {
- "title": "Userinfo",
- "type": "object",
- "properties": {
- "address": {
- "type": "string"
- },
- "aud": {
- "type": "string"
- },
- "email": {
- "type": "string"
- },
- "email_verified": {
- "type": "boolean"
- },
- "groups": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "is_verified": {
- "type": "boolean"
- },
- "iss": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "permissions": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "phone": {
- "type": "string"
- },
- "picture": {
- "type": "string"
- },
- "preferred_username": {
- "type": "string"
- },
- "real_name": {
- "type": "string"
- },
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "sub": {
- "type": "string"
- }
- }
- },
- "object.Verification": {
- "title": "Verification",
- "type": "object"
- },
- "object.WebFinger": {
- "title": "WebFinger",
- "type": "object",
- "properties": {
- "aliases": {
- "$ref": "#/definitions/232967.\u003cnil\u003e.string"
- },
- "links": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.WebFingerLink"
- }
- },
- "properties": {
- "$ref": "#/definitions/233025.string.string"
- },
- "subject": {
- "type": "string"
- }
- }
- },
- "object.WebFingerLink": {
- "title": "WebFingerLink",
- "type": "object",
- "properties": {
- "href": {
- "type": "string"
- },
- "rel": {
- "type": "string"
- }
- }
- },
- "object.Webhook": {
- "title": "Webhook",
- "type": "object",
- "properties": {
- "contentType": {
- "type": "string"
- },
- "createdTime": {
- "type": "string"
- },
- "events": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "headers": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/object.Header"
- }
- },
- "isEnabled": {
- "type": "boolean"
- },
- "isUserExtended": {
- "type": "boolean"
- },
- "method": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "objectFields": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "organization": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- },
- "singleOrgOnly": {
- "type": "boolean"
- },
- "tokenFields": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "url": {
- "type": "string"
- }
- }
- },
- "pp.PaymentState": {
- "title": "PaymentState",
- "type": "string",
- "enum": [
- "PaymentStatePaid = \"Paid\"",
- "PaymentStateCreated = \"Created\"",
- "PaymentStateCanceled = \"Canceled\"",
- "PaymentStateTimeout = \"Timeout\"",
- "PaymentStateError = \"Error\""
- ],
- "example": "Paid"
- },
- "protocol.CredentialAssertion": {
- "title": "CredentialAssertion",
- "type": "object"
- },
- "protocol.CredentialAssertionResponse": {
- "title": "CredentialAssertionResponse",
- "type": "object"
- },
- "protocol.CredentialCreation": {
- "title": "CredentialCreation",
- "type": "object"
- },
- "protocol.CredentialCreationResponse": {
- "title": "CredentialCreationResponse",
- "type": "object"
- },
- "sql.DB": {
- "title": "DB",
- "type": "object"
- },
- "ssh.Client": {
- "title": "Client",
- "type": "object"
- },
- "util.SystemInfo": {
- "title": "SystemInfo",
- "type": "object",
- "properties": {
- "cpuUsage": {
- "type": "array",
- "items": {
- "type": "number",
- "format": "double"
- }
- },
- "memoryTotal": {
- "type": "integer",
- "format": "int64"
- },
- "memoryUsed": {
- "type": "integer",
- "format": "int64"
- }
- }
- },
- "util.VersionInfo": {
- "title": "VersionInfo",
- "type": "object",
- "properties": {
- "commitId": {
- "type": "string"
- },
- "commitOffset": {
- "type": "integer",
- "format": "int64"
- },
- "version": {
- "type": "string"
- }
- }
- },
- "webauthn.Credential": {
- "title": "Credential",
- "type": "object"
- },
- "xorm.Engine": {
- "title": "Engine",
- "type": "object"
- },
- "xormadapter.Adapter": {
- "title": "Adapter",
- "type": "object"
- },
- "xormadapter.CasbinRule": {
- "title": "CasbinRule",
- "type": "object"
- }
- },
- "securityDefinitions": {
- "AccessToken": {
- "type": "apiKey",
- "name": "Authorization",
- "in": "header"
- }
- }
-}
diff --git a/legacy/dash-prototype/test-logic-v3.mjs b/legacy/dash-prototype/test-logic-v3.mjs
deleted file mode 100644
index edfcbac..0000000
--- a/legacy/dash-prototype/test-logic-v3.mjs
+++ /dev/null
@@ -1,109 +0,0 @@
-import { readFileSync } from 'node:fs';
-const core = readFileSync('C:/Users/Administrator/Downloads/v1.2/core.js', 'utf8');
-const invHtml = readFileSync('C:/Users/Administrator/Downloads/v1.2/inventory-system.html', 'utf8');
-const chgHtml = readFileSync('C:/Users/Administrator/Downloads/v1.2/change-inventory.html', 'utf8');
-const m1 = invHtml.match(/