Global Management One API

Overview

The following API makes it possible to retrieve various Global Management One service-related information.
To start using the API, please contact your NTT Com account manager / service manager. If you have no NTT Com account manager / service manager, please inquire from "Contact" in the "Support" menu.

You can find Global Management One service overview on this site.

Resource URL

Please use either the global common domain or individual regional domains.

If you want to use the global common domain, depending on the circumstances of your available points, your request connect to the nearest API gateway.1

1.Base Path(Global Load Balance)

https://api.ntt.com/v1/gmone/

2.Base Path(Region)

https://{region}.api.ntt.com/v1/gmone/
  • regions: jp|us|uk
  • e.g. https://us.api.ntt.com/v1/gmone

Resource Information

Key Value
Response Format JSON or csv
Authentication (OAuth) Yes
Bandwidth control#1 Yes
  • #1 implement appropriate flow restriction in the customer connection unit

Incident Management Ticket API

/v1/gmone/im/

This api makes it possible to manipulate (view, find, create and update) Incident Management tickest in the Global Management One system.


getTicketByID

GET /v1/gmone/im/tickets/${ticketID}

Retrieve the specified ticket information. The identifier of the request ticket is ticket ID.

Request Parameters

URL Path parameter

Name Description Type Mandatory
ticketID ticket id you wish to request number true

Example Request

GET /v1/gmone/im/tickets/123

Response Parameters

Name Description Type
ticketId ticket ID number
subject ticket subject string
requestors ticket requester (email address) string array
client client code string
owner ticket owner (person in charge) username string
queue ticket queue string
priority ticket priority(P1~P4, null) string
status ticket status string (please see below)
createdDate created date number (epoc milliseconds)
updatedDate last updated date number (epoc milliseconds)
resolvedDate resolved date number (epoc milliseconds)
correlatedTicketIds correlated ticket ID list number array
masterTicketId master ticket ID number
ccs ticket CC notifiee email address list string array
adminCcs ticket BCC notifiee string array
lastUpdatedBy username who updated last string
serviceCheck incident related service check name string
cis incident related CI name list string array

"status" Parameter List

Value Description
new new ticket
active engaging
pending close waiting for close confirmation from customer or any other steak holders
pending vendor waiting for vendor information / action
pending event waiting for preceding event result
pending client waiting for customer's response
hand-off hand over
resolved closed

Example Response

{
  "ticketId": 123,
  "subject": "example ticket",
  "requestors": [
    "example@example.com"
  ],
  "client": "example",
  "owner": "example",
  "queue": "example-general",
  "priority": "P3",
  "status": "active",
  "createdDate": 1472124530000,
  "updatedDate": 1472208340000,
  "resolvedDate": 0,
  "correlatedTicketIds": null,
  "masterTicketId": null,
  "ccs": [
    "qwerty@example.com"
  ],
  "adminCcs": [
    "zxcvbn@example.com"
  ],
  "lastUpdatedBy": "example",
  "serviceCheck": null,
  "cis": [
    "exampleci.example"
  ]
}

getTicketListByQuery

GET /v1/gmone/im/tickets?key=value

Retrieving the ticket list. The below filter options are available to filter the result of ticket list query.

Request Parameters

List of possible URL Queries

Name Description Type Mandatory Default value
ticketId ticket ID number false Empty
queue ticket queue string false Empty
client client code string false API requester's client
requestor ticket requester string false Empty
CI related CI string false Empty
serviceCheck related service check string false Empty
priority ticket priority string (fixed: P1, P2, P3, P4) false Empty
status ticket status string (please see below) false Empty
limit return count limit number false Empty
idDirection ID sorting order string (fixed: asc / desc) false Empty
createdAfter created date after number (epoc millisecond) false Empty
createdBefore created date before number (epoc millisecond) false Empty
updatedAfter updated date after number (epoc millisecond) false Empty
updatedBefore updated date before number (epoc millisecond) false Empty
resolvedAfter resolved date after number (epoc millisecond) false Empty
resolvedBefore resolved date before number (epoc millisecond) false Empty

"status" Parameter List

Value Description
new new ticket
active engaging
pending close waiting for close confirmation from customer or any other steak holders
pending vendor waiting for vendor information / action
pending event waiting for preceding event result
pending client waiting for customer's response
hand-off hand over
resolved closed

Example Request

GET /v1/gmone/im/tickets?status=active&queue=example-general&priority=P3&idDirection=desc

Response Parameters

Name Description Type
ticketId ticket ID number
subject ticket subject string
requestors ticket requester (email address) string array
client client code string
owner ticket owner (person in charge) username string
queue ticket queue string
priority ticket priority(P1~P4, null) string
status ticket status string (please see below)
createdDate created date number (epoc milliseconds)
updatedDate last updated date number (epoc milliseconds)
resolvedDate resolved date number (epoc milliseconds)
correlatedTicketIds correlated ticket ID list number array
masterTicketId master ticket ID number

"status" Parameter List

Value Description
new new ticket
active engaging
pending close waiting for close confirmation from customer or any other steak holders
pending vendor waiting for vendor information / action
pending event waiting for preceding event result
pending client waiting for customer's response
hand-off hand over
resolved closed

Example Response

[
  {
    "ticketId": 312,
    "subject": "example ticket #3",
    "requestors": [
      "example@example.com"
    ],
    "client": "example",
    "owner": "example",
    "queue": "example-general",
    "priority": "P3",
    "status": "active",
    "createdDate": 1472125290000,
    "updatedDate": 1472125291000,
    "resolvedDate": 0,
    "correlatedTicketIds": null,
    "masterTicketId": null
  },
  {
    "ticketId": 231,
    "subject": "example ticket #2",
    "requestors": [
      "asdfgh@example.com"
    ],
    "client": "example",
    "owner": "example2",
    "queue": "example-general",
    "priority": "P3",
    "status": "active",
    "createdDate": 1471848940000,
    "updatedDate": 1471947900000,
    "resolvedDate": 0,
    "correlatedTicketIds": null,
    "masterTicketId": null
  }
]

getTicketLogByTicketID

GET /v1/gmone/im/tickets/${ticketID}/log

Getting ticket corresponding log. Identifier is ticket ID.

Request Parameters

Path Parameter

Name Description Type Mandatory
ticketID ticket id you wish to request number true

Example Request

GET /v1/gmone/im/tickets/123/log

Response Parameters

Name Description Type
actor log actor number
actionDate logged date string
actionType log action type (please see below) string array
post comment post content string
oldValue value before update string
newValue value after update string
attachments attachmentName attaachment file name string
attachmentID attachment file ID number

"actionType" Parameter List

Value Description
Create ticket creation
Add Log adding log
Add Requestor adding requester
Delete Requestor deleting requester
Add CC adding notifiee CC email address
Delete CC deleting notifiee CC email address
Add Admin CC adding notifiee BCC email address
Delete Admin CC deleting notifiee BCC email address
Change Owner changing operator
Change Queue changing ticket queue
Change Status changing ticket status
Change Prority changing ticket priority
Subject Change changing subject
Add CI adding related CI
Remove CI releting related CI

Example Response

[
  {
    "actor": "example",
    "actionDate": 1472203317000,
    "actionType": "Add Log",
    "post": "example update",
    "oldValue": null,
    "newValue": null,
    "attachments": null
  },
  {
    "actor": "excustomer",
    "actionDate": 1472208203000,
    "actionType": "Add Log",
    "post": "example customer update",
    "oldValue": null,
    "newValue": null,
    "attachments": [
      {
        "attachmentName": "FileToTest.txt",
        "attachmentID": 730
      }
    ]
  },
  {
    "actor": "example",
    "actionDate": 1472208340000,
    "actionType": "Change Status",
    "post": null,
    "oldValue": "active",
    "newValue": "resolved",
    "attachments": null
  }
]

getAttachmentFileListByID

GET /v1/gmone/im/tickets/${ticketID}/attachments

Retrieving the list of attached files for a given ticket. The identifier is the ticket ID.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
ticketID ticket id you wish to request number true

Example Request

GET /v1/gmone/im/tickets/123/attachments

Response Parameters

Name Description Type
attachmentName attachment file name string
attachmentID attachment file ID number

Example Response

[
  {
    "attachmentName": "ExampleFile.txt",
    "attachmentID": 730
  }
]

getAttachmentByAttachmentIDandTicketID

GET /v1/gmone/im/tickets/${ticketID}/attachments/${attachmentID}

Retrieving the content of given ticket attachment. The identifiers are the ticket ID and the attachment ID.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
ticketID ticket ID you wish to request number true
attachmentID attachment ID you wish to request number true

Example Request

GET /v1/gmone/im/tickets/123/attachments/730

Response Parameters

There are no return parameters.
The response body is binary, and the Content-Type is "application/octet-stream".

