POST
/
adopt
/
{id}
curl --request POST \
  --url https://{appDomain}/adopt/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: text/plain' \
  --data 'name=MikroTik;serial-number=ABC123XYZ;architecture-name=arm;routerboard=true;platform=MikroTik;model=RB4011iGS+;board-name=RB4011iGS+;revision=;cpu=ARM 32-bit;cpu-count=4;cpu-frequency=1400;cpu-load=5;total-memory=1073741824;free-memory=900000000;total-hdd-space=536870912;free-hdd-space=400000000;software-id=ABCD-EFGH;build-time=Dec/15/2023 10:00:00;level=6;version=7.12;factory-software=7.1;factory-firmware=7.1;current-firmware=7.12;upgrade-firmware=7.12;firmware-type=arm;uptime=1d10h30m15s'
":global write do={ :put \"Altostrat-SDX: Site 'MyRouter - 15th Dec 23' adopted successfully using runbook 'Default Policy'.\"; :put \"Manage Site: https://sdx.altostrat.io/deployments/your-new-site-uuid/overview\"; :put \"Quote: Be the change you wish to see in the world.\";}; :execute $write;\n# Scheduler script content here... based on site->getScheduler()\n/system scheduler add name=\"altostrat-poll\" interval=30s policy=read,write,test,api on-event={ ... } start-time=startup;\n# Backup script content here... based on site->generateSftp()\n"

Authorizations

Authorization
string
header
required

Standard JWT token obtained via a separate authentication process. Required for most user-facing API endpoints.

Path Parameters

id
string
required

The base62 encoded UUID representing the Runbook token used for bootstrapping.

Example:

"4KuKNp3QzpfwLcg3BUnn1a"

Body

text/plain · string

RouterOS script output containing device identity, resource, license, and routerboard info, formatted as key=value pairs separated by semicolons.

The body is of type string.

Example:

"name=MikroTik;serial-number=ABC123XYZ;architecture-name=arm;routerboard=true;platform=MikroTik;model=RB4011iGS+;board-name=RB4011iGS+;revision=;cpu=ARM 32-bit;cpu-count=4;cpu-frequency=1400;cpu-load=5;total-memory=1073741824;free-memory=900000000;total-hdd-space=536870912;free-hdd-space=400000000;software-id=ABCD-EFGH;build-time=Dec/15/2023 10:00:00;level=6;version=7.12;factory-software=7.1;factory-firmware=7.1;current-firmware=7.12;upgrade-firmware=7.12;firmware-type=arm;uptime=1d10h30m15s"

Response

200
text/plain

RouterOS script confirming adoption and setting up the scheduler.

The response is of type string.

Example:

":global write do={ :put \"Altostrat-SDX: Site 'MyRouter - 15th Dec 23' adopted successfully using runbook 'Default Policy'.\"; :put \"Manage Site: https://sdx.altostrat.io/deployments/your-new-site-uuid/overview\"; :put \"Quote: Be the change you wish to see in the world.\";}; :execute $write;\n# Scheduler script content here... based on site->getScheduler()\n/system scheduler add name=\"altostrat-poll\" interval=30s policy=read,write,test,api on-event={ ... } start-time=startup;\n# Backup script content here... based on site->generateSftp()\n"