API v3 is live and in beta: expect possible malfunctions and breaking changes in the coming days. If you find a bug, please report it to your Sillage contact.

Restore a list

Bring a deleted list back.

Brings a deleted list back, with the members and settings it had. Restoring a monitored list starts monitoring, and charging, again right away. Calling it on a list that was never deleted changes nothing and still succeeds.

Route

POST/api/v3/lists/{kind}/{list_id}/restore

Access modes

Use a workspace API key. The workspace is inferred from the key.

Authorization: Bearer sk_live_...

Path parameters

ParameterTypeDescription
kindstringcompany or profile. It matches the kind of the list.
list_idintegerID of the list.

Example request

curl -X POST "https://api.getsillage.com/api/v3/lists/company/12/restore" \
  -H "Authorization: Bearer $SILLAGE_API_KEY"

Success response

Status: 200 OK

{
  "data": {
    "id": 12,
    "kind": "company",
    "type": "customer",
    "name": "Key customers",
    "description": "The accounts we want to keep watching",
    "member_count": 48,
    "bound_signal_setup_count": 0,
    "tier": null,
    "signal_buckets": ["essential"],
    "monitoring_by_persona": [
      { "persona_id": 7, "monitored_count": 48, "not_covered_count": 0 }
    ],
    "mode": "manual",
    "archived": false,
    "archived_at": null,
    "persona_ids": [7],
    "is_deletable": true,
    "not_deletable_reason": null
  }
}

Response fields

FieldTypeDescription
data.idintegerID of the list.
data.kindstringcompany or profile. Follows from type, read-only.
data.typestringWhat the list is for: competitor, partner, customer, prospect, influencer, champion or employee.
data.namestringName of the list.
data.descriptionstring or nullDescription of the list.
data.member_countintegerHow many companies or people are on the list.
data.bound_signal_setup_countintegerHow many signal setups and older app signals use this list.
data.tierinteger or nullTier of the list, 1 to 3, on prospect lists. null on every other type.
data.signal_bucketsarray of string or null["essential"] when every account of the list is monitored, including the accounts that join later. null when the whole list is not monitored. Only customer and prospect lists carry it. An archived list keeps its value, restored when you unarchive it.
data.monitoring_by_personaarray of object or nullOne entry per persona the list is watched for: its attached personas, or every active persona when it is attached to none. null on lists that are not customer or prospect lists. Left out with concise.
data.monitoring_by_persona[].persona_idintegerID of the persona.
data.monitoring_by_persona[].monitored_countintegerAccounts of the list monitored, and paid for, in this persona. 0 while the list is archived.
data.monitoring_by_persona[].not_covered_countintegerAccounts of the list with monitoring on in this persona but not paid for. 0 while the list is archived.
data.modestringmanual or smart. See Smart lists. Read-only.
data.archivedbooleantrue while the list is archived.
data.archived_atstring or nullWhen the list was archived, as an ISO 8601 timestamp. null while it is in use.
data.persona_idsarray of integerIDs of the personas the list belongs to. An empty array means the list is visible from every persona. A monitored list attached to no persona is monitored, and charged, in every active persona.
data.is_deletablebooleanWhether deleting or archiving the list would succeed right now.
data.not_deletable_reasonstring or nullWhy the list cannot be deleted or archived, null when it can: last_list_of_tier (it is the only list of its kind for its persona, for a prospect list of its tier, such as the only prospect Tier 1 list for this persona, or the only one attached to no persona: create another one first), in_use (a signal setup, or an older signal set up in the Sillage app, uses it) or employee_list (the "All my employees" list is never deleted). New values may be added; ignore values you don't know.

Errors

StatusMeaning
401The API key is missing or invalid.
404The list does not exist.
422kind or list_id is not valid.
429Rate limit exceeded.
500An unexpected server error occurred.

Error responses use RFC 9457 problem documents with Content-Type: application/problem+json. type is always about:blank; code tells one problem from another, detail says what went wrong this time, and errors names the field at fault.

On this page