← Back to Home
Use Bearer {token} in the Authorization header for all authenticated requests.

Authentication

POST/api/auth/login

Authenticate with email and password. Returns a Bearer token for subsequent requests.

Copy# Request
{
  "email": "[email protected]",
  "password": "your-password"
}

# Response
{
  "token": "eyJhbGciOiJIUzI1NiIs..."
}

Models

GET/api/models

List all models in your account.

Copy# Response
[
  { "id": 1, "name": "Alice", "content_count": 48 },
  { "id": 2, "name": "Bella", "content_count": 125 }
]
POST/api/models

Create a new model profile.

Copy# Request
{ "name": "New Model" }

# Response
{ "id": 3, "name": "New Model" }

Content

GET/api/content/{model_id}

List content for a model. Supports query params for filtering.

Copy# Query params: category, status, search
GET /api/content/1?category=promo&status=spoofed&search=beach

# Response
[
  { "id": 42, "filename": "beach-01.jpg", "category": "promo", "status": "spoofed" }
]
POST/api/content/{model_id}/upload

Upload files to a model's vault. Use multipart/form-data.

Copycurl -X POST https://respoof.com/api/content/1/upload \
  -H "Authorization: Bearer TOKEN" \
  -F "[email protected]" \
  -F "[email protected]"
DELETE/api/content/{id}

Delete a content item by ID.

Copy# Response
{ "status": "deleted" }

Spoofing

POST/api/spoof

Generate spoofed variants with unique content hashes. Supports platform presets and quality levels.

Copy# Request
{
  "content_ids": [42, 43, 44],
  "count": 3,
  "platform": "reddit",
  "quality": "balanced"
}

# Response
{ "spoofed": 9, "download_url": "/api/download/batch/abc123" }
POST/api/spoof/dating

Spoof for dating apps with app-specific optimizations (Tinder, Bumble, Hinge).

Copy# Request
{
  "content_id": 42,
  "app": "tinder"
}

GIF Studio

POST/api/gif/create

Create an optimized GIF from a video. Supports presets for Reddit, Telegram, and HQ output.

Copy# Request
{
  "content_id": 42,
  "start": 2.5,
  "end": 8.0,
  "preset": "reddit"
}

# Response
{ "id": 99, "size_kb": 1840, "download_url": "/api/download/99" }

AI Voice

GET/api/voice/voices

List available voice presets for voicenote generation.

Copy# Response
[
  { "id": "soft-f1", "name": "Soft Female 1", "preview_url": "/voices/soft-f1.mp3" }
]
POST/api/voice/generate

Generate a realistic AI voicenote with optional background ambience.

Copy# Request
{
  "text": "Hey babe, just woke up thinking about you",
  "voice": "soft-f1",
  "background": "bedroom"
}

# Response
{ "download_url": "/api/download/voice/abc123", "duration_s": 4.2 }

Tools

POST/api/tools/clips

Generate multiple short clips from a video.

Copy# Request
{
  "content_id": 42,
  "duration": 5,
  "overlap": 1,
  "max_clips": 10
}
POST/api/tools/frames

Extract still frames from a video at a set interval.

Copy{ "content_id": 42, "interval": 2, "max_frames": 20 }
POST/api/tools/convert

Convert content between formats (HEIC, WEBP, PNG, JPG, MP4, MOV).

Copy{ "content_id": 42, "target_format": "webp" }
POST/api/tools/bg-remove

Remove the background from an image using AI segmentation.

Copy{ "content_id": 42, "preset": "transparent" }
POST/api/tools/video-edit

Apply edits to a video (trim, crop, speed, flip).

Copy{
  "content_id": 42,
  "action": "trim",
  "params": { "start": 0, "end": 15 }
}

Stats

GET/api/stats/detailed

Get detailed account statistics including spoof counts, storage usage, and quota remaining.

Copy# Response
{
  "total_content": 482,
  "total_spoofed": 1930,
  "quota_used": 1930,
  "quota_limit": 50000,
  "storage_mb": 2480,
  "models": 6
}