0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-02-03 23:00:14 -05:00
ghost/core/server/web/api/app.js
Daniel Lockyer c50658953c Renamed API canary/ folder to endpoints/
- now we only have one API version, it doesn't make sense to keep
  "canary" around
- renaming it to `endpoints/` makes more sense for this
- this commit renames the `core/server/api/canary/` folder to
  `core/server/api/endpoints/`
- it also fixes the naming in test titles and the various other places
  we relied on this
2022-07-04 11:14:37 +02:00

29 lines
1.1 KiB
JavaScript

const debug = require('@tryghost/debug')('web:api:default:app');
const config = require('../../../shared/config');
const express = require('../../../shared/express');
const sentry = require('../../../shared/sentry');
const errorHandler = require('@tryghost/mw-error-handler');
const APIVersionCompatibilityService = require('../../services/api-version-compatibility');
module.exports = function setupApiApp() {
debug('Parent API setup start');
const apiApp = express('api');
if (config.get('server:testmode')) {
apiApp.use(require('./testmode')());
}
apiApp.use(APIVersionCompatibilityService.versionRewrites);
apiApp.use(APIVersionCompatibilityService.contentVersion);
apiApp.lazyUse('/content/', require('./endpoints/content/app'));
apiApp.lazyUse('/admin/', require('./endpoints/admin/app'));
// Error handling for requests to non-existent API versions
apiApp.use(errorHandler.resourceNotFound);
apiApp.use(APIVersionCompatibilityService.errorHandler);
apiApp.use(errorHandler.handleJSONResponse(sentry));
debug('Parent API setup end');
return apiApp;
};