Skip to content
Menu
SilktideDevelopers

Changelog

Every change to the Silktide API, newest first.

View as Markdown

Every change to the API, newest first. New and deprecated operations are listed under the version that brought them. To hear about changes, follow the Atom feed. What can change, and how much notice you get, is on Versions.

November 2026 — version 1.1.0#

Silktide 4 and Silktide 5 score websites differently, and the API now keeps them apart:

  • Every operation's page says which edition of Silktide it reads. An account without that edition gets 403 with an EditionNotAvailable error, which names the operation to call instead. Reports, report schedules and report templates are Silktide 4's. See Scores.
  • Get several results in one request takes each query by the name it has on its own page, and answers it the same way.

A mistake in a request now fails with 400 and an InvalidRequest error, and properties.field names the parameter. Several operations used to answer 500, or an error type such as DivisionByZeroError. This covers reports, report schedules, tags, section metadata, contents and check contents queries, Analytics queries with no view or websiteId, testing a fragment of HTML, and an id in the path that is not a whole number. See Errors.

The 429 from the rate limit now has the same body as other errors: type TooManyRequests, with the seconds to wait in properties.retryAfter as well as Retry-After. If your code read error as a string, read error.message instead. See Rate limits.

Also:

  • Anyone who can see a report or report schedule can get it. Its permissions are included only for those who can admin it. See Get a report.
  • Setting a section's metadata needs "Can admin this website", and each value is checked against its field.
  • Updating a tag refuses a label another tag of the same type has, as creating one does. Creating several tags creates all of them or none.
  • Creating or updating a website refuses tagIds that add an id that is not one of the account's section tags. It used to keep the id, which named nothing.
  • Deleting a report schedule deletes its email subscribers too.
  • Analytics queries take limit and simple in a query string as well as in a JSON body. They used to answer with a TypeError error. See Get browsers and Get browser sizes.
  • An Analytics table's maxPage counts only the rows within its limit, as numRows does, and the last page stops at the limit. See Tables.
  • A website's settings no longer include its sign-in or proxy password. website.passwordSet and website.proxyPasswordSet say whether each is saved. Send website.password or website.proxyPassword to change one, and leave it out to keep it.

New documentation, generated from the same definitions that Silktide's own tests check against the API. These pages now say what it really does where the old pages did not:

  • Scores are out of 100 to one decimal place, not whole numbers. See Get a website's scores.
  • When creating a website, metaValues goes inside website. Beside it, as the old page showed, it is ignored. See Create a website.
  • Results take clearer period names, such as last-7-days and month-to-date. The older spaced names still work. See Results.
  • The rate limit counts requests per path, and a 429 says when to retry in Retry-After. See Rate limits.
  • Each row of Sources has sourceFilterValue and mediumFilterValue, the values to filter by that row, including __empty__ for direct visits.
  • Accounts in Australia use https://api.au.silktide.com. See Find your region.
  • Every page is available as Markdown, and the whole API as an OpenAPI 3.1 document.

February 24, 2025#

  • Added testing a fragment of HTML.

May 30, 2024#

  • Added an optional limit to some Analytics operations.
  • Documented time zones for results.

February 1, 2024#

January 1, 2024#

  • The Silktide API launched, as v1.