# List tax presets

```http
GET https://secure.yoprint.com/v1/api/store/{team_slug}/setting/tax_type
```

- API version: v1
- Operation ID: `v1_public_custom_tax_index`
- Section: Team settings › [Tax presets](https://developer.yoprint.com/reference/tax-presets.md)
- Web page: https://developer.yoprint.com/reference/tax-presets/v1-custom-tax-index/
- Authentication: `Authorization: Bearer YOUR_API_KEY`

Returns all the team's tax presets in one list, including deleted ones (`trashed: true`) and YoPrint's `system` presets, such as Auto Tax.

Tax presets are the taxes you apply to invoices. When YoPrint creates an invoice for you, it applies the default preset; on invoices you build yourself, you choose the tax. An invoice stores the rate it used, so changing or deleting a preset doesn't change existing invoices.

Use the `default` preset when you need the team's usual tax. Skip presets with `trashed: true`.

## Permission

Any team member can call it. Reading needs no extra permission.

## Path parameters

- `team_slug` (string, required): Your team slug, shown as Team ID next to your API key in Profile. Example `your-team`.

## Request body

This operation takes no request body.

### Example request

```bash
curl 'https://secure.yoprint.com/v1/api/store/your-team/setting/tax_type' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Accept: application/json' \
  -H 'X-Yoprint-Decimal-Format: exact-v1'
```

## Response

`200` Successful response.

Fields:

- `data` (array of objects, required)
  - Each item:
    - `apply_before_disc` (boolean, required): Whether tax is calculated before the discount (Calculate Taxes Before Discount). Normally false: tax comes after the discount.
    - `default` (boolean, required): Whether it is the team's default tax preset. At most one preset is the default.
    - `enable` (boolean, required)
    - `id` (string, required)
    - `line_taxes` (array of objects, required): The parts of a `line_tax` preset, as they were sent. Empty for the others.
      - Each item:
        - `name` (string, required): The part's name, such as `State` or `County`.
        - `total` (integer, required): The part's rate. A percentage ×1000: `8250` is 8.25%. With `X-Yoprint-Decimal-Format: exact-v1`, a value that isn't a whole number comes back as a string. Minimum 0.
    - `name` (string, required)
    - `secondary_type` (string | null, required): For `system` presets, which one: `auto` is Auto Tax, YoPrint's automatic US sales tax; `other` is a 0% preset some teams have, whose `name` always reads Tax Exempt. Null for your own presets.
    - `shipping_taxable` (boolean, required): Whether shipping is taxed (Tax Shipping).
    - `total` (integer, required): The rate. For `line_tax`, the sum of the parts. Auto Tax shows 0: its rate is looked up per invoice. A percentage ×1000: `8250` is 8.25%. With `X-Yoprint-Decimal-Format: exact-v1`, a value that isn't a whole number comes back as a string. Minimum 0.
    - `trashed` (boolean, required): True for a deleted preset. Restore it with Restore a tax preset.
    - `type` (string, required): `simple` (Single Line Tax): one rate. `line_tax` (Multi Line Tax): parts that add up. `system`: made by YoPrint, such as Auto Tax. One of: `"simple"`, `"line_tax"`, `"system"`.
    - `can_override_rates` (boolean, optional)
    - `can_override_rules` (boolean, optional)
    - `error` (string, optional)
    - `hidden` (boolean, optional)
    - `override_rates` (array of objects, optional)
    - `override_rules` (array of objects, optional)
    - `supported_place` (array of objects, optional)
- `status` (integer, required)
- `success` (boolean, required)

Example response:

```json
{
  "data": [
    {
      "apply_before_disc": false,
      "can_override_rates": false,
      "can_override_rules": false,
      "default": true,
      "enable": true,
      "error": "",
      "hidden": false,
      "id": "kazdbC5ICA0kV0",
      "line_taxes": [],
      "name": "State sales tax",
      "override_rates": [],
      "override_rules": [],
      "secondary_type": null,
      "shipping_taxable": true,
      "supported_place": [],
      "total": 6000,
      "trashed": false,
      "type": "simple"
    }
  ],
  "status": 200,
  "success": true
}
```

## Errors

- `401` The API key is missing or wrong (`unauthenticated`).
- `403` You are not allowed to do this. `api_access_not_in_plan`: your team's plan doesn't include API access (Pro and above, with an active subscription or trial), so every request answers this until the team upgrades. When your role lacks the permission the operation needs, the body is only `{"message": "Insufficient Permission"}`. Other refusals use the error envelope, with `unauthorized` or `user_is_not_authorized`.
- `404` Not found. `page_not_found`: the team slug is unknown, you are not a member of the team, or an id in the path is not one of this team's. `code: null`, with a message that starts "No query results for": there is no record with that id.

## Notes

- Rates are a percentage ×1000: `8250` is 8.25%. With `X-Yoprint-Decimal-Format: exact-v1`, a value that isn't a whole number comes back as a string.
- Auto Tax (`type` `system`, `secondary_type` `auto`) is available to US-plan teams with the feature. Its rate is looked up for each invoice from the address, so `total` is 0.

## Related

- [Create a tax preset](https://developer.yoprint.com/reference/tax-presets/v1-custom-tax-store.md): `POST /v1/api/store/{team_slug}/setting/tax_type`
- [Change the tax on an invoice](https://developer.yoprint.com/reference/invoices/v2-invoice-tax-selection-update.md): `PUT /v2/api/store/{team_slug}/v2/invoice/{unique_key}/tax-selection`