Example Response

This is a test file.

updateTicketMetadata

PUT /v1/gmone/im/tickets/${ticketID}

Changing/updating ticket metadata. The identifier is the ticket ID.

Request Parameters

Body

Name Description Type Mandatory Default value
subject ticket subject string false current value
requestors ticket requestor email address string array false current value
ccs notifiee CC email address string array false current value
adminCcs notifiee BCC email address string array false current value
CIs related CI string false current value

Example Request

PUT /v1/gmone/im/tickets/123

request body:

{
  "subject": "test ticket subject",
  "requestors": ["example"],
  "ccs": ["zxcvbn@example.com"],
  "adminCcs": ["asdfgh@example.dum"],
  "CIs": ["exampleci.example"],
}

Response Parameters

Name Description Type
result result string
ticketId manipulated ticket ID number

Example Response

{
  "result": "success",
  "ticketId": 123
}

addLog

POST /v1/gmone/im/tickets/${ticketId}/log

Adding a log to the ticket. The identifier is the ticket ID.

Request Parameters

Name Description Type Mandatory Default value
post ticket log conetnt string true N/A
poster ticket log poster string false API requester username
onetimeCc ticket CC notifiee email address string false Empty
onetimeBcc ticket BCC notifiee email address string false Empty
attachments attachment informatino Object Array false Empty

"attachements" Object List

Name Description Type Mandatory Default value
name attachment file name string true N/A
content attachment file content string (Base64 Encoded Binary) true N/A

Example Request

POST /v1/gmone/im/tickets/1010011/log

Request Body

{
    "post": "example",
    "poster": "example",
    "onetimeCc": ["example@example.com"],
    "onetimeBcc": ["example@example.com"],
    "attachments": [{
        "name": "example.txt",
        "content": "44GT44KM44Gv44OG44K544OI44OV44Kh44Kk44Or44Gn44GZ44CC"
    }]
}

Response Parameters

Name Description Type
result result string
ticketId manipulated ticket ID number

Example Response

{
  "result": "success",
  "ticketId": 1010011
}

createTicket

POST /v1/gmone/im/tickets

Creating an Incident Management ticket. Note, some values are mandatory.

Request Parameters

Body

Name Description Type Mandatory Default value
post ticket post body string true N/A
subject ticket subject string true N/A
requestors tikcet requester list (username or email address) string array false API requester username
client client code string false API requester client
queue ticket queue string false "general" queue
CIs related CI name string array false Empty
ccs ticket notifiee CC email address string array false  Empty
adminCcs ticket notifiee BCC email address string array false Empty
attachments attachment information Object Array false N/A

"attachements" Object List

Name Description Type Mandatory Default value
name attachment file name string true N/A
content attachment file content string (Base64 Encoded Binary) true N/A

Example Request

POST /v1/gmone/im/tickets

Request Body

{
    "post": "example ticket #2",
    "subject": "example ticket #2",
    "requestors": ["example"],
    "client": "example",
    "queue": "example",
    "CIs": ["example"],
    "ccs": ["example@example.com"],
    "adminCcs": ["examplei@example.com"],
    "attachments": [{
        "name": "example.txt",
        "content": "44GT44KM44Gv44OG44K544OI44OV44Kh44Kk44Or44Gn44GZ44CC"
    }]
}

Response Parameters

Name Description Type
ticketId created ticket ID number

Example Response

{
  "ticketId": 1010011
}

Change Request API

/v1/gmone/cm/

This api makes it possible to manipulate (view, find, create and update) change requests in the Global Management One system.

Common Feature

This API sets out to make it possible to integrate GMOne services with the customer systems and to that end leverages a special "integration account" separate to the actual GMOne portal account.
To use this feature, please contact your GMOne service manager.

See below for a detailed list of the supported parameters:

API Name Parameter name Section
getWorkflowListByQuery requestor URL Query
getWorkflowByID requestor URL Query
getRFCListByQuery requestor URL Query
getRFCByID requestor URL Query
getRFCFileListByID requestor URL Query
getRFCFileByID requestor URL Query
getRFCLogByID requestor URL Query
getCommunicationLogAttachmentListByID requestor URL Query
getCommunicationLogAttachmentByID requestor URL Query
createRFC initiator Body
attachFilesToRFC requestor URL Query
updateRFC requestor URL Query
processRFC requestor URL Query
addCommunicationLog poster Body

getWorkflowListByQuery

GET /v1/gmone/cm/workflows?key=value

Request change(RFC) workflow list. Requests can be filtered via query paramters.

Request Parameters

URL Query Parameter

Name Description Type Mandatory Default value
workflowID workflow ID number false Empty
name workflow name string false Empty
client client code string false API user's client
createdBefore created date (before) number (epoc millisecond) false Empty
createdAfter created date (after) number (epoc millisecond) false Empty
lastUpdatedBefore last updated date (before) number (epoc millisecond) false Empty
lastUpdatedAfter last updated date (after) number (epoc millisecond) false Empty
includeInactive is including inactive workflow in result boolean false false
limit return count limit number false Empty
idDirection workflow ID sorting order string (fixed: asc / desc) false Empty
requestor impersonated user string false Empty

Example Request

GET /v1/gmone/cm/workflows?lastUpdatedAfter=1478307755000&idDirection=desc&limit=5

Response Parameters

Name Description Type
workflowID workflow ID number
name workflow name string
client client code string
created created date number (epoc millisecond)
lastUpdated last updated date number (epoc millisecond)

Example Response

[
  {
    "workflowID": 63,
    "name": "Sample_20161129",
    "client": "Sample",
    "created": 1480393001000,
    "lastUpdated": 1480393001000
  },
  {
    "workflowID": 62,
    "name": "Workflow 62",
    "client": "Sample",
    "created": 1479967552000,
    "lastUpdated": 1479967552000
  },
  {
    "workflowID": 45,
    "name": "sample-67",
    "client": "Sample",
    "created": 1476786646000,
    "lastUpdated": 1479955434000
  },
  {
    "workflowID": 13,
    "name": "NewWorkFLow",
    "client": "Sample",
    "created": 1467809124000,
    "lastUpdated": 1480313583000
  },
  {
    "workflowID": 7,
    "name": "fork WF",
    "client": "Sample",
    "created": 1467294077000,
    "lastUpdated": 1479989756000
  }
]

getWorkflowByID

GET /v1/gmone/cm/workflows/${workflowID}

Request details about a specific workflow indicating the id of the workflow.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
workflowID workflow ID number true

URL Query Parameter

Name Description Type Mandatory Default value
requestor impersonated user string false Empty

Example Request

GET /v1/gmone/cm/workflows/17

Response Parameters

Name Description Type
workflowID workflow ID number
name workflow name string
notes workflow remarks string
client owning client code string
inactive is inactive boolean
summary summary Object (visibility)
cis Configuration Item (CI) list attached to RFC Object (visibility)
category category of request Object (visibility)
priority priority of request Object (visibility)
reason reason of request Object (visibility)
risks risk in change Object (visibility)
cost cost of change Object (visibility)
consequences expected result Object (visibility)
benefits benefit Object (visibility)
serviceAffected affected service Object (visibility)
backoutStrategy failback strategy Object (visibility)
rollbackProcedure steps of rolling back Object (visibility)
implementationSteps steps of implementation Object (visibility)
plannedStartEndDates woking start / end date (planned) Object (visibility)
attributeDefinitions custom attribute list Object array (attributeDefinition)

Requests in which the parameter with return type visibility and the paramters displayed and required set to false are not returned.

"visibility" entity list

Name Description Type
displayed is displayed boolean
required is mandatory boolean

"attributeDefinition" entity list

Name Description Type
workflowAttributeDefinitionID workflow custom attribute definition ID number
required is mandatory boolean
hidden is hidden boolean
datumType data type string (datumType)
inputType format of input string (inputType)
validationDescription description of acceptable value string
attribute attributeDefinitionID custom attribute definition ID number
name custom attribute name string
description custom attribute display name string
rfcSection attribute available phase string (rfcSection)
selectList name selectlist name string
options selectlist option list string array
datumType select list data type string (datumType)

"inputType" parameter list

Name Description
Oneline one line input
Multiline multi-line input
List option list
Boolean boolean

"datumType" parameter list

| Name | Description |
|:----:|:-----------:|
| String | string |
| Long | long integer |
| Double | double froat |
| Boolean | boolan |
| Date | date (mm/dd/yyyy) |
| Datetime | datetime (mm/dd/yyyy hh:mm) |
| Text | text |
| Url | url |
Note: above attribute value must be input as type String.
Example:
{
"name": "sampleAttribute",
"value": "12345" /* this attribute's datum type is Long, but you need to set stringified number */
}

"rfcSection" parameter list

