Skip to content

Commit

Permalink
Update Readme.
Browse files Browse the repository at this point in the history
  • Loading branch information
Kaevan89 committed Dec 13, 2021
1 parent 21ff6f8 commit 86e029c
Showing 1 changed file with 82 additions and 2 deletions.
84 changes: 82 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,82 @@
# veryfi-rust
Rust module for communicating with the Veryfi OCR API
![Veryfi Logo](https://cdn.veryfi.com/logos/veryfi-logo-wide-github.png)

[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
[![code coverage](.github/reports/badges/plastic.svg)](.github/reports/badges/plastic.svg)

**Veryfi** is a Rust module for communicating with the [Veryfi OCR API](https://veryfi.com/api/)

## Installation
Add to your cargo.tml
```toml
veryfi = "1.0.0"
```

## Getting Started

### Obtaining Client ID and user keys
If you don't have an account with Veryfi, please go ahead and register here: [https://hub.veryfi.com/signup/api/](https://hub.veryfi.com/signup/api/)

### Rust API Client Library
The **Veryfi** library can be used to communicate with Veryfi API. All available functionality is described here DOC

Below is the sample script using **Veryfi** to OCR and extract data from a document:

```rust
use veryfi::client::create_client;
use serde_json::{from_str, Map, Value};

fn main() {
let client_id = "your_client_id".to_string();
let client_secret = "your_client_secret".to_string();
let username = "your_username".to_string();
let api_key = "your_api_key".to_string();

let client = create_client(client_id, client_secret, username, api_key);
let categories = vec!["Advertising & Marketing", "Automotive"];
let file = "path_to_your_file";
let delete_after_processing = true;
let additional_parameters = Map::new();

let response = client.process_document(file_path, categories, delete_after_processing, additional_parameters);
print!(response); // to print
let json_response: Value = from_str(&*response).unwrap();
// ...
}
```

### Update a document

```rust
use veryfi::client::create_client;
use serde_json::{from_str, Map, Value};

fn main() {
let client_id = "your_client_id".to_string();
let client_secret = "your_client_secret".to_string();
let username = "your_username".to_string();
let api_key = "your_api_key".to_string();

let client = create_client(client_id, client_secret, username, api_key);
let document_id = "your_document_id".to_string();
let mut parameters = Map::new();
let notes = "your_notes";
parameters.insert("notes".to_string(), Value::from(notes.clone()));

let response = client.update_document(document_id, parameters);
print!(response); // to print
let json_response: Value = from_str(&*response).unwrap();
// ...
}
```

## Need help?
If you run into any issue or need help installing or using the library, please contact [email protected].

If you found a bug in this library or would like new features added, then open an issue or pull requests against this repo!

To learn more about Veryfi visit https://www.veryfi.com/

## Tutorial


Below is an introduction to the Rust SDK.

0 comments on commit 86e029c

Please sign in to comment.