This Celiveo WebAdmin command line API tool allows admin to import printers in bulk using CSV file, synchronize a printer and get its synchronization status. This command line tool can also be invoked by third party systems, by passing the right parameters. It responds using the correct return code at standard output – stdout.

Download

To download the latest version of the Celiveo Web Admin Command Line API tool, click here.

Call:

Calls to this API tool is performed from the Windows command line interface (cmd.exe) or using Start-Process in Powershell or Process.Start() in C# or any other language’s method which spawns a process on Windows OS.

The API returns value zero when call is successful with response on stdout or non-zero when call fails, with description on stdout.

Security:

This tool supports TLS 1.2 encryption or any protocol that is configured for the CeliveoDB SQL Server database access (defined in SQL Server).

It uses that protocol to encrypt communication to the SQL Server database.

Before you begin:

This tool needs the connection details to access the Web Admin database (CeliveoDB).

You can provide data base information in one of the following two ways:

  • Copy ConnectionString.xml from Web Admin Server’s “C:\Program Files\Celiveo\Celiveo 8\Web Admin” to the directory where the command line API tool is installed and run. Ensure that the access to the directory containing the tool is secured to prevent unauthorized usage.
    The login information is read from that encrypted file and used to access the CeliveoDB database
    OR
  • Run the tool on the server where Web Admin is installed at “C:\Program Files\ Celiveo\Celiveo 8”
    Launch the command line tool with the syntax “ImportPrinter.exe getstatus abc”.
    This is a one time operation that asks for all CeliveoDB database details, they will be stored locally in an encrypted file and not requested again.

API to Import Printers into Celiveo WebAdmin

Version: 8.6.30.2

Purpose: This call initiates the import of printers from a CSV file into the Celiveo Web Admin software.
The information about the printer is obtained from the values provided in the CSV file.
You must have created and tested some master printers in the Celiveo WebAdmin software (Master Printers), that the imported printers will clone when being added through the API.

Example of process:

  • create and configure a master printer in the Celiveo WebAdmin portal, its MAC Address is 00:8A:75:42:FE:1F.

Important: That printer to clone shall be of the exact same type as the injected printers that will clone it.
Examples:
If you want to inject HP Futuresmart 3 or 4 printers, you must have defined a HP Futuresmart 3 or 4 master printer.
If you want to inject Ricoh SOP 2.x printers, you must have defined a Ricoh SOP 2.x master printer.
If you want to inject Lexmark Android-capable printers, you must have defined a Lexmark Android-capable master printer.
etc…

  • build a CSV file where each line represents a printer to import into the Celiveo WebAdmin, and contains the MAC address of the printer to clone.
    The columns content of the printer definition override those properties cloned from the master printer (ie: tags, name, description…)
  • run the import utility
  • synchronize the printer(s) using the Celiveo WebAdmin or the command line tool

List of printers to import with master printer(s) cloning:

The CSV file needs to be created with one line per printer to inject, and each line data in the following format:

