Automator Configs¶
Reference for the automator_configs endpoints of the Surfmeter API.
Surfmeter API – Automator Configs v1¶
The Surfmeter API lets you manage clients, users, capabilities, measurements, and organization-wide settings programmatically.
Servers¶
| Description | URL |
|---|---|
| https://surfmeter-server.{host}/client_admin_api/v1 | https://surfmeter-server.{host}/client_admin_api/v1 |
Automator Configs¶
GET /automator_configs¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
Response 200 OK
{
"automator_configs": [
{
"id": 0,
"name": "string",
"description": "string",
"import_source": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"created_at": "string",
"updated_at": "string",
"draft_version_id": 0,
"published_version_id": 0,
"public_config_id": 0,
"public_config_name": "string",
"published_public_config_id": 0,
"published_public_config_name": "string",
"draft_revision": 0,
"published_revision": 0
}
]
}
Schema of the response body
{
"type": "object",
"properties": {
"automator_configs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"import_source": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"draft_version_id": {
"type": "integer",
"nullable": true
},
"published_version_id": {
"type": "integer",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules of the draft, or else of the published version, use"
},
"public_config_name": {
"type": "string"
},
"published_public_config_id": {
"type": "integer",
"description": "The measurement config that clients get with the published version",
"nullable": true
},
"published_public_config_name": {
"type": "string",
"nullable": true
},
"draft_revision": {
"type": "integer",
"nullable": true
},
"published_revision": {
"type": "integer",
"nullable": true
}
},
"required": [
"id",
"name",
"is_default",
"template",
"template_client_tags",
"template_priority",
"created_at",
"updated_at",
"draft_version_id",
"published_version_id",
"public_config_id"
]
}
}
},
"required": [
"automator_configs"
]
}
POST /automator_configs¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
Request body
{
"name": "string",
"description": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"public_config_id": 0,
"study_schedules": [
{}
],
"global_schedule_settings": {},
"global_update_settings": {},
"updates": {}
}
Schema of the request body
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; not part of the delivered document"
},
"study_schedules": {
"type": "array",
"items": {
"type": "object"
}
},
"global_schedule_settings": {
"type": "object"
},
"global_update_settings": {
"type": "object"
},
"updates": {
"type": "object"
}
},
"required": [
"name",
"public_config_id"
]
}
Response 201 Created
{
"automator_config": {
"id": 0,
"name": "string",
"description": "string",
"import_source": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"created_at": "string",
"updated_at": "string",
"draft_version_id": 0,
"published_version_id": 0,
"public_config_id": 0,
"public_config_name": "string",
"published_public_config_id": 0,
"published_public_config_name": "string",
"draft_revision": 0,
"published_revision": 0,
"draft_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"published_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"revisions": [
{
"id": 0,
"revision": 0,
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
}
],
"delivered_client_count": 0,
"delivered_clients": [
{
"id": 0,
"uuid": "string",
"label": "string",
"last_seen_at": "2026-01-15T10:30:00Z"
}
],
"warnings": [
"string"
]
}
}
Schema of the response body
{
"type": "object",
"properties": {
"automator_config": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"import_source": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"draft_version_id": {
"type": "integer",
"nullable": true
},
"published_version_id": {
"type": "integer",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules of the draft, or else of the published version, use"
},
"public_config_name": {
"type": "string"
},
"published_public_config_id": {
"type": "integer",
"description": "The measurement config that clients get with the published version",
"nullable": true
},
"published_public_config_name": {
"type": "string",
"nullable": true
},
"draft_revision": {
"type": "integer",
"nullable": true
},
"published_revision": {
"type": "integer",
"nullable": true
},
"draft_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"published_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"revisions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data_hash",
"created_at",
"updated_at",
"published"
]
}
},
"delivered_client_count": {
"type": "integer",
"description": "Managed clients that get this config at their next check"
},
"delivered_clients": {
"type": "array",
"description": "Managed clients that get this config at their next check, sorted by label",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"uuid": {
"type": "string"
},
"label": {
"type": "string",
"nullable": true
},
"last_seen_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"example": "2026-01-15T10:30:00Z"
}
},
"required": [
"id",
"uuid",
"label",
"last_seen_at"
]
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"is_default",
"template",
"template_client_tags",
"template_priority",
"created_at",
"updated_at",
"draft_version_id",
"published_version_id",
"public_config_id",
"revisions",
"warnings",
"delivered_client_count",
"delivered_clients"
]
}
},
"required": [
"automator_config"
]
}
POST /automator_configs/import¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
Request body
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.
Schema of the request body
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"document": {
"type": "object"
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use. Without it, the default measurement config if it has all scheduled studies, or else the only measurement config that has them"
}
},
"required": [
"name",
"document"
]
}
Response 200 OK
{
"automator_config": {
"id": 0,
"name": "string",
"description": "string",
"import_source": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"created_at": "string",
"updated_at": "string",
"draft_version_id": 0,
"published_version_id": 0,
"public_config_id": 0,
"public_config_name": "string",
"published_public_config_id": 0,
"published_public_config_name": "string",
"draft_revision": 0,
"published_revision": 0,
"draft_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"published_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"revisions": [
{
"id": 0,
"revision": 0,
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
}
],
"delivered_client_count": 0,
"delivered_clients": [
{
"id": 0,
"uuid": "string",
"label": "string",
"last_seen_at": "2026-01-15T10:30:00Z"
}
],
"warnings": [
"string"
]
},
"import": {
"study_descriptions": [
{
"study_id": "string",
"action": "created",
"study_description_id": 0,
"name": "string",
"study_description_version_id": 0,
"revision": 0,
"from_revision": 0
}
],
"service_credentials": [
{
"service": "string",
"action": "created",
"service_credential_id": 0,
"reason": "string"
}
],
"warnings": [
"string"
]
}
}
Schema of the response body
{
"type": "object",
"properties": {
"automator_config": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"import_source": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"draft_version_id": {
"type": "integer",
"nullable": true
},
"published_version_id": {
"type": "integer",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules of the draft, or else of the published version, use"
},
"public_config_name": {
"type": "string"
},
"published_public_config_id": {
"type": "integer",
"description": "The measurement config that clients get with the published version",
"nullable": true
},
"published_public_config_name": {
"type": "string",
"nullable": true
},
"draft_revision": {
"type": "integer",
"nullable": true
},
"published_revision": {
"type": "integer",
"nullable": true
},
"draft_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"published_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"revisions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data_hash",
"created_at",
"updated_at",
"published"
]
}
},
"delivered_client_count": {
"type": "integer",
"description": "Managed clients that get this config at their next check"
},
"delivered_clients": {
"type": "array",
"description": "Managed clients that get this config at their next check, sorted by label",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"uuid": {
"type": "string"
},
"label": {
"type": "string",
"nullable": true
},
"last_seen_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"example": "2026-01-15T10:30:00Z"
}
},
"required": [
"id",
"uuid",
"label",
"last_seen_at"
]
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"is_default",
"template",
"template_client_tags",
"template_priority",
"created_at",
"updated_at",
"draft_version_id",
"published_version_id",
"public_config_id",
"revisions",
"warnings",
"delivered_client_count",
"delivered_clients"
]
},
"import": {
"type": "object",
"properties": {
"study_descriptions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"study_id": {
"type": "string"
},
"action": {
"type": "string",
"enum": [
"created",
"reused",
"version_added"
]
},
"study_description_id": {
"type": "integer"
},
"name": {
"type": "string"
},
"study_description_version_id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"from_revision": {
"type": "integer",
"nullable": true
}
},
"required": [
"study_id",
"action",
"study_description_id",
"name",
"study_description_version_id",
"revision",
"from_revision"
]
}
},
"service_credentials": {
"type": "array",
"items": {
"type": "object",
"properties": {
"service": {
"type": "string"
},
"action": {
"type": "string",
"enum": [
"created",
"skipped"
]
},
"service_credential_id": {
"type": "integer",
"nullable": true
},
"reason": {
"type": "string",
"nullable": true
}
},
"required": [
"service",
"action",
"service_credential_id",
"reason"
]
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"study_descriptions",
"service_credentials",
"warnings"
]
}
},
"required": [
"automator_config",
"import"
]
}
GET /automator_configs/{id}¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
id |
path | string | No |
Response 200 OK
{
"automator_config": {
"id": 0,
"name": "string",
"description": "string",
"import_source": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"created_at": "string",
"updated_at": "string",
"draft_version_id": 0,
"published_version_id": 0,
"public_config_id": 0,
"public_config_name": "string",
"published_public_config_id": 0,
"published_public_config_name": "string",
"draft_revision": 0,
"published_revision": 0,
"draft_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"published_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"revisions": [
{
"id": 0,
"revision": 0,
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
}
],
"delivered_client_count": 0,
"delivered_clients": [
{
"id": 0,
"uuid": "string",
"label": "string",
"last_seen_at": "2026-01-15T10:30:00Z"
}
],
"warnings": [
"string"
]
}
}
Schema of the response body
{
"type": "object",
"properties": {
"automator_config": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"import_source": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"draft_version_id": {
"type": "integer",
"nullable": true
},
"published_version_id": {
"type": "integer",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules of the draft, or else of the published version, use"
},
"public_config_name": {
"type": "string"
},
"published_public_config_id": {
"type": "integer",
"description": "The measurement config that clients get with the published version",
"nullable": true
},
"published_public_config_name": {
"type": "string",
"nullable": true
},
"draft_revision": {
"type": "integer",
"nullable": true
},
"published_revision": {
"type": "integer",
"nullable": true
},
"draft_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"published_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"revisions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data_hash",
"created_at",
"updated_at",
"published"
]
}
},
"delivered_client_count": {
"type": "integer",
"description": "Managed clients that get this config at their next check"
},
"delivered_clients": {
"type": "array",
"description": "Managed clients that get this config at their next check, sorted by label",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"uuid": {
"type": "string"
},
"label": {
"type": "string",
"nullable": true
},
"last_seen_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"example": "2026-01-15T10:30:00Z"
}
},
"required": [
"id",
"uuid",
"label",
"last_seen_at"
]
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"is_default",
"template",
"template_client_tags",
"template_priority",
"created_at",
"updated_at",
"draft_version_id",
"published_version_id",
"public_config_id",
"revisions",
"warnings",
"delivered_client_count",
"delivered_clients"
]
}
},
"required": [
"automator_config"
]
}
PUT /automator_configs/{id}¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
id |
path | string | No |
Request body
{
"name": "string",
"description": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"public_config_id": 0,
"study_schedules": [
{}
],
"global_schedule_settings": {},
"global_update_settings": {},
"updates": {}
}
Schema of the request body
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use. A change creates a draft; clients get the new measurement config when it is published. Not part of the delivered document"
},
"study_schedules": {
"type": "array",
"items": {
"type": "object"
}
},
"global_schedule_settings": {
"type": "object"
},
"global_update_settings": {
"type": "object"
},
"updates": {
"type": "object"
}
},
"required": []
}
Response 200 OK
{
"automator_config": {
"id": 0,
"name": "string",
"description": "string",
"import_source": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"created_at": "string",
"updated_at": "string",
"draft_version_id": 0,
"published_version_id": 0,
"public_config_id": 0,
"public_config_name": "string",
"published_public_config_id": 0,
"published_public_config_name": "string",
"draft_revision": 0,
"published_revision": 0,
"draft_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"published_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"revisions": [
{
"id": 0,
"revision": 0,
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
}
],
"delivered_client_count": 0,
"delivered_clients": [
{
"id": 0,
"uuid": "string",
"label": "string",
"last_seen_at": "2026-01-15T10:30:00Z"
}
],
"warnings": [
"string"
]
}
}
Schema of the response body
{
"type": "object",
"properties": {
"automator_config": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"import_source": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"draft_version_id": {
"type": "integer",
"nullable": true
},
"published_version_id": {
"type": "integer",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules of the draft, or else of the published version, use"
},
"public_config_name": {
"type": "string"
},
"published_public_config_id": {
"type": "integer",
"description": "The measurement config that clients get with the published version",
"nullable": true
},
"published_public_config_name": {
"type": "string",
"nullable": true
},
"draft_revision": {
"type": "integer",
"nullable": true
},
"published_revision": {
"type": "integer",
"nullable": true
},
"draft_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"published_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"revisions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data_hash",
"created_at",
"updated_at",
"published"
]
}
},
"delivered_client_count": {
"type": "integer",
"description": "Managed clients that get this config at their next check"
},
"delivered_clients": {
"type": "array",
"description": "Managed clients that get this config at their next check, sorted by label",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"uuid": {
"type": "string"
},
"label": {
"type": "string",
"nullable": true
},
"last_seen_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"example": "2026-01-15T10:30:00Z"
}
},
"required": [
"id",
"uuid",
"label",
"last_seen_at"
]
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"is_default",
"template",
"template_client_tags",
"template_priority",
"created_at",
"updated_at",
"draft_version_id",
"published_version_id",
"public_config_id",
"revisions",
"warnings",
"delivered_client_count",
"delivered_clients"
]
}
},
"required": [
"automator_config"
]
}
DELETE /automator_configs/{id}¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
id |
path | string | No |
Response 200 OK
GET /automator_configs/{id}/preview¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
id |
path | string | No |
Response 200 OK
{
"automator_config": {
"id": 0,
"version_id": 0,
"revision": 0,
"published": true,
"format_version": 0,
"client_id": 0,
"document": {},
"warnings": [
"string"
]
}
}
Schema of the response body
{
"type": "object",
"properties": {
"automator_config": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"version_id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"published": {
"type": "boolean"
},
"format_version": {
"type": "integer",
"enum": [
1,
2
]
},
"client_id": {
"type": "integer",
"description": "The client the document was composed for, if any",
"nullable": true
},
"document": {
"type": "object"
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"version_id",
"revision",
"published",
"format_version",
"client_id",
"document",
"warnings"
]
}
},
"required": [
"automator_config"
]
}
POST /automator_configs/{id}/template_matches¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
id |
path | string | No |
Request body
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.
Response 200 OK
{
"changes": [
{
"client_id": 0,
"client_label": "string",
"from": {
"id": 0,
"name": "string"
},
"to": {
"id": 0,
"name": "string"
}
}
]
}
Schema of the response body
{
"type": "object",
"properties": {
"changes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"client_id": {
"type": "integer"
},
"client_label": {
"type": "string",
"nullable": true
},
"from": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"name"
],
"additionalProperties": false,
"nullable": true
},
"to": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"name"
],
"additionalProperties": false,
"nullable": true
}
},
"required": [
"client_id",
"client_label",
"from",
"to"
],
"additionalProperties": false
}
}
},
"required": [
"changes"
],
"additionalProperties": false
}
POST /automator_configs/{id}/publish¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
id |
path | string | No |
Response 200 OK
{
"automator_config": {
"id": 0,
"name": "string",
"description": "string",
"import_source": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"created_at": "string",
"updated_at": "string",
"draft_version_id": 0,
"published_version_id": 0,
"public_config_id": 0,
"public_config_name": "string",
"published_public_config_id": 0,
"published_public_config_name": "string",
"draft_revision": 0,
"published_revision": 0,
"draft_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"published_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"revisions": [
{
"id": 0,
"revision": 0,
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
}
],
"delivered_client_count": 0,
"delivered_clients": [
{
"id": 0,
"uuid": "string",
"label": "string",
"last_seen_at": "2026-01-15T10:30:00Z"
}
],
"warnings": [
"string"
]
}
}
Schema of the response body
{
"type": "object",
"properties": {
"automator_config": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"import_source": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"draft_version_id": {
"type": "integer",
"nullable": true
},
"published_version_id": {
"type": "integer",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules of the draft, or else of the published version, use"
},
"public_config_name": {
"type": "string"
},
"published_public_config_id": {
"type": "integer",
"description": "The measurement config that clients get with the published version",
"nullable": true
},
"published_public_config_name": {
"type": "string",
"nullable": true
},
"draft_revision": {
"type": "integer",
"nullable": true
},
"published_revision": {
"type": "integer",
"nullable": true
},
"draft_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"published_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"revisions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data_hash",
"created_at",
"updated_at",
"published"
]
}
},
"delivered_client_count": {
"type": "integer",
"description": "Managed clients that get this config at their next check"
},
"delivered_clients": {
"type": "array",
"description": "Managed clients that get this config at their next check, sorted by label",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"uuid": {
"type": "string"
},
"label": {
"type": "string",
"nullable": true
},
"last_seen_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"example": "2026-01-15T10:30:00Z"
}
},
"required": [
"id",
"uuid",
"label",
"last_seen_at"
]
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"is_default",
"template",
"template_client_tags",
"template_priority",
"created_at",
"updated_at",
"draft_version_id",
"published_version_id",
"public_config_id",
"revisions",
"warnings",
"delivered_client_count",
"delivered_clients"
]
}
},
"required": [
"automator_config"
]
}
POST /automator_configs/{id}/rollback¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
id |
path | string | No |
Request body
Response 200 OK
{
"automator_config": {
"id": 0,
"name": "string",
"description": "string",
"import_source": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"created_at": "string",
"updated_at": "string",
"draft_version_id": 0,
"published_version_id": 0,
"public_config_id": 0,
"public_config_name": "string",
"published_public_config_id": 0,
"published_public_config_name": "string",
"draft_revision": 0,
"published_revision": 0,
"draft_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"published_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"revisions": [
{
"id": 0,
"revision": 0,
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
}
],
"delivered_client_count": 0,
"delivered_clients": [
{
"id": 0,
"uuid": "string",
"label": "string",
"last_seen_at": "2026-01-15T10:30:00Z"
}
],
"warnings": [
"string"
]
}
}
Schema of the response body
{
"type": "object",
"properties": {
"automator_config": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"import_source": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"draft_version_id": {
"type": "integer",
"nullable": true
},
"published_version_id": {
"type": "integer",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules of the draft, or else of the published version, use"
},
"public_config_name": {
"type": "string"
},
"published_public_config_id": {
"type": "integer",
"description": "The measurement config that clients get with the published version",
"nullable": true
},
"published_public_config_name": {
"type": "string",
"nullable": true
},
"draft_revision": {
"type": "integer",
"nullable": true
},
"published_revision": {
"type": "integer",
"nullable": true
},
"draft_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"published_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"revisions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data_hash",
"created_at",
"updated_at",
"published"
]
}
},
"delivered_client_count": {
"type": "integer",
"description": "Managed clients that get this config at their next check"
},
"delivered_clients": {
"type": "array",
"description": "Managed clients that get this config at their next check, sorted by label",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"uuid": {
"type": "string"
},
"label": {
"type": "string",
"nullable": true
},
"last_seen_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"example": "2026-01-15T10:30:00Z"
}
},
"required": [
"id",
"uuid",
"label",
"last_seen_at"
]
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"is_default",
"template",
"template_client_tags",
"template_priority",
"created_at",
"updated_at",
"draft_version_id",
"published_version_id",
"public_config_id",
"revisions",
"warnings",
"delivered_client_count",
"delivered_clients"
]
}
},
"required": [
"automator_config"
]
}
POST /automator_configs/{id}/duplicate¶
Input parameters
| Parameter | In | Type | Default | Nullable | Description |
|---|---|---|---|---|---|
ApiKeyAuth |
header | string | N/A | No | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |
id |
path | string | No |
Response 200 OK
{
"automator_config": {
"id": 0,
"name": "string",
"description": "string",
"import_source": "string",
"is_default": true,
"template": true,
"template_client_tags": [
"string"
],
"template_priority": 0,
"created_at": "string",
"updated_at": "string",
"draft_version_id": 0,
"published_version_id": 0,
"public_config_id": 0,
"public_config_name": "string",
"published_public_config_id": 0,
"published_public_config_name": "string",
"draft_revision": 0,
"published_revision": 0,
"draft_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"published_version": {
"id": 0,
"revision": 0,
"data": {},
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
},
"revisions": [
{
"id": 0,
"revision": 0,
"data_hash": "string",
"created_at": "string",
"updated_at": "string",
"created_by_id": 0,
"created_by_name": "string",
"published_at": "string",
"published_by_id": 0,
"published_by_name": "string",
"public_config_id": 0,
"public_config_name": "string",
"published": true
}
],
"delivered_client_count": 0,
"delivered_clients": [
{
"id": 0,
"uuid": "string",
"label": "string",
"last_seen_at": "2026-01-15T10:30:00Z"
}
],
"warnings": [
"string"
]
}
}
Schema of the response body
{
"type": "object",
"properties": {
"automator_config": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"import_source": {
"type": "string",
"nullable": true
},
"is_default": {
"type": "boolean"
},
"template": {
"type": "boolean"
},
"template_client_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"template_priority": {
"type": "integer"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"draft_version_id": {
"type": "integer",
"nullable": true
},
"published_version_id": {
"type": "integer",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules of the draft, or else of the published version, use"
},
"public_config_name": {
"type": "string"
},
"published_public_config_id": {
"type": "integer",
"description": "The measurement config that clients get with the published version",
"nullable": true
},
"published_public_config_name": {
"type": "string",
"nullable": true
},
"draft_revision": {
"type": "integer",
"nullable": true
},
"published_revision": {
"type": "integer",
"nullable": true
},
"draft_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"published_version": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data": {
"type": "object"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data",
"data_hash",
"created_at",
"updated_at",
"published"
],
"nullable": true
},
"revisions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"revision": {
"type": "integer"
},
"data_hash": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"created_by_id": {
"type": "integer",
"nullable": true
},
"created_by_name": {
"type": "string",
"nullable": true
},
"published_at": {
"type": "string",
"nullable": true
},
"published_by_id": {
"type": "integer",
"nullable": true
},
"published_by_name": {
"type": "string",
"nullable": true
},
"public_config_id": {
"type": "integer",
"description": "The measurement config whose studies the schedules use; null when it was deleted",
"nullable": true
},
"public_config_name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
}
},
"required": [
"id",
"revision",
"data_hash",
"created_at",
"updated_at",
"published"
]
}
},
"delivered_client_count": {
"type": "integer",
"description": "Managed clients that get this config at their next check"
},
"delivered_clients": {
"type": "array",
"description": "Managed clients that get this config at their next check, sorted by label",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"uuid": {
"type": "string"
},
"label": {
"type": "string",
"nullable": true
},
"last_seen_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"example": "2026-01-15T10:30:00Z"
}
},
"required": [
"id",
"uuid",
"label",
"last_seen_at"
]
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"name",
"is_default",
"template",
"template_client_tags",
"template_priority",
"created_at",
"updated_at",
"draft_version_id",
"published_version_id",
"public_config_id",
"revisions",
"warnings",
"delivered_client_count",
"delivered_clients"
]
}
},
"required": [
"automator_config"
]
}
Schemas¶
AutomatorConfigCreateData¶
| Name | Type |
|---|---|
description |
string| null |
global_schedule_settings |
|
global_update_settings |
|
is_default |
boolean |
name |
string |
public_config_id |
integer |
study_schedules |
Array<> |
template |
boolean |
template_client_tags |
Array<string> |
template_priority |
integer |
updates |
AutomatorConfigCreateResponse¶
| Name | Type |
|---|---|
automator_config |
Properties: id, name, description, import_source, is_default, template, template_client_tags, template_priority, created_at, updated_at, draft_version_id, published_version_id, public_config_id, public_config_name, published_public_config_id, published_public_config_name, draft_revision, published_revision, draft_version, published_version, revisions, delivered_client_count, delivered_clients, warnings |
AutomatorConfigDestroyResponse¶
AutomatorConfigDuplicateResponse¶
| Name | Type |
|---|---|
automator_config |
Properties: id, name, description, import_source, is_default, template, template_client_tags, template_priority, created_at, updated_at, draft_version_id, published_version_id, public_config_id, public_config_name, published_public_config_id, published_public_config_name, draft_revision, published_revision, draft_version, published_version, revisions, delivered_client_count, delivered_clients, warnings |
AutomatorConfigImportData¶
| Name | Type |
|---|---|
document |
|
name |
string |
public_config_id |
integer |
AutomatorConfigImportResponse¶
| Name | Type |
|---|---|
automator_config |
Properties: id, name, description, import_source, is_default, template, template_client_tags, template_priority, created_at, updated_at, draft_version_id, published_version_id, public_config_id, public_config_name, published_public_config_id, published_public_config_name, draft_revision, published_revision, draft_version, published_version, revisions, delivered_client_count, delivered_clients, warnings |
import |
Properties: study_descriptions, service_credentials, warnings |
AutomatorConfigIndexResponse¶
| Name | Type |
|---|---|
automator_configs |
Array<Properties: id, name, description, import_source, is_default, template, template_client_tags, template_priority, created_at, updated_at, draft_version_id, published_version_id, public_config_id, public_config_name, published_public_config_id, published_public_config_name, draft_revision, published_revision> |
AutomatorConfigPreviewResponse¶
| Name | Type |
|---|---|
automator_config |
Properties: id, version_id, revision, published, format_version, client_id, document, warnings |
AutomatorConfigPublishResponse¶
| Name | Type |
|---|---|
automator_config |
Properties: id, name, description, import_source, is_default, template, template_client_tags, template_priority, created_at, updated_at, draft_version_id, published_version_id, public_config_id, public_config_name, published_public_config_id, published_public_config_name, draft_revision, published_revision, draft_version, published_version, revisions, delivered_client_count, delivered_clients, warnings |
AutomatorConfigRollbackData¶
| Name | Type |
|---|---|
version_id |
integer |
AutomatorConfigRollbackResponse¶
| Name | Type |
|---|---|
automator_config |
Properties: id, name, description, import_source, is_default, template, template_client_tags, template_priority, created_at, updated_at, draft_version_id, published_version_id, public_config_id, public_config_name, published_public_config_id, published_public_config_name, draft_revision, published_revision, draft_version, published_version, revisions, delivered_client_count, delivered_clients, warnings |
AutomatorConfigShowResponse¶
| Name | Type |
|---|---|
automator_config |
Properties: id, name, description, import_source, is_default, template, template_client_tags, template_priority, created_at, updated_at, draft_version_id, published_version_id, public_config_id, public_config_name, published_public_config_id, published_public_config_name, draft_revision, published_revision, draft_version, published_version, revisions, delivered_client_count, delivered_clients, warnings |
AutomatorConfigTemplateMatchesData¶
| Name | Type |
|---|---|
template |
boolean |
template_client_tags |
Array<string> |
template_priority |
integer |
AutomatorConfigTemplateMatchesResponse¶
| Name | Type |
|---|---|
changes |
Array<Properties: client_id, client_label, from, to> |
AutomatorConfigUpdateData¶
| Name | Type |
|---|---|
description |
string| null |
global_schedule_settings |
|
global_update_settings |
|
is_default |
boolean |
name |
string |
public_config_id |
integer |
study_schedules |
Array<> |
template |
boolean |
template_client_tags |
Array<string> |
template_priority |
integer |
updates |
AutomatorConfigUpdateResponse¶
| Name | Type |
|---|---|
automator_config |
Properties: id, name, description, import_source, is_default, template, template_client_tags, template_priority, created_at, updated_at, draft_version_id, published_version_id, public_config_id, public_config_name, published_public_config_id, published_public_config_name, draft_revision, published_revision, draft_version, published_version, revisions, delivered_client_count, delivered_clients, warnings |
Security schemes¶
| Name | Type | Scheme | Description |
|---|---|---|---|
| ApiKeyAuth | apiKey | API key used on every request. Create keys in the Surfmeter Dashboard under Keys → Surfmeter API Keys. |