Skip to main content

Call via API

Once deployed, your pipelines can be called with POST/GET requests.

Tip

If you've deployed Piper on your own server, replace piper.my with your domain name.

Run pipeline

curl --location --request POST 'https://app.piper.my/api/pipeline-slug/launch' \
--header 'content-type: application/json' \
--header 'api-token: [YOUR_API_KEY_HERE]' \
--data '{
"inputs": {
name: "Bob Marley",
age: 36,
died: true
}
}'
Important

Input type could only primitive: boolean | number | string

Some pipelines accept JSON as input.

In this case, the JSON must still be serialized into a string.

{
"inputs": {
"props": "{ \"name\": \"Bob Marley\", \"age\": 36 }"
}
}

Images & Media types

There are two ways to send images and other media like videos or audio:

  1. JSON Base64: data:image/jpeg;base64,...
  2. Uploading as an artefact.

JSON Base64

curl --location --request POST 'https://app.piper.my/api/pipeline-slug/launch' \
--header 'content-type: application/json' \
--header 'api-token: [YOUR_API_KEY_HERE]' \
--data '{
"inputs": {
image: "data:image/jpeg;base64,..."
}
}'
Limits

For stability and performance reasons, JSON payloads are limited to 2048 KB. For large media files, please upload them as artifacts.

Uploading artefact

Piper has its own temporary storage for handling large media files.

curl --location --request POST 'https://app.piper.my/api/artefacts' \
--header 'api-token: [YOUR_API_KEY_HERE]' \
-F "file=@/path/to/your/file.jpg"

After the upload, you will receive a URL to access the file.

Limits

Your file will be deleted automatically after ~48 hours.

Pipeline status

curl --location --request GET 'https://app.piper.my/api/launches/[LAUNCH_ID]/state' \
--header 'api-token: [YOUR_API_KEY_HERE]'

Depending on the pipeline type, we recommend polling every 2–5 seconds.

Since outputs in a pipeline are set asynchronously, you need to wait for all the outputs you're expecting.

Question

Do you support webhooks or streaming events?

It's coming very soon!

Please vote for the related issue to show your support.