Skip to content

Ruby SDK

Use QR Code API with Ruby.

Installation

No SDK required - use the net/http or httparty gem:

bash
gem install httparty

Quick Start

ruby
require 'httparty'

API_KEY = ENV['QRCODE_API_KEY']

response = HTTParty.get(
  'https://www.qrcodeapi.io/api/generate',
  query: { data: 'https://example.com' },
  headers: { 'Authorization' => "Bearer #{API_KEY}" }
)

File.open('qr.png', 'wb') { |f| f.write(response.body) }

Examples

With Custom Options

ruby
require 'httparty'

def generate_qr(data, options = {})
  params = {
    data: data,
    size: options[:size] || 300,
    color: options[:color] || '000000',
    background: options[:background] || 'ffffff',
    format: options[:format] || 'png'
  }

  response = HTTParty.get(
    'https://www.qrcodeapi.io/api/generate',
    query: params,
    headers: { 'Authorization' => "Bearer #{ENV['QRCODE_API_KEY']}" }
  )

  response.body
end

# Usage
qr = generate_qr('https://example.com', size: 500, color: '22c55e')
File.open('custom-qr.png', 'wb') { |f| f.write(qr) }
ruby
require 'httparty'
require 'json'

def create_link(name, target_url)
  response = HTTParty.post(
    'https://www.qrcodeapi.io/api/links',
    body: { name: name, targetUrl: target_url }.to_json,
    headers: {
      'Authorization' => "Bearer #{ENV['QRCODE_API_KEY']}",
      'Content-Type' => 'application/json'
    }
  )

  JSON.parse(response.body)
end

link = create_link('My Campaign', 'https://example.com')
puts "Short code: #{link['shortCode']}"

Rails Integration

ruby
# app/controllers/qr_controller.rb
class QrController < ApplicationController
  def generate
    response = HTTParty.get(
      'https://www.qrcodeapi.io/api/generate',
      query: { data: params[:data], size: params[:size] || 300 },
      headers: { 'Authorization' => "Bearer #{Rails.application.credentials.qrcode_api_key}" }
    )

    send_data response.body, type: 'image/png', disposition: 'inline'
  end
end