Skip to content
Official Clojure client for the Sight API.
Branch: master
Clone or download

Latest commit

ashwinbhaskar and Siftrics Founder Update readme
Latest commit 926d494 Mar 26, 2020


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows Use cloverage instead of test Mar 25, 2020
src/sight Rename function Mar 25, 2020
test/sight Add payload test Mar 25, 2020
.gitignore Implement clojure client Feb 27, 2020
LICENSE Implement clojure client Feb 27, 2020
project.clj Update version to 1.1.0 Mar 25, 2020

Clojars Project Clojure CI

This repository contains the official Sight API Clojure client. The Sight API is a text recognition service.


  1. Add this project as a dependency.


[sight "1.1.0"]

Clojure CLI/deps.edn:

sight {:mvn/version "1.1.0"}


compile 'sight:sight:1.1.0


  1. Require or import the package. For example, add it to :require:
(ns my-namespace
  (:require [sight.core :as sight]))
  1. Grab an API key from the Sight dashboard.
  2. Create a client, passing your API key into the constructor, and recognize text:
(let [client (sight/->Client "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
      files  ["/user/foos/dummy.pdf"]]
  (sight/recognize client files))

Response would look something like this

{:pages [{:error "",
          :file-index 0,
          :page-number 1,
          :number-of-pages-in-file 1,
          :recognized-text [{:top-left-y 193,
                             :bottom-right-y 243,
                             :bottom-left-x 152,
                             :top-right-x 500,
                             :bottom-left-y 248,
                             :top-right-y 188,
                             :top-left-x 151,
                             :bottom-right-x 501,
                             :confidence 0.10092532855610954,
                             :text "Dummy PDF file"}]}]}

:file-index is the index of this file in the original request's "files" array.

Word-Level Bounding Boxes

recognize has an additional signature with a third parameter, word-level-bounding-boxes. If it's true then word-level bounding boxes are returned instead of sentence-level bounding boxes. E.g.,

(sight/recognize client (list "invoice.pdf" "receipt.png") true)

Official API Documentation

Here is the official documentation for the Sight API.

Apache V2 License

This code is licensed under Apache V2.0. The full text of the license can be found in the "LICENSE" file.

Lead Maintainer


You can’t perform that action at this time.