Name Description
Assesment available when the status is DRAFT/PENDING
Authorization available when the status is PENDING
Implement available when the status is APPROVED/IMPLEMENTED
Closure available when the status is APPROVED/IMPLEMENTED

Example Response

{
  "workflowID": 17,
  "name": "Example Workflow",
  "client": "Exmaple",
  "inactive": false,
  "live": true,
  "summary": {
    "displayed": true,
    "required": true
  },
  "cis": {
    "displayed": true,
    "required": false
  },
  "category": {
    "displayed": true,
    "required": false
  },
  "priority": {
    "displayed": true,
    "required": true
  },
  "plannedStartEndDates": {
    "displayed": true,
    "required": true
  },
  "attributeDefinitions": [
    {
      "workflowAttributeDefinitionID": 3,
      "required": false,
      "hidden": false,
      "validationDescription": "",
      "datumType": "Boolean",
      "inputType": "Boolean",
      "attribute": {
        "attributeDefinitionID": 1,
        "name": "generic_boolean",
        "description": "Passed"
      },
      "rfcSection": "Assessment"
    },
    {
      "workflowAttributeDefinitionID": 2,
      "required": false,
      "hidden": false,
      "validationDescription": "",
      "datumType": "String",
      "inpuType": "List",
      "attribute": {
        "attributeDefinitionID": 3,
        "name": "generic_selectlist",
        "description": "A list of US states"
      },
      "rfcSection": "Assessment",
      "selectList": {
        "name": "generic_selectlist",
        "options": [
          "(select)",
          "A",
          "B",
          "C",
          "D"
        ],
        "datumType": "String",
        "autoSort": true
      }
    }
  ]
}

getRFCListByQuery

GET /v1/gmone/cm/rfcs?key=value

Request a list of RFCs (request for change). Requests can be filtered via query paramters.

Request Parameters

URL Query Parameter

Name Description Type Mandatory Default value
rfcID RFC ID number false Empty
name RFC name string false Empty
client client code string false API user's client
ci attached ci string false Empty
status status string false Empty
owner owner string false Empty
initiator initiator string false Empty
workflowID workflow ID number false Empty
idDirection RFC ID sorting order string (fixed: asc / desc) false Empty
implStartBefore implementation start date (before) number (epoc millisecond) false Empty
implStartAfter implementation start date (after) number (epoc millisecond) false Empty
myItem only search RFCs which is waiting for user's action boolean false false
limit return count limit number false Empty
requestor impersonated user string false Empty

"status" Parameter List

Value Description
DRAFT Before submitting
PENDING Waiting for approval
APPROVED Approved; waiting for implementation
IMPLEMENTED Implemented; waiting for review
CLOSED Reviewed; closed
FAILED Request is not accomplished

Example Request

GET /v1/gmone/cm/v1/rfcs?ci=sample&myItem=true

Response Parameters

Name Description Type
rfcID RFC ID number
name RFC name string
client client code string
status status string (status)
workflow workflow Object (workflow)
created created date number (epoc millisecond)
updated last updated date number (epoc millisecond)

"status" Parameter List

Value Description
DRAFT Before submitting
PENDING Waiting for approval
APPROVED Approved; waiting for implementation
IMPLEMENTED Implemented; waiting for review
CLOSED Reviewed; closed
FAILED Request is not accomplished

"workflow" structure

Name Description Type
workflowID workflow ID number
name workflow name string

Example Response

[
  {
    "rfcID": 1357,
    "name": "Example RFC 2",
    "client": "example",
    "workflow": {
      "workflowID": 12,
      "name": "Example Workflow #2"
    },
    "created": 1480400330000,
    "updated": 1480400330000
  }
]

getRFCByID

GET /v1/gmone/cm/rfcs/${rfcID}

Request details of a specific RFC. Use the RFC id to retrive the rfc.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID RFC ID for request number true

URL Query Parameter

Name Description Type Mandatory Default value
requestor impersonated user string false Empty

Example Request

GET /v1/gmone/cm/rfcs/1234

Response Parameters

Top level

Name Description Type
rfcID RFC ID number
name RFC name string
workflow workflow Object (workflow)
client owning client code string
initiator RFC initiator string
owner RFC owner string
ccs update notifiees list string(comma separated value list)
status status string (status)
currentState current state on workflow string array
awaitingActionBy user and user group who has the ball string array
created created date number(epoc milliseconds)
updated last updated date number(epoc milliseconds)
plannedStartDate implementation start date (planned) number(epoc milliseconds)
plannedEndDate implementation end date (planned) number(epoc milliseconds)
actualStartDate implementation start date (actual) number(epoc milliseconds)
implementationDate implementation end date (actual) number(epoc milliseconds)
vendorImplementationTime actual mean time to work number
summary summary string
priority priority of request string (priority)
category category of request string (category)
reason reason of request string
risks risk in change string
cost cost of change string
benefits benefits string
consequences expected result string
implementationSteps steps of implementation string
serviceAffected affected service string
rollbackProcedure steps of rolling back string
backoutStrategy failback strategy string
implementationEffort Effort note of implementation string
userTestsComplete user test completed date number(epoc milliseconds)
acceptanceTestsComplete acceptance test comoleted date number(epoc milliseconds)
operationTestsComplete operation test completed date number(epoc milliseconds)
objectiveAchieved detailed information of implementation string
findings report for handling over of implementation string
approvalNotes message on approval string
approvalDate approval date number(epoc milliseconds)
rejectionNotes message on rejection string
rejectionDate rejection date number(epoc milliseconds)
closureDate request close date number(epoc milliseconds)
closureCode request close type string (closureCode)
attributes custom attribute list object array (attribute)
cis attached CI list object array (ci)

note: depending on the state of the workflow some items are not returned.
You can determine which parameter is returned and which is not from getWorkflowByID API.

"workflow" structure

Name Description Type
workflowID workflow ID number
name workflow name string

"attribute" structure

Name Description Type
name attribute key string
value attribute value string

"ci" structure

Name Description Type
ciID CI ID number
ciName CI name string
clientID owning client ID number
typeID CI type ID number
typeName CI type name string

"status" Parameter List

Value Description
DRAFT Before submitting
PENDING Waiting for approval
APPROVED Approved; waiting for implementation
IMPLEMENTED Implemented; waiting for review
CLOSED Reviewed; closed
FAILED Request is not accomplished

"priority" Parameter List

Value Description
LOW Low
NORMAL Midium
HIGH High
URGENT Urgent

"category" Parameter List

Value Description
MARGINAL insignificant
SUBSTANTIAL mainly
CRITICAL cardinal

"closureCode" Parameter List

Value Description
SUCCESSFUL Implementation successful
SUCCESSFUL_WITH_ISSUES Implementation successful but some issues remained
ROLLED_BACK Implementation is rolled back
CANCELLED Implementation is cancelled
CLOSED_IN_DRAFT Request is closed before submitted
PARTIALLY_IMPLEMENTED Implemented but not a full feature
PARTIALLY_ROLLED_BACK some implementation has been rolled back
FAILED Implementation failed

Example Response

{
  "rfcID": 1234,
  "client": "example",
  "initiator": "somecustomer",
  "owner": "testuser",
  "name": "Sample RFC",
  "reason": "",
  "implementationSteps": "Sample",
  "rollbackProcedure": "Sample",
  "ccs": "",
  "currentState": [
    "Approve"
  ],
  "awaitingActionBy": [
    "Test User (testuser) (GMOne)",
    "Test User Group",
  ],
  "created": 1480400330000,
  "updated": 1480400330000,
  "plannedStartDate": 1480423200000,
  "plannedEndDate": 1480509600000,
  "status": "PENDING",
  "priority": "NORMAL",
  "category": "SUBSTANTIAL",
  "workflow": {
    "workflowID": 26,
    "name": "Workflow Sample"
  },
  "attributes": [
    {
      "name": "Attribute 1",
      "value": "aaa"
    },
    {
      "name": "Attribute 2",
      "value": "bbb"
    }
  ],
  "cis": [
    {
      "ciID": 9,
      "ciName": "example_ci.example",
      "clientID": 19,
      "client": "example",
      "typeID": 21,
      "typeName": "Virtual Device"
    }
  ]
}

getRFCFileListByID

GET /v1/gmone/cm/rfcs/${rfcID}/files

Request the list of files attached to the RFC. The identifier is the RFC ID.
This API allows you to retrieve a list of those files attached during rfc reation or submission.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID RFC ID for request number true

URL Query Parameter

Name Description Type Mandatory Default value
requestor impersonated user string false Empty

Example Request

GET /v1/gmone/cm/rfcs/1234/files

Response Parameters

Name Description Type
fileName file name number
fileId file ID string

Example Response

[
  {
    "fileName": "testData.txt",
    "fileId": 224
  }
]

getRFCFileByID

