Class BSV::Network::Protocols::Arcade ¶
Inherits: BSV::Network::Protocol
Arcade protocol implementation for submitting transactions to the BSV network.
Arcade is a sibling to ARC — both subclass Protocol directly. The request and response shapes diverge enough to rule out a shared abstract base: Arcade uses a narrower status taxonomy and a different broadcast response structure (no txid on fresh submission; idempotent re-submit returns status plus txid plus state).
Example¶
arcade = BSV::Network::Protocols::Arcade.new(
base_url: 'https://arcade.gorillapool.io'
)
result = arcade.call(:broadcast, tx)
result.http_success? # => true
result.data['status'] # => "submitted"
- @see
https://github.com/bsv-blockchain/arcadeArcade repository
Constants¶
REJECTED_STATUSES ¶
Arcade response statuses that indicate a transaction was NOT accepted. Narrower than ARC's taxonomy — Arcade has a single explicit rejection signal.
Public Instance Methods¶
initialize(base_url:, api_key: = nil, auth: = nil, network: = nil, http_client: = nil, callback_url: = nil, callback_token: = nil) ¶
- @param
base_url[String] Arcade base URL - @param
api_key[String, nil] legacy bearer token shorthand - @param
auth[Hash, Symbol, nil] auth config; takes precedence over +api_key:+ - @param
network[String, nil] network name for base URL interpolation - @param
http_client[#request, nil] injectable HTTP client for testing - @param
callback_url[String, nil] optional X-CallbackUrl header value - @param
callback_token[String, nil] optional X-CallbackToken header value - @return [Arcade] a new instance of Arcade