Saasco logoSaasco logo
Saasco logoSaasco logo

Introduction

Quick StartWhat is Saasco?

Analytics

CRM

Email Marketing

Knowledge

Support

getGet WidgetpatchUpdate Widget Enabled

Projects

Widget

Get Widget

Returns the project's Support widget settings: whether the widget is enabled, branding, office hours, notifications, trusted domains, and authored tools. Authenticated; the same payload the dashboard settings page reads, including server-tool auth headers. Not the CORS-gated public widget payload visitors fetch.

GET
/projects/{projectId}/support/widget

Authorization

Authorization
AuthorizationBearer <token>

In: header

Path Parameters

projectIdrequiredstring

ID of the project whose widget settings to fetch.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://www.saasco.com/api/v2/projects/string/support/widget"
{
  "emailBranding": {
    "emailAvatarUrl": "string",
    "emailFooter": "string",
    "emailFromName": "string",
    "emailHeaderName": "string"
  },
  "enabled": true,
  "notifications": {
    "notificationMemberUserIds": [
      "string"
    ],
    "supportDomain": "string",
    "supportLocalPart": "string"
  },
  "officeHours": {
    "officeHoursEnabled": false,
    "officeHoursSchedule": {
      "property1": {
        "close": "string",
        "open": "string"
      },
      "property2": {
        "close": "string",
        "open": "string"
      }
    },
    "officeHoursTimezone": "string",
    "replyTime": "string"
  },
  "tools": [
    {
      "description": "string",
      "inputSchema": {
        "type": "object",
        "properties": {
          "property1": null,
          "property2": null
        },
        "required": [
          "string"
        ],
        "additionalProperties": null,
        "property1": null,
        "property2": null
      },
      "method": "GET",
      "contextParameters": [
        "string"
      ],
      "requestBody": "string",
      "endpoint": "string",
      "serverParameters": [
        {
          "name": "string",
          "source": "context",
          "attributeKey": "string",
          "value": "string",
          "fallback": "string"
        }
      ],
      "authType": "none",
      "authHeaderName": "string",
      "approval": "none",
      "contentType": "json",
      "responseFields": [
        {
          "path": "string",
          "included": true,
          "displayName": "string",
          "transformations": [
            {
              "from": "string",
              "to": "string"
            }
          ]
        }
      ],
      "descriptionParts": {
        "whatItDoes": "string",
        "whenToUse": "string",
        "whenNotToUse": "string"
      },
      "name": "string",
      "activationConditions": [
        {
          "field": "string",
          "operator": "IS_SET",
          "value": "string"
        }
      ],
      "requestHeaders": [
        {
          "key": "string",
          "value": "string"
        }
      ],
      "source": {
        "kind": "integration",
        "serviceName": "string",
        "catalogToolId": "string"
      },
      "responseExample": {
        "json": "string",
        "mode": "live"
      },
      "authSource": {
        "kind": "integration",
        "integrationId": "string",
        "serviceName": "string"
      },
      "enabled": true,
      "execution": "host",
      "status": "draft"
    }
  ],
  "trustedDomains": [
    "string"
  ],
  "widgetBranding": {
    "agentLabel": "string",
    "avatarUrl": "http://example.com",
    "greeting": "string",
    "suggestedQuestions": [
      "string"
    ],
    "teamDescription": "string",
    "workspaceName": "string"
  }
}
{
  "code": "BAD_REQUEST",
  "message": "Invalid input data",
  "issues": []
}
{
  "code": "UNAUTHORIZED",
  "message": "Authorization not provided",
  "issues": []
}
{
  "code": "FORBIDDEN",
  "message": "Insufficient access",
  "issues": []
}
{
  "code": "NOT_FOUND",
  "message": "Not found",
  "issues": []
}
{
  "code": "INTERNAL_SERVER_ERROR",
  "message": "Internal server error",
  "issues": []
}

Extract Brand Info

Fetches a website and infers its branding (logo URL and primary colour) for pre-filling help-center theming instead of asking the user to enter it by hand. Both fields are best-effort and either may be absent if nothing usable is found.

Update Widget Enabled

Turns the visitor-facing Support widget on or off. The analytics SDK probes this on every install and only injects the loader when enabled.