Skip to content
Menu
SilktideDevelopers

Get a website's Silktide 5 scores

GET/v1/results/module-scores
View as Markdown

Returns a website's scores as Silktide 5 works them out: one for each module, and its WCAG conformance at each version and level. Each is its latest value in the period. With no period, that is the latest score there is.

This is for accounts that have Silktide 5. An account that has only Silktide 4 gets an EditionNotAvailable error; it reads Get a website's scores instead. The two editions score websites differently, so their numbers are not comparable. Scores explains which to use.

Every id is always in the answer, so you can read the ones you need without checking. A score with no value in the period, such as one for a website Silktide has not tested yet, is null.

Use an id with Get how a Silktide 5 score changed to see how it changed.

Request
curl "https://api.eu.silktide.com/v1/results/module-scores?websiteId=2" \
  -H "Authorization: silktide token=$SILKTIDE_API_KEY"
Response: A website's latest Silktide 5 scores
{
  "result": {
    "scores": {
      "accessibility": 94.3,
      "compliance": 90.6,
      "content": 71.2,
      "user-experience": 71.6,
      "wcag-20-a": 96.8,
      "wcag-20-aa": 96.4,
      "wcag-20-aaa": 95.9,
      "wcag-21-a": 95.9,
      "wcag-21-aa": 95.4,
      "wcag-21-aaa": 94.7,
      "wcag-22-a": 95.7,
      "wcag-22-aa": 95.3,
      "wcag-22-aaa": 94.5
    }
  },
  "selector": "/v1/results/module-scores",
  "duration": 0.021
}

Request

Query parameters

  • websiteIdintegerrequiredat least 1

    The website.

  • sectionIdinteger

    A section of the website. Defaults to 0, the whole website.

  • periodstring

    The date range. Defaults to all. The spaced forms (-7 days, month to date) are older names that keep working. custom needs from and to.

    One ofalltodaylast-7-dayslast-30-dayslast-90-daysmonth-to-datelast-monthyear-to-datelast-12-monthscustom-7 days-30 days-90 days-1 monthmonth to dateyear to date-12 months

  • fromstring

    With period=custom, the first day, such as 2026-10-01.

  • tostring

    With period=custom, the last day.

  • timezonestring

    The IANA time zone days are read in, such as America/New_York. Defaults to UTC.

Response

200JSON.

  • resultobjectrequired

    The answer.

    Show 1 fields
    • scoresobjectrequired

      Every score by id, out of 100 to one decimal place. Every id is always present; null when the website has no value for it in the period.

      Show 13 fields
      • accessibilitynumberrequiredcan be null0 to 100

        The Accessibility module.

      • compliancenumberrequiredcan be null0 to 100

        The Compliance module.

      • contentnumberrequiredcan be null0 to 100

        The Content module.

      • user-experiencenumberrequiredcan be null0 to 100

        The User experience module.

      • wcag-20-anumberrequiredcan be null0 to 100

        WCAG 2.0, level A.

      • wcag-20-aanumberrequiredcan be null0 to 100

        WCAG 2.0, level AA.

      • wcag-20-aaanumberrequiredcan be null0 to 100

        WCAG 2.0, level AAA.

      • wcag-21-anumberrequiredcan be null0 to 100

        WCAG 2.1, level A.

      • wcag-21-aanumberrequiredcan be null0 to 100

        WCAG 2.1, level AA.

      • wcag-21-aaanumberrequiredcan be null0 to 100

        WCAG 2.1, level AAA.

      • wcag-22-anumberrequiredcan be null0 to 100

        WCAG 2.2, level A.

      • wcag-22-aanumberrequiredcan be null0 to 100

        WCAG 2.2, level AA.

      • wcag-22-aaanumberrequiredcan be null0 to 100

        WCAG 2.2, level AAA.

  • selectorstringrequired

    The query that answered, as its path: /v1/results/scores.

  • durationnumberrequired

    Seconds Silktide took to answer.

Errors

StatusTypeWhen
404ModelNotFoundNo website or section with that id exists in the account, or the API key's user cannot see it.
200InvalidContextNo websiteId was sent. The body is an error despite the status.
200InvalidArgumentperiod is not one of its values. The body is an error despite the status.
200EditionNotAvailableThe account does not have Silktide 5. Its status is 403, and instead names /v1/results/scores. The body is an error despite the status.
401NotLoggedInNo API key was sent, or it is not a key for this region.(any operation)
429TooManyRequestsToo many requests to this path in five seconds. Retry after the number of seconds in the Retry-After header, which properties.retryAfter repeats.(any operation)
503-Silktide is busy. Retry after the number of seconds in the Retry-After header.(any operation)

Every error has the same body. See Errors.

Access

Permission
Any user of the account
Plan feature
None
Edition
Silktide 5 only
Cost
Free
Available since
v1.1.0

Try it

Sends a real request to your account from this browser. Your key stays in this tab and goes only to the Silktide API.