Skip to content

Vacuglide API V1

The Vacuglide API is hosted on multiple clusters around the world. When a device goes online it will connect to the lowest latency server. To control the device you must connect to the same cluster as the device. You can find the cluster your device is connected to by checking the cluster property in the /vacuglide/connected response.

https://us-east-1.autoblowapi.com
https://us-east-2.autoblowapi.com
https://us-west-1.autoblowapi.com
https://us-west-2.autoblowapi.com
https://ca-central-1.autoblowapi.com
https://ap-southeast-2.autoblowapi.com
https://eu-west-2.autoblowapi.com
https://eu-central-1.autoblowapi.com

Check if a device is connected and get the cluster it is connected to. This request can be performed on any cluster but for the reliability porposes we recommend using https://latency.autoblowapi.com which will connect you to the cluster with the lowest latency. All the other requests can be only performed on the cluster the device is connected to.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
Response Parameters
namedatadescription
connectedboolTrue if the device is currently connected
clusterstring or undefinedURI to the connected cluster, undefined if not connected
Example Request
Terminal window
curl --request GET \
--url https://us-east-2.autoblowapi.com/vacuglide/connected \
--header 'x-device-token: jya6vksq08q3'
Example Responses

Status Code: 200, Content-Type: application/json

{
"connected": true,
"cluster": "https://us-east-1.autoblowapi.com"
}

Status Code: 200, Content-Type: application/json

{
"connected": false
}

Get additional information about the device such as the firmware/hardware version. It’s important to note the device type. If the device type is vacuglide you should use the Vacuglide API V1.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
Response Parameters
nametypedescription
firmwareStatusenum:
UP_TO_DATE,
UPDATE_AVAILABLE,
UPDATE_REQUIRED
The firmware status
firmwareVersionfloatThe current device firmware version
firmwareBranchstringThe firmware branch
hardwareVersionstringThe hardware version
macstringThe device mac address
deviceTypeenum:
autoblow-ultra,
vacuglide
The device type
Example Request
Terminal window
curl --request GET \
--url https://eu-central-1.autoblowapi.com/vacuglide/info \
--header 'x-device-token: jya6vksq08q3'
Example Responses

Status Code: 200, Content-Type: application/json

{
"firmwareStatus": "UP_TO_DATE",
"firmwareVersion": 1.01,
"firmwareBranch": "prod",
"hardwareVersion": "vacuglide",
"mac": "b0b21c3141e8",
"deviceType": "vacuglide"
}

Get the current state of the device

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request GET \
--url https://eu-central-1.autoblowapi.com/vacuglide/state \
--header 'x-device-token: jya6vksq08q3'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "ONLINE_CONNECTED",
"localScript": 10,
"targetSpeed": 64,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "",
"syncScriptLoop": true
}

Set the state for the stroke plus valve

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
valveState
(body)
yesboolTRUE for open, FALSE for closed
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/valve/stroke-plus \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '{"valveState": true}'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "ONLINE_CONNECTED",
"localScript": 10,
"targetSpeed": 0,
"strokePlusValve": true,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "",
"syncScriptLoop": true
}

Set the state for the stroke minus valve

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
valveState
(body)
yesboolTRUE for open, FALSE for closed
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/valve/stroke-minus \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '{"valveState": true}'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "ONLINE_CONNECTED",
"localScript": 10,
"targetSpeed": 0,
"strokePlusValve": true,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "",
"syncScriptLoop": true
}

Will start the target speed for the device

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
targetSpeed
(body)
yesnumberThe target speed in percent
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/target-speed \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '{"targetSpeed": 50}'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "TARGET_SPEED_PLAYING",
"localScript": 10,
"targetSpeed": 50,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "",
"syncScriptLoop": false
}

Stop the target speed for the device

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/target-speed/stop \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '{"targetSpeed": 50}'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "TARGET_SPEED_PAUSED",
"localScript": 10,
"targetSpeed": 50,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "",
"syncScriptLoop": false
}

Play one of the 30 loaded local scripts on the device.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringThe autoblow device token
localScriptIndex
(body)
yesnumber
(min:0)
(max:30)
Local script playing index
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/autoblow/local-script \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '{"localScriptIndex": 5}'
Example Responses

Status Code: 200, Content-Type: application/json

{
"operationalMode": "LOCAL_SCRIPT_PLAYING",
"localScript": 5,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "",
"syncScriptLoop": false
}

Play the already selected local script on the device.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/local-script/start \
--header 'x-device-token: jya6vksq08q3'
Example Responses

Status Code: 200, Content-Type: application/json

