Ruby Quickstart Guide
This guide will walk you through installing the official Ruby SDK and running your first scan. In just a few minutes, you’ll be able to check content for plagiarism, AI-generated text, and more directly from your Ruby application.
🔑 Before you begin
In order to start integrating Copyleaks API, you'll need an account and an API key:
- Don't have an account? Sign up for free
- You can find your API key on the API Dashboard
🚀 Get Started
Section titled “🚀 Get Started”-
Installation
First, install the official
plagiarism-checker
gem from RubyGems into your project.Terminal window gem install plagiarism-checker -
Quick Example: Scan Text
scan.rb require 'copyleaks'require 'base64'# --- Your Credentials ---USER_EMAIL = 'YOUR_EMAIL_ADDRESS'USER_API_KEY = 'YOUR_API_KEY'WEBHOOK_URL = 'https://your-server.com/webhook/{STATUS}'# --------------------begin# Log in to the Copyleaks APIputs "Authenticating..."copyleaks = Copyleaks::API.newauth_token = copyleaks.login(USER_EMAIL, USER_API_KEY)puts "✅ Logged in successfully!"# Prepare your content for scanningputs "Submitting text for scanning..."scan_id = Time.now.to_i.to_stext_to_scan = 'Hello world, this is a test.'base64_content = Base64.strict_encode64(text_to_scan)# Configure the scanwebhooks = Copyleaks::SubmissionWebhooks.new(WEBHOOK_URL)properties = Copyleaks::SubmissionProperties.new(webhooks)properties.sandbox = true # Turn on sandbox mode for testingsubmission = Copyleaks::CopyleaksFileSubmissionModel.new(base64_content,'test.txt',properties)# Submit the scan to Copyleakscopyleaks.submit_file(auth_token, scan_id, submission)puts "🚀 Scan submitted successfully! Scan ID: #{scan_id}"puts "You will be notified via your webhook when the scan is complete."rescue StandardError => eputs "🛑 An error occurred: #{e.message}"end -
Understanding the Code
The example code performs four main actions to submit a scan:
- Login: It authenticates with your email and API key to get a secure login token, which is required for all subsequent requests.
- Prepare Content: It takes a simple string of text and encodes it into Base64 format.
- Configure Scan: It creates a
SubmissionProperties
object containingSubmissionWebhooks
to define the scan’s behavior. We enablesandbox
mode for safe testing and provide the webhook URL. - Submit for Scanning: It creates a
CopyleaksFileSubmissionModel
with the content and properties, then sends it to the Copyleaks API. The process is asynchronous; Copyleaks will notify your webhook URL once the scan is complete.
🗺️ Next Steps
Section titled “🗺️ Next Steps”Now that you’ve submitted your first scan, here are some recommended steps: