{"openapi":"3.0.0","paths":{"/v1/auth/me":{"get":{"operationId":"AuthController_getMe","parameters":[],"responses":{"200":{"description":""}},"tags":["auth"],"security":[{"firebaseAuth":[]}]},"patch":{"operationId":"AuthController_updateMe","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProfileDto"}}}},"responses":{"200":{"description":""}},"tags":["auth"],"security":[{"firebaseAuth":[]}]},"delete":{"operationId":"AuthController_deleteMe","parameters":[],"responses":{"200":{"description":""}},"tags":["auth"],"security":[{"firebaseAuth":[]}]}},"/v1/auth/me/audit-log":{"get":{"operationId":"AuthController_getMyAuditLog","parameters":[{"name":"limit","required":false,"in":"query","description":"Page size (1–200, default 50)","schema":{"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Opaque cursor from a prior response's nextCursor","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["auth"],"security":[{"firebaseAuth":[]}]}},"/v1/auth/send-verification":{"post":{"operationId":"AuthController_sendVerification","parameters":[],"responses":{"201":{"description":""}},"tags":["auth"],"security":[{"firebaseAuth":[]}]}},"/v1/auth/change-email":{"post":{"operationId":"AuthController_changeEmail","parameters":[],"responses":{"201":{"description":""}},"tags":["auth"],"security":[{"firebaseAuth":[]}]}},"/v1/auth/change-email-unverified":{"post":{"operationId":"AuthController_changeEmailUnverified","parameters":[],"responses":{"201":{"description":""}},"tags":["auth"],"security":[{"firebaseAuth":[]}]}},"/v1/auth/usage":{"get":{"operationId":"AuthController_getUsage","parameters":[],"responses":{"200":{"description":""}},"tags":["auth"],"security":[{"firebaseAuth":[]}]}},"/v1/profiles":{"post":{"operationId":"ProfilesController_create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProfileDto"}}}},"responses":{"201":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"get":{"operationId":"ProfilesController_findAll","parameters":[],"responses":{"200":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/profiles/links":{"get":{"operationId":"ProfilesController_getAllLinks","parameters":[],"responses":{"200":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"post":{"operationId":"ProfilesController_createLink","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProfileLinkDto"}}}},"responses":{"201":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/profiles/links/history":{"get":{"operationId":"ProfilesController_getLinkHistory","parameters":[],"responses":{"200":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/profiles/links/{linkId}":{"delete":{"operationId":"ProfilesController_deleteLink","parameters":[{"name":"linkId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/profiles/{id}":{"get":{"operationId":"ProfilesController_findOne","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"patch":{"operationId":"ProfilesController_update","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProfileDto"}}}},"responses":{"200":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"delete":{"operationId":"ProfilesController_remove","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/profiles/{id}/children":{"get":{"operationId":"ProfilesController_getChildren","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["profiles"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/feature-flags":{"get":{"operationId":"FeatureFlagsController_listAll","parameters":[],"responses":{"200":{"description":""}}}},"/v1/admin/feature-flags/{key}":{"get":{"operationId":"FeatureFlagsController_getOne","parameters":[{"name":"key","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}}},"patch":{"operationId":"FeatureFlagsController_update","parameters":[{"name":"key","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}}}},"/v1/platforms/{platform}/auth-url":{"get":{"operationId":"PlatformController_getAuthUrl","parameters":[{"name":"platform","required":true,"in":"path","schema":{"type":"string"}},{"name":"profileId","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/{platform}/callback":{"get":{"operationId":"PlatformController_handleCallback","parameters":[{"name":"platform","required":true,"in":"path","schema":{"type":"string"}},{"name":"code","required":true,"in":"query","schema":{"type":"string"}},{"name":"state","required":true,"in":"query","schema":{"type":"string"}},{"name":"error","required":true,"in":"query","schema":{"type":"string"}},{"name":"error_description","required":true,"in":"query","schema":{"type":"string"}},{"name":"logid","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/bluesky/connect":{"post":{"operationId":"PlatformController_connectBluesky","parameters":[],"responses":{"201":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/discord/connect":{"post":{"operationId":"PlatformController_connectDiscord","parameters":[],"responses":{"201":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/accounts":{"get":{"operationId":"PlatformController_listAccounts","parameters":[{"name":"profileId","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/accounts/all":{"get":{"operationId":"PlatformController_listAllAccounts","parameters":[],"responses":{"200":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/facebook/pages":{"get":{"operationId":"PlatformController_listFacebookPages","parameters":[{"name":"profileId","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/facebook/switch-page":{"post":{"operationId":"PlatformController_switchFacebookPage","parameters":[],"responses":{"201":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/accounts/{accountId}/health":{"get":{"operationId":"PlatformController_checkHealth","parameters":[{"name":"accountId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/accounts/{accountId}":{"delete":{"operationId":"PlatformController_disconnectAccount","parameters":[{"name":"accountId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/twitter/quota":{"get":{"operationId":"PlatformController_getTwitterQuota","parameters":[],"responses":{"200":{"description":""}},"tags":["platforms"],"security":[{"firebaseAuth":[]}]}},"/v1/platforms/meta/data-deletion":{"post":{"operationId":"MetaCallbackController_dataDeletion","parameters":[],"responses":{"200":{"description":""}}}},"/v1/platforms/meta/deauthorize":{"post":{"operationId":"MetaCallbackController_deauthorize","parameters":[],"responses":{"204":{"description":""}}}},"/v1/platforms/meta/data-deletion/status":{"get":{"operationId":"MetaCallbackController_deletionStatus","parameters":[{"name":"code","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}}}},"/v1/media/upload":{"post":{"operationId":"MediaController_upload","parameters":[],"responses":{"201":{"description":""}},"tags":["media"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/media/presign-upload":{"post":{"operationId":"MediaController_presignUpload","parameters":[],"responses":{"201":{"description":""}},"tags":["media"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/media/presign-upload/batch":{"post":{"operationId":"MediaController_presignUploadBatch","parameters":[],"responses":{"201":{"description":""}},"tags":["media"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/media/proxy/{token}":{"get":{"operationId":"MediaProxyController_proxy","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}}}},"/v1/connections/providers":{"get":{"operationId":"ConnectionsController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["connections"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/connections/oauth-url":{"post":{"operationId":"ConnectionsController_createOAuthUrl","parameters":[],"responses":{"201":{"description":""}},"tags":["connections"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/connections/{accountId}/upgrade-scopes":{"post":{"operationId":"ConnectionsController_scopeUpgrade","parameters":[{"name":"accountId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["connections"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/connections/{accountId}":{"delete":{"operationId":"ConnectionsController_disconnect","parameters":[{"name":"accountId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["connections"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/oauth/callback/{platform}":{"get":{"operationId":"OAuthCallbackController_callback","parameters":[{"name":"platform","required":true,"in":"path","schema":{"type":"string"}},{"name":"state","required":true,"in":"query","schema":{"type":"string"}},{"name":"code","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["oauth"]}},"/v1/connections/webhooks/{platform}":{"post":{"operationId":"ConnectionsWebhooksController_handle","parameters":[{"name":"platform","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["connections-webhooks"]}},"/v1/posts":{"post":{"operationId":"PostsController_create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePostDto"}}}},"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"get":{"operationId":"PostsController_findAll","parameters":[{"name":"profileId","required":true,"in":"query","schema":{"type":"string"}},{"name":"limit","required":true,"in":"query","schema":{"type":"string"}},{"name":"cursor","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/fanout":{"post":{"operationId":"PostsController_createFanout","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateFanoutPostDto"}}}},"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/validate":{"post":{"operationId":"PostsController_validate","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePostDto"}}}},"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/stats":{"get":{"operationId":"PostsController_getStats","parameters":[{"name":"profileId","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/trash":{"get":{"operationId":"PostsController_listTrash","parameters":[{"name":"profileId","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}":{"get":{"operationId":"PostsController_findOne","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"patch":{"operationId":"PostsController_update","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePostDto"}}}},"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"delete":{"operationId":"PostsController_remove","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/restore":{"post":{"operationId":"PostsController_restore","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/status":{"get":{"operationId":"PostsController_getStatus","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/audit":{"get":{"operationId":"PostsController_getAuditLog","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/retry":{"post":{"operationId":"PostsController_retry","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/report-stuck":{"post":{"operationId":"PostsController_reportStuck","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/publish-now":{"post":{"operationId":"PostsController_publishNow","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/platforms/{platform}":{"delete":{"operationId":"PostsController_deletePlatform","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"platform","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/expand":{"post":{"operationId":"PostsController_expand","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/duplicate":{"post":{"operationId":"PostsController_duplicate","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/recycles":{"get":{"operationId":"PostsController_listRecycles","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/recycle-config":{"patch":{"operationId":"PostsController_setRecycleConfig","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/bulk":{"post":{"operationId":"PostsController_bulkCreate","parameters":[],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/optimize-captions":{"post":{"operationId":"PostsController_optimizeCaptions","parameters":[],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/share-link":{"post":{"operationId":"PostsController_createShareLink","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/share-links":{"get":{"operationId":"PostsController_listShareLinks","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/{id}/share-link/{linkId}":{"delete":{"operationId":"PostsController_revokeShareLink","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"linkId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/posts/auto-schedule":{"post":{"operationId":"PostsController_autoSchedule","parameters":[],"responses":{"201":{"description":""}},"tags":["posts"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/share/p/{token}":{"get":{"operationId":"ShareController_resolve","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}}}},"/v1/queue/process":{"post":{"operationId":"QueueController_processTask","parameters":[{"name":"x-cloudtasks-secret","required":true,"in":"header","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["queue"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/queue/submit/{postId}":{"post":{"operationId":"QueueController_submitPost","parameters":[{"name":"postId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["queue"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/queue/cancel/{postId}":{"delete":{"operationId":"QueueController_cancelPost","parameters":[{"name":"postId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["queue"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/queue/status/{postId}":{"get":{"operationId":"QueueController_getStatus","parameters":[{"name":"postId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["queue"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/webhooks/retry-failed":{"post":{"operationId":"AdminController_runWebhookRetry","parameters":[],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/billing/enforce-past-due":{"post":{"operationId":"AdminController_runEnforcePastDue","parameters":[],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/connections/refresh":{"post":{"operationId":"AdminController_runConnectionRefresh","parameters":[],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/overview":{"get":{"operationId":"AdminController_getOverview","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/support/{ticketId}/triage":{"post":{"operationId":"AdminController_triageTicket","parameters":[{"name":"ticketId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/alerts":{"get":{"operationId":"AdminController_listAlerts","parameters":[{"name":"filter","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"post":{"operationId":"AdminController_createAlert","parameters":[],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/alerts/{id}/ack":{"post":{"operationId":"AdminController_ackAlert","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/alert-prefs":{"get":{"operationId":"AdminController_getAlertPrefs","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"post":{"operationId":"AdminController_setAlertPrefs","parameters":[],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/funnel":{"get":{"operationId":"AdminController_getFunnel","parameters":[{"name":"days","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/cancellation-feedback":{"get":{"operationId":"AdminController_getCancellationFeedback","parameters":[{"name":"days","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/comeback-stats":{"get":{"operationId":"AdminController_getComebackStats","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/platforms/health":{"get":{"operationId":"AdminController_getPlatformsHealth","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/platforms/usage":{"get":{"operationId":"AdminController_getPlatformsUsage","parameters":[{"name":"date","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/platforms/mode":{"get":{"operationId":"AdminController_listPlatformsMode","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/platforms/mode/pinterest":{"post":{"operationId":"AdminController_setPinterestMode","parameters":[],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/cron/status":{"get":{"operationId":"AdminController_getCronStatus","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/cron/configs":{"get":{"operationId":"AdminController_getCronConfigs","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/email-templates":{"get":{"operationId":"AdminController_listEmailTemplates","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/email-templates/{name}":{"get":{"operationId":"AdminController_getEmailTemplate","parameters":[{"name":"name","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"post":{"operationId":"AdminController_setEmailTemplate","parameters":[{"name":"name","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/email-templates/{name}/reset":{"post":{"operationId":"AdminController_resetEmailTemplate","parameters":[{"name":"name","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/cron/configs/{name}":{"post":{"operationId":"AdminController_setCronConfig","parameters":[{"name":"name","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/cohorts/retention":{"get":{"operationId":"AdminController_getCohortRetention","parameters":[{"name":"weeks","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/ltv-by-plan":{"get":{"operationId":"AdminController_getLtvByPlan","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/audit-log":{"get":{"operationId":"AdminController_listAuditLog","parameters":[{"name":"limit","required":true,"in":"query","schema":{"type":"string"}},{"name":"cursor","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/users/{uid}/role":{"post":{"operationId":"AdminController_assignRole","parameters":[{"name":"uid","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/users/{uid}":{"get":{"operationId":"AdminController_getUserDetails","parameters":[{"name":"uid","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/stats":{"get":{"operationId":"AdminController_getStats","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/queue":{"get":{"operationId":"AdminController_getQueue","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/sync-metrics":{"post":{"operationId":"AdminController_syncMetrics","parameters":[],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/email/test-welcome":{"post":{"operationId":"AdminController_testWelcomeEmail","parameters":[],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/email/test-goodbye":{"post":{"operationId":"AdminController_testGoodbyeEmail","parameters":[],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/users":{"get":{"operationId":"AdminController_listActiveUsers","parameters":[{"name":"q","required":true,"in":"query","schema":{"type":"string"}},{"name":"tier","required":true,"in":"query","schema":{"type":"string"}},{"name":"role","required":true,"in":"query","schema":{"type":"string"}},{"name":"page","required":true,"in":"query","schema":{"type":"string"}},{"name":"pageSize","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/deleted-users":{"get":{"operationId":"AdminController_listDeletedUsers","parameters":[],"responses":{"200":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/restore-user/{uid}":{"post":{"operationId":"AdminController_restoreUser","parameters":[{"name":"uid","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/sync-metrics-cron":{"post":{"operationId":"AdminController_syncMetricsCron","parameters":[{"name":"x-cron-secret","required":true,"in":"header","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["admin"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/admin/secrets":{"get":{"operationId":"SecretsController_list","parameters":[],"responses":{"200":{"description":""}}}},"/v1/admin/secrets/restart":{"post":{"operationId":"SecretsController_restart","parameters":[],"responses":{"201":{"description":""}}}},"/v1/admin/secrets/create":{"post":{"operationId":"SecretsController_create","parameters":[],"responses":{"201":{"description":""}}}},"/v1/admin/secrets/registry/{name}":{"delete":{"operationId":"SecretsController_removeRegistryEntry","parameters":[{"name":"name","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}}}},"/v1/admin/secrets/{name}":{"post":{"operationId":"SecretsController_update","parameters":[{"name":"name","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}}}},"/v1/admin/secrets/{name}/revoke":{"post":{"operationId":"SecretsController_revoke","parameters":[{"name":"name","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}}}},"/v1/admin/secrets/{name}/test":{"post":{"operationId":"SecretsController_test","parameters":[{"name":"name","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}}}},"/v1/admin/mfa/enroll/start":{"post":{"operationId":"MfaController_enrollStart","parameters":[],"responses":{"201":{"description":""}}}},"/v1/admin/mfa/enroll/verify":{"post":{"operationId":"MfaController_enrollVerify","parameters":[],"responses":{"201":{"description":""}}}},"/v1/admin/mfa/recovery-codes/generate":{"post":{"operationId":"MfaController_generateRecoveryCodes","parameters":[],"responses":{"201":{"description":""}}}},"/v1/admin/tests":{"get":{"operationId":"TestRunnerController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["admin-tests"],"security":[{"firebaseAuth":[]}]}},"/v1/admin/tests/run":{"post":{"operationId":"TestRunnerController_run","parameters":[],"responses":{"201":{"description":""}},"tags":["admin-tests"],"security":[{"firebaseAuth":[]}]}},"/v1/admin/tests/runs":{"get":{"operationId":"TestRunnerController_listRuns","parameters":[{"name":"limit","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin-tests"],"security":[{"firebaseAuth":[]}]}},"/v1/admin/tests/runs/{runId}":{"get":{"operationId":"TestRunnerController_getRun","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["admin-tests"],"security":[{"firebaseAuth":[]}]}},"/v1/analytics/overview":{"get":{"operationId":"AnalyticsController_getOverview","parameters":[{"name":"profileId","required":true,"in":"query","schema":{"type":"string"}},{"name":"startDate","required":true,"in":"query","schema":{"type":"string"}},{"name":"endDate","required":true,"in":"query","schema":{"type":"string"}},{"name":"granularity","required":true,"in":"query","schema":{"type":"string"}},{"name":"platform","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["analytics"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/analytics/posts/{postId}/history":{"get":{"operationId":"AnalyticsController_getPostHistory","parameters":[{"name":"postId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["analytics"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/analytics/accounts/{accountId}/history":{"get":{"operationId":"AnalyticsController_getAccountHistory","parameters":[{"name":"accountId","required":true,"in":"path","schema":{"type":"string"}},{"name":"startDate","required":true,"in":"query","schema":{"type":"string"}},{"name":"endDate","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["analytics"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/analytics/compare":{"get":{"operationId":"AnalyticsController_compare","parameters":[{"name":"profileId","required":true,"in":"query","schema":{"type":"string"}},{"name":"periodAStart","required":true,"in":"query","schema":{"type":"string"}},{"name":"periodAEnd","required":true,"in":"query","schema":{"type":"string"}},{"name":"periodBStart","required":true,"in":"query","schema":{"type":"string"}},{"name":"periodBEnd","required":true,"in":"query","schema":{"type":"string"}},{"name":"granularity","required":true,"in":"query","schema":{"type":"string"}},{"name":"platform","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["analytics"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/analytics/export":{"get":{"operationId":"AnalyticsController_export","parameters":[{"name":"type","required":true,"in":"query","schema":{"type":"string"}},{"name":"format","required":true,"in":"query","schema":{"type":"string"}},{"name":"profileId","required":true,"in":"query","schema":{"type":"string"}},{"name":"startDate","required":true,"in":"query","schema":{"type":"string"}},{"name":"endDate","required":true,"in":"query","schema":{"type":"string"}},{"name":"granularity","required":true,"in":"query","schema":{"type":"string"}},{"name":"platform","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["analytics"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/analytics/posts/{postId}":{"get":{"operationId":"AnalyticsController_getPostMetrics","parameters":[{"name":"postId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["analytics"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/analytics/accounts":{"get":{"operationId":"AnalyticsController_getAccountMetrics","parameters":[],"responses":{"200":{"description":""}},"tags":["analytics"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/analytics/best-times":{"get":{"operationId":"AnalyticsController_getBestTimes","parameters":[{"name":"platform","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["analytics"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platforms/telegram/webhook":{"post":{"operationId":"TelegramController_webhook","parameters":[],"responses":{"200":{"description":""}}}},"/v1/approval/{token}":{"get":{"operationId":"ApprovalController_getApproval","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}}}},"/v1/approval/{token}/decision":{"post":{"operationId":"ApprovalController_submit","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}}}},"/v1/api-keys/scopes":{"get":{"operationId":"ApiKeysController_listScopes","parameters":[],"responses":{"200":{"description":""}},"tags":["api-keys"],"security":[{"firebaseAuth":[]}]}},"/v1/api-keys":{"post":{"operationId":"ApiKeysController_create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateApiKeyDto"}}}},"responses":{"201":{"description":""}},"tags":["api-keys"],"security":[{"firebaseAuth":[]}]},"get":{"operationId":"ApiKeysController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["api-keys"],"security":[{"firebaseAuth":[]}]}},"/v1/api-keys/{id}":{"patch":{"operationId":"ApiKeysController_rename","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RenameApiKeyDto"}}}},"responses":{"200":{"description":""}},"tags":["api-keys"],"security":[{"firebaseAuth":[]}]},"delete":{"operationId":"ApiKeysController_revoke","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["api-keys"],"security":[{"firebaseAuth":[]}]}},"/v1/api-keys/{id}/scopes":{"patch":{"operationId":"ApiKeysController_updateScopes","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateScopesDto"}}}},"responses":{"200":{"description":""}},"tags":["api-keys"],"security":[{"firebaseAuth":[]}]}},"/v1/webhooks":{"post":{"operationId":"WebhooksController_create","summary":"Create a webhook endpoint","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhookDto"}}}},"responses":{"201":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]},"get":{"operationId":"WebhooksController_findAll","summary":"List all webhook endpoints","parameters":[],"responses":{"200":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]}},"/v1/webhooks/{id}":{"get":{"operationId":"WebhooksController_findOne","summary":"Get a webhook endpoint by ID","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]},"patch":{"operationId":"WebhooksController_update","summary":"Update a webhook endpoint","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWebhookDto"}}}},"responses":{"200":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]},"delete":{"operationId":"WebhooksController_remove","summary":"Delete (soft) a webhook endpoint","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]}},"/v1/webhooks/{id}/regenerate-secret":{"post":{"operationId":"WebhooksController_regenerateSecret","summary":"Regenerate the signing secret for a webhook endpoint","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]}},"/v1/webhooks/{id}/test":{"post":{"operationId":"WebhooksController_testDelivery","summary":"Fire a synthetic test event at the endpoint","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]}},"/v1/webhooks/{id}/deliveries":{"get":{"operationId":"WebhooksController_listDeliveries","summary":"List recent deliveries for a webhook endpoint","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":true,"in":"query","schema":{"type":"string"}},{"name":"cursor","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]}},"/v1/webhooks/{id}/deliveries/{deliveryId}":{"get":{"operationId":"WebhooksController_getDelivery","summary":"Inspect a single webhook delivery (incl. attempts)","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"deliveryId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]}},"/v1/webhooks/{id}/deliveries/{deliveryId}/replay":{"post":{"operationId":"WebhooksController_replayDelivery","summary":"Force one extra delivery attempt against the same endpoint","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"deliveryId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["webhooks"],"security":[{"bearer":[]}]}},"/v1/billing/plans":{"get":{"operationId":"BillingController_getPlans","parameters":[],"responses":{"200":{"description":""}},"tags":["billing"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/billing/status":{"get":{"operationId":"BillingController_getStatus","parameters":[],"responses":{"200":{"description":""}},"tags":["billing"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/billing/subscription":{"patch":{"operationId":"BillingController_manageSubscription","parameters":[],"responses":{"200":{"description":""}},"tags":["billing"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/billing/feedback":{"post":{"operationId":"BillingController_storeFeedback","parameters":[],"responses":{"204":{"description":""}},"tags":["billing"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/billing/checkout":{"post":{"operationId":"BillingController_createCheckout","parameters":[],"responses":{"201":{"description":""}},"tags":["billing"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/billing/portal":{"post":{"operationId":"BillingController_createPortal","parameters":[],"responses":{"201":{"description":""}},"tags":["billing"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/billing/webhook":{"post":{"operationId":"BillingController_handleWebhook","parameters":[],"responses":{"201":{"description":""}},"tags":["billing"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platforms/whatsapp/webhook":{"post":{"operationId":"WhatsAppController_webhook","parameters":[],"responses":{"200":{"description":""}},"tags":["whatsapp"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platforms/whatsapp/link-code":{"post":{"operationId":"WhatsAppController_generateLinkCode","parameters":[],"responses":{"201":{"description":""}},"tags":["whatsapp"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platforms/whatsapp/status":{"get":{"operationId":"WhatsAppController_getStatus","parameters":[],"responses":{"200":{"description":""}},"tags":["whatsapp"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platforms/whatsapp/link":{"delete":{"operationId":"WhatsAppController_unlink","parameters":[],"responses":{"200":{"description":""}},"tags":["whatsapp"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platforms/whatsapp/settings":{"get":{"operationId":"WhatsAppController_getSettings","parameters":[],"responses":{"200":{"description":""}},"tags":["whatsapp"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"put":{"operationId":"WhatsAppController_putSettings","parameters":[],"responses":{"200":{"description":""}},"tags":["whatsapp"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platforms/whatsapp/usage":{"get":{"operationId":"WhatsAppController_getUsage","parameters":[],"responses":{"200":{"description":""}},"tags":["whatsapp"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platforms/whatsapp/events":{"get":{"operationId":"WhatsAppController_getEvents","parameters":[{"name":"limit","required":true,"in":"query","schema":{"type":"string"}},{"name":"cursor","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["whatsapp"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platforms/whatsapp/test-message":{"post":{"operationId":"WhatsAppController_sendTestMessage","parameters":[],"responses":{"201":{"description":""}},"tags":["whatsapp"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/team":{"get":{"operationId":"TeamController_listMembers","parameters":[],"responses":{"200":{"description":""}},"tags":["team"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/team/invite":{"post":{"operationId":"TeamController_inviteMember","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InviteMemberDto"}}}},"responses":{"201":{"description":""}},"tags":["team"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/team/invite/{token}":{"get":{"operationId":"TeamController_lookupInvite","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["team"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/team/invite/{token}/accept":{"post":{"operationId":"TeamController_acceptInvite","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["team"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/team/{id}":{"patch":{"operationId":"TeamController_updateRole","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateRoleDto"}}}},"responses":{"200":{"description":""}},"tags":["team"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"delete":{"operationId":"TeamController_removeMember","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":""}},"tags":["team"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/team/policies/mfa":{"get":{"operationId":"TeamController_getMfaPolicy","parameters":[],"responses":{"200":{"description":""}},"tags":["team"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"patch":{"operationId":"TeamController_setMfaPolicy","parameters":[],"responses":{"200":{"description":""}},"tags":["team"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/support":{"post":{"operationId":"SupportController_create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTicketDto"}}}},"responses":{"201":{"description":""}},"tags":["support"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"get":{"operationId":"SupportController_list","parameters":[{"name":"limit","required":true,"in":"query","schema":{"type":"string"}},{"name":"cursor","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["support"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/support/suggestions":{"get":{"operationId":"SupportController_listSuggestions","parameters":[],"responses":{"200":{"description":""}},"tags":["support"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/support/{id}":{"get":{"operationId":"SupportController_getOne","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["support"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"delete":{"operationId":"SupportController_deleteTicket","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["support"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/support/{id}/messages":{"post":{"operationId":"SupportController_addMessage","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddMessageDto"}}}},"responses":{"201":{"description":""}},"tags":["support"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/support/{id}/status":{"patch":{"operationId":"SupportController_updateStatus","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateStatusDto"}}}},"responses":{"200":{"description":""}},"tags":["support"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/support/{id}/vote":{"post":{"operationId":"SupportController_vote","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["support"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"delete":{"operationId":"SupportController_unvote","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["support"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/status/components":{"get":{"operationId":"StatusController_getComponents","parameters":[],"responses":{"200":{"description":""}},"tags":["status"]}},"/v1/status/incidents/active":{"get":{"operationId":"StatusController_getActiveIncidents","parameters":[],"responses":{"200":{"description":""}},"tags":["status"]}},"/v1/status/incidents/recent":{"get":{"operationId":"StatusController_getRecentIncidents","parameters":[],"responses":{"200":{"description":""}},"tags":["status"]}},"/v1/status/uptime/{componentId}":{"get":{"operationId":"StatusController_getUptime","parameters":[{"name":"componentId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["status"]}},"/v1/status/subscribe":{"post":{"operationId":"StatusController_subscribe","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscribeDto"}}}},"responses":{"200":{"description":""}},"tags":["status"]}},"/v1/status/subscribe/confirm/{token}":{"get":{"operationId":"StatusController_confirmSubscription","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["status"]}},"/v1/status/unsubscribe/{token}":{"get":{"operationId":"StatusController_unsubscribe","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["status"]}},"/v1/status/admin/backfill-uptime":{"post":{"operationId":"StatusController_backfillUptime","parameters":[],"responses":{"201":{"description":""}},"tags":["status"]}},"/v1/status/admin/components":{"post":{"operationId":"StatusController_upsertComponent","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertComponentDto"}}}},"responses":{"201":{"description":""}},"tags":["status"]}},"/v1/status/admin/incidents":{"post":{"operationId":"StatusController_createIncident","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateIncidentDto"}}}},"responses":{"201":{"description":""}},"tags":["status"]}},"/v1/status/admin/incidents/{id}/updates":{"post":{"operationId":"StatusController_addIncidentUpdate","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddIncidentUpdateDto"}}}},"responses":{"201":{"description":""}},"tags":["status"]}},"/v1/status/admin/components/{id}/status":{"patch":{"operationId":"StatusController_setComponentStatus","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["status"]}},"/v1/healthz/api":{"get":{"operationId":"HealthzController_checkApi","parameters":[],"responses":{"200":{"description":""}}}},"/v1/healthz/firestore":{"get":{"operationId":"HealthzController_checkFirestore","parameters":[],"responses":{"200":{"description":""}}}},"/v1/health":{"get":{"operationId":"HealthController_health","parameters":[],"responses":{"200":{"description":""}}}},"/v1/platform-invites":{"post":{"operationId":"PlatformInvitesController_create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInviteDto"}}}},"responses":{"201":{"description":""}},"tags":["platform-invites"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]},"get":{"operationId":"PlatformInvitesController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["platform-invites"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platform-invites/{id}":{"delete":{"operationId":"PlatformInvitesController_revoke","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":""}},"tags":["platform-invites"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platform-invites/{token}/validate":{"get":{"operationId":"PlatformInvitesController_validate","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["platform-invites"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/v1/platform-invites/{token}/connect":{"get":{"operationId":"PlatformInvitesController_connect","parameters":[{"name":"token","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["platform-invites"],"security":[{"apiKey":[]},{"firebaseAuth":[]}]}},"/oauth/redirect":{"get":{"operationId":"OAuthRedirectController_redirect","parameters":[{"name":"url","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}}}},"/tiktokr1RJ2OcsbqsbEFmjpmL2UHpXqREzOf3e.txt":{"get":{"operationId":"TikTokVerifyController_serveVerificationFile","parameters":[],"responses":{"200":{"description":""}}}},"/v1/scheduled-jobs":{"get":{"operationId":"ScheduledJobsController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["scheduled-jobs"],"security":[{"firebaseAuth":[]}]},"post":{"operationId":"ScheduledJobsController_create","parameters":[],"responses":{"201":{"description":""}},"tags":["scheduled-jobs"],"security":[{"firebaseAuth":[]}]}},"/v1/scheduled-jobs/{id}":{"patch":{"operationId":"ScheduledJobsController_update","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["scheduled-jobs"],"security":[{"firebaseAuth":[]}]},"delete":{"operationId":"ScheduledJobsController_remove","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":""}},"tags":["scheduled-jobs"],"security":[{"firebaseAuth":[]}]}},"/v1/scheduled-jobs/{id}/run":{"post":{"operationId":"ScheduledJobsController_runNow","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["scheduled-jobs"],"security":[{"firebaseAuth":[]}]}},"/v1/scheduled-jobs/_fire":{"post":{"operationId":"ScheduledJobsFireController_fire","parameters":[{"name":"x-cloudtasks-secret","required":true,"in":"header","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["scheduled-jobs"]}}},"info":{"title":"letspost.it API","description":"Unified social media management API — posts, profiles, analytics, webhooks, OAuth orchestration. Authenticate with a Firebase ID token (`firebaseAuth`) or a `lp_live_*` API key (`apiKey`).","version":"1.0","contact":{}},"tags":[],"servers":[],"components":{"securitySchemes":{"firebaseAuth":{"scheme":"bearer","bearerFormat":"JWT","type":"http"},"apiKey":{"scheme":"bearer","bearerFormat":"lp_live_*","type":"http"}},"schemas":{"UpdateProfileDto":{"type":"object","properties":{}},"CreateProfileDto":{"type":"object","properties":{}},"CreateProfileLinkDto":{"type":"object","properties":{}},"CreatePostDto":{"type":"object","properties":{}},"CreateFanoutPostDto":{"type":"object","properties":{}},"UpdatePostDto":{"type":"object","properties":{}},"CreateApiKeyDto":{"type":"object","properties":{}},"RenameApiKeyDto":{"type":"object","properties":{}},"UpdateScopesDto":{"type":"object","properties":{}},"CreateWebhookDto":{"type":"object","properties":{}},"UpdateWebhookDto":{"type":"object","properties":{}},"InviteMemberDto":{"type":"object","properties":{}},"UpdateRoleDto":{"type":"object","properties":{}},"CreateTicketDto":{"type":"object","properties":{}},"AddMessageDto":{"type":"object","properties":{}},"UpdateStatusDto":{"type":"object","properties":{}},"SubscribeDto":{"type":"object","properties":{}},"UpsertComponentDto":{"type":"object","properties":{}},"CreateIncidentDto":{"type":"object","properties":{}},"AddIncidentUpdateDto":{"type":"object","properties":{}},"CreateInviteDto":{"type":"object","properties":{}}}}}