{
"operationalMode": "LOCAL_SCRIPT_PLAYING",
"localScript": 5,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "",
"syncScriptLoop": false
}

Stop playing the local script.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringThe autoblow device token
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/local-script/stop \
--header 'x-device-token: jya6vksq08q3'
Example Responses

Status Code: 200, Content-Type: application/json

{
"operationalMode": "LOCAL_SCRIPT_PAUSED",
"localScript": 5,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "",
"syncScriptLoop": false
}

Play a sync script on the device.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
startTimeMs
(body)
yesnumberAt what time to start playing the sync script from
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/sync-script/start \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '
{"startTimeMs": 0}'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "SYNC_SCRIPT_PLAYING",
"localScript": 0,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "7a93bfc5-4043-4ade-aee5-bec8012b0e12",
"syncScriptLoop": true
}

Stop playing the sync script.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/sync-script/stop \
--header 'x-device-token: jya6vksq08q3'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "SYNC_SCRIPT_PLAYING",
"localScript": 0,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "7a93bfc5-4043-4ade-aee5-bec8012b0e12",
"syncScriptLoop": true
}

Add an offset to sync script for latency compensation. The offset is in milliseconds and can be positive or negative.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
offsetTimeMs
(body)
yesnumberSet an offset, the offset will get added to syncScriptCurrentTime, the offset can be positive or negative
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/sync-script/offset \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '{"offsetTimeMs" : 100}'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "SYNC_SCRIPT_PAUSED",
"localScript": 0,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 100,
"syncScriptToken": "7a93bfc5-4043-4ade-aee5-bec8012b0e12",
"syncScriptLoop": true
}

Set the script to play in a loop

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
loop
(body)
yesboolIf set to true it will restart the script after it finishes playing it
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/sync-script/loop \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '
{"loop" : true}'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "SYNC_SCRIPT_PAUSED",
"localScript": 0,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "7a93bfc5-4043-4ade-aee5-bec8012b0e12",
"syncScriptLoop": true
}

Will load the sync script using the token identifier.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
scriptToken
(body)
yesstringSync script token you want to load on the device
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/sync-script/load-token \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '
{
"scriptToken": "ea5d85d2-4db7-4f76-88fe-23a6fb5a8eab"
}'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "SYNC_SCRIPT_PAUSED",
"localScript": 0,
"localScriptSpeed": 0,
"motorTemperature": 30,
"oscillatorTargetSpeed": 50,
"oscillatorLowPoint": 0,
"oscillatorHighPoint": 100,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "ea5d85d2-4db7-4f76-88fe-23a6fb5a8eab",
"syncScriptLoop": false
}

Will upload a sync script from a csv file. The script will be converted to a binary format that the autoblow can play and it will be stored on our servers for 48 hours. Each uploaded script will be assigned a token that can be used to load the script on the device or to check if the script is loaded.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
file
(multipart)
yesfileThe csv file you want to upload
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/sync-script/upload-csv \
--header 'Content-Type: multipart/form-data' \
--header 'x-device-token: jya6vksq08q3' \
--form 'file=@/path_to_file/test.csv'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "SYNC_SCRIPT_PAUSED",
"localScript": 0,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "7a93bfc5-4043-4ade-aee5-bec8012b0e12",
"syncScriptLoop": true
}

Will upload a sync script from a csv url. The script will be converted to a binary format that the autoblow can play and it will be stored on our servers for 48 hours. Each uploaded script will be assigned a token that can be used to load the script on the device or to check if the script is loaded.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
file
(multipart)
yesfileThe csv file you want to upload
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/sync-script/upload-csv \
--header 'Content-Type: multipart/form-data' \
--header 'x-device-token: jya6vksq08q3' \
--form 'file=@/path_to_file/test.csv'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "SYNC_SCRIPT_PAUSED",
"localScript": 0,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "7a93bfc5-4043-4ade-aee5-bec8012b0e12",
"syncScriptLoop": true
}

PUT /vacuglide/sync-script/upload-funscript

Section titled “PUT /vacuglide/sync-script/upload-funscript”

Will upload a sync script from a fun file. The script will be converted to a binary format that the autoblow can play and it will be stored on our servers for 48 hours. Each uploaded script will be assigned a token that can be used to load the script on the device or to check if the script is loaded.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
file
(multipart)
yesfileThe funscript file you want to upload
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/sync-script/upload-funscript \
--header 'Content-Type: multipart/form-data' \
--header 'x-device-token: jya6vksq08q3' \
--form 'file=@/path_to_file/test.funscript'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "SYNC_SCRIPT_PAUSED",
"localScript": 0,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "7a93bfc5-4043-4ade-aee5-bec8012b0e12",
"syncScriptLoop": true
}

