API Documentation
Browse the maintained core contract for uploads, publishing, playback, and analytics.
Quick Start
1. Authenticate
# Sign in via Google OAuth, then use the JWT token curl https://dasein-api.pixelraft.com/auth/me \ -H "Authorization: Bearer YOUR_JWT_TOKEN"
2. Upload a Scene
# Create upload session
FILE_SIZE=$(wc -c < scene.ply | tr -d ' ')
REQUEST_BODY=$(jq -n --argjson size "$FILE_SIZE" \
'{fileName:"scene.ply",contentType:"application/octet-stream",sizeBytes:$size,sourceFormat:"ply"}')
UPLOAD=$(curl -sS -X POST https://dasein-api.pixelraft.com/v1/uploads \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d "$REQUEST_BODY")
UPLOAD_ID=$(printf '%s' "$UPLOAD" | jq -r '.upload.id')
TARGET_URL=$(printf '%s' "$UPLOAD" | jq -r '.target.url')
TARGET_KIND=$(printf '%s' "$UPLOAD" | jq -r '.target.kind')
TARGET_PROVIDER=$(printf '%s' "$UPLOAD" | jq -r '.target.provider')
# Follow the target returned by the API
if [ "$TARGET_PROVIDER" = "api_relay" ]; then
curl -X PUT "https://dasein-api.pixelraft.com$TARGET_URL" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/octet-stream" \
--data-binary @scene.ply
elif [ "$TARGET_KIND" = "resumable_put" ]; then
curl -X PUT "$TARGET_URL" \
-H "Content-Type: application/octet-stream" \
-H "Content-Range: bytes 0-$((FILE_SIZE - 1))/$FILE_SIZE" \
--data-binary @scene.ply
else
curl -X PUT "$TARGET_URL" \
-H "Content-Type: application/octet-stream" \
--data-binary @scene.ply
fi
# Complete the session and create the asset, version, and queued job
curl -X POST "https://dasein-api.pixelraft.com/v1/uploads/$UPLOAD_ID/complete" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"workspaceId":"YOUR_WORKSPACE_ID","title":"My Scene"}'3. Embed
<iframe src="/embed/YOUR_SLUG" width="1280" height="720" allowfullscreen loading="lazy" style="border:none;border-radius:12px"> </iframe>
Accepted source formats
.ply
Gaussian or mesh PLY
.splat
Splat format
.spz
SPZ compressed
compressed_ply
Compressed PLY
.glb
Binary glTF
.gltf
glTF
.obj
Wavefront OBJ
.stl
STL mesh
.fbx
FBX
.usdz
USDZ