GET /v1/gmone/cm/rfcs/${rfcID}/files/${fileID}

Request the content of a certain RFC file. Identifiers are RFC ID and file ID.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID RFC ID for request number true
fileID file ID for request number true

URL Query Parameter

Name Description Type Mandatory Default value
requestor impersonated user string false Empty

Example Request

GET /v1/gmone/cm/rfcs/1234/attachments/224

Response Parameters

There is no return parameter.
Response body is binary, and Content-Type is "application/octet-stream".

Example Response

This is test file.

getRFCLogByID

GET /v1/gmone/im/rfcs/${rfcID}/log

Request the RFC activity log. Identifier is the RFC ID.

In GMOne there is two sorts of log related to RFC:
1. RFC ticket log
1. communication log

The role of each log is as below:

RFC ticket log

The log recording:

  1. Update the content of change request
  2. History of worlflow processing
  3. RFC owner change

communication log

The log for:

  1. Customer notification of rfc events (initiation, update, status, &c.)
  2. Communication between GMOne peronnel and the customer

You can swich the log type for output using the URL parameter logType.
If you don't explicitly set logType, both logs are returned.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID RFC ID for request number true

URL Query Parameter

Name Description Type Mandatory Default value
logType Log type string (logType) false Empty
requestor impersonated user string false Empty

Definition of Parameter "logType"

Name Description
rfc output RFC log
communication output communication log

Example Request

GET /v1/gmone/cm/rfcs/1234/log

Response Parameters

Name Description Type
rfcLog RFC log object array (rfcLog)
communicationLog communication log object array (communicationLog)

communicationLog entity

Name Description Type
actor log poster string
actionDate log posted date number (epoc milliseconds)
actionType log type string (actionType)
post comment body string
oldValue old value string
newValue new value string
attachments attachmentName attachment name string
attachmentID attachment ID number

rfcLog entity

Name Description Type
created log added date number (epoc milliseconds)
user RFC updater string
action log action type string (action)
diff key updated key string
oldValue updated value before string
newValue updated value after string

"actionType" Parameter List

Value Description
Create Created
Add Log Log added
Add Requestor Requestor added
Delete Requestor Requestor removed
Add CC Notifiee ddded
Delete CC Notifiee removed
Add Admin CC Hidden notifiee added
Delete Admin CC Hidden notifiee removed
Change Owner Owner is changed
Change Queue Queue is changed
Change Status Status is changed
Subject Change Subject is changed

"action" Parameter List

Value Description
CREATE Created
UPDATE Updated
SUBMIT_FOR_APPROVAL Submitted
APPROVE Approved
REJECT Rejected
IMPLEMENT Request implemented
SIGN_OFF closed
MARK_AS_ROLLED_BACK Request rolled back
EXECUTE_LINK Related automation script triggered
COMPLETE_LINK Related automation script completed
SPAWN_RFC Child RFC created
SPAWN_COMPLETE Child RFC closed
CANCEL Cancelled

Example Response

{
  "ticketTransaction": [
    {
      "actor": "sampleuser",
      "actionDate": 1465277460000,
      "actionType": "Create",
      "post": "RFC Link: https://HOSTNAME/IPcm/rfc.htm?rfcID=1234\n\nSUBMITTED FOR APPROVAL on Tue Jun 07 05:31:00 UTC 2016 by Sample User (sampleuser) (Sample)\n\nRFC Details:\n\nName: Test for Change in Subject\nWorkflow: test-workflow\nInitiator: Sample User (sampleuser)\nPriority: NORMAL\nAttached Files: {azure_7.png}\n\n\nImplementation Start Time: Tue Jun 07 23:50:00 UTC 2016\nImplementation End Time: Wed Jun 08 23:50:00 UTC 2016\n\n\nSummary: \n\n\n\n\n----------------------\nTracking ID:[16][gsoduat]\n",
      "oldValue": null,
      "newValue": null,
      "attachments": null
    },
    {
      "actor": "sampleuser",
      "actionDate": 1465277464000,
      "actionType": "Add Log",
      "post": "Attachment added: azure_7.png",
      "oldValue": null,
      "newValue": null,
      "attachments": [
        {
          "attachmentName": "azure_7.png",
          "attachmentID": 54
        }
      ]
    },
    {
      "actor": "sampleuser",
      "actionDate": 1465277464000,
      "actionType": "Add Log",
      "post": "SUBMITTED FOR APPROVAL on Tue Jun 07 05:31:04 UTC 2016 by Sample User (sampleuser) (Sample)\n\nThe following updates were made to the request:\n\nStatus field was modified from [DRAFT] to [PENDING]\nActors field was modified from  to [Sample Admin (sampleadmin) (GMOne) Sample User (sampleuser) (Sample) ]\n",
      "oldValue": null,
      "newValue": null,
      "attachments": null
    },
    {
      "actor": "sampleuser",
      "actionDate": 1472101153000,
      "actionType": "Add Log",
      "post": "APPROVED on Thu Aug 25 04:59:12 UTC 2016 by Sample User (sampleuser) (Sample)\n\nThe following updates were made to the request:\n\nStatus field was modified from [PENDING] to [APPROVED]\nActors field was modified from  to [Sample Admin (sampleadmin) (GMOne) Sample User (sampleuser) (Sample) ]\n",
      "oldValue": null,
      "newValue": null,
      "attachments": null
    },
    {
      "actor": "sampleuser",
      "actionDate": 1472101173000,
      "actionType": "Add Log",
      "post": "UPDATED on Thu Aug 25 04:59:33 UTC 2016 by Sample User (sampleuser) (Sample)\n\nThe following updates were made to the request:\n\nActual Start Date field was modified from [null] to [Wed Aug 24 14:29:00 UTC 2016]\nActual End Date field was modified from [null] to [Thu Aug 25 14:29:00 UTC 2016]\nClosure Code field was modified from [null] to [SUCCESSFUL]\nActors field was modified from  to [Sample Admin (sampleadmin) (GMOne) Sample User (sampleuser) (Sample) ]\n",
      "oldValue": null,
      "newValue": null,
      "attachments": null
    },
    {
      "actor": "sampleuser",
      "actionDate": 1472101179000,
      "actionType": "Add Log",
      "post": "IMPLEMENTED on Thu Aug 25 04:59:39 UTC 2016 by Sample User (sampleuser) (Sample)\n\nThe following updates were made to the request:\n\nStatus field was modified from [APPROVED] to [IMPLEMENTED]\nActors field was modified from  to [Sample Admin (sampleadmin) (GMOne) Sample User (sampleuser) (Sample) ]\n",
      "oldValue": null,
      "newValue": null,
      "attachments": null
    },
    {
      "actor": "sampleuser",
      "actionDate": 1472101200000,
      "actionType": "Add Log",
      "post": "SIGNED OFF on Thu Aug 25 05:00:00 UTC 2016 by Sample User (sampleuser) (Sample)\n\nClosure Code: SUCCESSFUL\n\nThe following updates were made to the request:\n\nStatus field was modified from [IMPLEMENTED] to [CLOSED]\nActors field was modified from  to [Sample Admin (sampleadmin) (GMOne) Sample User (sampleuser) (Sample) ]\n",
      "oldValue": null,
      "newValue": null,
      "attachments": null
    },
    {
      "actor": "sampleuser",
      "actionDate": 1472101200000,
      "actionType": "Status Change",
      "post": "",
      "oldValue": "open",
      "newValue": "resolved",
      "attachments": null
    }
  ],
  "rfcLog": [
    {
      "created": 1465276884000,
      "user": "sampleuser",
      "action": "CREATE"
    },
    {
      "created": 1465277129000,
      "user": "sampleuser",
      "action": "UPDATE",
      "diff": [
        {
          "key": "Attached Files",
          "oldValue": "[empty]",
          "newValue": "{azure_7.png}"
        }
      ]
    },
    {
      "created": 1465277464000,
      "user": "sampleuser",
      "action": "SUBMIT_FOR_APPROVAL",
      "diff": []
    },
    {
      "created": 1465277464000,
      "user": "sampleuser",
      "action": "UPDATE",
      "diff": [
        {
          "key": "Status",
          "oldValue": "DRAFT",
          "newValue": "PENDING"
        }
      ]
    },
    {
      "created": 1472101152000,
      "user": "sampleuser",
      "action": "APPROVE",
      "diff": []
    },
    {
      "created": 1472101152000,
      "user": "sampleuser",
      "action": "UPDATE",
      "diff": [
        {
          "key": "Status",
          "oldValue": "PENDING",
          "newValue": "APPROVED"
        }
      ]
    },
    {
      "created": 1472101173000,
      "user": "sampleuser",
      "action": "UPDATE",
      "diff": [
        {
          "key": "Actual Start Date",
          "oldValue": "null",
          "newValue": "2016-08-24 14:29:00.0"
        },
        {
          "key": "Actual End Date",
          "oldValue": "null",
          "newValue": "2016-08-25 14:29:00.0"
        },
        {
          "key": "Closure Code",
          "oldValue": "null",
          "newValue": "SUCCESSFUL"
        }
      ]
    },
    {
      "created": 1472101178000,
      "user": "sampleuser",
      "action": "IMPLEMENT",
      "diff": []
    },
    {
      "created": 1472101179000,
      "user": "sampleuser",
      "action": "UPDATE",
      "diff": [
        {
          "key": "Status",
          "oldValue": "APPROVED",
          "newValue": "IMPLEMENTED"
        }
      ]
    },
    {
      "created": 1472101200000,
      "user": "sampleuser",
      "action": "SIGN_OFF",
      "diff": []
    },
    {
      "created": 1472101200000,
      "user": "sampleuser",
      "action": "UPDATE",
      "diff": [
        {
          "key": "Status",
          "oldValue": "IMPLEMENTED",
          "newValue": "CLOSED"
        }
      ]
    }
  ]
}

