Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

lloyd-github-com/orchestrator-nodejs

Open more actions menu
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

uipath-orchestrator

This is a Node.JS client for UiPath Orchestrator.

Table of content

  1. Installation
  2. Usage
  3. TODO
  4. License

Installation

npm install uipath-orchestrator

Usage

See the wiki page for a complete reference.

Orchestrator is a class and its constructor takes an options object.

var util = require('util');
var Orchestrator = require('uipath-orchestrator');
var orchestrator = new Orchestrator({
     tenancyName: 'test',           // The Orchestrator Tenancy
     usernameOrEmailAddress: 'xxx',// The Orchestrator login
     password: 'yyy',               // The Orchestrator password
     hostname: 'host.company.com', // The instance hostname
     isSecure: true,                // optional (defaults to true)
     port: 443, // optional (defaults to 80 or 443 based on isSecure)
     invalidCertificate: false, // optional (defaults to false)
     connectionPool: 5 // options, 0=unlimited (defaults to 1)
});
var apiPath = '/odata/Users';
var apiQuery = {};
orchestrator.get(apiPath, apiQuery, function (err, data) {
    if (err) {
        console.error('Error: ' + err);
    }
    console.log('Data: ' + util.inspect(data));
});

The 5 supported basic methods are as follows:

Orchestrator.get(path, query, callback);
Orchestrator.post(path, data, callback);
Orchestrator.put(path, data, callback);
Orchestrator.patch(path, data, callback);
Orchestrator.delete(path, callback);

where query is an querystring-ready object, and data a JSON.stringifyable object.

These are very generic methods, and the plan is to keep version-dedicated helpers up-to-date in the following form:

orchestrator.v2.api.postLogs(postLogsData, callback);
orchestrator.v2.odata.getUsers(getUsersQuery, callback);

It is possible to switch organization units with the following method:

orchestrator.switchOrganizationUnitId(1234);

Note that you can play around with these by creating a sandbox tenancy here (experimental support): https://platform.uipath.com/

In that case, you will need to use a different method of authentication (please see the tool in tools/platform) The minimum configuration for platform access is as follows:

new Orchestrator({
    refreshToken: 'qwertyuiopasdfghjkllzxcvbnmQWERTYUIOPASDFGHJK',
    serviceInstanceLogicalName: 'myInstanceLogicalName',
    path: 'myAccountLogicalName/myInstanceLogicalName'
})

TODO

This is just the beginning and there is a lot left to do. If you have suggestions and ideas, please do not hesitate to let me know.

  • Proper unit testing
  • Extend each API version
  • Write wiki
  • Write TS definitions
  • Add DELETE method
  • Add PATCH method
  • Add OrganizationUnitId handling
  • Add browser support (minified)

License

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.