# Show team settings

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

- API version: v1
- Operation ID: `v1_public_setting_show`
- Section: Team settings › [Company settings](https://developer.yoprint.com/reference/company-settings.md)
- Web page: https://developer.yoprint.com/reference/company-settings/v1-setting-show/
- Authentication: `Authorization: Bearer YOUR_API_KEY`

Returns the team's settings as one object keyed by setting name: PDF and display options, date formats, tax labels, customer portal options and more, with defaults filled in for options the team never changed.

It also includes which gateways are on (`enable_*`), the webhook URLs each gateway calls (`stripe_webhook_url`, `paypal_webhook_url`, `square_webhook_url`), and the payment gateway values saved with Update payment gateway settings. Which saved values you get depends on who you are:

- The team owner and members with Manage Settings get all of them, including secret keys, access tokens and signing keys.
- Every other member gets only the values that identify an account: `publishable_key`, `paypal_client_id`, `paypal_webhook_id`, `square_client_id`, `square_location_id`, `square_webhook_locations`, `stripe_webhook_id`, `charge_it_pro_oid`, `charge_it_pro_device_id`, `authorize_login_id` and `authorize_client_key`.

## Permission

Any team member can call it. Reading needs no extra permission. Stored gateway credentials are returned only to the team owner and members with Manage Settings.

## 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' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Accept: application/json' \
  -H 'X-Yoprint-Decimal-Format: exact-v1'
```

## Response

`200` Successful response.

Fields:

- `data` (object, required): Every stored team setting, keyed by name, with defaults filled in for the display options, and the team's stored payment gateway values: all of them for the team owner and members with Manage Settings, only the account identifiers for other members (see Show team settings).
  - `cust_msg_status` (boolean, optional)
  - `customer_portal_account_login_available` (boolean, optional): Worked out by YoPrint: whether customers can sign in to your customer portal with an email account. True when your plan includes the customer portal.
  - `customer_portal_rollout` (object, optional): Worked out by YoPrint: where the customer portal's move to email-account sign-in stands for your team. YoPrint sets the dates; you can't change them here.
    - `account_only` (boolean, required): True when customers must sign in with an email account: a direct portal link alone no longer opens the portal.
    - `all_teams_at` (string (date-time) | null, required): When account login becomes mandatory for all teams (UTC), or null if not set.
    - `configuration_warning` (string | null, required): A system warning if rollout dates are inconsistent (`new_teams_cutoff_not_before_all_teams_cutoff` or `invalid_rollout_date`), or null. One of: `"new_teams_cutoff_not_before_all_teams_cutoff"`, `"invalid_rollout_date"`.
    - `legacy_access_allowed` (boolean, required): True when direct portal links still open the portal without an account sign-in.
    - `new_teams_at` (string (date-time) | null, required): When account login became mandatory for new teams (UTC), or null if not set.
    - `reason` (string, required): Why this rollout policy applies to your team: `transition` (standard rollout period), `new_team_cutoff` (new team policy), or `all_teams_cutoff` (mandatory for all teams). One of: `"transition"`, `"new_team_cutoff"`, `"all_teams_cutoff"`.
  - `default_pricing_strategy` (string, optional): How new jobs are priced by default. `job_separately` when never set. One of: `"job_separately"`, `"job_together"`, `"service_loc_together"`.
  - `enable_stripe` (boolean, optional): Present once it was sent to Update payment gateway settings, with the value sent. The same for `enable_paypal`, `enable_square`, `enable_square_payment`, `enable_charge_it_pro`, `enable_authorize_net` and `charge_it_pro_mode`.
  - `payment_amount_policies` (object | array, optional): Read only: the minimum payment policy for each of your currencies (deleted ones included), keyed by ISO currency code. An empty list `[]` when the team has no currencies.
  - `payment_amount_policy` (object | null, optional): Read only: the smallest payment YoPrint accepts in your default currency, or null when the team has no default currency.
    - `currency` (string, optional): The currency code.
    - `minimum_payment` (decimal pair, optional): A decimal pair whose `value` is a string: the amount is `value` ÷ 10^`dp` (`{"value": "1000", "dp": 3}` is 1.00). YoPrint refuses smaller payments. See https://developer.yoprint.com/concepts/money-and-quantities.md.
    - `minimum_remaining_balance` (null, optional): Always null here.
  - `paypal_webhook_url` (string, optional)
  - `pdf_date_format` (string, optional): The date format on PDFs. `std` is the default for a team that never changed it; PDFs show it like `other_1` (05 Nov 2026). A team whose saved settings have no date format reads `other_1`. Update general settings accepts only the other five values. One of: `"std"`, `"default"`, `"british_standard"`, `"us_standard"`, `"international"`, `"other_1"`.
  - `shipping_label_create_cost_line_item` (boolean, optional): Whether "Create Shipping Cost Line Item" starts checked when someone buys a shipping label in the web app. `true` when never set.
  - `square_webhook_url` (string, optional): Add this URL in the Square Developer Dashboard before you turn Square on.
  - `stripe_webhook_url` (string, optional): The URL Stripe calls for this team. YoPrint registers it in your Stripe account when you save Stripe settings.
  - `tax_label_name` (string, optional): The name used for tax on documents. `Tax` when never set.
  - `web_date_format` (string, optional): The date format in the web app. `us` is the default for a team that never changed it; the web app shows it like `default` (Nov 05, 2026). A team whose saved settings have no date format reads `default`. Update general settings accepts only the other five values. One of: `"us"`, `"default"`, `"british_standard"`, `"us_standard"`, `"international"`, `"other_1"`.
- `status` (integer, required)
- `success` (boolean, required)

Example response:

```json
{
  "data": {
    "cust_msg_status": true,
    "customer_portal_account_login_available": true,
    "customer_portal_rollout": {
      "account_only": false,
      "all_teams_at": null,
      "configuration_warning": null,
      "legacy_access_allowed": true,
      "new_teams_at": null,
      "reason": "transition"
    },
    "default_pricing_strategy": "job_separately",
    "enable_stripe": true,
    "payment_amount_policies": {
      "USD": {
        "currency": "USD",
        "minimum_payment": {
          "dp": 3,
          "value": "1000"
        },
        "minimum_remaining_balance": null
      }
    },
    "payment_amount_policy": {
      "currency": "USD",
      "minimum_payment": {
        "dp": 3,
        "value": "1000"
      },
      "minimum_remaining_balance": null
    },
    "paypal_webhook_url": "https://secure.yoprint.com/api/store/your-team/webhook/v1/payment/paypal",
    "pdf_date_format": "other_1",
    "shipping_label_create_cost_line_item": true,
    "square_webhook_url": "https://secure.yoprint.com/api/store/your-team/webhook/v1/payment/square",
    "stripe_webhook_url": "https://secure.yoprint.com/api/store/your-team/webhook/v1/payment/stripe",
    "tax_label_name": "Tax",
    "web_date_format": "default"
  },
  "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

- For the team owner and members with Manage Settings the response includes stored payment gateway credentials. Keep it out of logs and don't pass it to people who shouldn't see them.
- Which keys appear depends on what the team has saved. Read the keys you need and ignore the rest.

## Related

- [Update company details](https://developer.yoprint.com/reference/company-settings/v1-setting-update.md): `PUT /v1/api/store/{team_slug}/setting`
- [Update general settings](https://developer.yoprint.com/reference/company-settings/v1-setting-general-update.md): `PUT /v1/api/store/{team_slug}/setting/general`
- [Get your company details](https://developer.yoprint.com/reference/company-settings/v1-setting-detail-show.md): `GET /v1/api/store/{team_slug}/setting/detail`
- [Update payment gateway settings](https://developer.yoprint.com/reference/payment-gateways/v1-setting-payment-gateway-update.md): `PUT /v1/api/store/{team_slug}/setting/payment_gateway`
