/sypht-java-client

A Java client for the Sypht API

Primary LanguageJavaApache License 2.0Apache-2.0

Build Status codecov

Sypht Java Client

This repository is a Java reference client implementation for working with the Sypht API. Docs

About Sypht

Sypht is a SaaS API which extracts key fields from documents. For example, you can upload an image or pdf of a bill or invoice and extract the amount due, due date, invoice number and biller information.

Getting started

To get started you'll need API credentials, i.e. a <client_id> and <client_secret>, which can be obtained by registering for an account

Prerequisites

JDK8 and upwards are supported.

brew tap AdoptOpenJDK/openjdk
brew cask install adoptopenjdk8

Installation

Sypht Java Client is available on maven central

Maven

<dependency>
  <groupId>com.sypht</groupId>
  <artifactId>sypht-java-client</artifactId>
  <version>1.4</version>
</dependency>

Gradle

// https://mvnrepository.com/artifact/com.sypht/sypht-java-client
compile group: 'com.sypht', name: 'sypht-java-client', version: '1.4'

SBT

// https://mvnrepository.com/artifact/com.sypht/sypht-java-client
libraryDependencies += "com.sypht" % "sypht-java-client" % "1.4"

Ivy

<!-- https://mvnrepository.com/artifact/com.sypht/sypht-java-client -->
<dependency org="com.sypht" name="sypht-java-client" rev="1.4"/>

Usage

Populate these system environment variables with the credentials generated above:

SYPHT_API_KEY="<client_id>:<client_secret>"

or

OAUTH_CLIENT_ID="<client_id>"
OAUTH_CLIENT_SECRET="<client_secret>"

then invoke the client with a file of your choice:

SyphtClient client = new SyphtClient();
System.out.println(
        client.result(
                client.upload(
                        new File("receipt.pdf"))));

License

The software in this repository is available as open source under the terms of the Apache License.

Code of Conduct

Everyone interacting in the project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.