Effects API

One photo in. A new image or a moving clip out.

Every effect is a maintained instruction you address by a short id. Upload a picture, name the effect, poll the task — the samples below are what came back.

Face Fuck Hard
POV Cowgirl Fuck
Casting Sex Doggy
Leg Aside Sex

POST /v1/images/transformations

Image effects

A photo goes in and a transformed image comes back: the same subject, re-posed, re-dressed or undressed. Each card shows the source inset over the result. Click one for the exact request.

All 113 image effects

undress

26 effects

Costume

27 effects

Pose

60 effects

POST /v1/videos/transformations

Video effects

A photo goes in and a five-second clip comes back, animated by the effect you name. Hover a card to play it. Click one for the exact request.

All 160 video effects

Two endpoints, your own prompt too

An effect is one parameter on a request you already control. Send a prompt of your own on the image endpoint, or add one beside a video effect to steer it.

Image to image

Transform an uploaded image with a prompt, an effectId, or both.

curl -X POST https://app.piernode.com/api/v1/images/transformations \
  -H "Authorization: Bearer $PIERNODE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "assetId": "<uploaded asset id>",
    "prompt": "change the background to a sunlit beach",
    "resolution": "hd",
    "aspectRatio": "3:4"
  }'
  • Prompt alone, effect alone, or an effect with a prompt on top
  • Output in HD or Full HD, seven aspect ratios
  • Asynchronous: the response is a task you poll for the image
Read the endpoint docs

Image to video

Animate an uploaded image into a five- or eight-second clip driven by a video effect.

curl -X POST https://app.piernode.com/api/v1/videos/transformations \
  -H "Authorization: Bearer $PIERNODE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "assetId": "<uploaded asset id>",
    "effectId": "<video effect id>",
    "resolution": "hd",
    "durationSeconds": 5
  }'
  • An effectId is required; a prompt is optional and additive
  • 832×480 or 1280×720, 5 or 8 seconds
  • Billed per second of output, only on success
Read the endpoint docs

Three calls from a photo to a result

Every request on this page shares the same shape. There is nothing to install and no model to host.

  1. 1

    Upload the image

    Ask for an upload slot, PUT the bytes, confirm. You get an assetId that any request can reference.

    POST /v1/assets
  2. 2

    Name the effect

    One POST with the assetId and the effectId — plus a prompt or presets if you want to override its defaults.

    POST /v1/images|videos/transformations
  3. 3

    Poll the task

    The response is a task. Poll it until it succeeds and read the output URL. A failed task is never charged.

    GET /v1/tasks/{id}

Try any effect on your own image

Sign up, fund the wallet in US dollars, and every effect on this page answers the first request you send.