getCommunicationLogAttachmentListByID

GET /v1/gmone/cm/rfcs/${rfcID}/attachments

Request the list of files attached to a certain RFC's communication log. The identifier is the RFC ID.
This API makes it possible to retrieve the list of files attached to a communication log. For detailed information on the communication log API, please refer to the getRFCLogByID section.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID RFC ID for request number true

URL Query Parameter

Name Description Type Mandatory Default value
requestor impersonated user string false Empty

Example Request

GET /v1/gmone/cm/rfcs/1234/attachments

Response Parameters

Name Description Type
attachmentName attachment name string
attachmentID attachment ID number

Example Response

[
  {
    "attachmentName": "ExampleFile.txt",
    "attachmentID": 730
  }
]

getCommunicationLogAttachmentByID

GET /v1/gmone/cm/rfcs/${rfcID}/attachments/${attachmentID}

Request the content of certain RFC's communication log attachment. Identifiers are RFC ID and attachment ID.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID RFC ID for request number true
attachmentID attachment ID for request number true

URL Query Parameter

Name Description Type Mandatory Default value
requestor impersonated user string false Empty

Example Request

GET /v1/gmone/cm/rfcs/1234/attachments/730

Response Parameters

There is no return parameter.
Response body is binary, and Content-Type is "application/octet-stream".

Example Response

This is test file.

createRFC

POST /v1/gmone/cm/rfcs
Request to create RFC. There are some mandatory values.

Request Parameters

Body

Top level

Name Description Type Mandatory Default value
name RFC name string true N/A
workflow procecss workflow Object (workflow) true N/A
client owning clinet string true N/A
initiator RFC initiator string false API user
ccs notifiee list (email address) string(comma separated value list) false empty
plannedStartDate implementation start date (planned) number(epoc milliseconds) ### empty
plannedEndDate implementation end date (planned) number(epoc milliseconds) ### empty
summary summary string ### empty
priority priority of request string (priority) ### empty
category category of request string (category) ### empty
reason reason of request string ### empty
risks risk in change string ### empty
cost cost of change string ### empty
benefits benefit string ### empty
consequences expected result string ### empty
implementationSteps steps of implementation string ### empty
serviceAffected affected service string ### empty
rollbackProcedure steps of rolling back string ### empty
backoutStrategy failback strategy string ### empty
attributes custom attribute list object array (attribute) ### empty
cis attached CI list object array (ci) ### empty

Of the possible values for the above Mandatory those items in which the value appears as ### the possible types are either "used," "unused," or "required." The actual definition therein depends on the workflow in question.

You can confirm which parameters are used, unused and required for a given workflow from the getWorkflowByID API.
When you input the unused paramter to request body, it will be ignored, and process is continued.

"workflow" structure

Name Description Type Mandatory Default value
workflowID workflow ID number true N/A
name workflow name string false empty

"attribute" structure

Name Description Type Mandatory Default value
name attribute name string true N/A
value attribute value string true N/A

Also about custom attribute, Whether the param is used, unused and required is different depends on the definition of the workflow you choose.
You can confirm which parameters are used, unused and required for a given workflow from the getWorkflowByID API.

"ci" structure

Name Description Type Mandatory Default value
ciID CI ID number select empty
ciName CI name string select empty
clientID owning client ID number false ID of client whose client code is in client param of top level
client owning client code string false client code which is client param of top level

Either ciID or ciName are required to make this call. If you input both, ciID has priority.
If you input both clientID and client, only clientID is used.

"priority" Parameter List

Value Description
LOW Low
NORMAL Midium
HIGH High
URGENT Urgent

"category" Parameter List

Value Description
MARGINAL insignificant
SUBSTANTIAL mainly
CRITICAL cardinal

Example Request

POST /v1/gmone/cm/rfcs

Request Body

{
  "client": "example",
  "name": "Sample RFC initiated via API",
  "summary": "Example Summary",
  "priority": "NORMAL",
  "ccs": "dummy@example.com,dummy2@example.com",
  "plannedStartDate": 1476806520000,
  "plannedEndDate": 1476892920000,
  "workflow": {
    "workflowID": 9
  },
  "attributes": [
    {
      "name": "generic_boolean",
      "value": "true"
    },
    {
      "name": "generic_sample_input",
      "value": "sample"
    }
  ],
  "cis": [
    {
      "ciName": "testdev.example",
      "client": "example"
    }
  ]
}

Response Parameters

Name Description Type
result result string
rfc RFC ID number

Example Response

{
  "result": "created",
  "rfc": 2345
}

attachFilesToRFC

POST /v1/gmone/cm/rfcs/{rfcID}/files
Request to attach files to the RFC. This API is available only the target RFC's status is DRAFT or PENDING

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID RFC ID for request number true

Body

Cotent-Type of request body is multipart/form-data.
This API accepts multiple attachment parameter, so you can update some files at same time.

Name Description Type Mandatory Default value
attachment attachment file entity blob(base64-encoded) true N/A

URL Query Parameter

Name Description Type Mandatory Default value
requestor impersonated user string false Empty

Example Request

PUT /v1/gmone/cm/rfcs/1234/files

Request Body

curl -X POST -H "Authorization: Basic c3RhdGVpc2hpOlN6c2RocmdoQDE5OTM=" \
-H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" \
-F "attachment=@testfile.txt" -F "attachment=@yet_another_testfile.jpg" \
"https://api.ntt.com/v1/gmone/cm/rfcs/3262/files"

Response Parameters

Name Description Type
result result string
rfc RFC ID number

Example Response

{
  "result": "file has been attached",
  "rfc": 1234
}

updateRFC

PUT /v1/gmone/cm/rfcs/{rfcID}
Request to update RFC entity.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID RFC ID for update number true

Body

This API, available body parameter depends on workflow status.
Lists of available parameters in each statuses are below:

DRAFT / PENDING
Top level
Name Description Type Mandatory Default value
name RFC name string true N/A
ccs notifiee CC email address string(comma separated value list) false empty
plannedStartDate implementation start date (planned) number(epoc milliseconds) ### empty
plannedEndDate implementation end date (planned) number(epoc milliseconds) ### empty
summary summary string ### empty
priority priority of request string (priority) ### empty
category category of request string (category) ### empty
reason reason of request string ### empty
risks risk in change string ### empty
cost cost of change string ### empty
benefits benefit string ### empty
consequences expected result string ### empty
implementationSteps step of implementaion string ### empty
serviceAffected affected service string ### empty
rollbackProcedure steps of rolling back string ### empty
backoutStrategy failback strategy string ### empty
attributes custom attribute list object array (attribute) ### empty
cis attached CI list object array (ci) ### empty

Of the possible values for the above Mandatory those items in which the value appears as ### the possible types are either "used," "unused," or "required." The actual definition therein depends on the workflow in question.

You can confirm which parameters are used, unused and required for a given workflow using the getWorkflowByID API.
When you input the unused paramter to request body, it will be ignored, and process is continued.

"attribute" structure
Name Description Type Mandatory Default value
name attribute name string true N/A
value attribute value string true N/A

Also about custom attribute, Whether the param is used, unused and required is different depends on the workflow you choose.
You can confirm which parameter is used and which is required from getWorkflowByID API.
Available custom attribute in DRAFT and PENDING is whose parameter rfcSection is Assessment.

"ci" structure

Name Description Type Mandatory Default value
ciID CI ID number select empty
ciName CI name string select empty
clientID owning client ID number false ID of client whose client code is in client param of top level
client owning client code string false client code which is client param of top level

Either ciID or ciName are required to make this call. If you input both, ciID has priority.
If you input both clientID and client, only clientID is used.

"priority" Parameter List

