32

Call the service API

To execute an action on tesseractor.com, you simply send an HTTP request to the address https://tesseractor.com/api followed by the name of the action and a series of parameters:

https://tesseractor.com/api/v1/action?login=abcdef&password=ABCDEF

You MUST use an HTTPS connection to insure that your identification code and your password, and implicitly, the files exchanged with the service, remain confidential. If you don't, the request returns an error HTTP 301 Moved Permanently. The certificate of the server was signed by Let's Encrypt.

action is getcredit, scantext, scancode, checkpdfa, makepdfa or antivirus, login and password are your identification code and your password. Depending on the action, the request is either a GET or a POST and more parameters might be necessary.

Your identification code in 6 small letters is displayed in bold on your home page. To change your password, press the button in the menu bar to access the configuration of your account.

Try entering https://tesseractor.com/api/v1/getcredit?login=abcdef&password=ABCDEF in the address bar of your navigator replacing abcdef and ABCDEF by your identification code and your password.

IMPORTANT: Remember to clear the browser's history after testing a URL with your identification code and your password.

API

All calls to the API return either a HTTP error code such as HTTP/1.1 400 Bad Request, HTTP/1.1 401 Unauthorized or HTTP/1.1 500 Internal Error or the code HTTP/1.1 200 OK with as content the binary of a PDF application/pdf, a text file text/plain or the string representation of a JSON structure application/json. The JSON structure always contains the fields status and data. status is either success or fail and sometimes error. data is null or any other value returned by the requested action.

You can simply use a command like curl to call tesseractor.com.

$ curl -D - -X GET "https://tesseractor.com/api/v1/getcredit?login=abcdef&password=ABCDEF"

Type the following command to clear the shell's history after testing a URL with your identification code and your password:

$ history -c

In a program, you will want a function able to send an HTTP request to a server and to collect the returned data. To run the examples in PHP, download the files sendhttp.php and filemimetype.php from the iZend library and copy them in the space of your own application.

The file sendhttp.php defines the functions sendget and sendpost.

Read the page sendhttp of the documentation on iZend for more technical details.

sendget
sendpost
SYNOPSIS

sendget($url, $args, $options=false, $header=false)

sendpost($url, $args, $files=false, $base64=false, $options=false, $header=false)

DESCRIPTION

sendget sends a GET request to an HTTP server at the address specified by $url with the parameters in $args.

sendpost returns the document sent back by the HTTP service called with a POST at the address $url with the arguments $args and the attached $files encoded in base64 if $base64 is true.

sendget and sendpost accept a URL with parameters (query string) which must be escaped.

$url is a string of characters with the format https://tesseractor.com/api/v1/action where action designates the requested function such as getcredit.

$args is an array containing the list of values of the parameters of the called function such as array( 'login' => 'abcdef', 'password' => 'ABCDEF', ... ). NOTE: The parameters in $args are automatically escaped.

$files contains the list of files attached to the request in the form of an associative array { 'docname' => {'name' => 'filename', 'type' => 'mimetype', 'tmp_name' => 'pathname'}, ... }. This parameter is optional. Typically, it's used to pass a file transmitted by an <input type="file" name="docname"... /> tag in an HTML form. If $base64 is true, the contents of the files are encoded in base64..

sendget and sendpost return an array containing the HTTP code, the header and the body of the document returned by the server or false in case of error.

The file filemimetype.php defines the function file_mime_type.

Read the page file_mime_type of the documentation on iZend for more technical details.

file_mime_type
SYNOPSIS

file_mime_type($file, $encoding=true)

DESCRIPTION

file_mime_type returns the MIME type of the file $file; e.g. text/plain. If $encoding is true, file_mime_type adds the character encoding used for the data, e.g. text/plain; charset=utf-8. The MIME type and the encoding type are separated by a ; (SEMICOLON) followed by a space character (SPACE).

EXAMPLE

Assuming you have saved the file sendhttp.php in the current directory, run PHP in interactive mode, load the sendget function and call it with the URL https://tesseractor.com/api/v1/getcredit and an array containing your identification code and your password in argument:

$ php -a
php > require_once 'sendhttp.php';
php > $r=sendget('https://tesseractor.com/api/v1/getcredit', array('login' => 'abcdef', 'password' => 'ABCDEF'));
php > echo $r[0] == 200 ? $r[2] : 'HTTP ERROR ' . $r[0];
{"status":"success","data":{"credit":10}}
php > quit
SEE ALSO

Check your credit

Comments

To add a comment, click here.