PUT /vacuglide/sync-script/upload-funscript-url

Section titled “PUT /vacuglide/sync-script/upload-funscript-url”

Will upload a sync script from a fun url. The script will be converted to a binary format that the autoblow can play and it will be stored on our servers for 48 hours. Each uploaded script will be assigned a token that can be used to load the script on the device or to check if the script is loaded.

See documentation
Request Parameters
namerequiredtypedescription
x-device-token
(header)
yesstringVacuglide device token
url
(body)
yesstringThe URL that hosts the funscript you want to upload onto the device
Response Parameters
nametypedescription
operationalModeenum: ONLINE_CONNECTED, SYNC_SCRIPT_PLAYING, SYNC_SCRIPT_PAUSED, LOCAL_SCRIPT_PLAYING, LOCAL_SCRIPT_PAUSED, TARGET_SPEED_PLAYING, TARGET_SPEED_PAUSED, SETUP, ERROR, FIRMWARE_UPDATING, ERROR_MOTOR_STUCKThe current operational mode
localScriptnumber
(min:0)
(max:30)
The index of the local script
targetSpeednumber
(min:0)
(max:100)
The target speed in percent
strokePlusValveboolThe state of the stroke plus valve
strokeMinusValveboolThe state of the stroke minus valve
syncScriptCurrentTimenumberThe current time of the sync script in MS
syncScriptOffsetTimenumberThe offset time of the sync script in MS
syncScriptTokenstringThe loaded sync script token
syncScriptLoopboolIf set to true, it will restart sync script when finished
Example Request
Terminal window
curl --request PUT \
--url https://eu-central-1.autoblowapi.com/vacuglide/sync-script/upload-funscript-url \
--header 'Content-Type: application/json' \
--header 'x-device-token: jya6vksq08q3' \
--data '{"url": "https://vieci-uploads.s3.amazonaws.com/funscripts/test.funscript"}'
Example Response

Status Code: 200, Content-Type: application/json

{
"operationalMode": "SYNC_SCRIPT_PAUSED",
"localScript": 0,
"targetSpeed": 0,
"strokePlusValve": false,
"strokeMinusValve": false,
"syncScriptCurrentTime": 0,
"syncScriptOffsetTime": 0,
"syncScriptToken": "7a93bfc5-4043-4ade-aee5-bec8012b0e12",
"syncScriptLoop": true
}

The events are sent through Server Sent Events (SSE) and the client can subscribe to the stream by sending a GET request to the /events/stream endpoint. Vacuglide will send the following events:

  • speed-minus-button-pressed - The speed minus button was pressed
  • speed-plus-button-pressed - The speed plus button was pressed
  • mode-button-pressed - The mode button was pressed
See documentation
Request Parameters
namerequiredtypedescription
deviceToken
(query)
yesstringVacuglide device token
Response Parameters
nametypedescription
eventstringThe event type
dataobjectThe event data
Example Request
Terminal window
curl --request GET \
--url https://eu-central-1.autoblowapi.com/events/stream?deviceToken=jya6vksq08q3 \
Example Responses

Status Code: 200, Content-Type: application/json

event: connected
data: {"connectionId":"bedffe18-f62e-4c9c-8e9b-7082f88d5f0c","subscribedDevice":"yksf9n31sahp"}
event: heartbeat
data: {"timestamp":1752685746276}

This API is rate limited. Each response will contain the following headers:

nametypedescription
x-ratelimit-limitnumberHow many requests the client can make
x-ratelimit-remainingnumberHow many requests remain to the client in the timewindow
x-ratelimit-resetnumberHow many seconds until the rate limit resets

The following codes are used in the operationalCode property of the /vacuglide/state response.

  • ONLINE_CONNECTED - Device is connected to the server, the device is ready to receive commands.
  • SYNC_SCRIPT_PLAYING - The device is playing a sync script, for additional information check the following relevant state properties syncScriptToken,syncScriptCurrentTime,syncScriptOffsetTime,syncScriptLoop.
  • SYNC_SCRIPT_PAUSED - Sync script is paused
  • LOCAL_SCRIPT_PLAYING - Local script is playing, for additional information check the following relevant state properties localScript,localScriptSpeed.
  • LOCAL_SCRIPT_PAUSED - Local script is paused
  • TARGET_SPEED_PLAYING - Target speed is playing
  • TARGET_SPEED_PAUSED - Target speed is paused
  • SETUP - Device is in setup mode
  • ERROR - Device is in an error state
  • FIRMWARE_UPDATING - Device is updating the firmware
  • ERROR_MOTOR_STUCK - Device is in an error state because the motor is stuck