Sudoku Generator API - Ruby Gem
Sudoku is a simple tool for generating Sudoku puzzles. It returns a Sudoku puzzle.
Installation
Add this line to your application's Gemfile:
gem 'apiverve_sudoku'
And then execute:
$ bundle install
Or install it yourself as:
$ gem install apiverve_sudoku
Getting Started
Get your API key at APIVerve
Basic Usage
require 'apiverve_sudoku'
# Initialize the client
client = APIVerve::Sudoku::Client.new(api_key: "YOUR_API_KEY")
# Make a request
response = client.execute({ difficulty: "medium" })
# Print the response
puts response
Error Handling
begin
response = client.execute({ difficulty: "medium" })
puts response["data"]
rescue APIVerve::Sudoku::ValidationError => e
puts "Validation error: #{e.errors.join(', ')}"
rescue APIVerve::Sudoku::APIError => e
puts "API error: #{e.}"
puts "Status code: #{e.status_code}"
end
Debug Mode
# Enable debug logging
client = APIVerve::Sudoku::Client.new(
api_key: "YOUR_API_KEY",
debug: true
)
Example Response
{
"status": "ok",
"error": null,
"data": {
"puzzle": {
"grid": "674--3---1---72-9-5----1--4------8-3-1---8--52----61--7-1----8--53-97--19--8-4---",
"html": "<html><head><title>Sudoku Puzzle</title><style>table {border-collapse: collapse; width: 300px; height: 300px;}td {text-align: center; width: 30px; height: 30px; padding: 0;}input {width: 100%; height: 100%; text-align: center; font-size: 18px; border: none;}</style></head><body><table><tr><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td></tr><tr><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='' maxlength='1' /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='' maxlength='1' /> </td></tr></table></body></html>",
"image": {
"imageName": "d1b59df4-7ab2-474e-b269-e34ce212b469_puzzle.png",
"format": ".png",
"downloadURL": "https://storage.googleapis.com/apiverve/APIData/sudoku/d1b59df4-7ab2-474e-b269-e34ce212b469_puzzle.png?GoogleAccessId=635500398038-compute%40developer.gserviceaccount.com&Expires=1766010586&Signature=jFaR0KjqZtGbKvnH7wPVVfz88z4mRT9bgs54W%2BEyU%2B%2B4%2BbXZdqK8wafALwJpk89vRjhsTpaX6huE8SDkDl6U6VY452LDEnv1kOT6SASgttUbUVnnfoyJFfaEQIreHun6Y0dCAIA8RpJ27kBGorHAN9cgvA3N4wLTrzKGXd%2B3ULxbYivUNIjxgXFqeOCNeHhYHOU46i6voYYC7VYaibkpqwwD%2BYw0jQOXzVevwEVmP%2BhfQ0B1mToPnsyzS8Bo2b8Vtyh78YLh3u30KPKoio1%2FbNZ1KYI6hUpZ9UlnQFAN91Wg%2BFVlG4clYhGgwcPsjsq5xUUsdty4JmYYVocturuXrQ%3D%3D",
"expires": 1766010586784
}
},
"solution": {
"grid": "674953218138472596592681734465129873319748625287536149741365982853297461926814357",
"html": "<html><head><title>Sudoku Solution</title><style>table {border-collapse: collapse; width: 300px; height: 300px;}td {text-align: center; width: 30px; height: 30px; padding: 0;}input {width: 100%; height: 100%; text-align: center; font-size: 18px; border: none;}</style></head><body><table><tr><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 3px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 3px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td></tr><tr><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='9' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='2' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='6' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='8' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='1' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='4' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 3px solid #000;'> <input type='text' value='3' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;'> <input type='text' value='5' maxlength='1' disabled /> </td><td style='border-top: 1px solid #000;border-bottom: 3px solid #000;border-left: 1px solid #000;border-right: 3px solid #000;'> <input type='text' value='7' maxlength='1' disabled /> </td></tr></table></body></html>",
"image": {
"imageName": "d0a6a5a0-c0e3-44cb-8417-e6590f793a7c_solution.png",
"format": ".png",
"downloadURL": "https://storage.googleapis.com/apiverve/APIData/sudoku/d0a6a5a0-c0e3-44cb-8417-e6590f793a7c_solution.png?GoogleAccessId=635500398038-compute%40developer.gserviceaccount.com&Expires=1766010586&Signature=LVChpKLTdpScYP%2F%2FmDSgy9wp%2FECkftQIjWK%2FRZ8dtUjv%2BchJNL5u43Rwkwoh8y7%2FurdHnOUFookVLNJp6EeIMlhHsh9e%2BF5kWaVbZwPfzvVwVWWScoL%2FDx9c6wXm8svbqTb6tXgun8IPaeyt80xTFtg2swAphkB4KS00H5z4Te2O2RL%2F2Op%2BVZu7eVEpQUmTcZ1kR0Nahm5ueeIIPWvUIetV5N5%2FAnzGi5RvyFx0oFIJjPj9zSfi0jPxMbYSUIwF4ZQwyq5e9B%2BeCnX8atCyCs8UN2Sc1ZkFC0BA0ya5t%2F5AoxkdJWeMwMIo%2BcY7jk5anJShVhu9UT6m5bIpSaKdUA%3D%3D",
"expires": 1766010586850
}
},
"difficulty": "medium"
}
}
Documentation
For more information, visit the API Documentation.
Support
- Website: https://apiverve.com/marketplace/sudoku?utm_source=ruby&utm_medium=readme
- Email: hello@apiverve.com
License
This gem is available under the MIT License.