Documentación de ComusThumbz
Iniciar Sesión

API

Documentación de la API de ComusThumbz REST

AdminModeration

GET /api/v1/adminmoderation

Bulk aprueba POST /api/v1/admin/moderation/bulk/approve

  • Se requiere Auth: PUBLIC

DELETE /api/v1/adminmoderation

Suprímase el contenido (retirada de DMCA) DELETE /api/v1/admin/moderation/{type}/{id}

  • Se requiere Auth: PUBLIC

AdminUsers

GET /api/v1/adminusers

Obtener registro de actividad de usuario GET /api/v1/admin/users/{id}/actividad

  • Se requiere Auth: PUBLIC

PUT /api/v1/adminusers

Actualizar usuario PUT /api/v1/admin/users/{id}

  • Se requiere Auth: PUBLIC

Anuncios

GET /api/v1/ads

Obtener estadísticas de anuncios (Admin) GET /api/v1/admin/ads/{id}/stats

  • Se requiere Auth: PUBLIC

Análisis

GET /api/v1/analítica

Obtenga análisis de tráfico GET /api/v1/analytics/traffic

  • Se requiere Auth: PUBLIC

Auth

GET /api/v1/auth

Desactivación 2FA DELETE /api/v1/auth/2fa

  • Se requiere Auth: PUBLIC

Banners

GET /api/v1/banners

Obtener estadísticas de banners GET /api/v1/banners/{id}/stats

  • Se requiere Auth: PUBLIC
  • Parámetros:
  • bannerId (int): Banner ID

Categorías

GET /api/v1/categorías

Obtener galerías en la categoría GET /api/v1/categorías/{id}/galleries

  • Se requiere Auth: PUBLIC
  • Parámetros:
  • id (int): Categoría ID

POST /api/v1/categorías

Crear nueva categoría (sólo admin) POST /api/v1/categorías

  • Se requiere Auth: PUBLIC

PUT /api/v1/categorías

Categoría de actualización (sólo minas) PUT /api/v1/categorías/{id}

  • Se requiere Auth: PUBLIC
  • Parámetros:
  • id (int): Categoría ID

DELETE /api/v1/categorías

Suprímase la categoría (sólo la memoria) DELETE /api/v1/categorías/{id}

  • Se requiere Auth: PUBLIC
  • Parámetros:
  • id (int): Categoría ID

ClickTracking

GET /api/v1/clicktracking

GET /api/v1/stats/clicks/user/{userId} Obtener la historia del clic del usuario (El usuario debe ser autenticado)

  • Se requiere Auth: PUBLIC

Comentarios

GET /api/v1/comments

GET /api/v1/comments/flagged Obtenga todos los comentarios marcados (sólo memoria)

  • Se requiere Auth: PUBLIC

POST /api/v1/comments

POST /api/v1/cams/{site}/{performer}/comments Añadir un comentario a un intérprete de webcam

  • Se requiere Auth: PUBLIC

PUT /api/v1/comments

PUT /api/v1/comments/{id}/status Actualizar el estado de los comentarios (sólo administrador)

  • Se requiere Auth: PUBLIC

DELETE /api/v1/comments

DELETE /api/v1/comments/{id}/like Remove like/dislike from a comment

  • Se requiere Auth: PUBLIC

CreadorAprendizajes

GET /api/v1/creatorearnings

GET /creator/earnings/platform-settings - Obtener opciones de tarifas de la plataforma Devoluciones cuota global de la plataforma y cuota personalizada del creador si es aplicable Este endpoint es PUBLIC (no se requiere auth) para fines de visualización

  • Se requiere Auth: PUBLIC

CreatorProfiles

GET /api/v1/creatorprofiles

CreatorProfilesController - Gestión del perfil del Creador

  • Se requiere Auth: PUBLIC

POST /api/v1/creatorprofiles

POST /creador/profile - Crear nuevo perfil creador

  • Se requiere Auth: PUBLIC

PUT /api/v1/creatorprofiles

PATCH /creator/profile/me - Actualizar el perfil del creador autenticado

  • Se requiere Auth: PUBLIC

Creadores

