The Continuum REST API has many functions, most of which return CSK Objects, such as a Task.
The API supports three output formats - text
, json
, and xml
.
API documentation will define what sort of object each function returns. The defintions of those objects are listed below.
Some API functions return a list of object. In this case, the output will be a JSON array of the object, or an XML array, depending on the specified output format.
{
"Address": "",
"Credentials": "",
"ID": "",
"Name": "",
"SharedOrLocal": "",
"Status": "",
"Tags": []
}
<Asset>
<Address />
<Credentials />
<ID />
<Name />
<SharedOrLocal />
<Status />
<Tags />
</Asset>
The text response will include the following properties:
{
"APIProtocol": "",
"APIUrl": "",
"DefaultAccount": "",
"ID": "",
"Name": "",
"Provider": ""
}
<Cloud>
<APIProtocol />
<APIUrl />
<DefaultAccount />
<ID />
<Name />
<Provider />
</Cloud>
The text response will include the following properties:
{
"AccountNumber": "",
"DefaultCloud": "",
"ID": "",
"IsDefault": "",
"LoginID": "",
"Name": "",
"Provider": ""
}
<CloudAccount>
<AccountNumber />
<DefaultCloud />
<ID />
<Name />
<IsDefault />
<LoginID />
<Provider />
</Cloud>
The text response will include the following properties:
{
"HasPassphrase": "",
"HasPrivateKey": "",
"ID": "",
"Name": ""
}
<KeyPair>
<HasPassphrase />
<HasPrivateKey />
<ID />
<Name />
</KeyPair>
The text response will include the following properties:
{
"Description": "",
"Domain": "",
"ID": "",
"Name": "",
"Type": "",
"Username": ""
}
<Credential>
<Description />
<Domain />
<ID />
<Name />
<Type />
<Username />
</Credential>
The text response will include the following properties:
A Datastore Document is a document with a completely customizable schema. Datastore Documents are stored in MongoDB, therefore are JSON in their native format.
If the xml
output format is specified, the API will make an attempt to convert the document to XML.
The text
format makes no conversion attempt - text
also returns a JSON representation.
{
"ActionID": null,
"PlanID": 0,
"RunOn": "",
"ScheduleID": "",
"Source": ""
}
<Plan>
<ActionID />
<PlanID />
<RunOn />
<ScheduleID />
<Source />
</Plan>
The text response will include the following properties:
There are several ways a Task Object can be returned - basic and complete. Some functions (that only need a list of Tasks) will return the basic properties, and others will return the more complete object.
{
"Code": "",
"Description": "",
"ID": "",
"Name": "",
"OriginalTaskID": "",
"Status": "",
"Tags": null,
"Version": 1.0,
"Versions": 1
}
{
"ConcurrentInstances": "",
"IsDefaultVersion": true,
"NextMajorVersion": ",
"NextMinorVersion": "",
"NumberOfApprovedVersions": 0,
"OriginalTaskID": "",
"QueueDepth": ""
}
<Task>
<Code />
<ConcurrentInstances />
<ID />
<Description />
<IsDefaultVersion />
<Name />
<NextMajorVersion />
<NextMinorVersion />
<NumberOfApprovedVersions />
<OriginalTaskID />
<QueueDepth />
<Status />
<Version />
</Task>
The text response will include the following properties:
{
"Instance": "",
"account_id": "",
"account_name": "",
"allow_cancel": "",
"asset_id": "",
"asset_name": "",
"ce_node": "",
"cloud_id": "",
"cloud_name": "",
"completed_dt": "",
"debug_level": 20,
"options": {},
"pid": "",
"started_dt": "",
"submitted_by": "",
"submitted_by_instance": "",
"submitted_dt": "",
"summary": [],
"task_id": "",
"task_instance": "",
"task_name": "",
"task_name_label": "",
"task_status": ""
}
If a Task is doing work for another Continuum feature, the options
property will contain additional useful information.
For example, in this case the Task Instance was doing work for a Pipeline Instance:
"options": {
"instance_id": "5c2f8f975d9e5d2ba5f516ce",
"invoked_by": "pipeline_instance",
"phase": "Build and Unit Test",
"stage": "Build",
"step": 15
}
<TaskInstance>
<task_name_label />
<pid />
<debug_level />
<account_name />
<asset_id />
<submitted_by />
<cloud_id />
<ce_node />
<submitted_dt />
<submitted_by_instance />
<account_id />
<completed_dt />
<asset_name />
<cloud_name />
<task_instance />
<task_id />
<Instance />
<started_dt />
<allow_cancel />
<task_name />
<task_status />
<options />
</TaskInstance>
The text response will include the following properties:
A Task Log will be a list of individual log entry
items. The complete Task Log contains additional information beyond the actual items.
{
"instance": "",
"log_rows": [ "A list of 'log_row' Objects" ],
"numrows": 0,
"summary_rows": null,
"task_id": "",
"task_status": ""
}
{
"codeblock_name": "",
"command_text": "",
"connection_name": "",
"entered_dt": "",
"function_label": "",
"function_name": "",
"log": "",
"step_id": "",
"step_order": 1,
"task_id": "",
"task_instance": 0,
"variable_name": "",
"variable_value": ""
}
At this time, the XML response does not contain additional details - it is simply an array of log_row Objects.
<row>
<codeblock_name />
<command_text />
<connection_name />
<entered_dt />
<function_label />
<log />
<step_id />
<step_order />
<task_id />
<task_instance />
<variable_name />
<variable_value />
</Process>
The text response will include the following properties:
{
"Days": [],
"DaysOrWeekdays": "",
"Debug": 50,
"Description": "",
"Hours": [],
"Label": "",
"Minutes": [],
"Months": [],
"Parameters": "",
"ScheduleID": "",
"Task": ""
}
<Schedule>
<Days />
<DaysOrWeekdays />
<Debug />
<Description />
<Hours />
<Label />
<Minutes />
<Months />
<Parameters />
<ScheduleID />
<Task />
</Schedule>
The text response will include the following properties:
{
"_id": "",
"name": "",
"project": "",
"description": "",
"phases": []
}
<definition>
<_id />
<name />
<project />
<description />
<phases />
</definition>
The text response will include the following properties:
{
"_id": "",
"name": "",
"description": "",
"stages": []
}
<phase>
<_id />
<name />
<description />
<stages />
</phase>
The text response will include the following properties:
{
"_id": "",
"name": "",
"description": "",
"ingate": {},
"outgate": {},
"steps": []
}
<stage>
<_id />
<name />
<description />
<ingate />
<outgate />
<steps />
</stage>
The text response will include the following properties:
{
"_id": "",
"name": ""
"create_dt": "",
"status": ""
}
<project>
<_id />
<name />
<create_dt />
<status />
</stage>
The text response will include the following properties:
{
"_id": "",
"name": "",
"project": "",
"pipeline_id": "",
"pipeline_name": "",
"pi_summary_id": "",
"data": {},
"phases": [],
"start_dt": "",
"end_dt": "",
"status": ""
}
<pipelineinstance>
<_id />
<name />
<project />
<pipeline_id />
<pipeline_name />
<pi_summary_id />
<data />
<phases />
<start_dt />
<end_dt />
<status />
</pipelineinstance>
The text response will include the following properties:
{
"status": "",
"create_dt": "",
"project_id": "",
"group": "",
"project_team_id": "",
"project": "",
"pipeline_id": "",
"last_pi_number": 0,
"pipeline_name": "",
"pipeline_team_id": "",
"create_dt2": "",
"_id": ""
}
<pigroup>
<status>
<create_dt>
<project_id>
<group>
<project_team_id>
<project>
<pipeline_id>
<last_pi_number>
<pipeline_name>
<pipeline_team_id>
<create_dt2>
<_id />
</pigroup>
The text response will include the following properties:
The Settings object is a complete description of the current Continuum system configuration. json
and xml
will return the complete
configuration in the speficied output format. text
format is a special case, and it will format the settings into a readable format.
Security
AllowLogin : True
PassMaxLength : 15
PassMinLength : 6
PasswordHistory : 0
AutoLockReset : True
PassComplexity : False
PassMaxAttempts : 99
PassRequireInitialChange : False
Poller
LoopDelay : 3
Enabled : True
A User object contains secure information such as passwords. This secure information is never included in a User object.
{
"AuthenticationType": "",
"Email": "",
"FullName": "",
"LastLoginDT": "",
"LoginID": "",
"Role": "",
"Status": ""
}
<User>
<AuthenticationType />
<Email />
<FullName />
<LastLoginDT />
<LoginID />
<Role />
<Status />
</User>
The text response will include the following properties:
To conserve space, log entries are stored with numeric codes for ObjectType. Additionally, a log entry will have an Action
and LogType
property.
NA = 0
User = 1
Asset = 2
Task = 3
Schedule = 4
Team = 5
Tag = 7
Image = 8
MessageTemplate = 18
Parameter = 34
Credential = 35
Domain = 36
CloudAccount = 40
Cloud = 41
CloudKeyPair = 45
CanvasItem = 50
Pipeline = 60
Phase = 61
Stage = 62
PipelineInstanceGroup = 63
PipelineInstance = 64
Project = 65
ProjectArtifact = 66
Package = 80
PackageRevision = 81
Progression = 90
UserLogin
UserLogout
UserLoginAttempt
UserPasswordChange
UserSessionDrop
SystemLicenseException
ObjectAdd
ObjectModify
ObjectDelete
ObjectView
ObjectCopy
PageView
ReportView
APIInterface
Other
ConfigChange
{
"Action": "",
"Log": "",
"LogDate": "",
"LogType": "",
"ObjectID": "",
"ObjectType": 0,
"User": ""
}
<item>
<Action />
<Log />
<LogDate />
<LogType />
<ObjectID />
<ObjectType />
<User />
</item>
The text response will include the following properties:
{
"Component": "",
"Enabled": "",
"Heartbeat": "",
"Instance": "",
"LoadValue": null,
"MinutesIdle": 0,
"hostname": "",
"platform": ""
}
<Process>
<Component />
<Enabled />
<Heartbeat />
<Instance />
<LoadValue />
<MinutesIdle />
<hostname />
<platform />
</Process>
The text response will include the following properties:
{
"in_use": 5,
"tag_desc": "Manage the Peoplesoft application.",
"tag_name": "PeoplesoftAdmin"
}
<Tag>
<in_use />
<tag_desc />
<tag_name />
</Tag>
The text response will include the following properties: