Skip to Content
Documentation

DevPluginsREST API

Moved API imports

Where the VitNode API files moved when routes got one file each under routes/, and how the former deep import paths keep working until you update them.

VitNode keeps one endpoint per file in each module's routes/ folder, names modules <feature>.module.ts, and puts schemas next to their module. To get there, some API files moved or were split. Their endpoints did not change: the methods, paths, permissions and fetcher calls are the same. If your code imports one of the paths below, it keeps working, but the import is deprecated. Switch to the new path before the compatibility entries are removed in a future major release.

How the old paths still resolve

  • Moved as a whole: the package's exports map the old path straight to the new file, so every export is still there.
  • Split or trimmed: the old path points at a small compatibility module under dist/src/compat/. It re-exports each former export from its new module, marked @deprecated, and contains no code of its own. It pulls in no route code the old file did not already contain, so a browser-safe schema import stays browser-safe.
  • Still at the same path: a file that only lost some exports, such as @vitnode/core/api/modules/ai/routes/stream.route, still serves its remaining exports. Only the moved ones are deprecated.

Nothing was removed without a replacement, so no import from the paths below breaks. In the tables, "everything else: unchanged" marks those remaining exports.

@vitnode/core

Former importImport from
@vitnode/core/api/lib/ai/run-schemas@vitnode/core/api/lib/ai/run.schema
@vitnode/core/api/modules/admin/activity-logs/activity-logs.admin.module@vitnode/core/api/modules/admin/activity-logs/activity-logs.module
@vitnode/core/api/modules/admin/activity-logs/routes/detail.route@vitnode/core/api/modules/admin/activity-logs/routes/show.route
@vitnode/core/api/modules/admin/advanced/advanced.admin.module@vitnode/core/api/modules/admin/advanced/advanced.module
@vitnode/core/api/modules/admin/advanced/cron/cron.admin.module@vitnode/core/api/modules/admin/advanced/cron/cron.module
@vitnode/core/api/modules/admin/advanced/cron/routes/get.route@vitnode/core/api/modules/admin/advanced/cron/routes/list.route
@vitnode/core/api/modules/admin/advanced/queue/queue.admin.module@vitnode/core/api/modules/admin/advanced/queue/queue.module
@vitnode/core/api/modules/admin/advanced/queue/routes/get.route@vitnode/core/api/modules/admin/advanced/queue/routes/list.route
@vitnode/core/api/modules/admin/ai/ai.admin.module@vitnode/core/api/modules/admin/ai/ai.module
@vitnode/core/api/modules/admin/ai/routes/access.routedeleteAiUserOverrideAdminRoute: @vitnode/core/api/modules/admin/ai/routes/delete-user-override.route
getAiRoleAccessAdminRoute: @vitnode/core/api/modules/admin/ai/routes/show-role-access.route
getAiUserOverrideAdminRoute: @vitnode/core/api/modules/admin/ai/routes/show-user-override.route
updateAiRoleAccessAdminRoute: @vitnode/core/api/modules/admin/ai/routes/update-role-access.route
updateAiUserOverrideAdminRoute: @vitnode/core/api/modules/admin/ai/routes/update-user-override.route
@vitnode/core/api/modules/admin/ai/routes/assist-stream.routeestimateAiAdminRoute: @vitnode/core/api/modules/admin/ai/routes/assist-estimate.route
everything else: unchanged
@vitnode/core/api/modules/admin/ai/routes/history.routelistAiHistoryAdminRoute: @vitnode/core/api/modules/admin/ai/routes/list-history.route
showAiRunAdminRoute: @vitnode/core/api/modules/admin/ai/routes/show-run.route
@vitnode/core/api/modules/admin/ai/routes/translation-sources.routegetTranslationSourcesAdminRoute: @vitnode/core/api/modules/admin/ai/routes/list-translation-sources.route
saveTranslationSourcesAdminRoute: @vitnode/core/api/modules/admin/ai/routes/update-translation-sources.route
@vitnode/core/api/modules/admin/ai/schemas@vitnode/core/api/modules/admin/ai/ai.schema
@vitnode/core/api/modules/admin/dashboard/dashboard.admin.module@vitnode/core/api/modules/admin/dashboard/dashboard.module
@vitnode/core/api/modules/admin/debug/debug.admin.module@vitnode/core/api/modules/admin/debug/debug.module
@vitnode/core/api/modules/admin/files/files.admin.module@vitnode/core/api/modules/admin/files/files.module
@vitnode/core/api/modules/admin/files/routes/alt.routedeleteFileAltAdminRoute: @vitnode/core/api/modules/admin/files/routes/delete-alt.route
getFileAltAdminRoute: @vitnode/core/api/modules/admin/files/routes/show-alt.route
updateFileAltPolicyAdminRoute: @vitnode/core/api/modules/admin/files/routes/update-alt-policy.route
updateFileAltAdminRoute: @vitnode/core/api/modules/admin/files/routes/update-alt.route
@vitnode/core/api/modules/admin/notifications/notifications.admin.module@vitnode/core/api/modules/admin/notifications/notifications.module
@vitnode/core/api/modules/admin/notifications/routes/danger.routecancelQueuedNotificationEmailsRoute: @vitnode/core/api/modules/admin/notifications/routes/cancel-queued-emails.route
deleteAllNotificationsRoute: @vitnode/core/api/modules/admin/notifications/routes/delete-all.route
markEverythingReadRoute: @vitnode/core/api/modules/admin/notifications/routes/mark-all-read.route
pauseNotificationsRoute: @vitnode/core/api/modules/admin/notifications/routes/pause.route
resetMemberNotificationPreferencesRoute: @vitnode/core/api/modules/admin/notifications/routes/reset-member-preferences.route
resumeNotificationsRoute: @vitnode/core/api/modules/admin/notifications/routes/resume.route
@vitnode/core/api/modules/admin/notifications/routes/deliveries.routelistNotificationDeliveriesRoute: @vitnode/core/api/modules/admin/notifications/routes/list-deliveries.route
retryNotificationDeliveryRoute: @vitnode/core/api/modules/admin/notifications/routes/retry-delivery.route
@vitnode/core/api/modules/admin/notifications/routes/maintenance.routereconcileNotificationCountsRoute: @vitnode/core/api/modules/admin/notifications/routes/reconcile-counts.route
sendNotificationTestEmailRoute: @vitnode/core/api/modules/admin/notifications/routes/send-test-email.route
@vitnode/core/api/modules/admin/notifications/routes/settings.route@vitnode/core/api/modules/admin/notifications/routes/update-type-policy.route
@vitnode/core/api/modules/admin/plugins/plugins.admin.module@vitnode/core/api/modules/admin/plugins/plugins.module
@vitnode/core/api/modules/admin/plugins/routes/updates.schemaiso, serializeComponentUpdate: @vitnode/core/api/modules/admin/plugins/lib/serialize-update
componentUpdateSchema, updatesOverviewSchema, updatesSummarySchema: @vitnode/core/api/modules/admin/plugins/updates.schema
@vitnode/core/api/modules/admin/report-reasons/report-reasons.admin.module@vitnode/core/api/modules/admin/report-reasons/report-reasons.module
@vitnode/core/api/modules/admin/report-reasons/routes/report-reasons.routescreateReportReasonAdminRoute: @vitnode/core/api/modules/admin/report-reasons/routes/create.route
deleteReportReasonAdminRoute: @vitnode/core/api/modules/admin/report-reasons/routes/delete.route
listReportReasonsAdminRoute: @vitnode/core/api/modules/admin/report-reasons/routes/list.route
reorderReportReasonsAdminRoute: @vitnode/core/api/modules/admin/report-reasons/routes/reorder.route
updateReportReasonAdminRoute: @vitnode/core/api/modules/admin/report-reasons/routes/update.route
@vitnode/core/api/modules/admin/roles/roles.admin.module@vitnode/core/api/modules/admin/roles/roles.module
@vitnode/core/api/modules/admin/roles/routes/create.routeROLE_IMAGE_SIZE_MAX_KB, zodRoleEditOwnContentMinutesSchema, zodRoleImageSizeSchema, zodRoleNameSchema, zodRolePrefixSchema, zodRoleStorageSchema: @vitnode/core/api/modules/admin/roles/roles.schema
everything else: unchanged
@vitnode/core/api/modules/admin/roles/routes/list-mapping@vitnode/core/api/modules/admin/roles/lib/list-mapping
@vitnode/core/api/modules/admin/routes/notifications.route@vitnode/core/api/modules/admin/routes/send-notification.route
@vitnode/core/api/modules/admin/staff/lib/schema@vitnode/core/api/modules/admin/staff/staff.schema
@vitnode/core/api/modules/admin/staff/staff.admin.module@vitnode/core/api/modules/admin/staff/staff.module
@vitnode/core/api/modules/admin/users/users.admin.module@vitnode/core/api/modules/admin/users/users.module
@vitnode/core/api/modules/admin/warnings/routes/warning-reasons.routescreateWarningReasonAdminRoute: @vitnode/core/api/modules/admin/warnings/routes/create-reason.route
listWarningReasonsAdminRoute: @vitnode/core/api/modules/admin/warnings/routes/list-reasons.route
reorderWarningReasonsAdminRoute: @vitnode/core/api/modules/admin/warnings/routes/reorder-reasons.route
updateWarningReasonAdminRoute: @vitnode/core/api/modules/admin/warnings/routes/update-reason.route
@vitnode/core/api/modules/admin/warnings/routes/warning-thresholds.routescreateWarningThresholdAdminRoute: @vitnode/core/api/modules/admin/warnings/routes/create-threshold.route
deleteWarningThresholdAdminRoute: @vitnode/core/api/modules/admin/warnings/routes/delete-threshold.route
listWarningThresholdsAdminRoute: @vitnode/core/api/modules/admin/warnings/routes/list-thresholds.route
updateWarningThresholdAdminRoute: @vitnode/core/api/modules/admin/warnings/routes/update-threshold.route
@vitnode/core/api/modules/admin/warnings/warnings.admin.module@vitnode/core/api/modules/admin/warnings/warnings.module
@vitnode/core/api/modules/ai/routes/stream.routeestimateAiRoute: @vitnode/core/api/modules/ai/routes/estimate.route
everything else: unchanged
@vitnode/core/api/modules/content/helpers/execute-content-schedule@vitnode/core/api/modules/content/lib/execute-content-schedule
@vitnode/core/api/modules/cron/helpers/load-cron-health@vitnode/core/api/modules/cron/lib/load-cron-health
@vitnode/core/api/modules/cron/helpers/process-cron-jobs@vitnode/core/api/modules/cron/lib/process-cron-jobs
@vitnode/core/api/modules/cron/helpers/register-cron-jobs@vitnode/core/api/modules/cron/lib/register-cron-jobs
@vitnode/core/api/modules/cron/routes/cron.route@vitnode/core/api/modules/cron/routes/run.route
@vitnode/core/api/modules/middleware/routerouteMiddlewareSchema: @vitnode/core/api/modules/middleware/middleware.schema
routeMiddleware: @vitnode/core/api/modules/middleware/routes/show-config.route
@vitnode/core/api/modules/moderation/lib/schema@vitnode/core/api/modules/moderation/moderation.schema
@vitnode/core/api/modules/moderation/lib/warnings-service@vitnode/core/api/modules/moderation/lib/warnings
@vitnode/core/api/modules/moderation/routes/account-status.routeaccountStatusHistoryRoute: @vitnode/core/api/modules/moderation/routes/list-account-status-history.route
accountStatusRoute: @vitnode/core/api/modules/moderation/routes/show-account-status.route
@vitnode/core/api/modules/moderation/routes/approvals.routesapproveApprovalRoute: @vitnode/core/api/modules/moderation/routes/approve-approval.route
listApprovalsRoute: @vitnode/core/api/modules/moderation/routes/list-approvals.route
myApprovalsRoute: @vitnode/core/api/modules/moderation/routes/list-my-approvals.route
rejectApprovalRoute: @vitnode/core/api/modules/moderation/routes/reject-approval.route
approvalFiltersRoute: @vitnode/core/api/modules/moderation/routes/show-approval-filters.route
showApprovalRoute: @vitnode/core/api/modules/moderation/routes/show-approval.route
@vitnode/core/api/modules/moderation/routes/create.route@vitnode/core/api/modules/moderation/routes/create-report.route
@vitnode/core/api/modules/moderation/routes/list.route@vitnode/core/api/modules/moderation/routes/list-reports.route
@vitnode/core/api/modules/moderation/routes/notes.routesdeleteReportNoteRoute: @vitnode/core/api/modules/moderation/routes/delete-report-note.route
editReportNoteRoute: @vitnode/core/api/modules/moderation/routes/update-report-note.route
@vitnode/core/api/modules/moderation/routes/reasons.route@vitnode/core/api/modules/moderation/routes/list-report-reasons.route
@vitnode/core/api/modules/moderation/routes/show.route@vitnode/core/api/modules/moderation/routes/show-report.route
@vitnode/core/api/modules/moderation/routes/warnings.routesissueWarningRoute: @vitnode/core/api/modules/moderation/routes/issue-warning.route
memberLogRoute: @vitnode/core/api/modules/moderation/routes/list-member-log.route
listWarningReasonsRoute: @vitnode/core/api/modules/moderation/routes/list-warning-reasons.route
listWarningsRoute: @vitnode/core/api/modules/moderation/routes/list-warnings.route
previewWarningRoute: @vitnode/core/api/modules/moderation/routes/preview-warning.route
revokeSanctionRoute: @vitnode/core/api/modules/moderation/routes/revoke-sanction.route
revokeWarningRoute: @vitnode/core/api/modules/moderation/routes/revoke-warning.route
searchMembersRoute: @vitnode/core/api/modules/moderation/routes/search-members.route
memberStandingRoute: @vitnode/core/api/modules/moderation/routes/show-member-standing.route
@vitnode/core/api/modules/moderation/routes/workflow.routesassignReportRoute: @vitnode/core/api/modules/moderation/routes/assign-report.route
claimReportRoute: @vitnode/core/api/modules/moderation/routes/claim-report.route
noteReportRoute: @vitnode/core/api/modules/moderation/routes/create-report-note.route
reportAssigneesRoute: @vitnode/core/api/modules/moderation/routes/list-report-assignees.route
reopenReportRoute: @vitnode/core/api/modules/moderation/routes/reopen-report.route
resolveReportRoute: @vitnode/core/api/modules/moderation/routes/resolve-report.route
reportActionRoute: @vitnode/core/api/modules/moderation/routes/run-report-action.route
@vitnode/core/api/modules/notifications/routes/mark.routearchiveNotificationRoute: @vitnode/core/api/modules/notifications/routes/archive.route
markAllNotificationsReadRoute: @vitnode/core/api/modules/notifications/routes/mark-all-read.route
markNotificationReadRoute: @vitnode/core/api/modules/notifications/routes/mark-read.route
markNotificationUnreadRoute: @vitnode/core/api/modules/notifications/routes/mark-unread.route
@vitnode/core/api/modules/notifications/routes/preferences.routezodNotificationPreferences, zodUpdateNotificationPreferences: @vitnode/core/api/modules/notifications/notifications.schema
getNotificationPreferencesRoute: @vitnode/core/api/modules/notifications/routes/show-preferences.route
updateNotificationPreferencesRoute: @vitnode/core/api/modules/notifications/routes/update-preferences.route
@vitnode/core/api/modules/notifications/schemarequireNotificationUser: @vitnode/core/api/modules/notifications/lib/require-notification-user
unauthorizedResponse, zodNotificationEmailMode, zodNotificationIdParams, zodNotificationItem, zodNotificationState: @vitnode/core/api/modules/notifications/notifications.schema
@vitnode/core/api/modules/notifications/tasks/notification-tasksnotificationsCleanupCron, notificationsScheduleCron: @vitnode/core/api/modules/notifications/cron/notifications.cron
notificationsCleanupTask, notificationsEmailTask, notificationsFanoutTask: @vitnode/core/api/modules/notifications/tasks/notifications.task
@vitnode/core/api/modules/pages/page-layout-routes@vitnode/core/api/modules/pages/pages.module
@vitnode/core/api/modules/pages/page-layout-service@vitnode/core/api/modules/pages/lib/page-layout
@vitnode/core/api/modules/queue/helpers/process-queue-tasks@vitnode/core/api/modules/queue/lib/process-queue-tasks
@vitnode/core/api/modules/search/routes/search.routedateOrUndefined, MAX_SEARCH_AUTHOR_IDS, positiveIntListOrUndefined, positiveIntOrUndefined: @vitnode/core/api/modules/search/lib/query-params
zodSearchHitAuthor, zodSearchHitSchema, zodSearchResultSchema: @vitnode/core/api/modules/search/search.schema
everything else: unchanged
@vitnode/core/api/modules/search/routes/suggest.routesearchSuggestionsLimit: @vitnode/core/api/modules/search/lib/query-params
zodSearchSuggestion: @vitnode/core/api/modules/search/search.schema
everything else: unchanged
@vitnode/core/api/modules/search/routes/timeline.routesearchTimeline: @vitnode/core/api/modules/search/lib/timeline
zodSearchTimelineQuery, zodSearchTimelineUserId: @vitnode/core/api/modules/search/search.schema
everything else: unchanged
@vitnode/core/api/modules/users/avatar-color@vitnode/core/api/modules/users/lib/avatar-color
@vitnode/core/api/modules/users/credential-limits@vitnode/core/api/modules/users/lib/credential-limits
@vitnode/core/api/modules/users/passkeys/failure@vitnode/core/api/modules/users/passkeys/lib/failure
@vitnode/core/api/modules/users/passkeys/schema@vitnode/core/api/modules/users/passkeys/passkeys.schema
@vitnode/core/api/modules/users/presence-schema@vitnode/core/api/modules/users/presence.schema
@vitnode/core/api/modules/users/routes/privacy.route@vitnode/core/api/modules/users/routes/update-privacy.route
@vitnode/core/api/modules/users/routes/reset-passowrd.route@vitnode/core/api/modules/users/routes/reset-password.route
@vitnode/core/api/modules/users/routes/time-zone.route@vitnode/core/api/modules/users/routes/update-time-zone.route
@vitnode/core/api/modules/users/sso/connections/failure@vitnode/core/api/modules/users/sso/connections/lib/failure
@vitnode/core/api/modules/users/sso/connections/routes/import.routessoApplyImportRoute, zodSsoApplyImportSchema: @vitnode/core/api/modules/users/sso/connections/routes/apply-import.route
ssoDiscardImportRoute: @vitnode/core/api/modules/users/sso/connections/routes/discard-import.route
ssoImportPreviewRoute: @vitnode/core/api/modules/users/sso/connections/routes/preview-import.route
@vitnode/core/api/modules/users/sso/connections/routes/preferences.routezodSsoPreferencesSchema: @vitnode/core/api/modules/users/sso/connections/connections.schema
ssoPreferencesRoute: @vitnode/core/api/modules/users/sso/connections/routes/update-preferences.route
@vitnode/core/api/modules/users/sso/connections/schema@vitnode/core/api/modules/users/sso/connections/connections.schema
@vitnode/core/api/modules/users/sso/routes/pending.routessoPendingConfirmRoute, zodSsoPendingConfirmSchema: @vitnode/core/api/modules/users/sso/routes/pending-confirm.route
ssoPendingEmailRoute, zodSsoPendingEmailSchema: @vitnode/core/api/modules/users/sso/routes/pending-email.route

@vitnode/blog

Former importImport from
@vitnode/blog/api/modules/admin/ai/ai.admin.module@vitnode/blog/api/modules/admin/ai/ai.module
@vitnode/blog/api/modules/categories/categories.modulezodBlogCategorySummary: @vitnode/blog/api/modules/categories/routes/list.route
everything else: unchanged