curl --request GET \
--url https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}', 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://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"status": "active",
"paused_reason": "<string>",
"paused_at": "<string>",
"last_failure_at": "<string>",
"last_failure_code": "<string>",
"last_failure_message": "<string>",
"last_failure_run_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"target": {
"kind": "task",
"id": "<string>",
"conversation_mode": "create_new",
"conversation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
},
"schedule": "<string>",
"timezone": "<string>",
"runtime_target_kind": "main_branch",
"runtime_target_environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"runtime_target_branch_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"config": {},
"timeout_seconds": 123,
"backoff_limit": 123,
"concurrency_policy": "<string>",
"definition_source": "manual",
"source_trigger_id": "<string>",
"source_path": "<string>",
"source_hash": "<string>",
"last_scheduled_at": "<string>",
"last_successful_at": "<string>",
"health": {
"maxStalenessSeconds": 123
},
"max_runs": 123,
"run_count": 1,
"completed_at": "<string>",
"created_by": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "<string>",
"updated_at": "<string>",
"integration_requirements": []
}{
"type": "https://api.veryfront.com/errors/validation-failed",
"title": "Validation Failed",
"status": 400,
"cause": "schedule_concurrency_forbidden",
"idempotency": {
"state": "in_progress",
"operation": "<string>",
"retryable": true,
"retry_after_seconds": 1,
"expires_at": "<string>",
"recovery": {
"available": true,
"description": "<string>",
"resource_url": "<string>"
}
},
"code": "RUN_INVALID_INPUT",
"detail": "The 'email' field must be a valid email address",
"instance": "/projects/my-project/members",
"slug": "validation-failed",
"category": "VALIDATION",
"suggestion": "Check the request body and query parameters against the API documentation.",
"errors": [
{
"field": "email",
"message": "Invalid email format",
"code": "INVALID_FORMAT"
}
]
}{
"type": "https://api.veryfront.com/errors/validation-failed",
"title": "Validation Failed",
"status": 400,
"cause": "schedule_concurrency_forbidden",
"idempotency": {
"state": "in_progress",
"operation": "<string>",
"retryable": true,
"retry_after_seconds": 1,
"expires_at": "<string>",
"recovery": {
"available": true,
"description": "<string>",
"resource_url": "<string>"
}
},
"code": "RUN_INVALID_INPUT",
"detail": "The 'email' field must be a valid email address",
"instance": "/projects/my-project/members",
"slug": "validation-failed",
"category": "VALIDATION",
"suggestion": "Check the request body and query parameters against the API documentation.",
"errors": [
{
"field": "email",
"message": "Invalid email format",
"code": "INVALID_FORMAT"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"error": "<string>",
"message": "<string>"
}Get schedule
Read one schedule by its ID to inspect its target, cron expression, runtime target, state and last failure; returns the schedule. Requires project.runs.read.
curl --request GET \
--url https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}', 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://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.veryfront.com/projects/{project_reference}/schedules/{schedule_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"status": "active",
"paused_reason": "<string>",
"paused_at": "<string>",
"last_failure_at": "<string>",
"last_failure_code": "<string>",
"last_failure_message": "<string>",
"last_failure_run_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"target": {
"kind": "task",
"id": "<string>",
"conversation_mode": "create_new",
"conversation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
},
"schedule": "<string>",
"timezone": "<string>",
"runtime_target_kind": "main_branch",
"runtime_target_environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"runtime_target_branch_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"config": {},
"timeout_seconds": 123,
"backoff_limit": 123,
"concurrency_policy": "<string>",
"definition_source": "manual",
"source_trigger_id": "<string>",
"source_path": "<string>",
"source_hash": "<string>",
"last_scheduled_at": "<string>",
"last_successful_at": "<string>",
"health": {
"maxStalenessSeconds": 123
},
"max_runs": 123,
"run_count": 1,
"completed_at": "<string>",
"created_by": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "<string>",
"updated_at": "<string>",
"integration_requirements": []
}{
"type": "https://api.veryfront.com/errors/validation-failed",
"title": "Validation Failed",
"status": 400,
"cause": "schedule_concurrency_forbidden",
"idempotency": {
"state": "in_progress",
"operation": "<string>",
"retryable": true,
"retry_after_seconds": 1,
"expires_at": "<string>",
"recovery": {
"available": true,
"description": "<string>",
"resource_url": "<string>"
}
},
"code": "RUN_INVALID_INPUT",
"detail": "The 'email' field must be a valid email address",
"instance": "/projects/my-project/members",
"slug": "validation-failed",
"category": "VALIDATION",
"suggestion": "Check the request body and query parameters against the API documentation.",
"errors": [
{
"field": "email",
"message": "Invalid email format",
"code": "INVALID_FORMAT"
}
]
}{
"type": "https://api.veryfront.com/errors/validation-failed",
"title": "Validation Failed",
"status": 400,
"cause": "schedule_concurrency_forbidden",
"idempotency": {
"state": "in_progress",
"operation": "<string>",
"retryable": true,
"retry_after_seconds": 1,
"expires_at": "<string>",
"recovery": {
"available": true,
"description": "<string>",
"resource_url": "<string>"
}
},
"code": "RUN_INVALID_INPUT",
"detail": "The 'email' field must be a valid email address",
"instance": "/projects/my-project/members",
"slug": "validation-failed",
"category": "VALIDATION",
"suggestion": "Check the request body and query parameters against the API documentation.",
"errors": [
{
"field": "email",
"message": "Invalid email format",
"code": "INVALID_FORMAT"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"error": "<string>",
"message": "<string>"
}Authorizations
Use a JWT bearer token or a Veryfront API key in the Authorization header.
Path Parameters
1Schedule ID.
Response
Project schedule
Recurring project schedule.
Schedule ID.
Owning project ID.
Human-readable schedule name.
Schedule status.
active, paused, deleting System pause reason when Veryfront pauses the schedule.
Timestamp when Veryfront paused the schedule.
Timestamp of the most recent schedule failure.
Most recent schedule failure code.
Most recent schedule failure message.
Canonical run ID for the most recent schedule failure.
Typed schedule target.
Show child attributes
Show child attributes
Schedule expression.
IANA timezone.
Runtime target kind.
main_branch, environment, preview_branch Environment ID for environment schedules.
Branch ID for preview branch schedules.
Run configuration without internal schedule target metadata.
Show child attributes
Show child attributes
Per-run timeout in seconds.
Retry backoff limit.
How overlapping scheduled runs are handled.
Whether the schedule is manually managed or source-defined.
manual, source Source trigger ID for source-defined schedules.
Source file path for source-defined schedules.
Source definition hash for source-defined schedules.
Last scheduled fire time.
Last successful run time.
Optional staleness budget used for schedule health alerting.
Show child attributes
Show child attributes
Optional maximum run count.
Fire reservations counted toward the repetition limit; released reservations are subtracted.
x >= 0Completion time for finite schedules.
User that created the schedule.
Creation timestamp.
Last update timestamp.
OAuth scopes and exact provider resources required before the schedule can run.
20Show child attributes
Show child attributes