> For the complete documentation index, see [llms.txt](https://docs.quasar.win/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.quasar.win/propamm/makers.md).

# Makers

### Endpoint

We currently have a single endpoint in us-east-1. Multi-region endpoints will be released shortly.

```
wss://rpc.quasar.win/ws/sendquoteupdate
```

### Submit quote (`ws/sendquoteupdate`)

```proto
message PWebsocketQuoteUpdateV1Args {
  // RLP-encoded quote-update tx bytes. Empty = cancel the replacement_uuid.
  bytes tx = 1;
  // single block this quote is valid for
  uint64 block_number = 2;
  // 16-byte quote identifier (raw UUID bytes).
  bytes replacement_uuid = 3;
  // Strictly increasing per replacement_uuid within a single block_number; must be > 0.
  // An update or cancel whose seq is not strictly greater than the highest
  // already seen for that (uuid, block) is dropped. The sequence resets each
  // block: seq=1 on a new block is valid regardless of the prior block's value.
  uint64 replacement_seq_number = 4;
  // when true, this quote is not shared between builder regions
  bool disable_cross_region_sharing = 5;
  // Pair keys this update writes. A given replacement_uuid is bound to one
  // pair set for the life of the connection — reusing a uuid for a different
  // pair set is rejected. Use a distinct replacement_uuid per pair.
  repeated bytes asset_pairs = 6;
}
```

### Response

```proto
message PWebsocketQuoteUpdateV1Response {
    // echoes the request's replacement_uuid
    bytes replacement_uuid = 1;
    // echoes the request's replacement_seq_number
    uint64 replacement_seq_number = 2;
    // server receive time, UNIX nanoseconds
    uint64 timestamp = 3;
    // empty on success; error detail on ingest failure
    string error = 4;
  }
```

### Pricing

Quote updates submitted through this endpoint do not pay priority fees.\
\
Currently makers will be charged on a per filled trade volume basis. Please contact us via telegram / discord, etc. for details.&#x20;

### Authentication

To authenticate your requests, include your API key in the `Authorization` header of each request.

```http
Authorization: <your-api-key>
```

### Configuration Options

We currently support the same configuration options as Titan, including conditional vs unconditional price quote updates, and a taker freshness buffer. These will be configured on setup.\
\
Please consult Titans documents for details: <https://docs.titanbuilder.xyz/propamms/makers>
