We need a new API for communicating START Replacement forms for Backup against NetBill.
There is already an old API for talking between old START and NetBill, but we are creating a new interface as we are changing the arguments.
From the perspective of ServiceNow, we need the methods:
- add() provides a netid, nodename, other arguments to create a node
- delete() provide a nodename, tell NetBill to delete the record
- getBilling() provide a netid, receive whether or not PTAEO required
- getNodeList() provide a netid, receive a list containing zero or more nodename(s) that are associated with that netid
- getNodeDetails() provide a nodename, receive the details for that nodename
- update() provide a nodename, provide arguments to change on the node
add()
Arguments for add:
netid of owner
nodename (needs to be unique, and NOT exist already in the system)
client category (DS,MW,WS)
Client OS (Windows, Mac, Unix)
interval (backup time, or never)
PTAEO, passed as six separate strings
Add method needs to return an error code indicating whether or not the add request was accepted, and for errors should indicate the problem with the data.
Interval, possible values:
None - I will backup manually
12:00AM - 12:29AM
12:30AM - 12:59AM
1:00AM - 1:29AM
1:30AM - 1:59AM
2:00AM - 2:29AM
2:30AM - 2:59AM
3:00AM - 3:29AM
3:30AM - 3:59AM
4:00AM - 4:29AM
4:30AM - 4:59AM
5:00AM - 5:29AM
5:30AM - 5:59AM
6:00AM - 6:29AM
6:30AM - 6:59AM
7:00AM - 7:29AM
7:30AM - 7:59AM
8:00AM - 8:29AM
8:30AM - 8:59AM
9:00AM - 9:29AM
9:30AM - 9:59AM
10:00AM - 10:29AM
10:30AM - 10:59AM
11:00AM - 11:29AM
11:30AM - 11:59AM
delete()
Arguments for delete:
netid of owner
nodename (needs to be unique, and exist)
datestamp for date to delete, formatted as Oracle date (31-JAN-13). This is awkward for ServiceNow, but native for NetBill. Furthermore, ServiceNow already has a method that does this for previous Oracle interactions.
Delete method needs to return an error code indicating whether or not the delete request was accepted, and for errors should indicate the problem with the data.
getBilling()
Arguments for getBilling:
netid of owner
getBilling method needs to return an error code indicating whether or not the getBilling request was accepted. If no error, also needs to return:
whether a PTAEO is required
getNodeList()
Arguments for getNodeList:
netid of owner
getNodeList method needs to return an error code indicating whether or not the getNodeset request was accepted. If no error, also needs to return:
- a count of nodes. zero or more.
- a comma-delimited list, containing zero or more nodenames
each nodename is received in a single string, comma separated, no spaces
Sample nodename strings
- "tanner,cooper,radar"
- "" (empty set)
- "zuse"
getNodeDetails()
Arguments for getNodeDetails:
nodename of node
getNodeDetails method needs to return an error code indicating whether or not the getNodeDetails request was accepted. If no error, also needs to return:
- returns:
nodename (needs to be unique, and NOT exist already in the system)
client category (DS,MW,WS)
Client OS (Windows, Mac, Unix)
interval (backup time, or never)
PTAEO, passed as six separate strings
update()
Arguments for update:
netid of owner
nodename (needs to be unique, and already exist)
client category (DS,MW,WS)
Client OS (Windows, Mac, Unix)
interval (backup time, or never)
PTAEO, passed as six separate strings
update method needs to return an error code indicating whether or not the add request was accepted, and for errors should indicate the problem with the data.