Value Description
LOW Low
NORMAL Midium
HIGH High
URGENT Urgent

"category" Parameter List

Value Description
MARGINAL insignificant
SUBSTANTIAL mainly
CRITICAL cardinal
only PENDING
Name Description Type Mandatory Default value
approvalNotes massage on approval string false empty
rejectionNotes message on rejection string false empty

Available custom attribute in PENDING is whose parameter rfcSection is not only Assessment but Authorization.

only APPROVED
Name Description Type Mandatory Default value
closureDate request close date number(epoc milliseconds) false empty
APPROVED/IMPLEMENTED

Top level

Name Description Type Mandatory Default value
actualStartDate implementation start date (actual) number(epoc milliseconds) false empty
implementationDate implementation end date (actual) number(epoc milliseconds) false empty
vendorImplementationTime actual mean time to work number false empty
implementationEffort Effort note of implementation string false empty
userTestsComplete user test completed date number(epoc milliseconds) false empty
acceptanceTestsComplete acceptance test comoleted date number(epoc milliseconds) false empty
operationTestsComplete operation test completed date number(epoc milliseconds) false empty
objectiveAchieved detailed information of implementation string false empty
findings report for handling over of implementation string false empty
closureCode request close type string (closureCode) false empty
attributes custom attribute list object array (attribute) ### empty
"attribute" structure
Name Description Type Mandatory Default value
name atribute name string true N/A
value attribute value string true N/A

Available custom attribute in APPROVED and IMPLEMENTED is whose parameter rfcSection is Implementation or Closure.

"closureCode" Parameter List

Value Description
SUCCESSFUL Implementation successful
SUCCESSFUL_WITH_ISSUES Implementation successful but some issues remained
ROLLED_BACK Implementation is rolled back
CANCELLED Implementation is cancelled
CLOSED_IN_DRAFT Request is closed before submitted
PARTIALLY_IMPLEMENTED Implemented but not a full feature
PARTIALLY_ROLLED_BACK Some implementation has been rolled back
FAILED Implementation failed
CLOSED/FAILED

You cannot update RFC whose status is CLOSED or FAILED

URL Query Parameter

Name Description Type Mandatory Default value
requestor impersonated user string false Empty

Example Request

PUT /v1/gmone/cm/rfcs/1234

Request Body

{
    "name": "Example RFC subject modification",
    "attributes": [
      {
        "name": "generic_boolean",
        "value": "false"
      }
    ]
}

Response Parameters

Name Description Type
result result string
rfc RFC ID number

Example Response

{
  "result": "updated",
  "ticketId": 1234
}

processRFC

PUT /v1/gmone/cm/rfcs/{rfcID}/status
Request to process the RFC according to the definition of the workflow set to it.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID rfc ID for processing number true

Body

Name Description Type Mandatory Default value
operation operation type string (operation) true N/A

"operation" Parameter List

Value Description
submit submit for approval
approve approve
reject reject
implement complete implementation
close review complete and close
cancel cancel

URL Query Parameter

Name Description Type Mandatory Default value
requestor impersonated user string false Empty

Example Request

PUT /v1/gmone/cm/rfcs/1234/status

Request Body

{
    "operation": "submit"
}

Response Parameters

Name Description Type
result result string
rfc RFC ID number

Example Response

{
  "result": "status changed",
  "ticketId": 1234
}

addCommunicationLog

POST /v1/gmone/cm/rfcs/${rfcId}/log
Request to add the communication log.

Request Parameters

URL Path Parameter

Name Description Type Mandatory
rfcID RFC ID for adding log number true

Body

Name Description Type Mandatory Default value
post log post body string true N/A
poster log poster string false API user
onetimeCc Notifiee CC mail address string array false Empty
onetimeBcc Notifiee BCC mail address string array false Empty
attachments attachment information Object array (attachements) false Empty

"attachements" Object List

Name Description Type Mandatory Default value
name attachment name string true N/A
content attachment content string (Base64 Encoded Binary) true N/A

Example Request

POST /v1/gmone/cm/rfcs/1234

Request Body

{
    "post": "example",
    "poster": "example",
    "onetimeCc": ["example@example.com"],
    "onetimeBcc": ["example@example.com"],
    "attachments": [{
        "name": "example.txt",
        "content": "44GT44KM44Gv44OG44K544OI44OV44Kh44Kk44Or44Gn44GZ44CC"
    }]
}

Response Parameters

Name Description Type
result result string
rfc RFC ID number

Example Response

{
  "result": "success",
  "rfc": 1234
}

Configuration Management Database Informaion API

GET /v1/gmone/cmdb/

Retrieve configuration information such as attributes and configuration item relationships from the Global Management One "IPcmdb" module.

Getting Configuration Item (CI) Type

GET /v1/gmone/cmdb/citypes

Retrieve CI types that belong to current client.
For those customers who have nested clients, you can filter the query by indicating the Client code.

Request Parameters

Name Description type mandatory
client Client code for search query argument False
name Configuration Item (CI) name for search (glob is available) query argument False

Example Request

GET /v1/gmone/cmdb/citypes?client=GMOne_QA&name=Device*

Response Parameters

Name Description type
ciTypeID CI type ID Int
name CI type name String
nameValidationPattern Naming rule of CI String with regular expression
nameValidationDescription Explanation of naming rule of CI String
parentCIType Inherited CI type name String
global is This common CI for all clients bool
incomingAssociations Association type information defined by this CI Object array
name Association type name String
associationTypeID Association type ID Int
sourceCIType Source side CI type String
targetCIType Target side CI type String
sourceRoleDescription Source side CI role String
targetRoleDescription Target side CI role String
multiplicityType Multiplicity of both node String
abstract Does this association type have entity association bool
outgoingAssociations same as "incomingAssociations" Association type information defined by counterside CI Object array
attributes Attributes definition held by this CI type Object array
attribute Attribute definition name String
description Explanation of this attribute definition Int
ciType CI type name holding this attribute definition Int
enabled Is this attribute enabled bool
multiple Is multiple setting available bool
required Is this attribute required bool
secured Is the value of this attribute on the textbox hidden bool
dataType Data type of this attribute String
(selectList) If this attrbute has data list, sepcification is writted on here. Detail is below object
inheritedAttributes same as "attributes" Attribute definition inherited from parent CI type Object array
abstract Does this CI type have entity CI bool

selectList object mapping

Name Description type
name Data list name String
datumType Datum type of this data list item String
autoSort is auto sort available in the <select> element bool
options List items typeOf(datumType) array

Example Result

[
  {
    "ciTypeID": 4,
    "name": "Device",
    "nameValidationPattern": "([a-z0-9_\-]+\.)+[a-z0-9_\-]{2,}",
    "nameValidationDescription": "Lowercase 'a-z', '0-9', '-', '_', or '.', followed by .clientcode (ex. foo_123.ipsoft)",
    "parentCIType": "Computer System",
    "global": True,
    "incomingAssociations": [
      {
        "name": "Base Location Association",
        "associationTypeID": 1,
        "sourceCIType": "Base CI",
        "targetCIType": "Base CI",
        "sourceRoleDescription": "Location",
        "targetRoleDescription": "CIs",
        "multiplicityType": "ManyToOne",
        "abstract": True
      }, ......
    ],
    "outgoingAssociations": [
      {
        "name": "Base Location Association",
        "associationTypeID": 1,
        "sourceCIType": "Base CI",
        "targetCIType": "Base CI",
        "sourceRoleDescription": "Location",
        "targetRoleDescription": "CIs",
        "multiplicityType": "ManyToOne",
        "abstract": True
      }, ......
    ],
    "attributes": [
      {
        "attribute": "Type",
        "description": "Generic type field - serves as a CI type sub-categorization",
        "ciType": "Device",
        "enabled": True,
        "multiple": False,
        "required": True,
        "secured": False,
        "dataType": "String",
        "selectList": {
          "name": "Device Types",
          "datumType": "String",
          "autoSort": True,
          "options": [
            "Appliance",
            "Application Switch",
            "Chassis",
            "Cloud",
            "Concentrator",
            "Firewall",
            "Gateway",
            "Hypervisor",
            "Module",
            "Network",
            "PC",
            "Power",
            "Router",
            "SAN Switch",
            "SAN/NAS",
            "Server",
            "Switch",
            "VoiceGateway",
            "VoiceMail",
            "Wireless",
            "_Other_"
          ]  
        }
      }, ......
    ],
    "inheritedAttributes": [
      {
        "attribute": "Description",
        "description": "Description of CI",
        "ciType": "Base CI",
        "enabled": True,
        "multiple": False,
        "required": False,
        "secured": False,
        "dataType": "Text"
      }, ......
    ],
    "abstract": False
  }
]

Getting CI

GET /v1/gmone/cmdb/cis

