---
title: legal.shopTerms | Doing Work API
description: For one shop: the current Terms of Service version, whether the owner accepted it for the shop, when we emailed the owner the terms (shops an agent signed 
url: https://doingwork.work/docs/reference/legal-shopterms/
---

# legal.shopTerms

For one shop: the current Terms of Service version, whether the owner accepted it for the shop, when we emailed the owner the terms (shops an agent signed up), and the section 19 arbitration opt-out window, deadline and status. Any member of the shop can read it. The owner accepts and opts out on the page in page_url.

|  |  |
|---|---|
| Who | Agents can call this |
| REST | `GET /v1/legal/shop-terms` |
| MCP tool | `legal_shopTerms` |
| Writes | no |
| Area | [Sign-in and agent access](https://doingwork.work/docs/reference/#sign-in-and-agent-access) |

## When to use it

To start a new shop for someone, call shops.signUp once with accept_terms true, the shop name, the jurisdiction and the owner's name and email. That accepts the Terms of Service for the shop.

## What to tell the owner

Tell them what you found in plain words. Don't read back raw fields.

## Input

| Field | Type | Required |
|---|---|---|
| `shop_id` | string | yes |

## Example

```http
GET https://doingwork.work/v1/legal/shop-terms?shop_id=00000000-0000-4000-8000-000000000000
```

## Output

| Field | Type | Always there |
|---|---|---|
| `shop_id` | string | yes |
| `shop` | string | yes |
| `current_version` | string | yes |
| `terms_url` | string | yes |
| `owner_accepted_current` | boolean | yes |
| `owner_accepted_at` | ['string', 'null'] | yes |
| `terms_emailed_at` | ['string', 'null'] | yes |
| `opt_out_window_start` | ['string', 'null'] | yes |
| `opt_out_deadline` | ['string', 'null'] | yes |
| `opt_out_open` | boolean | yes |
| `opted_out` | boolean | yes |
| `opted_out_at` | ['string', 'null'] | yes |
| `opted_out_by` | ['string', 'null'] | yes |
| `page_url` | string | yes |

```json
{
  "shop_id": "00000000-0000-4000-8000-000000000000",
  "shop": "...",
  "current_version": "...",
  "terms_url": "...",
  "owner_accepted_current": true,
  "owner_accepted_at": "...",
  "terms_emailed_at": "...",
  "opt_out_window_start": "...",
  "opt_out_deadline": "...",
  "opt_out_open": true,
  "opted_out": true,
  "opted_out_at": "...",
  "opted_out_by": "...",
  "page_url": "..."
}
```

## Errors

| Code | Status | What to do |
|---|---|---|
| `invalid_input`, `invalid_token`, `rate_limited` |  | Can happen on any call. See [errors](https://doingwork.work/docs/errors/). |
