registeradmin

RegisterAdminInfo Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "tenant": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string",
          "format": "^[a-z\\-]+$"
        },
        "name": {
          "type": "string"
        },
        "address": {
          "type": "object",
          "properties": {
            "street": {
              "type": "string"
            },
            "streetNumber": {
              "type": "string"
            },
            "zipCode": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "country": {
              "type": "string"
            }
          },
          "required": [
            "street",
            "streetNumber",
            "zipCode",
            "city",
            "country"
          ]
        },
        "invoiceAddress": {
          "type": "object",
          "properties": {
            "street": {
              "type": "string"
            },
            "streetNumber": {
              "type": "string"
            },
            "zipCode": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "country": {
              "type": "string"
            }
          },
          "required": [
            "street",
            "streetNumber",
            "zipCode",
            "city",
            "country"
          ]
        }
      },
      "required": [
        "key",
        "name",
        "address",
        "invoiceAddress"
      ]
    },
    "user": {
      "type": "object",
      "properties": {
        "email": {
          "type": "string",
          "format": "email"
        },
        "password": {
          "type": "string"
        },
        "firstName": {
          "type": "string"
        },
        "lastName": {
          "type": "string"
        },
        "phone": {
          "type": "string"
        }
      },
      "required": [
        "email",
        "password",
        "firstName",
        "lastName",
        "phone"
      ]
    }
  },
  "required": [
    "tenant",
    "user"
  ]
}

RegisterAdminTenantInfo Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "key": {
      "type": "string",
      "format": "^[a-z\\-]+$"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "streetNumber": {
          "type": "string"
        },
        "zipCode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        },
        "country": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "streetNumber",
        "zipCode",
        "city",
        "country"
      ]
    },
    "invoiceAddress": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "streetNumber": {
          "type": "string"
        },
        "zipCode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        },
        "country": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "streetNumber",
        "zipCode",
        "city",
        "country"
      ]
    }
  },
  "required": [
    "key",
    "name",
    "address",
    "invoiceAddress"
  ]
}

RegisterAdminUserInfo Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email"
    },
    "password": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "phone": {
      "type": "string"
    }
  },
  "required": [
    "email",
    "password",
    "firstName",
    "lastName",
    "phone"
  ]
}

AddressInfo Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "street": {
      "type": "string"
    },
    "streetNumber": {
      "type": "string"
    },
    "zipCode": {
      "type": "string"
    },
    "city": {
      "type": "string"
    },
    "country": {
      "type": "string"
    }
  },
  "required": [
    "street",
    "streetNumber",
    "zipCode",
    "city",
    "country"
  ]
}

