> ## Documentation Index
> Fetch the complete documentation index at: https://docs.interchange.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Shared Workflows

> Use asks, documentation search, and account navigation across v3 accounts.

## File an ask when the account cannot resolve the work

`save_ask` records something you are waiting on Interchange to answer or
provide. It is available from every account kind because the recipient of the
ask is outside the active account.

| Type          | Use it for                                               |
| ------------- | -------------------------------------------------------- |
| `support`     | Something broken, blocking, or requiring a person        |
| `product`     | A product capability that does not exist                 |
| `supply`      | Inventory a Buyer wants but cannot find                  |
| `integration` | A vendor or counterparty Interchange does not connect to |
| `commercial`  | Pricing, terms, billing, or a rate-card exception        |

`type` is optional. Omit it when you do not know who should answer; do not delay
a support request while classifying it.

`subject` is reserved for `supply` and `integration`, where it names the domain
or vendor. A supply ask also needs the channel so it can be matched to
inventory. Support, product, and commercial asks carry their situation in the
title.

<Warning>
  A `supply` ask must come from a Buyer account because it becomes evidence of
  buyer demand. A Seller blocked on its own inventory should file `support`,
  not manufacture a supply request.
</Warning>

Filing an ask requires read permission so the person who encounters the problem
can report it. Filing returns an opaque Interchange `askId`; it is not a ticket
key or an internal work-system ID.

## Read and update asks

Buyer and Seller accounts can list and read asks through `search` and `get`.
Organisation accounts can file an ask and update it later when they retain its
returned `askId`, but their current catalog does not include the read tools.

List asks explicitly:

```json theme={null}
{
  "kind": "ask",
  "filter": { "askState": "open" },
  "limit": 25
}
```

Read one using the returned ID:

```json theme={null}
{ "kind": "ask", "id": "ASK_ID" }
```

Ask titles may contain customer-supplied text, so asks do not appear in an
unrelated bare search. Ask IDs are account-scoped; an ID from another account
returns the same `NOT_FOUND` result as an unknown ID.

Use `save_ask` with `id` and `requesterState` to record the requester's view:

| Requester state      | Meaning                                                   |
| -------------------- | --------------------------------------------------------- |
| `confirmed_resolved` | The requested outcome happened                            |
| `accepted`           | The answer was acknowledged without claiming satisfaction |
| `still_blocked`      | The answer did not resolve the request                    |
| `withdrawn`          | The requester no longer wants the ask pursued             |

Updating requires write permission. Only the original requester or an account
admin may withdraw; anyone with write access may report that the account is
still blocked. Title, type, and severity are fixed after filing because they
control deduplication and response handling.

An optional note replaces the requester's existing note. Omit it to keep the
current note.

## Share failure evidence safely

Text fields on `save_ask` are scanned for common bearer tokens, API keys, JWTs,
and cloud credentials. Recognized values are replaced with `[REDACTED]` before
storage, forwarding, or audit capture while surrounding IDs and error text are
preserved.

Treat this as a safety net, not permission to paste secrets. Remove credentials
before filing and rotate anything you believe was exposed.

## Search public documentation

Use `search` with `sources: ["docs"]` to find the relevant public page. A
discovery result contains a stable `document` path and citation URL:

```json theme={null}
{
  "query": "how does publisher authorization work?",
  "sources": ["docs"]
}
```

Before answering with an exact procedure, response field, authorization rule,
or safety step, read the selected page through the same tool:

```json theme={null}
{
  "query": "how does publisher authorization work?",
  "document": "storefront/inventory-sources/publisher-properties-coverage",
  "sources": ["docs"]
}
```

An exact-document read returns bounded relevant sections with citations.
Arbitrary web URLs and internal repository paths are not accepted. If the page
does not establish the fact, say so instead of repeatedly reformulating the
same search.

## Move between accounts

`get_status` returns a bounded `reachableAccounts` list and marks it when
truncated. Pass a returned account ID to `switch_account`, then call
`get_status` again. Account IDs are not seller/storefront IDs: never pass a
reachable account ID to `request_proposals` unless another response explicitly
returns it in that tool's required ID space.
