Automation-Run erneut versuchen
curl --request POST \
--url https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retryimport requests
url = "https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_body{
"run_id": "yHhXbqWj3zJZ5ztDNfUry",
"status": "RUNNING",
"note": "Retried FROM the failed step — steps that already succeeded were NOT re-executed, so their side effects were not repeated."
}
{
"message": "The retry did not resume this run (its status is still 'FAILED') — its saved state is likely stale, most commonly because the run passed through a Delay step before failing. This run cannot be resumed as-is. To force a fresh full run (re-executes EVERY step, including any that already sent a message/email/call — get the user's explicit confirmation first, then rebuild via update-automation's repair path), or otherwise wait for the automation's next real trigger event.",
"error": "retry_no_op"
}
{
"message": "Run not found for this automation.",
"error": "not_found"
}
Automations
Automation-Run erneut versuchen
Versuche einen fehlgeschlagenen Famulor-Automation-Run ab dem fehlgeschlagenen Step erneut — ohne bereits erfolgreiche Steps.
POST
/
api
/
user
/
automate
/
flows
/
{id}
/
runs
/
{run_id}
/
retry
Automation-Run erneut versuchen
curl --request POST \
--url https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retryimport requests
url = "https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.famulor.de/api/user/automate/flows/{id}/runs/{run_id}/retry")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_body{
"run_id": "yHhXbqWj3zJZ5ztDNfUry",
"status": "RUNNING",
"note": "Retried FROM the failed step — steps that already succeeded were NOT re-executed, so their side effects were not repeated."
}
{
"message": "The retry did not resume this run (its status is still 'FAILED') — its saved state is likely stale, most commonly because the run passed through a Delay step before failing. This run cannot be resumed as-is. To force a fresh full run (re-executes EVERY step, including any that already sent a message/email/call — get the user's explicit confirmation first, then rebuild via update-automation's repair path), or otherwise wait for the automation's next real trigger event.",
"error": "retry_no_op"
}
{
"message": "Run not found for this automation.",
"error": "not_found"
}
Famulor 1.0 API (Legacy). Diese Seite gilt nur für Famulor 1.0 (
app.famulor.de) und bleibt aus Kompatibilitätsgründen erhalten. Für die aktuelle Plattform nutze die Famulor 2.0 API-Referenz.id aus Runs auflisten. Ein Retry setzt denselben Run fort — er erzeugt keinen neuen.
Dieser Endpunkt nimmt keinen Request Body.
Pfad-Parameter
string
erforderlich
Die ID der Automation (aus Automationen auflisten)
string
erforderlich
Die ID des fehlgeschlagenen Runs (aus Runs auflisten)
Antwort
string
Die ID des erneut versuchten Runs (derselbe Run wie übergeben)
string
Der Status des Runs direkt nach dem Retry (z. B.
RUNNING, oder SUCCEEDED wenn sofort fertig)string
Bestätigung, dass bereits erfolgreiche Steps nicht erneut ausgeführt wurden
404.
Fehlercodes (422)
| error | Bedeutung |
|---|---|
retry_no_op | Der Retry hat den Run nicht fortgesetzt — der gespeicherte Zustand ist veraltet, meist weil der Run vor dem Fehler durch einen Delay-Step gelaufen ist. Ein solcher Run kann so nicht fortgesetzt werden; die Meldung listet sichere Optionen (Automation reparieren oder auf das nächste echte Trigger-Event warten). |
retry_failed | Der Retry konnte nicht gestartet werden — kurz danach erneut versuchen. |
{
"run_id": "yHhXbqWj3zJZ5ztDNfUry",
"status": "RUNNING",
"note": "Retried FROM the failed step — steps that already succeeded were NOT re-executed, so their side effects were not repeated."
}
{
"message": "The retry did not resume this run (its status is still 'FAILED') — its saved state is likely stale, most commonly because the run passed through a Delay step before failing. This run cannot be resumed as-is. To force a fresh full run (re-executes EVERY step, including any that already sent a message/email/call — get the user's explicit confirmation first, then rebuild via update-automation's repair path), or otherwise wait for the automation's next real trigger event.",
"error": "retry_no_op"
}
{
"message": "Run not found for this automation.",
"error": "not_found"
}
Verwandte Seiten: Runs auflisten, Automation aktualisieren und Authentifizierung.