{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/communicate-so/json-schema/communicate-so-list-workspace-agents-response-schema.json",
  "title": "listWorkspaceAgentsResponse",
  "x-generated": "2026-10-29",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/communicate-so-openapi.json#/components/schemas/listWorkspaceAgentsResponse",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "minLength": 1
      },
      "workspaceId": {
        "type": "string",
        "minLength": 1
      },
      "name": {
        "type": "string"
      },
      "systemPrompt": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ]
      },
      "status": {
        "type": "string",
        "enum": [
          "active",
          "inactive",
          "draft"
        ]
      },
      "inTransfer": {
        "type": "boolean"
      },
      "model": {
        "type": "string"
      },
      "temperature": {
        "type": "number"
      },
      "rateLimitPerMinute": {
        "type": "integer",
        "minimum": -9007199254740991,
        "maximum": 9007199254740991
      },
      "allowedDomains": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "widgetConfig": {
        "type": "object",
        "properties": {
          "accentColor": {
            "type": "string",
            "pattern": "^#[0-9a-fA-F]{6}$"
          },
          "displayName": {
            "type": "string",
            "maxLength": 60
          },
          "greeting": {
            "type": "string",
            "maxLength": 500
          },
          "suggestedPrompts": {
            "maxItems": 6,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 120
            }
          },
          "promptGroups": {
            "maxItems": 4,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "title": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 80
                },
                "prompts": {
                  "minItems": 1,
                  "maxItems": 6,
                  "type": "array",
                  "items": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 120
                  }
                }
              },
              "required": [
                "title",
                "prompts"
              ],
              "additionalProperties": false
            }
          },
          "labels": {
            "type": "object",
            "properties": {
              "locale": {
                "type": "string",
                "enum": [
                  "en",
                  "es",
                  "fr",
                  "de",
                  "pt"
                ]
              },
              "composerPlaceholder": {
                "type": "string",
                "maxLength": 120
              },
              "sendButton": {
                "type": "string",
                "maxLength": 40
              },
              "openButton": {
                "type": "string",
                "maxLength": 80
              },
              "poweredBy": {
                "type": "string",
                "maxLength": 80
              }
            },
            "additionalProperties": false
          },
          "messagePlaceholder": {
            "type": "string",
            "maxLength": 120
          },
          "privacyPolicyUrl": {
            "format": "uri",
            "description": "A URL with HTTP or HTTPS protocol.",
            "type": "string",
            "maxLength": 500
          },
          "dictationEnabled": {
            "type": "boolean"
          },
          "showPoweredBy": {
            "type": "boolean"
          },
          "showTicketCard": {
            "type": "boolean"
          },
          "allowEndChat": {
            "type": "boolean"
          },
          "assistantBubbleStyle": {
            "type": "string",
            "enum": [
              "soft",
              "white-accent"
            ]
          },
          "bubblePosition": {
            "type": "string",
            "enum": [
              "right",
              "left"
            ]
          },
          "panelHeight": {
            "type": "integer",
            "minimum": 400,
            "maximum": 1000
          },
          "panelWidth": {
            "type": "string",
            "enum": [
              "default",
              "wide",
              "extra-wide"
            ]
          },
          "socialLinks": {
            "maxItems": 8,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "label": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 40
                },
                "url": {
                  "format": "uri",
                  "description": "A URL with HTTP or HTTPS protocol.",
                  "type": "string",
                  "maxLength": 500
                }
              },
              "required": [
                "label",
                "url"
              ],
              "additionalProperties": false
            }
          },
          "showSupportEmail": {
            "type": "boolean"
          },
          "chatPageTheme": {
            "type": "string",
            "enum": [
              "light",
              "dark",
              "both"
            ]
          },
          "widgetEnabled": {
            "type": "boolean"
          },
          "preChatForm": {
            "type": "object",
            "properties": {
              "enabled": {
                "type": "boolean"
              },
              "fields": {
                "maxItems": 8,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "pattern": "^[a-z0-9_-]{1,40}$"
                    },
                    "label": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 80
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "email",
                        "name",
                        "text",
                        "select"
                      ]
                    },
                    "required": {
                      "type": "boolean"
                    },
                    "options": {
                      "minItems": 1,
                      "maxItems": 12,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 80
                      }
                    },
                    "showWhen": {
                      "type": "object",
                      "properties": {
                        "fieldId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 40
                        },
                        "equals": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 80
                        }
                      },
                      "required": [
                        "fieldId",
                        "equals"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "id",
                    "label",
                    "type",
                    "required"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "enabled",
              "fields"
            ],
            "additionalProperties": false
          },
          "offlineForm": {
            "type": "object",
            "properties": {
              "enabled": {
                "type": "boolean"
              }
            },
            "required": [
              "enabled"
            ],
            "additionalProperties": false
          }
        },
        "additionalProperties": false
      },
      "notifyConfig": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "maxLength": 254,
            "format": "email",
            "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
          },
          "onNewConversation": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "voiceConfig": {
        "allOf": [
          {
            "if": {
              "properties": {
                "enabled": {
                  "const": true
                }
              },
              "required": [
                "enabled"
              ]
            },
            "then": {
              "required": [
                "voiceId"
              ]
            }
          }
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "voiceId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "language": {
            "type": "string",
            "maxLength": 12,
            "pattern": "^[a-z]{2,3}(?:-[A-Z]{2})?$"
          },
          "consentCopy": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1000
          },
          "maxDurationSeconds": {
            "type": "integer",
            "minimum": 30,
            "maximum": 3600
          }
        },
        "required": [
          "enabled",
          "language",
          "consentCopy",
          "maxDurationSeconds"
        ],
        "additionalProperties": false
      },
      "learningConfig": {
        "type": "object",
        "properties": {
          "captureEnabled": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "escalationTeamId": {
        "anyOf": [
          {
            "type": "string",
            "minLength": 1
          },
          {
            "type": "null"
          }
        ]
      },
      "supportEmail": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ]
      },
      "website": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ]
      },
      "logoUrl": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ]
      },
      "chatPageEnabled": {
        "type": "boolean"
      },
      "chatPageBlockedAt": {
        "anyOf": [
          {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
          },
          {
            "type": "null"
          }
        ]
      },
      "indexable": {
        "type": "boolean"
      },
      "emailFromName": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ]
      },
      "deletionScheduledAt": {
        "anyOf": [
          {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
          },
          {
            "type": "null"
          }
        ]
      },
      "deletionRequestedBy": {
        "anyOf": [
          {
            "type": "string",
            "minLength": 1
          },
          {
            "type": "null"
          }
        ]
      },
      "createdAt": {
        "type": "string",
        "format": "date-time",
        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
      },
      "updatedAt": {
        "type": "string",
        "format": "date-time",
        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
      },
      "messageCount": {
        "type": "integer",
        "minimum": -9007199254740991,
        "maximum": 9007199254740991
      },
      "conversationCount": {
        "type": "integer",
        "minimum": -9007199254740991,
        "maximum": 9007199254740991
      },
      "sourceCount": {
        "type": "integer",
        "minimum": -9007199254740991,
        "maximum": 9007199254740991
      },
      "resolvedRate": {
        "anyOf": [
          {
            "type": "number"
          },
          {
            "type": "null"
          }
        ]
      }
    },
    "required": [
      "id",
      "workspaceId",
      "name",
      "systemPrompt",
      "status",
      "inTransfer",
      "model",
      "temperature",
      "rateLimitPerMinute",
      "allowedDomains",
      "widgetConfig",
      "notifyConfig",
      "voiceConfig",
      "learningConfig",
      "escalationTeamId",
      "supportEmail",
      "website",
      "logoUrl",
      "chatPageEnabled",
      "chatPageBlockedAt",
      "indexable",
      "emailFromName",
      "deletionScheduledAt",
      "deletionRequestedBy",
      "createdAt",
      "updatedAt",
      "messageCount",
      "conversationCount",
      "sourceCount",
      "resolvedRate"
    ],
    "additionalProperties": false
  }
}