JSON-RPC2 server DSL - allows APIs to be created as mountable Rack applications with inline documentation, authentication and type checking. e.g. class Calculator < JSONRPC2::Interface title "JSON-RPC2 Calculator" introduction "This interface allows basic maths calculations via JSON-RPC2" auth_with JSONRPC2::BasicAuth.new({'user' => 'secretword'}) section 'Simple Ops' do desc 'Multiply two numbers' param 'a', 'Number', 'a' param 'b', 'Number', 'b' result 'Number', 'a * b' def mul args args['a'] * args['b'] end desc 'Add numbers' example "Calculate 1 + 1 = 2", :params => { 'a' => 1, 'b' => 1}, :result => 2 param 'a', 'Number', 'First number' param 'b', 'Number', 'Second number' optional 'c', 'Number', 'Third number' result 'Number', 'a + b + c' def sum args val = args['a'] + args['b'] val += args['c'] if args['c'] val end end end

Required Ruby Version

None

Authors

Geoff Youngs

Versions

  1. 0.3.0 February 10, 2023 (132 KB)
  2. 0.2.0 April 14, 2022 (132 KB)
  3. 0.1.1 January 04, 2014 (128 KB)
  4. 0.1.0 January 04, 2014 (127 KB)
  5. 0.0.9 September 03, 2012 (94.5 KB)
  6. 0.0.1 July 17, 2012 (14.5 KB)
Show all versions (13 total)

SHA 256 checksum