sugar-generate
Version:
Auto generate OAS 3.0 REST + GraphQL APIs (Node + MongoDB)
87 lines (86 loc) • 1.74 kB
JSON
[
{
"name": "user",
"schema": {
"name": {
"type": "String",
"default": ""
},
"email": {
"type": "String",
"trim": true,
"required": true,
"unique": true,
"immutable": true,
"htmlType": "email"
},
"phone": {
"type": "Boolean",
"default": false,
"htmlType": "boolean"
},
"token": {
"type": "String",
"unique": true
},
"magic_link": {
"type": "String",
"default": ""
},
"role": {
"default": "user",
"type": "String"
},
"agree": {
"type": "Boolean",
"htmlType": "boolean"
},
"last_login": {
"type": "Number"
},
"known_ips": [{
"type": "String"
}],
"blocked": {
"type": "Boolean",
"htmlType": "boolean",
"default": false
}
},
"statics": {
"statuses": ["created", "under_review", "listed", "deleted"],
"status": {
"active": "active",
"inactive": "inactive",
"deleted": "deleted"
}
}
},
{
"name": "configuration",
"schema": {
"jwt_expires_in_hours": {
"type": "Number",
"default": 24
},
"allow_signup": {
"type": "Boolean",
"default": true
},
"allowed_signin_methods": {
"type": "String",
"enum": ["email", "phone", "both"],
"default": "email",
"htmlType": "radio"
},
"force_agree_to": {
"type": "Boolean",
"default": true
},
"allow_impersonation": {
"type": "Boolean",
"default": true
}
}
}
]