curl --request POST \
--url https://api.autoprintfarm.com/public/v1/jobs/{id}/pause \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.autoprintfarm.com/public/v1/jobs/{id}/pause"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.autoprintfarm.com/public/v1/jobs/{id}/pause', 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.autoprintfarm.com/public/v1/jobs/{id}/pause",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
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.autoprintfarm.com/public/v1/jobs/{id}/pause"
req, _ := http.NewRequest("POST", 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.post("https://api.autoprintfarm.com/public/v1/jobs/{id}/pause")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.autoprintfarm.com/public/v1/jobs/{id}/pause")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"id": "<string>",
"status": "<string>",
"printer_id": "<string>",
"product_id": "<string>",
"product_sku_id": "<string>",
"product_name": "<string>",
"file_name": "<string>",
"number_of_units": 123,
"color": "<string>",
"filament_type": "<string>",
"material_type": "<string>",
"progress_percentage": 123,
"estimated_print_time_minutes": 123,
"actual_print_time_minutes": 123,
"failure_reason": "<string>",
"time_submitted": "<string>",
"time_started": "<string>",
"time_completed": "<string>",
"created_at": "<string>",
"updated_at": "<string>",
"origin": "app",
"printer_file_name": "<string>",
"filament_needed_grams": 123,
"printer_name": "<string>",
"printer_model": "<string>",
"sku_name": "<string>"
},
"timedOut": true,
"queued": true
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}Pause an actively printing job
Side effect — physical motion. Sends pause to the printer via the hub and waits for ACK. State transitions printing → paused atomically; reverts on hub command failure. If the command was sent but the hub’s acknowledgement was lost, the job keeps its new state and the response carries timedOut: true — check the printer.
curl --request POST \
--url https://api.autoprintfarm.com/public/v1/jobs/{id}/pause \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.autoprintfarm.com/public/v1/jobs/{id}/pause"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.autoprintfarm.com/public/v1/jobs/{id}/pause', 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.autoprintfarm.com/public/v1/jobs/{id}/pause",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
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.autoprintfarm.com/public/v1/jobs/{id}/pause"
req, _ := http.NewRequest("POST", 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.post("https://api.autoprintfarm.com/public/v1/jobs/{id}/pause")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.autoprintfarm.com/public/v1/jobs/{id}/pause")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"id": "<string>",
"status": "<string>",
"printer_id": "<string>",
"product_id": "<string>",
"product_sku_id": "<string>",
"product_name": "<string>",
"file_name": "<string>",
"number_of_units": 123,
"color": "<string>",
"filament_type": "<string>",
"material_type": "<string>",
"progress_percentage": 123,
"estimated_print_time_minutes": 123,
"actual_print_time_minutes": 123,
"failure_reason": "<string>",
"time_submitted": "<string>",
"time_started": "<string>",
"time_completed": "<string>",
"created_at": "<string>",
"updated_at": "<string>",
"origin": "app",
"printer_file_name": "<string>",
"filament_needed_grams": 123,
"printer_name": "<string>",
"printer_model": "<string>",
"sku_name": "<string>"
},
"timedOut": true,
"queued": true
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"details": "<unknown>"
}
}Authorizations
API keys are minted in the AutoPrintFarm web app under Settings → API Keys. Send as Authorization: Bearer apf_live_.... Keys are shown exactly once at creation and can be revoked at any time.
Path Parameters
Response
Paused
true Show child attributes
Show child attributes
True when the command was sent to the hub but its acknowledgement never came back. The job keeps its new state and the command may still take effect — check the printer; live telemetry reconciles the job.
Was this page helpful?