Characters and Gallery API
Create AI characters and publish gallery posts from your account. These endpoints require authentication, are free to use, and do not charge credits. API-key submissions are saved with uploaded_via_api=true and linked to the authenticated user.
Authentication
Send your API key in X-API-Key, Authorization: Bearer, api_key, or secret.
No subscription, payment method, or credit balance is required for /api/create-ai or /api/create-post.
export NETWRCK_API_KEY="YOUR_API_KEY"
POST /api/create-ai
Create a character. Avatar input can be a public URL, base64 bytes, a data URL, or a multipart file.
JSON
curl -X POST "https://tinder.netwrck.com/api/create-ai" \
-H "Content-Type: application/json" \
-H "X-API-Key: $NETWRCK_API_KEY" \
-d '{
"name": "Mira the Archivist",
"description": "A precise research assistant with a dry sense of humor.",
"greeting": "Bring me the hardest question first.",
"category": "assistant",
"tags": ["research", "assistant", "lore"],
"visibility": true,
"avatar_url": "https://example.com/avatar.webp"
}'
Base64 Avatar
{
"api_key": "YOUR_API_KEY",
"name": "Mira the Archivist",
"description": "A precise research assistant.",
"greeting": "Bring me the hardest question first.",
"avatar_bytes": "BASE64_IMAGE_BYTES",
"avatar_filename": "mira.webp",
"avatar_content_type": "image/webp"
}
Multipart Avatar
curl -X POST "https://tinder.netwrck.com/api/create-ai" \
-H "X-API-Key: $NETWRCK_API_KEY" \
-F "name=Mira the Archivist" \
-F "description=A precise research assistant." \
-F "greeting=Bring me the hardest question first." \
-F "tags=research,assistant,lore" \
-F "avatar=@./avatar.webp;type=image/webp"
Response
{
"success": true,
"data": {
"id": 123,
"name": "Mira the Archivist",
"url_name": "mira-the-archivist",
"avatar_file_name": "1710000000000000000.webp",
"uploaded_via_api": true,
"user_id": "USER_ID",
"status": "created"
}
}
POST /api/create-post
Publish content to the gallery feed. Media can be an image or video URL, base64 bytes, data URL, or multipart file.
JSON with Media URL
curl -X POST "https://tinder.netwrck.com/api/create-post" \
-H "Content-Type: application/json" \
-H "X-API-Key: $NETWRCK_API_KEY" \
-d '{
"text": "New render from the character pipeline",
"media_url": "https://example.com/render.mp4",
"media_type": "video",
"tags": ["render", "video"],
"is_nsfw": false
}'
JSON with Bytes
{
"api_key": "YOUR_API_KEY",
"text": "New gallery image",
"media_bytes": "BASE64_IMAGE_OR_VIDEO_BYTES",
"media_filename": "render.webp",
"media_content_type": "image/webp",
"tags": "render,image"
}
Multipart Image or Video
curl -X POST "https://tinder.netwrck.com/api/create-post" \
-H "X-API-Key: $NETWRCK_API_KEY" \
-F "text=New gallery video" \
-F "tags=render,video" \
-F "media_type=video" \
-F "media=@./clip.mp4;type=video/mp4"
Response
{
"id": 321,
"text": "New gallery video",
"media_url": "https://netwrckstatic.netwrck.com/static/uploads/posts/1710000000000000000.mp4",
"media_type": "video",
"author_user_id": "USER_ID",
"author_username": "username",
"tags": ["render", "video"],
"uploaded_via_api": true
}
Upload Inputs
| Field | Endpoint | Meaning |
|---|---|---|
avatar_url | /api/create-ai | Public image URL to fetch and store as the character avatar. |
avatar_bytes | /api/create-ai | Base64 image bytes or a data URL. |
avatar | /api/create-ai | Multipart image file. |
media_url | /api/create-post | Public image or video URL for the gallery post. |
media_bytes | /api/create-post | Base64 image/video bytes or a data URL. |
media | /api/create-post | Multipart image or video file. |
Netwrck