Retrieve CIs that belong to the current client.
You can filter the results by indicating the Site(CI's site), CI name, CI type and so on.

Request Parameters

Name Description type mandatory
client Client code for search query argument True
site CI's Site name query argument False
name CI name (glob expression is supported) query argument False
type CI type query argument True
serviceChecks CI's service checks name query argument False

Example Request

GET /v1/gmone/cmdb/cis?client=GMOne_QA&type=Device&name=gmone*

Response Parameters

Name Description type
clientID Client ID Int
clientName Client code String
created created date Unix time in millisecond
id CI ID Int
name CI name String
typeID CI type ID Int
typeName CI type name String
updated Last updated date Unix time in millisecond
Attributes CI's attribute Object array
datumType Value's data type String
definitionID Attribute definition ID Int
id Attrbute ID Int
name Attrbute name String
content Attribute value String
outgoingAssociations detail in below Association information set from this CI Object array
incomingAssociations detail in below Association information set to this CI Object array

Association Information Parameters(outgoingAssociations, incomingAssociations)

Name Description type
typeName Association type name String
multiplicity Nodes multiplicity type String
typeID Association type ID Int
CI CIs combined this Association Object array
clientID CI's client ID Int
clientName CI's Client code String
created CI created date Unix time in millisecond
id CI ID Int
name CI name String
typeID CI type ID Int
typeName CI type name String
updated Last updated Date Unix time in millisecond
associationRank Association importance rank Int

Example Result

[
  {
    "clientID": "88",
    "clientName": "GMOne_QA",
    "created": "1434530569000",
    "id": "3878",
    "name": "gmoneqahost.windows01.gmone_qa",
    "typeID": "4",
    "typeName": "Device",
    "updated": "1434702121000",
    "Attributes": [
      {
        "datumType": "Text",
        "definitionID": "2",
        "id": "26222",
        "name": "Description",
        "content": "Windows Server for QA"
      },
      {
        "datumType": "Boolean",
        "definitionID": "15",
        "id": "26223",
        "name": "Monitored",
        "content": "True"
      },
      {
        "datumType": "Boolean",
        "definitionID": "215",
        "id": "26224",
        "name": "GMOne Managed",
        "content": "True"
      },
      {
        "datumType": "Boolean",
        "definitionID": "54",
        "id": "26225",
        "name": "Managed",
        "content": "True"
      },
      {
        "datumType": "String",    
        "definitionID": "55",
        "id": "26226",
        "name": "Monitored Address",
        "content": "153.149.11.90"
      },
      {
        "datumType": "String",
        "definitionID": "12",
        "id": "26227",
        "name": "Type",
        "content": "Server"
      },
      {
        "datumType": "String",
        "definitionID": "21",
        "id": "26228",
        "name": "OS Type",
        "content": "Windows"
      },
      {
        "datumType": "String",
        "definitionID": "22",
        "id": "26229",
        "name": "OS Sub-Type",
        "content": "Windows Server 2008 R2"
      },
      {
        "datumType": "String",
        "definitionID": "23",
        "id": "26230",
        "name": "OS Version",
        "content": "6.1.7601"
      },
      {
        "datumType": "String",
        "definitionID": "13",
        "id": "26262",
        "name": "Status",
        "content": "Active"
      }
    ],
    "OutgoingAssociations": [
      {
        "typeName": "Device Site",
        "multiplicity": "ManyToOne",
        "typeID": "3",
        "CI": [
          {
            "clientID": "88",
            "clientName": "GMOne_QA",
            "created": "1428921085000",
            "id": "3174",
            "name": "JPNCloudN",
            "typeID": "3",
            "typeName": "Site",
            "updated": "1428921085000",
            "associationRank": "10"
          }
        ]
      }
    ],
    "IncomingAssociations": [
      {
        "typeName": "Contact to BaseCI",
        "multiplicity": "ManyToMany",
        "typeID": "10",
        "CI": [
          {
            "clientID": "88",
            "clientName": "GMOne_QA",
            "created": "1433736534000",
            "id": "3695",
            "name": "Customer 01",
            "typeID": "12",
            "typeName": "Contact",
            "updated": "1436935399000",
            "associationRank": "10"
          }
        ]
      }
    ]
  }
]

Getting Association Information (setting Client code and association type name)

GET /v1/gmone/cmdb/associations/spec

Retrieve information on relationships between CIs, or their "association".
You can filter by Client code or by association type name.

Request Parameters

Name Description type mandatory
client Client code for search query argument True
type Association type name for search query argument True
limit Display limit query argument False

Example Request

GET v1/gmone/cmdb/associations/spec?client=GMOne_QA&type=Device Site&limit=1

Response Parameters

Name Description type
typeName Association type name String
multiplicity Nodes multiplicity type String
typeID Association type ID Int
CI CIs combined this Association Object array
clientID CI's client ID Int
clientName CI's Client code String
created CI created date Unix time in millisecond
id CI ID Int
name CI name String
typeID CI type ID Int
typeName CI type name String
updated Last updated Date Unix time in millisecond
associationRank Association importance rank Int

Example Result

[
  {
    "typeName": "Device Site",
    "multiplicity": "ManyToOne",
    "typeID": "3",
    "CI": {
      "clientID": "88",
      "clientName": "GMOne_QA",
      "created": "1434000645000",
      "id": "5523",
      "name": "devoaacer02.gmone_qa",
      "typeID": "4",
      "typeName": "Device",
      "updated": "1434531105000",
      "associationRank": "0"
    }
  }
]

Getting Association Information (setting both side CI)

GET /v1/gmone/cmdb/associations/node

Retrieve relationship information between CIs or their "association".
You can search by indicating the client or by indicating the name or type of target/source CIs.

Request Parameters

Name Description type mandatory
client Client code for search query argument True
sourceType Source-side CI type query argument True
soureName Source-side CI name (glob expression is supported) query argument True
targetType Target-side CI type query argument True
targetName Target-side CI name (glob expression is supported) query argument True
limit Display limit query argument False

Example Request

GET /v1/gmone/cmdb/associations/node?client=GMOne_QA&sourceType=Device&sourceName=*&targetType=Site&targetName=*&limit=1

Response Parameters

Name Description type
typeName Association type name String
multiplicity Nodes multiplicity type String
typeID Association type ID Int
CI CIs combined this Association Object array
clientID CI's client ID Int
clientName CI's Client code String
created CI created date Unix time in millisecond
id CI ID Int
name CI name String
typeID CI type ID Int
typeName CI type name String
updated Last updated Date Unix time in millisecond
associationRank Association importance rank Int

Example Result

[
  {
    "typeName": "Device Site",
    "multiplicity": "ManyToOne",
    "typeID": "3",
    "CI": {
      "clientID": "88",
      "clientName": "GMOne_QA",
      "created": "1434000645000",
      "id": "5523",
      "name": "devoaacer02.gmone_qa",
      "typeID": "4",
      "typeName": "Device",
      "updated": "1434531105000",
      "associationRank": "0"
    }
  }
]

Monitored Item API

GET /v1/gmone/admin/

Retrieve CI information of from the Global Management One "IPadmin" module.
This can be used to query for host names allowing you to retrieve monitoring status information.

Getting Monitored Hosts

GET /v1/gmone/admin/hosts

Retrieve monitored hosts that belong to current client.
For those customers who have nested clients, you can filter the query by indicating the Client code.

Request Parameters

Name Description type mandatory
client Client code for search (glob expression is supported) query argument True
name Host name (glob expression is supported) query argument False

Example Request

GET /v1/gmone/admin/hosts?client=GMOne_QA&name=gmoneqahost.gmone*

Response Parameters

Name Description type
name Host name String
alias Host name alias String
created Monitoring registration date Unix time in millisecond
updated Last updated date Unix time in millisecond
notificationOptions States notification is available#3 String array
serviceChecks Monitoring services object array
name Service name String
description Service display name String
deleted Is deleted from monitoring list bool

#3: "UP", "DOWN", "UNREACHABLE", "RECOVERY", "DOWNTIME", "FLAPPING"

Example Result

[
  {
    "name": "gmoneqahost.gmone_qa",
    "alias": "gmoneqahost.gmone_qa",
    "created": 1436400249000,
    "updated": 1438654791000,
    "notificationOptions": [
      "UP",
      "DOWN",
      "UNREACHABLE",
      "RECOVERY",
      "DOWNTIME"
    ],
    "serviceChecks": [
      {
        "name": "GM1 System Memory Unix",
        "description": "System Memory",
        "deleted": False
      }, ....
    ]
  }
]

Monitoring Information API

GET /v1/gmone/mon/

Retrieve monitoring status information of monitored CI from the Global Management One "IPmon" module.. This API allows the retrieval of scheduled maIntenance as well.

Getting Host Status

GET /v1/gmone/mon/host/status

Retrieve status of monitored host by indicating the Client code.

Request Parameters

Name Description type mandatory
client Client code for search query argument True
host host name query argument True

Example Request

GET /v1/gmone/mon/host/status?client=GMOne_QA&host=gmoneqahost.gmone_qa

Response Parameters

Name Description type
hostName Host name String
hostGroups Host's group name String
lastStateChange Last state change date Unix time in millisecond
lastUpdate Last monitoring information updated date Unix time in millisecond
checkLatency Latency between monitoring schedule and actual monitoring time double (second)
checkExecutionTime Mean time to check status double (second)
output Result of monitoring String
longOutput Result of monitoring in detail String
state Host status String
lastTimeUp Last date this host is up Unix time in millisecond
lastTimeDown Last date this host is down Unix time in millisecond
lastTimeUnrechable Last date this host is unreachable Unix time in millisecond
perfData Performance data of this host String
downtime Is in maIntenance bool

Example Result

[
  {
    "hostName": "gmoneqahost.gmone_qa",
    "hostGroups": "GMOne_QA-JPNCloudN",
    "lastStateChange": 1440488203000,
    "lastUpdate": 1441178705000,
    "checkLatency": 0.076,
    "checkExecutionTime": 0.046,
    "output": "fping 153.128.39.158 rtt: 113 ms",
    "longOutput": null,
    "state": "UP",
    "lastTimeUp": 1441178575000,
    "lastTimeDown": 1440488021000,
    "lastTimeUnrechable": null,
    "perfData": null,
    "downtime": False
  }
]

Getting MaIntenance Registration Information (Host)

GET /v1/gmone/mon/host/downtime

Retrievescheduled maIntenance for monitored hosts by indicating the Client code.

Request Parameters

Name Description type mandatory
client Client code for search query argument True
host Host name query argument True

Example Request

GET /v1/gmone/mon/host/downtime?client=GMOne_QA&host=gmoneqahost.gmone_qa

Response Parameters

Name Description type
hostName Host name String
downtimeId MaIntenance registration ID Int
entryTime MaIntenance registered date Unix time in millisecond
startTime MaIntenance start date Unix time in millisecond
endTime MaIntenance end date Unix time in millisecond
triggeredBy MaIntenance registration ID that is trigger of this maIntenance beginning Int
fixed Static scheduled(True) or flexibility start time(False) bool
duration MaIntenance duration Int (second)
author MaIntenance information registrant String
comment registrant comment String

Example Result

[
  {
    "hostName": "gmoneqahost.gmone_qa",
    "downtimeId": 2,
    "entryTime": 1440480001000,
    "startTime": 1440480109000,
    "endTime": 1440487429000,
    "triggeredBy": 0,
    "fixed": True,
    "duration": 7320,
    "author": "stateishi",
    "comment": "test"
  }
]

Getting Service Check Summary

GET /v1/gmone/mon/service/summary

Retrieve a summary of monitored services such as the number of normal / abnormal services and the percentage of the number of normal services versus total services.

Request Parameters

Name Description type mandatory
client Client code for search query argument True

Example Request

GET /v1/gmone/mon/service/summary?client=GMOne_QA

Response Parameters

Name Description type
pending The number of pending monitoring service Int
critical The number of "critical" service Int
ok The number of normal service Int
unknown The number of "unknown" service Int
warning The number of "warning" service Int
serviceHealth Normal state services rate (%) Int

Example Result

[
    {
        "pending": 0,
        "critical": 0,
        "ok": 33,
        "unknown": 0,
        "warning": 0,
        "serviceHealth": 100
    },
    {
        "pending": 0,
        "critical": 0,
        "ok": 37,
        "unknown": 10,
        "warning": 0,
        "serviceHealth": 78.72
    },
    {
        "pending": 0,
        "critical": 0,
        "ok": 10,
        "unknown": 0,
        "warning": 0,
        "serviceHealth": 100
    }
]

Getting Host Check Summary

GET /v1/gmone/mon/host/summary

Retrieve a summary of monitored hosts such as the number of normal / abnormal hosts and the percentage of normal hosts versus total hosts.

Request Parameters

Name Description type mandatory
client Client code for search query argument True

Example Request

GET /v1/gmone/mon/host/summary?client=GMOne_QA

Response Parameters

Name Description type
empty If there is no monitoring object,True bool
up The number of normal host Int
down The number of "down" host Int
unreachable The number of "unreachable" host Int
pending The number of pending monitoring host Int
hostHealth Normal state hosts rate (%) Int

Example Result

[
  {
    "empty": False,
    "up": 2,
    "down": 0,
    "unreachable": 0,
    "pending": 0,
    "hostHealth": 100
  },
  {
    "empty": False,
    "up": 2,
    "down": 0,
    "unreachable": 0,
    "pending": 0,
    "hostHealth": 100
  },
  {
    "empty": False,
    "up": 1,
    "down": 0,
    "unreachable": 0,
    "pending": 0,
    "hostHealth": 100
  }
]

Performance Report API

/v1/gmone/reports/

This api makes it possible to gather information related to performance report in the Global Management One system.

getServiceMetrics

GET /v1/gmone/reports/services?host=hostname

Request performance report series list. Requests are filtered by hostname.

Request Parameters

URL Query Parameter

Name Description Type Mandatory Default value
host host name string true N/A

Example Request

GET /v1/gmone/reports/services?host=gmoneqahost.gmone_qa

Response Parameters

Name Description Type
hostName host name string
services services information Object Array
services.serviceName service name string
services.metrics report series information Object Array
services.metrics.metricName series name string

Example Response

[
  {
    "hostName": "linux01.cmp",
    "services": [
      {
        "serviceName": "Inodes - /boot",
        "metrics": [
          {
            "metricName": "inodes_free"
          },
          {
            "metricName": "inodes_used"
          }
        ]
      },
      {
        "serviceName": "Disk - /sys/fs/cgroup",
        "metrics": [
          {
            "metricName": "disk_free"
          },
          {
            "metricName": "disk_used"
          }
        ]
      },
      {
        "serviceName": "Inodes - /sys/fs/cgroup",
        "metrics": [
          {
            "metricName": "inodes_free"
          },
          {
            "metricName": "inodes_used"
          }
        ]
      }
    ]
  }
]

getPerformanceData

GET /v1/gmone/reports/data?key=value

Request performance report. Requests are filtered by report target and time span.

Request Parameters

URL Query Parameter

Name Description Type Mandatory Default value
host host name string true N/A
service service name string true N/A
metric series name string true N/A
rollup roll up time rollup true N/A
from time span (from) number(Epoch milliseconds) true N/A
to time span (to) number(Epoch milliseconds) true N/A

'rollup' parameter list

Name Description remarks
5m 5mins lasts 35days
30m 30mins lasts 45days
1h 1hour lasts 180days
4h 4hours lasts 1year
12h 12hours lasts 1year
1d 1day lasts >= 1year

Example Request

GET /v1/gmone/reports/data?rollup=5m&from=1487041083000&to=1488041083000&host=linux01.cmp&service=Load Average&metric=load_average_5min

Response Parameters

The format of below response is text/csv.

Name Description Type
time monitored datetime (UTC) string
value performance data double

Example Response

"time","value"
2017/02/14 02:55:00,0.02
2017/02/14 03:00:00,0.04
2017/02/14 03:05:00,0.01
2017/02/14 03:10:00,0.01
2017/02/14 03:15:00,0.01
2017/02/14 03:20:00,0.04
2017/02/14 03:25:00,0.01
2017/02/14 03:30:00,0.01
2017/02/14 03:35:00,0.01
2017/02/14 03:40:00,0.01
2017/02/14 03:45:00,0.01
2017/02/14 03:50:00,0.01
2017/02/14 03:55:00,0.01
...
2017/02/25 15:00:00,0.02
2017/02/25 15:05:00,0.01
2017/02/25 15:10:00,0.02
2017/02/25 15:15:00,0.01
2017/02/25 15:20:00,0.01
2017/02/25 15:25:00,0.02
2017/02/25 15:30:00,0.01
2017/02/25 15:35:00,0.02
2017/02/25 15:40:00,0.07
2017/02/25 15:45:00,0.04
2017/02/25 15:50:00,0.08
2017/02/25 15:55:00,0.09
2017/02/25 16:00:00,0.05
2017/02/25 16:05:00,0.02
2017/02/25 16:10:00,0.04
2017/02/25 16:15:00,0.04
2017/02/25 16:20:00,0.1
2017/02/25 16:25:00,0.08
2017/02/25 16:30:00,0.07
2017/02/25 16:35:00,0.06
2017/02/25 16:40:00,0.08

  1. Dec. 2014 currently, DNS round robin operation. During fiscal 2015, API request will automatically connect to geographically close API gateway.