Popular Endpoints

Read this article before you start reviewing!

A couple of quick notes for you:

  1. I'm planning on creating an article that discusses the fact that these endpoints aren't exhaustive and it's a work in progress.
  2. I was planning on adding more endpoints here, including those that Bryan had in his original document, but I stopped because I thought it was better that what I've done so far is reviewed before I go any further in case there are issues with the formatting. 
  3. I was also hoping to add at least one POST, PUT, and DELETE endpoint for each resource, but some of them I was having technical difficulties completing because I couldn't make sense of the parameters or just whatever.
  4. You can probably just review one or two of these endpoint articles to let me know if they're okay and if they are, we'll do a full review of the rest of them later.
  5. Bryan's original API examples article can be found here: https://support.resolver.com/hc/en-ca/articles/360039464411-Resolver-Core-API-Examples

Thank you for your efforts. Godspeed.

fields

Retrieve, create, update, or delete fields individually or retrieve the fields added to an object type.

Field Types
Field TypeDescription
0Text
1Numeric
2Date & Time
3Single Select List
4Attachment
5Multi Select List
6Image Attachment
 GET  /object/field

Retrieve all fields in the org or narrow your search by field name or ID.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/field?includeFieldOptions=false'
Parameters
NameParameter TypeData TypeDescriptionRequired
searchTextquerystringKeyword(s) that will narrow the search results.No
idsquerystringThe internal ID of the specific field you want to retrieve. Leaving this field blank will retrieve all fields in the org.No
includeFieldOptionsquerybooleanIf true, the response will include select list options.No
Example Response Body
{
  "data": [
    {
      "id": 12732,
      "name": "Abbreviation",
      "nameKey": "app:field:name:371a4976-61bb-4040-bcb9-3107abf6c375",
      "uniqueName": "ABBREVIATI",
      "type": 0,
      "longName": "",
      "longNameKey": "app:field:longName:a029dee3-4a5e-4a17-aa01-96b909b7512e",
      "pii": false,
      "created": "2017-11-29T21:23:16.057Z",
      "modified": null,
      "org": 46,
      "properties": {
        "maxCharLength": 32,
        "multipleLines": false,
        "maximumCharacters": 10
      },
      "defaultSelection": null,
      "nextFieldOptionOrdinal": 0,
      "externalRefId": "c5b27c1e-137f-42a8-b07c-764d9ad8a0f5"
    }
Success Response

200 OK

 POST  /object/field

Create a new field.

Curl Request
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' -d '{  "name": "New Field",  "type": 0,  "longName": "string",  "pii": true,  "properties": {},  "defaultSelection": 0,  "externalRefId": "string" }' 'https://YOUR_ENVIRONMENT.resolver.com/object/field'
Body Parameters
NameParameter TypeData TypeDescriptionRequired
namebodystringThe name of the new field.Yes
typebodyintegerThe type of field, represented by a number. See the Field Types table above for a list of types.Yes
longNamebodystringThe longer name of the field, if any, which may include additional details.No
piibodybooleanIs this for personally identifiable information? What happens if this is turned on? Should I just say that this is for internal use only and to keep it as false?No
propertiesbodydimensionAdditional configuration options for the field, depending on the type (e.g., maximum and minimum characters on a text field).
No
defaultSelectionbodynumberI'm assuming this is for select lists?No
externalRefIdbodystringThe external reference ID of the new field.No
Example Body Parameter
{
  "name": "string",
  "type": 0,
  "longName": "string",
  "pii": true,
  "properties": {},
  "defaultSelection": 0,
  "externalRefId": "string"
}
Example Response
{
  "id": 87977
}
Success Response

200 OK

 PUT  /object/field/{id}

Update an existing field.

Curl Request
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' -d '{  "name": "Updated Field",  "longName": "string",  "uniqueName": "string",  "properties": {},  "defaultSelection": 0,  "externalRefId": "string",  "type": 0 }' 'https://YOUR_ENVIRONMENT.resolver.com/object/field/87977'
Parameters
NameParameter TypeData TypeDescriptionRequired
iddoublepathThe internal ID of the field you want to modify.
Yes
externalRefIdstringpathThe external reference ID of the field you want to modify.
No
namebodystringThe name of the field.No
longNamebodystringThe longer name of the field, if any, which may include additional details.No
uniqueNamebodystringThe field's unique identifier in Core. Should we make any notes about potential impacts if you change this?No
propertiesbodydimensionAdditional configuration options for the field, depending on the type (e.g., maximum or minimum characters for a text field).
No
defaultSelectionbodynumberI'm assuming this is for select lists?No
externalRefIdbodystringThe external reference ID of the new field.No
typebodyintegerThe type of field, represented by a number. See the Field Types table above for a list of types.

Are you able to change the field type once it's created?
No
Example Body Parameter
{
  "name": "string",
  "longName": "string",
  "uniqueName": "string",
  "properties": {},
  "defaultSelection": 0,
  "externalRefId": "string",
  "type": 0
}
Success Response

204 No Content

 DELETE  /object/field/{id}

Delete a field from the org.

Curl Request
curl -X DELETE --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/field/87977'
Parameters
NameParameter TypeData TypeDescriptionRequired
idpathdoubleThe internal ID of the field you want to delete.Yes
Success Response

204 No Content

 GET  /object/objectType/{objectTypeId}/field

Retrieves a list of fields added to an object type.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_TOKEN' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType/4164/field?includeFieldOptions=true'
Parameters
NameParameter TypeData TypeDescriptionRequired
objectTypeIdpathdoubleThe internal ID of the object type you wish to retrieve the fields from.Yes
includeFieldOptionspathbooleanIf true, the response will include options for select list fields.No
Success Response

200 OK

Example Response Body
[
  {
    "id": 12848,
    "name": "Attachments",
    "nameKey": "app:field:name:ec4736a3-7a14-4864-884f-923618905a57",
    "uniqueName": "ATTACHMENT",
    "type": 4,
    "longName": "(File Link Only)",
    "longNameKey": "app:field:longName:4aa16f16-7623-4c4e-8498-04917ad90450",
    "pii": false,
    "created": "2017-11-29T21:23:16.057Z",
    "modified": "2018-08-16T21:10:46.106Z",
    "org": 46,
    "properties": {
      "maxCharLength": 32,
      "multipleLines": false,
      "attachmentType": 1
    },
    "defaultSelection": null,
    "nextFieldOptionOrdinal": 0,
    "externalRefId": "fadedfd1-40ec-4a55-aaca-3eee65cb71f4",
    "options": []
  }

formulas

Retrieve the formulas added to an object type as well as their ranges.

 GET  /object/objectType/{objectTypeId}/formulas

Retrieve all formulas added to an object type.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType/4176/formulas'
Parameters
NameParameter TypeData TypeDescriptionRequired
objectTypeIdpathdoubleThe internal ID of the object type you wish to retrieve the formulas from.Yes
Success Response

200 OK

Example Response Body
{
  "data": [
    {
      "id": 7739,
      "name": "Avg Response Time",
      "nameKey": "app:formula:name:56f853e6-87e2-46d4-a49c-f1cbaec35422",
      "script": "RTIME",
      "format": null,
      "formatStyle": 0,
      "rangeStyle": 0,
      "objectTypeId": 4176,
      "type": 1,
      "created": "2018-09-12T19:18:23.608Z",
      "modified": "2018-09-12T19:19:41.660Z",
      "org": 46,
      "externalRefId": "c49b63e0-b86a-4d00-a725-c9fed2ee594e",
      "transitionId": null
    }
 GET  /object/objectType/{objectTypeId}/formulas/{formulaId}/ranges

Retrieve all ranges added to a formula.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer eyJhbGciOiJLTVMiLCJ0eXAiOiJKV1QifQ.eyJzZXNzaW9uIjoiNjkwYTg1YmYtYjgzMS00ZGU4LTkyNjMtNWE1ZjZkYTNkODk1IiwiX3B1cnBvc2UiOiJsb2dpbiIsImV4cCI6MTYwNTMwOTQ4MCwiaWF0IjoxNjA1MjkxNDgwfQ.AQICAHjkCdIHAV_V5K9y0iCicRyqb7QKMNNwPg2yLDYQ53MvegFUwgfIZBih0JYHRqIuvaV9AAABETCCAQ0GCSqGSIb3DQEHBqCB_zCB_AIBADCB9gYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAwjJ-3NoJ8jG59X6KsCARCAgcgvQr8kQPEeYqCwYARIwYO1sUCtPLYsYBVDMKRWzwlNaF9OK-x2gi6ik5wz8fXVu5KjFxZKiRPVI_AlKixb5z6BP5Ep13TXX5-n2A6By985RqqczKzcg6AztZHh-oFZhTKuYxGMI40y7s1D-zFcJUQKKZorpbKC69cvGHKhhncNGAM0J0BiHPhTe2Noys0_BZcZoRgq_6ctBsUSKgBEIsJg7Eq5mHVxusBXYqpNhkI1qC0GQ6T2xdCmGpfrTvztmfreXcNet3zFow' 'https://alpha.staging.resolver.com/object/objectType/4176/formulas/7739/ranges'
Parameters
NameParameter TypeData TypeDescriptionRequired
objectTypeIdpathdoubleThe internal ID of the object type you wish to retrieve the formulas from.Yes
formulaIdpathdoubleThe internal ID of the formula.Yes
Success Response

200 OK

Example Response Body
[
  {
    "id": 24458,
    "name": "Low",
    "nameKey": "app:formulaRange:name:f7d91803-7b58-4dc8-86a7-8bbb8b0dd493",
    "formulaId": 7739,
    "maximum": 33,
    "color": "#6FB93A",
    "created": "2018-09-12T19:18:23.608Z",
    "modified": null,
    "org": 46,
    "externalRefId": "f28b7b46-4b60-4db8-b633-6d6ecdf5d11a"
  },
  {
    "id": 23497,
    "name": "Medium",
    "nameKey": "app:formulaRange:name:7ce9fe35-d0d2-40a9-9d72-45935923c05f",
    "formulaId": 7739,
    "maximum": 66,
    "color": "#F8E71C",
    "created": "2018-09-12T19:18:23.608Z",
    "modified": null,
    "org": 46,
    "externalRefId": "343609f8-d7bf-4744-977b-c0b481d85848"
  },
  {
    "id": 23882,
    "name": "High",
    "nameKey": "app:formulaRange:name:689f6a8d-fed9-4e2d-90e6-34929ff94cf5",
    "formulaId": 7739,
    "maximum": 100,
    "color": "#D0021B",
    "created": "2018-09-12T19:18:23.608Z",
    "modified": null,
    "org": 46,
    "externalRefId": "84319b13-8257-4270-ae4a-8994abb65df3"
  }
]


objectTypes

Retrieve object type details, as well as create, modify, or delete object types.

 GET  /object/objectType

Retrieves a list of all the object types in the org, along with their external reference IDs and internal IDs.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType'
Parameters
NameParameter TypeData TypeDescriptionRequired
idquerystringThe internal ID of the specific object type you want retrieve, if any. Leaving this field blank will retrieve all object types in the org.No
Example Response Body
{
      "id": 4198,
      "name": "Incident Type",
      "pluralName": "Incident Types",
      "description": "",
      "monogram": "IT",
      "nameKey": "app:objectType:name:989fb792-4483-486d-a521-9c7ef22f906c",
      "descriptionKey": "app:objectType:description:709504f2-b2ca-4ea4-b9bd-d8afa7226b00",
      "pluralNameKey": "app:objectType:pluralName:d81eae66-8b4a-45b0-a3e1-91b541f44012",
      "monogramKey": "app:objectType:monogram:004b4b8e-d039-4481-af44-98ff2ea16294",
      "color": "#2f6ccb",
      "objectLifeCycleId": 4934,
      "externalRefId": "IncidentType",
      "created": "2017-11-29T21:23:16.057Z",
      "modified": "2019-01-25T16:24:40.300Z",
      "nextElement": 34,
      "org": 46,
      "assessment": false,
      "anchor": null,
      "anchorRelationship": null,
      "dataDefinitionId": null
    }
Success Response

200 OK

 POST  /object/objectType

Creates a new object type.

Curl Request
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' -d '{  "name": "New Object Type",  "monogram": "NOT" }' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType'
Parameters
NameParameter TypeData TypeDescriptionRequired
namebodystringThe name of the object type.Yes
monogrambodystringThe one to three letter monogram of the object type.Yes
colorbodystringThe color of the object type monogram.No
descriptionbodystringThe description of the object type.No
pluralNamebodystringThe plural name of the object type.No
externalRefIdbodystringThe external reference ID of the object type.No
assessmentbodybooleanIf true, creates an assessment object type.No
Example Body Parameter
{
  "name": "string",
  "monogram": "string",
  "color": "string",
  "description": "string",
  "pluralName": "string",
  "externalRefId": "string",
  "assessment": false
}
Example Response
{
  "id": 15739
}
Success Response

200 OK

 PUT  /object/objectType/{id}

Updates an existing object type.

Curl Request
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_TOKEN' -d '{  "name": "OBT" }' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType/15739'
Parameters
NameParameter TypeData TypeDescriptionRequired
idpathdoubleThe internal ID of the specific object type you want to modify.
Yes
externalRefIdpathstringThe external reference ID of the object type you want to modify.
No
namebodystringThe name of the object type.No
monogrambodystringThe one to three letter monogram of the object type.No
colorbodystringThe color of the object type monogram.No
descriptionbodystringThe description of the object type.No
pluralNamebodystringThe plural name of the object type.No
externalRefIdbodystringThe external reference ID of the object type.No
assessmentbodybooleanIf true, creates an assessment object type.No
Example Body Parameter
{
  "name": "string",
  "monogram": "string",
  "color": "string",
  "description": "string",
  "pluralName": "string",
  "externalRefId": "string",
  "assessment": false
}
Success Response

204 No Content

 DELETE  /object/objectType/{id}

Deletes an object type. Is it possible to delete more than one object type at a time (i.e., separating the IDs by commas)? If so, does this also apply to updating an object type and should we mention this?

Curl Request
curl -X DELETE --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType/15739'
Parameters
NameParameter TypeData TypeDescriptionRequired
idpathdoubleThe internal ID of the specific object type you want to delete.Yes
Success Response

204 No Content


objectTypeRoles

Retrieve, add, modify, or delete roles added to object types.

 GET  /object/objectType/{objectTypeId}/role 

Retrieves the roles added to an object type.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType/4188/role'
Parameters
NameParameter TypeData TypeDescriptionRequired
objectTypeIdpathdoubleThe internal ID of the object type you want to retrieve roles from.Yes
Success Response

200 OK

Example Response Body
[
  {
    "id": 2620,
    "name": "Control Owner",
    "description": "Compliance Management, Risk Management",
    "nameKey": "app:role:name:c03c11e4-062b-4913-94ae-b79362cbc294",
    "descriptionKey": "app:role:description:6bc5e50f-cb43-4b27-a7e4-aada7eead96c",
    "isGlobal": false,
    "created": "2017-12-15T06:28:05.748Z",
    "modified": "2019-10-25T18:38:14.796Z",
    "org": 46,
    "externalRefId": "619ec9fd-b624-44c6-aa56-15c32bee1820",
    "canPerformSearch": true,
    "canQuickCreate": true,
    "canGetHelp": true,
    "canSearchArchive": true
  },
  {
    "id": 2637,
    "name": "Reviewed By",
    "description": "",
    "nameKey": "app:role:name:3beca149-9ba5-4d37-8135-eb6c4e0462b2",
    "descriptionKey": "app:role:description:24af4bc4-53a8-467b-9349-f174276c3ab9",
    "isGlobal": false,
    "created": "2018-03-15T02:53:27.270Z",
    "modified": "2019-10-25T18:38:14.796Z",
    "org": 46,
    "externalRefId": "a5655e05-ec0b-475e-b1f7-495872ece72f",
    "canPerformSearch": true,
    "canQuickCreate": true,
    "canGetHelp": true,
    "canSearchArchive": true
  }
]
 POST  /object/objectType/{objectTypeId}/role

Add a role to an object type.

Curl Request
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' -d '{  "roleIds": [    4037  ] }' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType/10317/role'
Parameters
NameParameter TypeData TypeDescriptionRequired
objectTypeIdpathdoubleThe internal ID of the object type you want to add the role to.
Yes
roleIdsbodyIt shows the data type in Swagger as being "roleIds" so I'm not sure if this is correct.The internal ID of the role you want to add to the object type.Swagger says it's optional, but I'm not sure how it could be since you need to identify which role is being added. Also when I try to do this without a role ID, I get an internal server error as a response (which doesn't seem accurate either). See screenshot.

Success Response

200 OK

Example Response Body
[
  {
    "id": 7112,
    "object_type_id": 10317,
    "role_id": 4038,
    "org": 46
  }
]
 DELETE  /object/objectType/{objectTypeId}/role/{roleId}

Delete a role from an object type.

curl -X DELETE --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType/10317/role/4038'
Parameters
NameParameter TypeData TypeDescriptionRequired
objectTypeIdpathdoubleThe internal ID of the object type you want to add the role to.Yes
roleIdpathdoubleThe internal ID of the role you want to delete from the object type.Yes
Success Response

204 No Content

lifecycle

Retrieve, modify, or delete object type workflows. 

I'm thinking we should maybe just omit this one, which was in Bryan's original article. We have two endpoints with this name: One is lifecycle and the other is lifeCycle (this one). If we keep it, I'll have to make a note to ignore the other lifecycle resource.

 GET  /object/objectType/{objectTypeId}/objectLifeCycle

Retrieve all workflows and workflow states for an object type.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType/6020/objectLifeCycle?includeStates=true'
Parameters
NameParameter TypeData TypeDescriptionRequired
objectTypeIdpathdoubleThe object type you want to retrieve the workflows for.Yes
includeStatesquerybooleanIf true, the response will include workflow states.No
Success Response

200 OK

Example Response Body
{
  "data": [
    {
      "id": 7421,
      "name": "GS Injury",
      "type": 1,
      "nameKey": "app:objectLifeCycle:name:c25dbe52-f46e-4d2c-b620-7ddc99df0855",
      "description": null,
      "descriptionKey": "app:objectLifeCycle:description:2a1d0022-a65f-4421-b526-035dbb4bed6e",
      "created": "2019-04-24T15:36:06.804Z",
      "modified": "2019-04-24T15:36:06.804Z",
      "org": 46,
      "nextStateOrdinal": 1,
      "externalRefId": "2cce6a45-5392-4916-8254-14dea960749e",
      "objectTypeId": 6020,
      "states": [
        {
          "id": 29660,
          "objectLifeCycleId": 7421,
          "name": "Creation",
          "stateCategoryId": null,
          "nameKey": "app:objectLifeCycleState:name:b7de667d-d379-4c92-81cb-f537024277be",
          "color": "#0fc0fc",
          "ordinal": -1,
          "created": "2019-04-24T15:36:06.804Z",
          "modified": null,
          "org": 46,
          "creation": true,
          "externalRefId": "0f7bd9e8-106f-4e3b-8cbb-ea66d31165ee"
        },
        {
          "id": 29661,
          "objectLifeCycleId": 7421,
          "name": "Draft",
          "stateCategoryId": 1,
          "nameKey": "app:objectLifeCycleState:name:9c839e30-e2df-4a7d-bfc4-cad50dc560a9",
          "color": "#0fc0fc",
          "ordinal": 0,
          "created": "2019-04-24T15:36:06.804Z",
          "modified": null,
          "org": 46,
          "creation": false,
          "externalRefId": "6867d477-9b7b-42bb-a223-157e604c5bfc"
        },
        {
          "id": 29662,
          "objectLifeCycleId": 7421,
          "name": "Active",
          "stateCategoryId": 2,
          "nameKey": "app:objectLifeCycleState:name:47a6cc00-bbc0-47c7-97dc-058e42a066fe",
          "color": "#0fc0fc",
          "ordinal": 1,
          "created": "2019-04-24T15:36:06.804Z",
          "modified": null,
          "org": 46,
          "creation": false,
          "externalRefId": "78e2b3af-bc6c-4ba1-b0fa-a85b8e752c53"
        },
        {
          "id": 29663,
          "objectLifeCycleId": 7421,
          "name": "Archived",
          "stateCategoryId": 3,
          "nameKey": "app:objectLifeCycleState:name:1bf39775-6d9a-4d32-aff9-4a77313b52f0",
          "color": "#0fc0fc",
          "ordinal": 2,
          "created": "2019-04-24T15:36:06.804Z",
          "modified": null,
          "org": 46,
          "creation": false,
          "externalRefId": "d04afd5e-ab5b-4d23-8022-509f909f8b0b"
        }
      ]
    }
  ]
}


relationshipTypes

Retrieve, add, modify, or delete relationships and references.

 GET  /object/objectType/{objectTypeId}/relationship

Retrieve all relationships for an object type, with the option to references and/or details of linked object types.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/objectType/6130/relationship?inverse=true&includeObjectTypes=false'
Parameters
NameParameter TypeData TypeDescriptionRequired
objectTypeIdpathdoubleThe internal ID of the object type you want to retrieve the relationships from.Yes
inversequerybooleanIf true, the response will also include references.No
includeObjectTypesquerybooleanIf true, the response will also include linked object type details.No
Success Response

200 OK

Example Response Body
{
  "outgoing": [
    {
      "id": 5186,
      "name": "Risks",
      "longName": "",
      "referenceName": "Assets",
      "nameKey": "app:relationship:name:d9611d04-738d-4c4e-afc8-36def232b0ee",
      "longNameKey": "app:relationship:longName:c2cde73a-6f9a-4513-912c-66462606e4af",
      "referenceNameKey": "app:relationship:referenceName:5e3a69dc-62b5-4001-8a39-3d71c88dac8b",
      "objectTypeId": 4180,
      "objectTypeGroupId": 3593,
      "maximumAllowedEdges": 0,
      "created": "2017-11-29T21:23:16.057Z",
      "modified": null,
      "org": 46,
      "externalRefId": "Asset-Risk"
    },
    {
      "id": 5185,
      "name": "Attachments",
      "longName": "",
      "referenceName": "",
      "nameKey": "app:relationship:name:bfbe7cda-3a52-4108-94de-e04ec56f4887",
      "longNameKey": "app:relationship:longName:ce992ea0-7839-406a-9d61-3f2cd50ade6c",
      "referenceNameKey": "app:relationship:referenceName:bcac4669-4421-4599-9f5f-c6195e155fbb",
      "objectTypeId": 4180,
      "objectTypeGroupId": 3584,
      "maximumAllowedEdges": 0,
      "created": "2018-11-22T22:42:51.857Z",
      "modified": "2018-11-22T22:43:28.918Z",
      "org": 46,
      "externalRefId": "Asset-Attachment"
    }
  ],
  "incoming": [
    {
      "id": 5247,
      "name": "Key Assets",
      "longName": "",
      "referenceName": "Locations",
      "nameKey": "app:relationship:name:e78b742d-ef08-4159-bec4-9d122c856231",
      "longNameKey": "app:relationship:longName:a08ff317-4b35-4d0c-89a7-a2aebbf43b36",
      "referenceNameKey": "app:relationship:referenceName:be1ac710-7bc5-4434-98db-0af3b3fca41d",
      "objectTypeId": 4211,
      "objectTypeGroupId": 3595,
      "maximumAllowedEdges": 0,
      "created": "2017-11-29T21:23:16.057Z",
      "modified": "2018-03-19T02:48:33.106Z",
      "org": 46,
      "externalRefId": "Location-Asset"
    },


reports

Retrieve, modify, add, or delete reports, filters, and/or parameters.

Report Component Types
TypeElement
1Free Form Text
2Table
3Pie/Half-Pie Chart
4Heat Map
5Bar/Column Chart
6n/a <--This was in Bryan's document. Not sure what it means exactly.
7Repeatable Forms
8Page Break
Table Column Types
TypeElement
1Field
2Relationship
3Formula
4Role
5Property
6n/a <--See note in above table.
7Workflow State
 GET  /object/report

Retrieve all reports within the org.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/report'
Success Response

200 OK

Example Response Body
{
  "data": [
    {
      "id": 9017,
      "name": "Risks & Controls By Location",
      "description": "",
      "nameKey": "app:report:name:820c6f98-b82d-496f-9df2-2e2da44a866f",
      "descriptionKey": "app:report:description:231e091c-296b-43bf-a2d9-91a5eca5913b",
      "objectTypeId": 4211,
      "created": "2019-12-09T19:06:56.042Z",
      "modified": "2019-12-09T19:14:58.577Z",
      "org": 46,
      "externalRefId": "8e197f22-774f-459f-b9a1-a087055c1fb7",
      "nextReportComponentOrdinal": 0,
      "type": 1,
      "showArchiveData": false,
      "nestloop": "org"
    }
 GET  /object/{reportId}/filter

Retrieve a report's filters.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOU_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/report/2203/filter'
Parameters
NameParameter TypeData TypeDescriptionRequired
reportIdpathdoubleThe internal ID of the report you want to retrieve filters from.Yes
Success Response

200 OK

Example Response Body
[
  {
    "id": 2159,
    "reportId": 2203,
    "type": 1,
    "elementId": 12739,
    "objectTypeId": 4207,
    "subtype": 2,
    "created": "2017-12-13T22:02:47.788Z",
    "modified": null,
    "org": 46,
    "externalRefId": "1cc5eeee-8f0d-4030-8823-8052d23fdc3e",
    "columnFilter": false,
    "required": false
  },
  {
    "id": 2165,
    "reportId": 2203,
    "type": 1,
    "elementId": 12805,
    "objectTypeId": 4197,
    "subtype": 3,
    "created": "2017-12-13T22:02:47.788Z",
    "modified": null,
    "org": 46,
    "externalRefId": "23933d1b-f991-43ce-8a76-59a41f1b3a93",
    "columnFilter": false,
    "required": false
  }
]
 GET  /object/report/{reportId}/reportComponents

Retrieve a list of components (tables, pie charts, etc.) on a report.

Curl Request
curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer YOUR_API_KEY' 'https://YOUR_ENVIRONMENT.resolver.com/object/report/2203/reportComponents'
Parameters
NameParameter TypeData TypeDescriptionRequired
reportIdpathdoubleThe internal ID of the report you want to retrieve components from.Yes
Success Response

200 OK

Example Response
{
  "data": [
    {
      "id": 6177,
      "reportId": 2262,
      "reportDataDefinitionId": null,
      "componentDataDefinitionId": null,
      "displayProperties": {},
      "showTotals": false,
      "allData": true,
      "libraryData": true,
      "content": "The report outlines all requirements that are not applicable to the organization. If a requirement becomes applicable, click on the requirement below and click **Reassess Applicability** to submit the requirement for review by the Compliance Team. ",
      "contentKey": "app:reportComponent:content:b9eab3e2-1d6a-4d56-82cb-cb4297c18208",
      "xAxisLabel": null,
      "xAxisLabelKey": null,
      "yAxisLabel": null,
      "yAxisLabelKey": null,
      "groupByType": null,
      "groupByRelationshipId": null,
      "groupByObjectTypeId": null,
      "type": 1,
      "subtype": 1,
      "ordinal": 0,
      "created": "2018-11-22T16:06:42.749Z",
      "modified": "2018-11-22T16:07:52.337Z",
      "org": 46,
      "externalRefId": "351e1f17-a258-4f80-86ad-e231b59d4b87",
      "showColoredCellsAsOvals": false,
      "dataProperties": {
        "forms": {},
        "columns": [],
        "parameters": [],
        "subtype": 1,
        "componentDataDefinitionId": null,
        "reportDataDefinitionId": null,
        "showTotals": false,
        "content": "The report outlines all requirements that are not applicable to the organization. If a requirement becomes applicable, click on the requirement below and click **Reassess Applicability** to submit the requirement for review by the Compliance Team. ",
        "contentKey": "app:reportComponent:content:b9eab3e2-1d6a-4d56-82cb-cb4297c18208",
        "xAxisLabel": null,
        "xAxisLabelKey": null,
        "yAxisLabel": null,
        "yAxisLabelKey": null,
        "groupById": null,
        "groupByType": null,
        "showColoredCellsAsOvals": false
      }
    },
    {
      "id": 6258,
      "reportId": 2262,
      "reportDataDefinitionId": 7420,
      "componentDataDefinitionId": 7355,
      "displayProperties": {},
      "showTotals": false,
      "allData": false,
      "libraryData": true,
      "content": "",
      "contentKey": null,
      "xAxisLabel": null,
      "xAxisLabelKey": null,
      "yAxisLabel": null,
      "yAxisLabelKey": null,
      "groupByType": null,
      "groupByRelationshipId": null,
      "groupByObjectTypeId": null,
      "type": 1,
      "subtype": 2,
      "ordinal": 1,
      "created": "2018-11-22T15:53:01.001Z",
      "modified": "2018-11-22T16:08:13.652Z",
      "org": 46,
      "externalRefId": "7eb77b61-30a7-4fa2-aa3d-817e41fe2f83",
      "showColoredCellsAsOvals": false,
      "dataProperties": {
        "enabledForms": {
          "": false
        },
        "forms": {
          "": 7358
        },
        "columns": [
          {
            "id": 19180,
            "componentId": 6258,
            "nodeId": 51077,
            "type": 1,
            "ordinal": 3,
            "subtype": 0,
            "identifier": 12549,
            "objectTypeId": 4227,
            "created": "2018-11-22T16:08:13.652Z",
            "modified": null,
            "org": 46,
            "externalRefId": "249fa322-af5c-40e3-9865-531a1984cd62",
            "readOnly": false,
            "path": "",
            "pathAnchor": 4227
          },
            ],
        "parameters": [],
        "titles": {},
        "subtype": 2,
        "componentDataDefinitionId": 7355,
        "reportDataDefinitionId": 7420,
        "showTotals": false,
        "content": "",
        "contentKey": null,
        "xAxisLabel": null,
        "xAxisLabelKey": null,
        "yAxisLabel": null,
        "yAxisLabelKey": null,
        "groupById": null,
        "groupByType": null,
        "showColoredCellsAsOvals": false
      }
    }
  ]
}