---
title: "Get signal settings"
method: GET
path: "/api/signal-settings"
tags: ["signal_settings"]
---

# Get signal settings

`GET /api/signal-settings`

## Request

- Base URL: `https://beta.getsales.io/signals/v1`
- URL: `https://beta.getsales.io/signals/v1/api/signal-settings`
- Auth: HTTP bearer and API key in header `Team-SID`

The team's signal settings, one row per team: website_link_codes (the master switch for the code in every link the send paths emit), profile_views_enabled (whether the premium sender profiles' "Who viewed your profile" lists are read once a day) and profile_views_excluded_sender_profiles (the sender profiles kept out of that). The first read creates the row, so it always answers.

Contract:
- MCP tool `get_signal_settings`, registry package `mcp.signals/signal_settings`, mount `signals.website`.
- Operation `get`, response envelope `get`.
- Flags: read only.

## Response `200`

`get` success envelope.

- GetSignalSettingsResponse
  - `success` true, required
  - `operation` 'get', required
  - `item` object, required
    - `sid` string, required: Signal setting sid (sg_st_...). Stable for the life of the team.
    - `team_sid` string, required: Owning team (ts_tm_..., external: gs.service.id). Exactly one row per team.
    - `website_link_codes` boolean, required: The master switch for the code in the links the send paths emit (the company's or the person's, by the site's identification). Off: no link of the team is coded, whatever the sites say. On (default): a link is coded when its site is verified, its identification_confirmation covers its level and the site's own link_codes_enabled is on.
    - `profile_views_enabled` boolean, required: The P0 switch of the LinkedIn leg. On (default): every live sender profile with a LinkedIn account and a premium plan has its "Who viewed your profile" list read once a day, but the sender profiles in profile_views_excluded_sender_profiles. Off: no sender profile's list is read.
    - `profile_views_excluded_sender_profiles` string[], required: The sender profiles kept out of the profile view collection (sender profile sids, ub_sp_...); [] by default, at most 500.
    - `created_at` string, required: ISO 8601 UTC, the first read.
    - `updated_at` string, required: ISO 8601 UTC.
  - `included` object, required
  - `includes` string[], required
  - `meta` object, required
    - `trace_id` string, required: UUID v7; same 128-bit value as the X-Trace-Id header.
    - `span_id` string, required: 16 hex chars, root span of this request.
    - `timestamp` string, required: ISO 8601 UTC (Y-m-dTH:i:sZ), response time.
    - `duration_ms` integer, required: Server-side wall clock.
    - `team_sid` string, nullable: The team this call ran in (the token team, or the team_sid override). Null when unauthenticated; absent from pre-2026-08-20 backends.
    - `actor_type` string, nullable: user | agent | api_key | system. Null when unauthenticated; absent from pre-2026-08-20 backends.

## Other responses

- `4XX`: MCP error envelope. `error.code` is one of validation_failed, nothing_to_update, not_found, relation_not_found, invalid_transition, limit_exceeded, payment_required, duplicate_rejected, conflict, delete_blocked, unauthorized, forbidden, rate_limited, not_implemented.
- `5XX`: MCP error envelope with `error.code` internal_error or service_unavailable.

---

[API](https://skmtc.dev/getsales/apis/getsales-public-contract-gs-service-signals.md) - [All operations](https://skmtc.dev/getsales/apis/getsales-public-contract-gs-service-signals/llms.txt) - [OpenAPI document](https://skmtc.dev/getsales/apis/getsales-public-contract-gs-service-signals/revisions/310ca5d2219d?raw)
