http:
  port: 2011
apiEndpoints:
  users:
    host: "*"
    paths:
      - "/v1/users"
      - "/v1/users/*"
      - "/v1/roles"
      - "/v1/roles/*"
      - "/v1/regional"
      - "/v1/regional/*"
      - "/v1/fileupload"
      - "/v1/fileupload/*"
      - "/v1/main-module"
      - "/v1/main-module/*"
      - "/v1/sub-module"
      - "/v1/sub-module/*"
      - "/v1/permission-entity"
      - "/v1/permission-entity/*"
      - "/v1/permission"
      - "/v1/permission/*"
      - "/v1/role-permission"
      - "/v1/role-permission/*"
  superAdmin:
    host: "*"
    paths:
      - "/v1/plan"
      - "/v1/plan/*"
      - "/v1/organization"
      - "/v1/organization/*"
      - "/v1/module"
      - "/v1/module/*"
      - "/v1/page-setting"
      - "/v1/page-setting/*"
      - "/v1/subscription-plan"
      - "/v1/subscription-plan/*"
      - "/v1/download"
      - "/v1/download/*"
      - "/v1/dashboard"
      - "/v1/dashboard/*"
      - "/v1/language"
      - "/v1/language/*"
      - "/v1/acknowledgement-categories"
      - "/v1/acknowledgement-categories/*"
      - "/v1/acknowledgement"
      - "/v1/acknowledgement/*"
      - "/v1/website-setting"
      - "/v1/website-setting/*"
      - "/v1/super-admin-staff"
      - "/v1/super-admin-staff/*"
  organizationAdmin:
    host: "*"
    paths:
      - "/v1/leave-types"
      - "/v1/leave-types/*"
      - "/v1/assign-leave"
      - "/v1/assign-leave/*"
      - "/v1/apply-leave"
      - "/v1/apply-leave/*"
      - "/v1/leave-request"
      - "/v1/leave-request/*"
      - "/v1/user-leave"
      - "/v1/user-leave/*"
      - "/v1/category"
      - "/v1/syllabus/*"
      - "/v1/syllabus"
      - "/v1/category/*"
      - "/v1/organization-department"
      - "/v1/organization-department/*"
      - "/v1/course"
      - "/v1/course/*"
      - "/v1/section"
      - "/v1/section/*"
      - "/v1/lesson"
      - "/v1/lesson/*"
      - "/v1/organization-rooms"
      - "/v1/organization-rooms/*"
      - "/v1/organization-class"
      - "/v1/organization-class/*"
      - "/v1/organization-branch"
      - "/v1/organization-branch/*"
      - "/v1/organization-subject"
      - "/v1/organization-subject/*"
      - "/v1/students"
      - "/v1/students/*"
      - "/v1/teachers"
      - "/v1/teachers/*"
      - "/v1/librarians"
      - "/v1/librarians/*"
      - "/v1/parents"
      - "/v1/parents/*"
      - "/v1/organaization-section"
      - "/v1/organaization-section/*"
      - "/v1/attendance"
      - "/v1/attendance/*"
      - "/v1/live-class"
      - "/v1/live-class/*"
      - "/v1/subscription"
      - "/v1/subscription/*"
      - "/v1/zoom-detail"
      - "/v1/zoom-detail/*"
      - "/v1/book-category"
      - "/v1/book-category/*"
      - "/v1/author"
      - "/v1/author/*"
      - "/v1/book"
      - "/v1/book/*"
      - "/v1/class-time-table"
      - "/v1/class-time-table/*"
      - "/v1/book-issue"
      - "/v1/book-issue/*"
      - "/v1/course-user"
      - "/v1/course-user/*"
      - "/v1/course-rating"
      - "/v1/course-rating/*"
      - "/v1/organization-admin-staff"
      - "/v1/organization-admin-staff/*"
      - "/v1/organization-branch-admin-staff"
      - "/v1/organization-branch-admin-staff/*"
      - "/v1/assignment"
      - "/v1/assignment/*"
      - "/v1/session-year"
      - "/v1/session-year/*"
      - "/v1/offline-exam"
      - "/v1/offline-exam/*"
      - "/v1/exam-schedule"
      - "/v1/exam-schedule/*"
      - "/v1/exam-grade"
      - "/v1/exam-grade/*"
      - "/v1/exam-result"
      - "/v1/exam-result/*"
      - "/v1/organization-admin-staff"
      - "/v1/organization-admin-staff/*"
      - "/v1/organization-admin-branch-staff"
      - "/v1/organization-admin-branch-staff/*"
      - "/v1/notice"
      - "/v1/notice/*"
      - "/v1/student-exam-grade"
      - "/v1/student-exam-grade/*"
      - "/v1/salary-template"
      - "/v1/salary-template/*"
      - "/v1/salary-payment"
      - "/v1/salary-payment/*"
      - "/v1/salary-slip"
      - "/v1/salary-slip/*"

  notification:
    host: "*"
    paths:
      - "/v1/emails"
      - "/v1/emails/*"
      - "/v1/email-template"
      - "/v1/email-template/*"
      - "/v1/smtp"
      - "/v1/smtp/*"
      - "/v1/push-notification"
      - "/v1/push-notification/*"
      - "/v1/email-notification-template"
      - "/v1/email-notification-template/*"
  tickets:
    host: "*"
    paths:
      - "/v1/issue-types"
      - "/v1/issue-types/*"
      - "/v1/tickets"
      - "/v1/tickets/*"
      - "/v1/comments"
      - "/v1/comments/*"
serviceEndpoints:
  usersService:
    url: "http://localhost:2012/"
  superAdminService:
    url: "http://localhost:2013/"
  organizationAdminService:
    url: "http://localhost:2014/"
  ticketsService:
    url: "http://localhost:2015/"
  notificationService:
    url: "http://localhost:2016/"
policies:
  - basic-auth
  - cors
  - expression
  - key-auth
  - log
  - oauth2
  - proxy
  - rate-limit
  - service-registry
  - service-deregister
pipelines:
  myApiPipeline:
    apiEndpoints:
      - users
    policies:
      - proxy:
          - action:
              serviceEndpoint: usersService
      - service-registry:
          - action:
              serviceName: userService
              servicePort: 5647
      - service-deregister:
          - action:
              serviceName: userService
  superAdmin:
    apiEndpoints:
      - superAdmin
    policies:
      - proxy:
          - action:
              serviceEndpoint: superAdminService
  organizationAdmin:
    apiEndpoints:
      - organizationAdmin
    policies:
      - proxy:
          - action:
              serviceEndpoint: organizationAdminService
  tickets:
    apiEndpoints:
      - tickets
    policies:
      - proxy:
          - action:
              serviceEndpoint: ticketsService
  notification:
    apiEndpoints:
      - notification
    policies:
      - proxy:
          - action:
              serviceEndpoint: notificationService
    logger:
      - type: console
        options:
          level: info # Set the log level (info, warn, error, etc.)
