PluginProbe
Extendify / 3.2.1
Extendify v3.2.1
3.2.1 3.2.0 3.1.6 3.1.5 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 3.0.6 3.0.5 3.0.4 trunk 0.1.0 0.10.0 0.10.1 0.10.2 0.11.0 0.11.1 0.2.0 0.3.0 0.3.1 0.4.0 0.5.0 0.6.0 All 127 releases
← All changes | routes/api.php +149 -53 0.11.13.2.1 View file →
@@ -1,5 +1,6 @@
1 1 <?php
2 +
2 3 /**
3 4 * Api routes
4 5 */
5 6
@@ -7,78 +8,173 @@
7 8 die('No direct access.');
8 9 }
9 10
10 11 use Extendify\ApiRouter;
11 -use Extendify\Library\Controllers\AuthController;
12 -use Extendify\Library\Controllers\MetaController;
13 -use Extendify\Library\Controllers\PingController;
14 -use Extendify\Library\Controllers\PluginController;
15 -use Extendify\Library\Controllers\SiteSettingsController;
16 -use Extendify\Library\Controllers\TaxonomyController;
17 -use Extendify\Library\Controllers\TemplateController;
18 -use Extendify\Library\Controllers\UserController;
19 -use Extendify\Onboarding\Controllers\DataController;
20 -use Extendify\Onboarding\Controllers\LibraryController;
21 -use Extendify\Onboarding\Controllers\WPController;
22 -use Extendify\Assist\Controllers\AssistDataController;
12 +use Extendify\Assist\Controllers\DomainsSuggestionController;
23 13 use Extendify\Assist\Controllers\GlobalsController;
14 +use Extendify\Assist\Controllers\RouterController;
24 15 use Extendify\Assist\Controllers\TasksController;
25 -use Extendify\Assist\Controllers\UserSelectionController;
26 16
27 -\add_action(
28 - 'rest_api_init',
29 - function () {
30 - ApiRouter::get('/active-plugins', [PluginController::class, 'active']);
31 - ApiRouter::get('/plugins', [PluginController::class, 'index']);
32 - ApiRouter::post('/plugins', [PluginController::class, 'install']);
17 +use Extendify\HelpCenter\Controllers\TourController;
18 +use Extendify\HelpCenter\Controllers\RouterController as HelpCenterRouterController;
19 +use Extendify\HelpCenter\Controllers\SupportArticlesController;
33 20
34 - ApiRouter::get('/taxonomies', [TaxonomyController::class, 'index']);
21 +use Extendify\Draft\Controllers\ImageController;
22 +use Extendify\Draft\Controllers\RouterController as DraftRouterController;
35 23
36 - ApiRouter::post('/templates', [TemplateController::class, 'index']);
37 - ApiRouter::post('/templates/(?P<template_id>[a-zA-Z0-9-]+)', [TemplateController::class, 'ping']);
24 +use Extendify\Launch\Controllers\WPController;
25 +use Extendify\Launch\Controllers\WooCommerceController;
26 +use Extendify\AutoLaunch\Controllers\WPController as AutoLaunchWPController;
27 +use Extendify\AutoLaunch\Controllers\WooCommerceController as AutoLaunchWooCommerceController;
38 28
39 - ApiRouter::get('/user', [UserController::class, 'show']);
40 - ApiRouter::post('/user', [UserController::class, 'store']);
41 - ApiRouter::post('/clear-user', [UserController::class, 'delete']);
42 - ApiRouter::get('/user-meta', [UserController::class, 'meta']);
43 - ApiRouter::get('/max-free-imports', [UserController::class, 'maxImports']);
29 +use Extendify\Library\Controllers\SiteController;
44 30
45 - ApiRouter::post('/register-mailing-list', [UserController::class, 'mailingList']);
31 +use Extendify\PageCreator\Controllers\SiteController as PageCreatorSiteController;
46 32
47 - ApiRouter::post('/register', [AuthController::class, 'register']);
48 - ApiRouter::post('/login', [AuthController::class, 'login']);
33 +use Extendify\Agent\Controllers\WPController as AgentWPController;
34 +use Extendify\Agent\Controllers\ChatHistoryController as AgentChatController;
35 +use Extendify\Agent\Controllers\ContentController as AgentContentController;
36 +use Extendify\Agent\Controllers\OptionsController as AgentOptionsController;
37 +use Extendify\Agent\Controllers\SiteNavigationController as AgentSiteNavigationController;
38 +use Extendify\Agent\Controllers\UpdateBlocksController as AgentUpdateBlocksController;
49 39
50 - ApiRouter::get('/meta-data', [MetaController::class, 'getAll']);
51 - ApiRouter::post('/simple-ping', [PingController::class, 'ping']);
40 +use Extendify\PluginNotifications\Controllers\NotificationsController;
41 +use Extendify\Shared\Controllers\AutoUpdateController;
42 +use Extendify\Shared\Controllers\PatternPlaceholderController;
43 +use Extendify\Shared\Controllers\UserSelectionController;
44 +use Extendify\Shared\Controllers\UserSettingsController as SharedUserSettingsController;
45 +use Extendify\Shared\Controllers\ActivityController;
46 +use Extendify\Shared\Controllers\SiteProfileController;
47 +use Extendify\Shared\Controllers\SiteVisibilityController;
48 +use Extendify\Shared\Controllers\SiteImagesController;
49 +use Extendify\Shared\Controllers\DataController as SharedDataController;
50 +use Extendify\Shared\Controllers\ImageGenerationController;
51 +use Extendify\Shared\Services\PluginsActivation\SimplyBook as SimplyBookActivation;
52 +use Extendify\Shared\Services\PluginsActivation\TranslatePress as TranslatePressActivation;
53 +use Extendify\Shared\Services\PluginsActivation\Imagify as ImagifyActivation;
54 +use Extendify\Shared\Services\PluginsActivation\Metricool as MetricoolActivation;
52 55
53 - ApiRouter::get('/site-settings', [SiteSettingsController::class, 'show']);
54 - ApiRouter::post('/site-settings', [SiteSettingsController::class, 'store']);
55 - ApiRouter::post('/site-settings/options', [SiteSettingsController::class, 'updateOption']);
56 +\add_action(
57 + 'rest_api_init',
58 + function () {
59 + // Library.
60 + ApiRouter::get('/library/settings', [SiteController::class, 'get']);
61 + ApiRouter::post('/library/settings', [SiteController::class, 'store']);
62 + ApiRouter::post('/library/settings/single', [SiteController::class, 'single']);
56 63
57 - // Onboarding.
58 - ApiRouter::post('/onboarding/options', [WPController::class, 'updateOption']);
59 - ApiRouter::get('/onboarding/options', [WPController::class, 'getOption']);
60 - ApiRouter::post('/onboarding/parse-theme-json', [WPController::class, 'parseThemeJson']);
64 + // Page Creator.
65 + ApiRouter::get('/page-creator/settings/get-option', [PageCreatorSiteController::class, 'get']);
66 + ApiRouter::post('/page-creator/settings/single', [PageCreatorSiteController::class, 'single']);
61 67
62 - ApiRouter::get('/onboarding/site-types', [DataController::class, 'getSiteTypes']);
63 - ApiRouter::get('/onboarding/styles', [DataController::class, 'getStyles']);
64 - ApiRouter::get('/onboarding/layout-types', [DataController::class, 'getLayoutTypes']);
65 - ApiRouter::get('/onboarding/goals', [DataController::class, 'getGoals']);
66 - ApiRouter::get('/onboarding/suggested-plugins', [DataController::class, 'getSuggestedPlugins']);
67 - ApiRouter::get('/onboarding/template', [DataController::class, 'getTemplate']);
68 - ApiRouter::post('/onboarding/create-order', [DataController::class, 'createOrder']);
69 - ApiRouter::get('/onboarding/exit-questions', [DataController::class, 'exitQuestions']);
68 + // Launch.
69 + ApiRouter::post('/launch/options', [WPController::class, 'updateOption']);
70 + ApiRouter::get('/launch/options', [WPController::class, 'getOption']);
71 + ApiRouter::post('/launch/save-pattern', [WPController::class, 'savePattern']);
72 + ApiRouter::get('/launch/active-plugins', [WPController::class, 'getActivePlugins']);
73 + ApiRouter::get('/launch/prefetch-assist-data', [WPController::class, 'prefetchAssistData']);
74 + ApiRouter::post('/launch/create-navigation', [WPController::class, 'createNavigationWithMeta']);
75 + ApiRouter::post('/launch/post-launch-functions', [WPController::class, 'postLaunch']);
76 + ApiRouter::get('/launch/import-woocommerce', [WooCommerceController::class, 'importTemporaryProducts']);
70 77
78 + // AutoLaunch.
79 + ApiRouter::post('/auto-launch/options', [AutoLaunchWPController::class, 'updateOption']);
80 + ApiRouter::get('/auto-launch/options', [AutoLaunchWPController::class, 'getOption']);
81 + ApiRouter::post('/auto-launch/save-pattern', [AutoLaunchWPController::class, 'savePattern']);
82 + ApiRouter::get('/auto-launch/active-plugins', [AutoLaunchWPController::class, 'getActivePlugins']);
83 + ApiRouter::get('/auto-launch/prefetch-assist-data', [AutoLaunchWPController::class, 'prefetchAssistData']);
84 + ApiRouter::post('/auto-launch/create-navigation', [AutoLaunchWPController::class, 'createNavigationWithMeta']);
85 + ApiRouter::get('/auto-launch/get-navigation', [AutoLaunchWPController::class, 'getNavigation']);
86 + ApiRouter::post('/auto-launch/pre-launch-functions', [AutoLaunchWPController::class, 'preLaunch']);
87 + ApiRouter::post('/auto-launch/reset-launch-state', [AutoLaunchWPController::class, 'resetLaunchState']);
88 + ApiRouter::post('/auto-launch/post-launch-functions', [AutoLaunchWPController::class, 'postLaunch']);
89 + ApiRouter::post('/auto-launch/run-updates', [AutoLaunchWPController::class, 'runUpdates']);
90 + ApiRouter::get(
91 + '/auto-launch/import-woocommerce',
92 + [AutoLaunchWooCommerceController::class, 'importTemporaryProducts']
93 + );
94 +
71 95 // Assist.
72 - ApiRouter::get('/assist/launch-pages', [AssistDataController::class, 'getLaunchPages']);
73 - ApiRouter::get('/assist/tasks', [TasksController::class, 'fetchTasks']);
74 96 ApiRouter::get('/assist/task-data', [TasksController::class, 'get']);
75 97 ApiRouter::post('/assist/task-data', [TasksController::class, 'store']);
98 + ApiRouter::post('/assist/router-data', [RouterController::class, 'store']);
76 99 ApiRouter::get('/assist/global-data', [GlobalsController::class, 'get']);
77 100 ApiRouter::post('/assist/global-data', [GlobalsController::class, 'store']);
78 - ApiRouter::get('/assist/user-selection-data', [UserSelectionController::class, 'get']);
79 - ApiRouter::post('/assist/user-selection-data', [UserSelectionController::class, 'store']);
101 + ApiRouter::post('/assist/delete-domains-recommendations', [DomainsSuggestionController::class, 'deleteCache']);
102 + ApiRouter::post('assists/domains-recommendations-activities', [DomainsSuggestionController::class, 'tracking']);
80 103
81 - // TODO: consider merging this route into the library.
82 - ApiRouter::post('/library/site-type', [LibraryController::class, 'updateSiteType']);
104 + // Help Center.
105 + ApiRouter::get('/help-center/tour-data', [TourController::class, 'get']);
106 + ApiRouter::post('/help-center/tour-data', [TourController::class, 'store']);
107 + ApiRouter::post('/help-center/router-data', [HelpCenterRouterController::class, 'store']);
108 + ApiRouter::get('/help-center/router-data', [HelpCenterRouterController::class, 'get']);
109 + ApiRouter::get('/help-center/support-article', [SupportArticlesController::class, 'article']);
110 + ApiRouter::post('/help-center/support-articles-data', [SupportArticlesController::class, 'store']);
111 + ApiRouter::get('/help-center/get-redirect', [SupportArticlesController::class, 'getRedirect']);
112 +
113 + // Draft.
114 + ApiRouter::get('/shared/image-generation', [ImageGenerationController::class, 'get']);
115 + ApiRouter::post('/shared/image-generation', [ImageGenerationController::class, 'store']);
116 + ApiRouter::post('/draft/upload-image', [ImageController::class, 'uploadMedia']);
117 + ApiRouter::post('/draft/router-data', [DraftRouterController::class, 'store']);
118 + ApiRouter::get('/draft/router-data', [DraftRouterController::class, 'get']);
119 +
120 + // Agent.
121 + ApiRouter::get('/agent/theme-variations', [AgentWPController::class, 'getVariations']);
122 + ApiRouter::get('/agent/theme-fonts-variations', [AgentWPController::class, 'getFontsVariations']);
123 + ApiRouter::get('/agent/get-block-code', [AgentWPController::class, 'getBlockCode']);
124 + ApiRouter::get('/agent/shared-block-usage', [AgentWPController::class, 'getSharedBlockUsage']);
125 + ApiRouter::post('/agent/get-block-html', [AgentWPController::class, 'getBlockHtml']);
126 + ApiRouter::post('/agent/update-blocks', [AgentUpdateBlocksController::class, 'updateBlocks']);
127 + ApiRouter::post('/agent/lock-post', [AgentWPController::class, 'lockPost']);
128 + ApiRouter::get('/agent/chat-events', [AgentChatController::class, 'get']);
129 + ApiRouter::post('/agent/chat-events', [AgentChatController::class, 'store']);
130 + ApiRouter::post('/agent/site-navigation', [AgentSiteNavigationController::class, 'getSiteNavigation']);
131 + ApiRouter::post('/agent/render-navigation', [AgentSiteNavigationController::class, 'renderNavigationMenu']);
132 + ApiRouter::post('/agent/site-design-variations', [AgentWPController::class, 'getSiteDesignVariations']);
133 + ApiRouter::get('/agent/block-style-variations', [AgentWPController::class, 'getBlockStyleVariations']);
134 + ApiRouter::post('/agent/options', [AgentWPController::class, 'updateOption']);
135 + ApiRouter::get('/agent/options', [AgentWPController::class, 'getOption']);
136 + ApiRouter::post('/agent/site-options', [AgentOptionsController::class, 'handle']);
137 + ApiRouter::post('/agent/content-search', [AgentContentController::class, 'search']);
138 + ApiRouter::post('/agent/content-read', [AgentContentController::class, 'read']);
139 +
140 + // Site visibility.
141 + ApiRouter::post('/site-visibility/publish', [SiteVisibilityController::class, 'publish']);
142 + ApiRouter::post('/site-visibility/unpublish', [SiteVisibilityController::class, 'unpublish']);
143 +
144 + // Notifications.
145 + ApiRouter::post('/notifications/dismiss', [NotificationsController::class, 'dismiss']);
146 + ApiRouter::post('/notifications/dismiss-all', [NotificationsController::class, 'dismissAll']);
147 +
148 + // Shared.
149 + ApiRouter::get('/shared/user-selections-data', [UserSelectionController::class, 'get']);
150 + ApiRouter::post('/shared/user-selections-data', [UserSelectionController::class, 'store']);
151 + ApiRouter::post('/shared/update-user-meta', [SharedUserSettingsController::class, 'updateUserMeta']);
152 + ApiRouter::post('/shared/process-placeholders', [PatternPlaceholderController::class, 'processPlaceholders']);
153 + ApiRouter::post('/shared/enable-auto-update', [AutoUpdateController::class, 'enable']);
154 + ApiRouter::get('/shared/activity', [ActivityController::class, 'get']);
155 + ApiRouter::post('/shared/activity', [ActivityController::class, 'store']);
156 + ApiRouter::post('/shared/site-profile', [SiteProfileController::class, 'store']);
157 + ApiRouter::get('/shared/site-profile', [SiteProfileController::class, 'get']);
158 + ApiRouter::get('/shared/site-images', [SiteImagesController::class, 'get']);
159 + ApiRouter::post('/shared/site-images', [SiteImagesController::class, 'store']);
160 + ApiRouter::post('/shared/site-images/clear', [SiteImagesController::class, 'clear']);
161 + ApiRouter::get('/shared/ping', [SharedDataController::class, 'ping']);
162 + ApiRouter::get('/shared/partner-plugins', [SharedDataController::class, 'getPartnerPlugins']);
163 + ApiRouter::post(
164 + SimplyBookActivation::createAccountRoute(),
165 + [SimplyBookActivation::class, 'createAccount']
166 + );
167 + ApiRouter::post(
168 + TranslatePressActivation::createAccountRoute(),
169 + [TranslatePressActivation::class, 'createAccount']
170 + );
171 + ApiRouter::post(
172 + ImagifyActivation::createAccountRoute(),
173 + [ImagifyActivation::class, 'createAccount']
174 + );
175 + ApiRouter::post(
176 + MetricoolActivation::createAccountRoute(),
177 + [MetricoolActivation::class, 'createAccount']
178 + );
83 179 }
84 180 );