GET /api/v1/creadores

POST /api/v1/creadores/me/cover Upload Creator cover image

  • Se requiere Auth: PUBLIC

PUT /api/v1/creadores

PUT /api/v1/creadores/me Actualizar configuración de perfil creador

  • Se requiere Auth: PUBLIC

Suscripciones de Creador

GET /api/v1/creatorsubscriptions

DELETE /creadores/{id}/packages/{package- El Creador desactiva un paquete

  • Se requiere Auth: PUBLIC

Ganancias

GET /api/v1/earnings

GET /api/v1/creator/earnings/by-source Obtenga el desglose de ingresos por fuente (tips, suscripciones, PPV) Incluye conteos y totales

  • Se requiere Auth: PUBLIC

Favoritos

GET /api/v1/favorites

GET /favorites/counts Obtener los favoritos del usuario cuenta por tipo

  • Se requiere Auth: PUBLIC

POST /api/v1/favorites

POST /favorites Agregar artículo a los favoritos Cuerpo: { "contenidotipo: "video sometidagallery habitcamperformer habitmodel", "contentid": "123", "notas": "opcional" }

  • Se requiere Auth: PUBLIC

DELETE /api/v1/favorites

DELETE /favorites/{type}/{id} Eliminar de los favoritos

  • Se requiere Auth: PUBLIC

Características

GET /api/v1/features

Obtener sitios de cámara activados GET /api/v1/features/cams

  • Se requiere Auth: PUBLIC

Feed

GET /api/v1/feed

Obtener contenido de tendencia GET /api/v1/feed/trending

  • Se requiere Auth: PUBLIC

Amigos

GET /api/v1/friends

Rechazar amigo petición PUT /api/v1/friends/{id}/reject

  • Se requiere Auth: PUBLIC
  • Parámetros:
  • id (int): ID de amistad

POST /api/v1/friends

Enviar solicitud de amigo POST /api/v1/friends

  • Se requiere Auth: PUBLIC

DELETE /api/v1/friends

Quitar amigo DELETE /api/v1/friends/{id}

  • Se requiere Auth: PUBLIC
  • Parámetros:
  • id (int): ID de amistad

Galerías

GET /api/v1/galleries

GET /galleries/{id}/related - Galerías relacionadas

  • Se requiere Auth: PUBLIC

POST /api/v1/galleries

POST /galleries - Create gallery (admin only)

  • Se requiere Auth: PUBLIC

PUT /api/v1/galleries

PATCH /galleries/{id}/status - Actualización del estado de la galería (sólo personal)

  • Se requiere Auth: PUBLIC

DELETE /api/v1/galleries

DELETE /galleries/{id} - Borrar la galería (sólo min)

  • Se requiere Auth: PUBLIC

ImpresiónTracking

GET /api/v1/impresiontracking

GET /api/v1/impresiones/trends/{type} Obtenga tendencias de rendimiento con el tiempo

  • Se requiere Auth: PUBLIC

LiveStream

GET /api/v1/livestream

Obtener /api/v1/live/{id}/por minuto/status Obtenga el estado actual de la sesión por minuto

  • Se requiere Auth: PUBLIC

Media

GET /api/v1/media

Obtener URL de almacenamiento para un archivo de vídeo específico

  • Se requiere Auth: PUBLIC
  • Parámetros:
  • videoId (int): ID de vídeo
  • fileType (estring): Tipo de archivo (thumbnail, vista previa, póster, vídeo, hls, etc.)
  • Devoluciones: vacío - (retornos descarga URL o error)

Mensajes

GET /api/v1/messages

Obtener lista de usuarios bloqueados GET /api/v1/messages/blocked

  • Se requiere Auth: PUBLIC

DELETE /api/v1/messages

Eliminar un mensaje DELETE /api/v1/messages/{id}

  • Se requiere Auth: PUBLIC

Modelos

GET /api/v1/models

Obtener /api/v1/models/{id}/details Obtener detalles de modelo unificados Query params: - tipo: regularmodelo (requerido)

  • Se requiere Auth: PUBLIC

POST /api/v1/models

POST /api/v1/models Crear un nuevo modelo (sólo admin)

  • Se requiere Auth: PUBLIC

PUT /api/v1/models

PUT /api/v1/modelClases/{id}/status Estado del modelo de actualización (sólo personal)

  • Se requiere Auth: PUBLIC

DELETE /api/v1/models

DELETE /api/v1/modelClases/ Suprímase el modelo (sólo la memoria)

  • Se requiere Auth: PUBLIC

Notificaciones

GET /api/v1/notificaciones

Obtener preferencias de notificación GET /api/v1/notifications/preferencias

  • Se requiere Auth: PUBLIC

PUT /api/v1/notificaciones

Actualizar las preferencias de notificación PUT /api/v1/notificaciones/preferencias

  • Se requiere Auth: PUBLIC

DELETE /api/v1/notificaciones

Eliminar la notificación (supresión suave) DELETE /api/v1/notifications/{id}

  • Se requiere Auth: PUBLIC

Player

GET /api/v1/player

Controlador del reproductor Maneja configuración y configuración del reproductor de vídeo

  • Se requiere Auth: PUBLIC

Lista

GET /api/v1/playlists

PUT /playlists/{id}/items/reorder Reorder playlist items (owner only) Body: { "items": [ { "itemid": 1, "sortorder": 0 }, { "itemid": 2, "sortorder": 1 } ] }

  • Auth Required: PUBLIC

POST /api/v1/playlists

POST /playlists/{id}/items Add video to playlist (owner only) Body: { "videoid": 123, "sortorder": 1 }

  • Auth Required: PUBLIC

PUT /api/v1/playlists

PUT /playlists/{id} Update playlist (owner only)

  • Auth Required: PUBLIC

DELETE /api/v1/playlists

DELETE /playlists/{id}/items/{itemId} Remove video from playlist (owner only)

  • Auth Required: PUBLIC

Posts

GET /api/v1/posts

GET /api/v1/posts/{id}/poll Get poll data for a post

  • Auth Required: PUBLIC
  • Parameters:
  • postId (int): Post ID

POST /api/v1/posts

POST /api/v1/posts/with-product Create a post with product attachment Handles multipart/form-data with files

  • Auth Required: PUBLIC

PUT /api/v1/posts

PUT /api/v1/posts/{id}/poll Update poll data for a post

  • Auth Required: PUBLIC
  • Parameters:
  • postId (int): Post ID

DELETE /api/v1/posts

DELETE /comments/{id} Delete a comment (soft delete)

  • Auth Required: PUBLIC

Products

GET /api/v1/products

Refund a merchandise purchase (Option 2: Proportional Loss) - User gets full refund (100%) - Creator loses their portion (80%) - Platform absorbs their portion (20%)

  • Auth Required: PUBLIC

POST /api/v1/products

Products Controller Handles creator merchandise/product operations

  • Auth Required: AUTH

PUT /api/v1/products

Update order shipping status and tracking number

  • Auth Required: PUBLIC

Ratings

GET /api/v1/ratings

GET /api/v1/models/{id}/rating Get rating stats for a model

  • Auth Required: PUBLIC

DELETE /search/history - Clear user's search history

  • Auth Required: PUBLIC

SecurityQuestions

GET /api/v1/securityquestions

Reset password using security question token POST /api/v1/auth/reset-password-with-token

  • Auth Required: PUBLIC

Settings

GET /api/v1/settings

Get video player settings GET /api/v1/settings/player

  • Auth Required: PUBLIC

PUT /api/v1/settings

Get all public settings (cached) This is the main method that builds the settings array / private function getPublicSettings(): array { global $conn;

  • Auth Required: PUBLIC

Sponsors

GET /api/v1/sponsors

Track sponsor click POST /api/v1/sponsors/{id}/click

  • Auth Required: PUBLIC

Styles

GET /api/v1/styles

Bulk save multiple styles at once POST /api/v1/styles/bulk

  • Auth Required: PUBLIC

DELETE /api/v1/styles

Delete a specific style override DELETE /api/v1/styles/{id}

  • Auth Required: PUBLIC
  • Parameters:
  • id (int): Style ID

Subscriptions

GET /api/v1/subscriptions

Upgrade subscription POST /api/v1/subscriptions/upgrade

  • Auth Required: PUBLIC

Tags

GET /api/v1/tags

Parse tag string and return tag IDs (creates tags if they don't exist) POST /api/v1/tags/parse

  • Auth Required: PUBLIC

POST /api/v1/tags

Create new tag (admin only) POST /api/v1/tags

  • Auth Required: PUBLIC

PUT /api/v1/tags

Update tag (admin only) PUT /api/v1/tags/{id}

  • Auth Required: PUBLIC
  • Parameters:
  • id (int): Tag ID

DELETE /api/v1/tags

Delete tag (admin only) DELETE /api/v1/tags/{id}

  • Auth Required: PUBLIC
  • Parameters:
  • id (int): Tag ID

Tips

GET /api/v1/tips

POST /api/v1/tips/{tipid}/refund Refund a tip (creator only) - Option 2: Proportional Loss User gets 100% back, creator loses their portion (80%), platform absorbs their portion (20%)

  • Auth Required: PUBLIC

UserPreferences

GET /api/v1/userpreferences

GET /user/preferences Get all user preferences (privacy, stream, email)

  • Auth Required: PUBLIC

PUT /api/v1/userpreferences

PUT /user/preferences/email Update user's email preferences

  • Auth Required: PUBLIC

Users

GET /api/v1/users

Get trusted devices for current user GET /api/v1/user/trusted-devices

  • Auth Required: PUBLIC

PUT /api/v1/users

Update profile privacy settings PUT /api/v1/users/me/privacy

  • Auth Required: PUBLIC

DELETE /api/v1/users

Remove a trusted device DELETE /api/v1/user/trusted-devices/{id}

  • Auth Required: PUBLIC

UserVerification

GET /api/v1/userverification

GET /admin/verification/stats Get verification statistics (admin only)

  • Auth Required: PUBLIC

PUT /api/v1/userverification

PUT /admin/verification/{userId}/status Update verification status (admin only)

  • Auth Required: PUBLIC

DELETE /api/v1/userverification

DELETE /user/verification/documents/{documentId} Delete a verification document

  • Auth Required: PUBLIC

VideoReports

GET /api/v1/videoreports

GET /video-reports/reasons - Get list of valid report reasons

  • Auth Required: PUBLIC

Videos

GET /api/v1/videos

Generate URL-friendly slug from title

  • Auth Required: PUBLIC
  • Parameters:
  • title (string):
  • Returns: string -

POST /api/v1/videos

POST /videos/{id}/tags - Add tag to video

  • Auth Required: PUBLIC

PUT /api/v1/videos

PATCH /videos/{id}/status - Update video status (admin only)

  • Auth Required: PUBLIC

DELETE /api/v1/videos

DELETE /videos/{id} - Delete video (owner or admin)

  • Auth Required: PUBLIC

WatchHistory

GET /api/v1/watchhistory

POST /content/{type}/{id}/track Track viewing of any content type (camperformer, gallery, model) Body: optional { "watchedduration": 1, "totalduration": 1 }

  • Auth Required: PUBLIC

PUT /api/v1/watchhistory

POST /videos/{id}/progress Update video watch progress Body: { "watchedduration": 120, "totalduration": 600, "lastposition": 120 }

  • Auth Required: PUBLIC

DELETE /api/v1/watchhistory

DELETE /history/{id} Remove specific history entry

  • Auth Required: PUBLIC

Webcam

GET /api/v1/webcam

GET /cams/{id}/schedule - Get performer's schedule/heatmap data

  • Auth Required: PUBLIC
  • Parameters:
  • performerId (int): Performer ID from tblCamsPerformers
  • Returns: array - Schedule data with metadata

Webhooks

GET /api/v1/webhooks

GET /api/v1/webhooks/status Get cloud encoding status (requires admin auth)

  • Auth Required: PUBLIC

Withdrawals

GET /api/v1/withdrawals

GET /api/v1/creator/withdrawals/my-requests Get withdrawal history for current user

  • Auth Required: PUBLIC