Skip to content

Proto: Admin v1

Source: proto/ramp/admin/v1/admin.proto

Exchange operator overrides: the tenant fee rate and the tenant reporting policy. SetOfferPrice and SetDeliveryWitnessMode are planned extensions of this service and are tracked separately.

RPCRequestResponseDescription
SetTenantFeeRateSetTenantFeeRateRequestSetTenantFeeRateResponseSets the tenant's fee rate (basis points) and optional operator note. Full replace: the previous rate and note are overwritten.
SetReportingPolicySetReportingPolicyRequestSetReportingPolicyResponseReplaces the tenant's reporting policy (required report fields, quantity tolerance, reporting window). Full replace: omitted optional fields clear their value so the receiving Exchange's defaults apply.

The fee-rate payload shared by the SetTenantFeeRate request and response, so its rules are stated once. The fee is in basis points of gross — floor(gross * bps / 10000), so a value below 10000 keeps it strictly under 100%, and integer basis points avoid float drift when aggregating many charges. 0 is a legitimate explicit value (“no fee”), not an unset sentinel. Omitting notes clears any existing note.

FieldTypeNumberDescription
tenant_idstring1The tenant whose fee rate is being set.
fee_rate_bpsint322Fee rate in basis points of gross: fee = floor(gross * bps / 10000). Below 10000 keeps the fee strictly under 100%; integer basis points avoid float drift when aggregating many charges. 0 is a legitimate explicit value ("no fee"), not an unset sentinel.
notesoptional string3Operator commentary on the rate (why it was set, by whom, ticket link). Omitted clears any existing note.

A thin {ver, rate} envelope carrying the required TenantFeeRate to apply.

FieldTypeNumberDescription
verstring1RAMP protocol version — "1.0". Stamped by the sender from a single constant; advisory on receive. See "Protocol version" in ramp.proto.
rateTenantFeeRate2The fee rate to apply. Required — an absent payload would otherwise skip validation of its fields.

Echoes the TenantFeeRate as persisted.

FieldTypeNumberDescription
verstring1RAMP protocol version — "1.0". Stamped by the sender from a single constant; advisory on receive. See "Protocol version" in ramp.proto.
rateTenantFeeRate2The fee rate as persisted.

The reporting-policy payload shared by the SetReportingPolicy request and response, so its rules are stated once: the report field names the usage-report validator requires, the accepted quantity tolerance (a fraction, 01, where 0 requires an exact match), and the reporting window in seconds (capped at one year). Omitted optional fields clear their value so the receiving Exchange’s defaults apply. The wire constrains only the token shape of required_fields; which names are meaningful is defined by the receiving Exchange and may change without a contract change, and names are a set (repeats are rejected). The window applies to obligations minted after the call — obligations already issued keep the window they were minted with.

FieldTypeNumberDescription
tenant_idstring1The tenant whose reporting policy is being replaced.
required_fieldsrepeated string2Report field names the usage-report validator requires. The wire constrains only the token shape; which names are meaningful is defined by the receiving Exchange and may change without a contract change. Names are a set: repeats are rejected. Empty means no required fields.
quantity_toleranceoptional double3Accepted relative deviation between estimated and reported quantity, as a fraction: 0 requires an exact match, 1 accepts any deviation. Omitted: the receiving Exchange's default tolerance applies.
window_secondsoptional int324Reporting window in seconds. Applies to obligations minted after this call; obligations already issued keep the window they were minted with. Capped at one year. Omitted: the receiving Exchange's default applies.

A thin {ver, policy} envelope carrying the required ReportingPolicy to apply.

FieldTypeNumberDescription
verstring1RAMP protocol version — "1.0". Stamped by the sender from a single constant; advisory on receive. See "Protocol version" in ramp.proto.
policyReportingPolicy2The reporting policy to apply. Required — an absent payload would otherwise skip validation of its fields.

Echoes the ReportingPolicy as persisted.

FieldTypeNumberDescription
verstring1RAMP protocol version — "1.0". Stamped by the sender from a single constant; advisory on receive. See "Protocol version" in ramp.proto.
policyReportingPolicy2The reporting policy as persisted.