You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

29 lines
1.1 KiB

11 months ago
  1. const { useSwagger } = require("../../swagger/utils");
  2. const { apiAdminEndpoints } = require("./admin");
  3. const { apiAuthEndpoints } = require("./auth");
  4. const { apiDocumentEndpoints } = require("./document");
  5. const { apiSystemEndpoints } = require("./system");
  6. const { apiWorkspaceEndpoints } = require("./workspace");
  7. const { apiWorkspaceThreadEndpoints } = require("./workspaceThread");
  8. const { apiUserManagementEndpoints } = require("./userManagement");
  9. const { apiOpenAICompatibleEndpoints } = require("./openai");
  10. const { apiEmbedEndpoints } = require("./embed");
  11. // All endpoints must be documented and pass through the validApiKey Middleware.
  12. // How to JSDoc an endpoint
  13. // https://www.npmjs.com/package/swagger-autogen#openapi-3x
  14. function developerEndpoints(app, router) {
  15. if (!router) return;
  16. useSwagger(app);
  17. apiAuthEndpoints(router);
  18. apiAdminEndpoints(router);
  19. apiSystemEndpoints(router);
  20. apiWorkspaceEndpoints(router);
  21. apiDocumentEndpoints(router);
  22. apiWorkspaceThreadEndpoints(router);
  23. apiUserManagementEndpoints(router);
  24. apiOpenAICompatibleEndpoints(router);
  25. apiEmbedEndpoints(router);
  26. }
  27. module.exports = { developerEndpoints };