Column 1 IPv4 MAC Address of MP2C
Format: 12:34:56:78:90:AB or 123456789AB
Column 2 HostName of P2I (string, max length= 250 chars)
Column 3 IPv4 Address of P2I
Format: xxx.xxx.xxx.xxx
Column 4 IPv4 MAC Address of P2I
Format: 12:34:56:78:90:AB or 123456789AB
Column 5 Serial number of P2I (string, max length = 50 chars)
Column 6 Printer model of P2I (string, max length = 250 chars)
The printer model must be solution-compatible with the MP2C printer model.
Column 7 Printer Brand of P2I (string, LEXMARK HP RICOH KM XEROX CANON TOSHIBA FUJI-XEROX KYOCERA etc…
The brand must be the exact same as the MP2C printer brand.
Column 8 Printer Description of P2I (string, max length = 250 chars)
Column 9 Printer Type for P2I (“MFP” or “SFP”)
The printer Type must be the exact same as the MP2C printer Type.
Column 10 Tag1 value of P2I (string, max length = 150 chars)
Column 11 Tag2 value of P2I (string, max length = 150 chars)
Column 12 Tag3 value of P2I (string, max length = 150 chars)
Column 13 Tag4 value of P2I (string, max length = 150 chars)
Column 14 Tag5 value of P2I (string, max length = 150 chars)
Where, MP2C = Master Printer to clone and P2I = Printer to Inject
Syntax ImportPrinter import < CSVPath >, where CSVPath is the full path to the CSV.
Example ImportPrinter import C:\Users\Documents\Printers\Printers.csv
Response Status Returns printer added or updated description, if successful:
Error Returns Error status and description if printer is not able to be added.
0: Success
-1000 : Invalid number of command line parameters
1000 : error connecting to CeliveoDB SQL database
1004 : Invalid command

API to Synchronize a Printer

Version: 8.6.30.2

Purpose: This call synchronizes a printer present in the Celiveo Web Admin database, to load the printer agent and settings, as appropriate.
p((. It is same as syncing the printer from the Celiveo WebAdmin UI.

Note: The printer should have been created interactively in the Celiveo WebAdmin UI or through the “ImportPrinter” call documented above.

Syntax ImportPrinter sync < filepath or IP Address >
Filepath —> For multiple printers, path to the file – One IP per line.
IP Address —> IPv4 address for a single printer.
Example ImportPrinter sync 192.168.4.45
Response No text output on stdout upon success or failure.
Return Code Returns Non-Zero code in case the printer does not exist in Web admin or for any other error.
0: Success
-1000 : Invalid number of command line parameters
1000 : error connecting to CeliveoDB SQL database
1003 : Printer to be sync’d does not exist in Web Admin database
1004 : Invalid command

API to Get Synchronization Status of Printer present in Celiveo WebAdmin

Version: 8.6.30.2

Purpose: This call gets the status of printer present in Celiveo Web Admin.
p((. The status of the printer is returned, that’s the value displayed in the Celiveo Web Admin UI.

Syntax ImportPrinter getstatus < filepath or IP Address >
Filepath —> For multiple printers, path to the file – One IP per line.
IP Address —> IPv4 address for a single printer.
Example ImportPrinter getstatus 192.168.4.145
Response Returns status of the printer if the call is successful:
Error
Configuration in progress
Synchronized
Sync failed: Could not connect to database
Sync failed: Unable to execute SQL procedure
Sync failed: No data
Sync failed: Unable to retrieve SQL configuration from Web Admin.
Sync failed: Internal error
Sync failed: Unknown error
Synchronized (Cost profile not set)
Synchronized (Print rules not set)
Synchronized (Cost profile and print rules not set)
Sync failed: No authentication configuration
Printer configuration in progress
Sync failed: upgrade Celiveo
Sync failed: Invalid printer credentials
Sync failed: Invalid AD/LDAP credentials
All embedded code packages loaded
Downloading Celiveo embedded solution
Sync failed: Unable to download Celiveo embedded solution
Sync failed: Unable to install Celiveo embedded solution
Configuring Celiveo embedded solution
Sync failed: Unable to configure Celiveo embedded solution
Installing Celiveo embedded solution
Sync failed: Printer is offline.
Not synchronized
Sync request sent
N/A
Ready for synchronization
Printer is unreachable
Sync failed
Sync failed: no answer from CSA
Ready for license synchronization
License update failed
License validation failed
Return code Returns Error status and description if printer is not able to be added.
0: Success
-1000 : Invalid number of command line parameters
1000 : error connecting to CeliveoDB SQL database
1004 : Invalid command
Returns “Printer not found” on stderr for any other error.
Last modified: 8 September 2020

Feedback

Was this helpful?

Yes No
You indicated this topic was not helpful to you ...
Could you please leave a comment telling us why? Thank you!
Thanks for your feedback.

Post your comment on this topic.

Post Comment