Seekmodo developer docs
Reference for the REST shim, MCP JSON-RPC surface, and storefront connectors. Authenticate with HMAC; replay window is 5 minutes.
seekmodo-sdk
Full-featured Ruby SDK for the Seekmodo gateway. One gem ships four clients — HMAC connector, browser JWT storefront, admin-key automation, and MCP JSON-RPC — plus a dynamic tools registry for the full gateway catalog.
When to reach for this
Use Connector::Client for Rails storefront connectors and Sidekiq indexing jobs. Use Storefront::Client in a Sinatra/Rails BFF that mints browser tokens server-side. Use Admin::Client for operator scripts. For browser widgets, prefer the JavaScript SDK.
Install
gem install seekmodo-sdkRequires Ruby >=3.1. Runtime dependencies: faraday, jwt.
Connector quick start
require "seekmodo/sdk"
signer = Seekmodo::Sdk::HmacSigner.new("your-tenant-id", "your-shared-secret")
breaker = Seekmodo::Sdk::CircuitBreaker.new(
Seekmodo::Sdk::Storage::Memory::BreakerStore.new
)
client = Seekmodo::Sdk::Connector::Client.new(signer, breaker: breaker)
client.search({ "q" => "red sneakers", "per_page" => 24 })
client.index(documents, action: "upsert")
client.tenant_snapshot # POST /v1/tenant.snapshotClients
- Connector — HMAC transport, circuit breaker, mode FSM, pairing, browser-token mint, events batcher.
- Storefront — JWT client: search, suggest, search_by_image, chat, recommend.*, bundle.suggest.
- Admin — synonyms, pins, LTR, analytics via
X-Seekmodo-Admin-Key(server-only). - MCP — JSON-RPC
initialize,tools/list,tools/callwith HMAC or operator bearer. - Tools::Registry — dynamic
call("synonyms.add", …)for any catalog tool.
Wire contract tests
Run bundle exec rspec spec/contracts — same 10 gateway wire tests as the PHP and Python SDKs.