Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | /**
* Push Notifications Endpoints
* Web push notification subscription management
*/
import type { ApiEndpoint } from '@/types/api-docs';
export const pushEndpoints: ApiEndpoint[] = [
{
id: 'push-subscribe',
method: 'POST',
path: '/api/push/subscribe',
summary: 'Subscribe to push notifications',
description: 'Registers a device for web push notifications',
category: 'push',
requiresAuth: true,
requestBody: {
contentType: 'application/json',
fields: [
{ name: 'subscription', type: 'object', required: true, description: 'PushSubscription object from browser' },
{ name: 'preferences', type: 'object', required: false, description: 'Notification preferences' },
],
},
responses: [
{ status: 201, description: 'Subscription created' },
{ status: 400, description: 'Invalid subscription data' },
],
},
{
id: 'push-unsubscribe',
method: 'POST',
path: '/api/push/unsubscribe',
summary: 'Unsubscribe from push notifications',
description: 'Removes a device from push notification subscriptions',
category: 'push',
requiresAuth: true,
requestBody: {
contentType: 'application/json',
fields: [
{ name: 'endpoint', type: 'string', required: true, description: 'Push subscription endpoint' },
],
},
responses: [
{ status: 200, description: 'Subscription removed' },
{ status: 404, description: 'Subscription not found' },
],
},
];
|