---
title: "A calculator's sources and a citation"
method: GET
path: "/sources/{slug}"
tags: ["Calculators"]
---

# A calculator's sources and a citation

`GET /sources/{slug}`

## Request

- Base URL: `https://api.craftquantities.com/v1`
- URL: `https://api.craftquantities.com/v1/sources/{slug}`
- Auth: none declared

## Path parameters

- `slug` string, required: The calculator's slug, such as concrete-calculator.

## Query parameters

- `detail` 'full' | 'summary': full (the default): the whole answer. summary: the result lines, the citation line and the page only — fewer tokens to read.
- `format` 'json' | 'md'

## Response `200`

The sources as the calculator cites them.

- union
  - object
    - `calculator` object, required
      - `slug` string, required
      - `title` string, required
      - `category` string, required
      - `description` string
      - `version` string, required: The calculator's own version; a result names the calculator that produced it.
      - `lastVerified` string, required: The date the calculator's sources were last checked.
      - `url` string, required: The calculator's page on craftquantities.com.
      - `json` string, required: The calculator's static API document, with its test vectors.
    - `sources` object[], required
      - `label` string, required: The source as the calculator cites it.
      - `url` string: Only where the calculator gives one; none is invented.
      - `references` object[]
        - `kind` 'code' | 'standard', required
        - `body` string
        - `document` string, required
        - `section` string
        - `edition` string
    - `standards` object[], required
      - `title` string, required
      - `page` string, required
      - `publisher` string
    - `citation` object, required
      - `author` string, required
      - `title` string, required
      - `version` string, nullable
      - `sourcesChecked` string, nullable
      - `url` string, required
      - `accessDate` string, nullable, required
      - `formats` object, required
        - `plain` string, required
        - `apa` string, required
        - `harvard` string, required
        - `bibtex` string, required
    - `licence` object, required
      - `name` string, required
      - `url` string, required
      - `attribution` string, required
  - object
    - `detail` 'summary', required
    - `tool` string, required
    - `title` string, required
    - `lines` object[], required: The result lines, as the report's table gives them.
    - `notes` string[], required: What a professional must decide, when to call one, a false-friend warning, that adoption is local: kept in every summary.
    - `citation` string, required: The one citation line, built from the answer's own data.
    - `url` string, nullable, required
    - `open` string, nullable, required
    - `more` string, nullable, required

## Other responses

- `400`: The request was refused; every problem is listed.
- `404`: The request was refused; every problem is listed.

---

[API](https://skmtc.dev/craftquantities/apis/craft-quantities-engine-api.md) · [All operations](https://skmtc.dev/craftquantities/apis/craft-quantities-engine-api/llms.txt) · [OpenAPI document](https://skmtc.dev/craftquantities/apis/craft-quantities-engine-api/revisions/a69883abc23b?raw)
