Sonilo Trigger

Sonilo Trigger

Certified

Watch a Sonilo task until it finishes

Polls GET /v1/tasks/{taskId} once per interval. Sonilo does not offer a webhook. When the task reaches a terminal status, the trigger starts one execution. Success and failure both fire. A successful task's primary file is copied into Kestra internal storage because presigned URLs expire. A failed task does not download a file and does not fail the trigger.

yaml
type: io.kestra.plugin.sonilo.Trigger

Run a flow when a Sonilo task finishes

yaml
id: on_sonilo_task_complete
namespace: company.media

tasks:
  - id: log_status
    type: io.kestra.plugin.core.log.Log
    message: "Sonilo task {{ trigger.taskId }} finished: {{ trigger.status }}"

triggers:
  - id: wait_for_task
    type: io.kestra.plugin.sonilo.Trigger
    apiToken: "{{ secret('SONILO_API_TOKEN') }}"
    interval: PT30S
    taskId: "6f1c2e5a-9b3d-4e7a-8c1d-2a4b6c8d0e1f"
Properties

Sonilo API token

Bearer token from a Sonilo Platform account at platform.sonilo.com. Platform keys are separate from sonilo.com app logins. Sent as Authorization: Bearer.

Sonilo task identifier to watch

Existing task id returned by an earlier Sonilo submission.

Defaultfalse

Specifies whether a trigger is allowed to start a new execution even if a previous run is still in progress.

Defaulthttps://api.sonilo.com

Sonilo API base URL

API host root. Defaults to https://api.sonilo.com. A trailing slash, or a base that already ends in /v1, is accepted.

DefaultPT30S
Formatduration

Interval between polling

Time between status checks. Use at least PT30S. Each evaluation sends one GET /v1/tasks/{taskId}.

HTTP client configuration

Optional proxy, timeout, and TLS settings for calls to the Sonilo API.

Definitions
allowFailedbooleanstring
Defaultfalse

If true, allow a failed response code (response code >= 400)

allowedResponseCodesarray
SubTypeinteger

List of response code allowed for this request

auth

The authentication to use.

type*object
passwordstring

The password for HTTP basic authentication.

usernamestring

The username for HTTP basic authentication.

type*object
tokenstring

The token for bearer token authentication.

type*object
passwordstring

The password for HTTP Digest authentication.

usernamestring

The username for HTTP Digest authentication.

defaultCharsetstring
DefaultUTF-8

The default charset for the request.

enabledTcpExtendedKeepAlivebooleanstring
Defaulttrue

Whether to enable TCP Keep-Alive extended socket options (TCP_KEEPIDLE, TCP_KEEPINTERVAL, TCP_KEEPCOUNT).

Set to false when running on Windows workers, as these extended socket options are not supported by the Windows JDK and will cause connection failures.

followRedirectsbooleanstring
Defaulttrue

Whether redirects should be followed automatically.

logsarray
SubTypestring
Possible Values
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODY

The enabled log.

proxy

The proxy configuration.

addressstring

The address of the proxy server.

passwordstring

The password for proxy authentication.

portintegerstring

The port of the proxy server.

typestring
DefaultDIRECT
Possible Values
DIRECTHTTPSOCKS

The type of proxy to use.

usernamestring

The username for proxy authentication.

ssl

The SSL request options

insecureTrustAllCertificatesbooleanstring

Whether to disable checking of the remote SSL certificate.

Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.

timeout

The timeout configuration.

connectTimeoutstring

The time allowed to establish a connection to the server before failing.

readIdleTimeoutstring
DefaultPT5M

The time allowed for a read connection to remain idle before closing it.

SubTypestring
Possible Values
CREATEDSUBMITTEDRUNNINGPAUSEDRESTARTEDKILLINGSUCCESSWARNINGFAILEDKILLEDCANCELLEDQUEUEDRETRYINGRETRIEDSKIPPEDBREAKPOINTRESUBMITTED

List of execution states after which a trigger should be stopped (a.k.a. disabled).

Defaulttrue

A condition that determines whether the trigger should run.

A Pebble expression evaluated at trigger time. The trigger fires only when the expression evaluates to a truthy value (true, a non-empty string, a non-zero number). Use this to gate trigger execution on dynamic runtime values such as execution labels, flow variables, or environment conditions.