AdminResponseInfo Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "tenant": {
      "type": "object",
      "properties": {
        "_id": {
          "type": "string",
          "format": "uuid"
        },
        "key": {
          "type": "string",
          "format": "^[a-z\\-]+$"
        },
        "name": {
          "type": "string"
        },
        "address": {
          "type": "object",
          "properties": {
            "street": {
              "type": "string"
            },
            "streetNumber": {
              "type": "string"
            },
            "zipCode": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "country": {
              "type": "string"
            }
          },
          "required": [
            "street",
            "streetNumber",
            "zipCode",
            "city",
            "country"
          ]
        },
        "invoiceAddress": {
          "type": "object",
          "properties": {
            "street": {
              "type": "string"
            },
            "streetNumber": {
              "type": "string"
            },
            "zipCode": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "country": {
              "type": "string"
            }
          },
          "required": [
            "street",
            "streetNumber",
            "zipCode",
            "city",
            "country"
          ]
        },
        "contact": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "email": {
              "type": "string"
            },
            "phone": {
              "type": "string"
            }
          }
        },
        "isActivated": {
          "type": "boolean"
        },
        "rootUserId": {
          "type": "string",
          "format": "uuid"
        },
        "registeredOn": {
          "type": "object",
          "format": "date-time"
        },
        "activatedOn": {
          "type": "object",
          "format": "date-time"
        }
      },
      "required": [
        "_id",
        "key",
        "name",
        "address",
        "invoiceAddress",
        "contact",
        "isActivated",
        "rootUserId",
        "registeredOn",
        "activatedOn"
      ]
    },
    "user": {
      "type": "object",
      "properties": {
        "_id": {
          "type": "string",
          "format": "uuid"
        },
        "tenantId": {
          "type": "string",
          "format": "uuid"
        },
        "tenantKey": {
          "type": "string",
          "format": "^[a-z\\-]+$"
        },
        "email": {
          "type": "string",
          "format": "email"
        },
        "firstName": {
          "type": "string"
        },
        "lastName": {
          "type": "string"
        },
        "isDeviceUser": {
          "type": "boolean"
        },
        "deviceImei": {
          "type": "string"
        },
        "deviceName": {
          "type": "string"
        },
        "deviceOs": {
          "type": "string"
        },
        "isActivated": {
          "type": "boolean"
        },
        "roles": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "registeredOn": {
          "type": "object",
          "format": "date-time"
        },
        "activatedOn": {
          "type": "object",
          "format": "date-time"
        }
      },
      "required": [
        "_id",
        "tenantId",
        "tenantKey",
        "email",
        "firstName",
        "lastName",
        "isDeviceUser",
        "deviceImei",
        "deviceName",
        "deviceOs",
        "isActivated",
        "roles",
        "registeredOn",
        "activatedOn"
      ]
    },
    "roles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "_id": {
            "type": "string",
            "format": "uuid"
          },
          "tenantId": {
            "type": "string",
            "format": "uuid"
          },
          "tenantKey": {
            "type": "string",
            "format": "^[a-z\\-]+$"
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "rights": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "AccessRightAccessManagementConsole",
                "AccessRightAccessTenantConsole",
                "AccessRightAccessDashboard",
                "AccessRightViewTenant",
                "AccessRightActivateTenant",
                "AccessRightViewUser",
                "AccessRightDeleteUser",
                "AccessRightActivateUser",
                "AccessRightCreateDevice",
                "AccessRightCreateDeviceToken",
                "AccessRightViewRole",
                "AccessRightCreateRole",
                "AccessRightAssignRole",
                "AccessRightViewTriage",
                "AccessRightCreateTriage",
                "AccessRightUpdateTriage",
                "AccessRightViewPatient",
                "AccessRightCreatePatient",
                "AccessRightUpdatePatient",
                "AccessRightViewDisaster",
                "AccessRightCreateDisaster",
                "AccessRightWebSocket",
                "AccessRightWebSocketEventOnCreateTriage",
                "AccessRightWebSocketEventOnCreatePatient",
                "AccessRightWebSocketEventOnCreateDisaster",
                "AccessRightWebSocketEventOnUpdatePatient",
                "AccessRightWebSocketEventOnUpdateDisaster"
              ]
            }
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          },
          "updatedOn": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "_id",
          "tenantId",
          "tenantKey",
          "name",
          "createdOn",
          "updatedOn"
        ]
      }
    }
  },
  "required": [
    "tenant",
    "user",
    "roles"
  ]
}

TenantResponseInfo Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "_id": {
      "type": "string",
      "format": "uuid"
    },
    "key": {
      "type": "string",
      "format": "^[a-z\\-]+$"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "streetNumber": {
          "type": "string"
        },
        "zipCode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        },
        "country": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "streetNumber",
        "zipCode",
        "city",
        "country"
      ]
    },
    "invoiceAddress": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "streetNumber": {
          "type": "string"
        },
        "zipCode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        },
        "country": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "streetNumber",
        "zipCode",
        "city",
        "country"
      ]
    },
    "contact": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "email": {
          "type": "string"
        },
        "phone": {
          "type": "string"
        }
      }
    },
    "isActivated": {
      "type": "boolean"
    },
    "rootUserId": {
      "type": "string",
      "format": "uuid"
    },
    "registeredOn": {
      "type": "object",
      "format": "date-time"
    },
    "activatedOn": {
      "type": "object",
      "format": "date-time"
    }
  },
  "required": [
    "_id",
    "key",
    "name",
    "address",
    "invoiceAddress",
    "contact",
    "isActivated",
    "rootUserId",
    "registeredOn",
    "activatedOn"
  ]
}

UserResponseInfo Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "_id": {
      "type": "string",
      "format": "uuid"
    },
    "tenantId": {
      "type": "string",
      "format": "uuid"
    },
    "tenantKey": {
      "type": "string",
      "format": "^[a-z\\-]+$"
    },
    "email": {
      "type": "string",
      "format": "email"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "isDeviceUser": {
      "type": "boolean"
    },
    "deviceImei": {
      "type": "string"
    },
    "deviceName": {
      "type": "string"
    },
    "deviceOs": {
      "type": "string"
    },
    "isActivated": {
      "type": "boolean"
    },
    "roles": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "registeredOn": {
      "type": "object",
      "format": "date-time"
    },
    "activatedOn": {
      "type": "object",
      "format": "date-time"
    }
  },
  "required": [
    "_id",
    "tenantId",
    "tenantKey",
    "email",
    "firstName",
    "lastName",
    "isDeviceUser",
    "deviceImei",
    "deviceName",
    "deviceOs",
    "isActivated",
    "roles",
    "registeredOn",
    "activatedOn"
  ]
}