DashboardProviderHibernateImpl Resource

The base provider. All providers should have similar functionality to this. Hopefully these methods are fairly self-explanatory. Think of these as 'tool box' functions to help generate services quickly.

POST /dashboard/saveCustomLink

Save a custom link

Request Body
media type data type
application/json CustomLink (JSON)
application/xml customLink (XML)
Response Body
media type data type description
application/json CustomLink (JSON)
application/xml customLink (XML)

Example

Request
POST /dashboard/saveCustomLink
Content-Type: application/json
Accept: application/json

                
{
  "requiredPermission" : "...",
  "url" : "...",
  "text" : "...",
  "description" : "...",
  "linkOrder" : 12345,
  "allClients" : true,
  "newWindow" : true,
  "dashboards" : [ {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  }, {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  } ],
  "clientSettings" : {
    "client" : {
      "status" : { },
      "parentClient" : { },
      "accountNumber" : "...",
      "name" : "...",
      "type" : { },
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "url" : "...",
    "obeSite" : "...",
    "loginClone" : "...",
    "travelAgency" : {
      "pcc" : "...",
      "name" : "...",
      "address1" : "...",
      "address2" : "...",
      "address3" : "...",
      "city" : "...",
      "state" : "...",
      "zip" : "...",
      "parentCompany" : { },
      "active" : "...",
      "branch" : "...",
      "clientPrefix" : "...",
      "profileSettings" : { },
      "afterHoursNumber" : "...",
      "collectVoidLogs" : true,
      "gds" : { },
      "arcNumber" : "...",
      "logo" : "...",
      "logoLink" : "...",
      "afterHoursInternationalNumber" : "...",
      "tollFreeNumber" : "...",
      "phoneNumber" : "...",
      "onlineOffice" : { },
      "showTmcAppLinks" : true,
      "vipTollFree" : "...",
      "vipAfterHours" : "...",
      "cityCode" : { },
      "tmcHeadQuarters" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "annualAirVolume" : 12345.0,
    "annualCarVolume" : 12345.0,
    "annualHotelVolume" : 12345.0,
    "annualAirBookings" : 12345,
    "numEmployees" : 12345,
    "numTravelers" : 12345,
    "fullService" : true,
    "onlineService" : true,
    "onsiteService" : true,
    "marketingEmail" : true,
    "concurExpense" : 12345,
    "source" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "logo" : "...",
    "logoLink" : "...",
    "sendEmail" : true,
    "activateNewTravelers" : true,
    "defaultAgentUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "defaultProfileUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "defaultOnlineUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "notificationLevel" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "notificationRadius" : 12345,
    "firstTicketIssued" : 12345,
    "website" : "...",
    "profileUsername" : "...",
    "profilePassword" : "...",
    "obe" : {
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "showOldProfileLink" : true,
    "customTravelRequestUrl" : "...",
    "airbankObeSync" : true,
    "gdsName" : "...",
    "gds" : {
      "code" : "...",
      "name" : "...",
      "enabled" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "tripLinkEnabled" : true,
    "quickLinks" : [ {
      "requiredPermission" : "...",
      "url" : "...",
      "text" : "...",
      "description" : "...",
      "linkOrder" : 12345,
      "allClients" : true,
      "newWindow" : true,
      "dashboards" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "requiredPermission" : "...",
      "url" : "...",
      "text" : "...",
      "description" : "...",
      "linkOrder" : 12345,
      "allClients" : true,
      "newWindow" : true,
      "dashboards" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "obeProfileLink" : 12345,
    "obeBookingLink" : 12345,
    "secureLogoutMessage" : "...",
    "unusedTicketEmail" : true,
    "hotelAttachment" : true,
    "travelApproval" : true,
    "surveyEmail" : true,
    "obeSubscriptionLevel" : 12345,
    "obeContractHolder" : 12345,
    "industry" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "secureProfile" : true,
    "hrFeed" : true,
    "customLogoutUrl" : "...",
    "atRiskNote" : "...",
    "enableProfileUrl" : true,
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
}
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
{
  "requiredPermission" : "...",
  "url" : "...",
  "text" : "...",
  "description" : "...",
  "linkOrder" : 12345,
  "allClients" : true,
  "newWindow" : true,
  "dashboards" : [ {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  }, {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  } ],
  "clientSettings" : {
    "client" : {
      "status" : { },
      "parentClient" : { },
      "accountNumber" : "...",
      "name" : "...",
      "type" : { },
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "url" : "...",
    "obeSite" : "...",
    "loginClone" : "...",
    "travelAgency" : {
      "pcc" : "...",
      "name" : "...",
      "address1" : "...",
      "address2" : "...",
      "address3" : "...",
      "city" : "...",
      "state" : "...",
      "zip" : "...",
      "parentCompany" : { },
      "active" : "...",
      "branch" : "...",
      "clientPrefix" : "...",
      "profileSettings" : { },
      "afterHoursNumber" : "...",
      "collectVoidLogs" : true,
      "gds" : { },
      "arcNumber" : "...",
      "logo" : "...",
      "logoLink" : "...",
      "afterHoursInternationalNumber" : "...",
      "tollFreeNumber" : "...",
      "phoneNumber" : "...",
      "onlineOffice" : { },
      "showTmcAppLinks" : true,
      "vipTollFree" : "...",
      "vipAfterHours" : "...",
      "cityCode" : { },
      "tmcHeadQuarters" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "annualAirVolume" : 12345.0,
    "annualCarVolume" : 12345.0,
    "annualHotelVolume" : 12345.0,
    "annualAirBookings" : 12345,
    "numEmployees" : 12345,
    "numTravelers" : 12345,
    "fullService" : true,
    "onlineService" : true,
    "onsiteService" : true,
    "marketingEmail" : true,
    "concurExpense" : 12345,
    "source" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "logo" : "...",
    "logoLink" : "...",
    "sendEmail" : true,
    "activateNewTravelers" : true,
    "defaultAgentUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "defaultProfileUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "defaultOnlineUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "notificationLevel" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "notificationRadius" : 12345,
    "firstTicketIssued" : 12345,
    "website" : "...",
    "profileUsername" : "...",
    "profilePassword" : "...",
    "obe" : {
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "showOldProfileLink" : true,
    "customTravelRequestUrl" : "...",
    "airbankObeSync" : true,
    "gdsName" : "...",
    "gds" : {
      "code" : "...",
      "name" : "...",
      "enabled" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "tripLinkEnabled" : true,
    "quickLinks" : [ {
      "requiredPermission" : "...",
      "url" : "...",
      "text" : "...",
      "description" : "...",
      "linkOrder" : 12345,
      "allClients" : true,
      "newWindow" : true,
      "dashboards" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "requiredPermission" : "...",
      "url" : "...",
      "text" : "...",
      "description" : "...",
      "linkOrder" : 12345,
      "allClients" : true,
      "newWindow" : true,
      "dashboards" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "obeProfileLink" : 12345,
    "obeBookingLink" : 12345,
    "secureLogoutMessage" : "...",
    "unusedTicketEmail" : true,
    "hotelAttachment" : true,
    "travelApproval" : true,
    "surveyEmail" : true,
    "obeSubscriptionLevel" : 12345,
    "obeContractHolder" : 12345,
    "industry" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "secureProfile" : true,
    "hrFeed" : true,
    "customLogoutUrl" : "...",
    "atRiskNote" : "...",
    "enableProfileUrl" : true,
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
}
                
              

POST /dashboard/updateQuickLink

Add/update a quicklink so that it can be added to clients later.

Request Body
media type data type description
application/json QuickLink (JSON) The quicklink to add or update.
application/xml quickLink (XML)
Response Body
media type data type description
application/json QuickLink (JSON) The quicklink that was created.
application/xml quickLink (XML)

Example

Request
POST /dashboard/updateQuickLink
Content-Type: application/json
Accept: application/json

                
{
  "requiredPermission" : "...",
  "url" : "...",
  "text" : "...",
  "description" : "...",
  "linkOrder" : 12345,
  "allClients" : true,
  "newWindow" : true,
  "dashboards" : [ {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  }, {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  } ],
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
}
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
{
  "requiredPermission" : "...",
  "url" : "...",
  "text" : "...",
  "description" : "...",
  "linkOrder" : 12345,
  "allClients" : true,
  "newWindow" : true,
  "dashboards" : [ {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  }, {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  } ],
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
}
                
              

GET /dashboard/getCustomLinksForClient/{clientId}

Get the custom links for a client

Request Parameters
name type description constraints
clientId path long
Response Body
media type data type description
application/json array of CustomLink (JSON)
application/xml list of customLink (XML)

Example

Request
GET /dashboard/getCustomLinksForClient/{clientId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 200 OK
Content-Type: application/json

                
[ {
  "requiredPermission" : "...",
  "url" : "...",
  "text" : "...",
  "description" : "...",
  "linkOrder" : 12345,
  "allClients" : true,
  "newWindow" : true,
  "dashboards" : [ {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  }, {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  } ],
  "clientSettings" : {
    "client" : {
      "status" : { },
      "parentClient" : { },
      "accountNumber" : "...",
      "name" : "...",
      "type" : { },
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "url" : "...",
    "obeSite" : "...",
    "loginClone" : "...",
    "travelAgency" : {
      "pcc" : "...",
      "name" : "...",
      "address1" : "...",
      "address2" : "...",
      "address3" : "...",
      "city" : "...",
      "state" : "...",
      "zip" : "...",
      "parentCompany" : { },
      "active" : "...",
      "branch" : "...",
      "clientPrefix" : "...",
      "profileSettings" : { },
      "afterHoursNumber" : "...",
      "collectVoidLogs" : true,
      "gds" : { },
      "arcNumber" : "...",
      "logo" : "...",
      "logoLink" : "...",
      "afterHoursInternationalNumber" : "...",
      "tollFreeNumber" : "...",
      "phoneNumber" : "...",
      "onlineOffice" : { },
      "showTmcAppLinks" : true,
      "vipTollFree" : "...",
      "vipAfterHours" : "...",
      "cityCode" : { },
      "tmcHeadQuarters" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "annualAirVolume" : 12345.0,
    "annualCarVolume" : 12345.0,
    "annualHotelVolume" : 12345.0,
    "annualAirBookings" : 12345,
    "numEmployees" : 12345,
    "numTravelers" : 12345,
    "fullService" : true,
    "onlineService" : true,
    "onsiteService" : true,
    "marketingEmail" : true,
    "concurExpense" : 12345,
    "source" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "logo" : "...",
    "logoLink" : "...",
    "sendEmail" : true,
    "activateNewTravelers" : true,
    "defaultAgentUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "defaultProfileUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "defaultOnlineUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "notificationLevel" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "notificationRadius" : 12345,
    "firstTicketIssued" : 12345,
    "website" : "...",
    "profileUsername" : "...",
    "profilePassword" : "...",
    "obe" : {
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "showOldProfileLink" : true,
    "customTravelRequestUrl" : "...",
    "airbankObeSync" : true,
    "gdsName" : "...",
    "gds" : {
      "code" : "...",
      "name" : "...",
      "enabled" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "tripLinkEnabled" : true,
    "quickLinks" : [ {
      "requiredPermission" : "...",
      "url" : "...",
      "text" : "...",
      "description" : "...",
      "linkOrder" : 12345,
      "allClients" : true,
      "newWindow" : true,
      "dashboards" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "requiredPermission" : "...",
      "url" : "...",
      "text" : "...",
      "description" : "...",
      "linkOrder" : 12345,
      "allClients" : true,
      "newWindow" : true,
      "dashboards" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "obeProfileLink" : 12345,
    "obeBookingLink" : 12345,
    "secureLogoutMessage" : "...",
    "unusedTicketEmail" : true,
    "hotelAttachment" : true,
    "travelApproval" : true,
    "surveyEmail" : true,
    "obeSubscriptionLevel" : 12345,
    "obeContractHolder" : 12345,
    "industry" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "secureProfile" : true,
    "hrFeed" : true,
    "customLogoutUrl" : "...",
    "atRiskNote" : "...",
    "enableProfileUrl" : true,
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
} ]
                
              

GET /dashboard/getCustomLinksForDashboard/{dashboardId}

Get a dashboard's permissioned quicklinks for logged in user

Request Parameters
name type description constraints
dashboardId path The dashboard to get quicklinks for long
Response Body
media type data type description
application/json array of CustomLink (JSON)
application/xml list of customLink (XML)

Example

Request
GET /dashboard/getCustomLinksForDashboard/{dashboardId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 200 OK
Content-Type: application/json

                
[ {
  "requiredPermission" : "...",
  "url" : "...",
  "text" : "...",
  "description" : "...",
  "linkOrder" : 12345,
  "allClients" : true,
  "newWindow" : true,
  "dashboards" : [ {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  }, {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  } ],
  "clientSettings" : {
    "client" : {
      "status" : { },
      "parentClient" : { },
      "accountNumber" : "...",
      "name" : "...",
      "type" : { },
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "url" : "...",
    "obeSite" : "...",
    "loginClone" : "...",
    "travelAgency" : {
      "pcc" : "...",
      "name" : "...",
      "address1" : "...",
      "address2" : "...",
      "address3" : "...",
      "city" : "...",
      "state" : "...",
      "zip" : "...",
      "parentCompany" : { },
      "active" : "...",
      "branch" : "...",
      "clientPrefix" : "...",
      "profileSettings" : { },
      "afterHoursNumber" : "...",
      "collectVoidLogs" : true,
      "gds" : { },
      "arcNumber" : "...",
      "logo" : "...",
      "logoLink" : "...",
      "afterHoursInternationalNumber" : "...",
      "tollFreeNumber" : "...",
      "phoneNumber" : "...",
      "onlineOffice" : { },
      "showTmcAppLinks" : true,
      "vipTollFree" : "...",
      "vipAfterHours" : "...",
      "cityCode" : { },
      "tmcHeadQuarters" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "annualAirVolume" : 12345.0,
    "annualCarVolume" : 12345.0,
    "annualHotelVolume" : 12345.0,
    "annualAirBookings" : 12345,
    "numEmployees" : 12345,
    "numTravelers" : 12345,
    "fullService" : true,
    "onlineService" : true,
    "onsiteService" : true,
    "marketingEmail" : true,
    "concurExpense" : 12345,
    "source" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "logo" : "...",
    "logoLink" : "...",
    "sendEmail" : true,
    "activateNewTravelers" : true,
    "defaultAgentUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "defaultProfileUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "defaultOnlineUserGroup" : {
      "name" : "...",
      "permissions" : [ { }, { } ],
      "description" : "...",
      "role" : { },
      "type" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "notificationLevel" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "notificationRadius" : 12345,
    "firstTicketIssued" : 12345,
    "website" : "...",
    "profileUsername" : "...",
    "profilePassword" : "...",
    "obe" : {
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "showOldProfileLink" : true,
    "customTravelRequestUrl" : "...",
    "airbankObeSync" : true,
    "gdsName" : "...",
    "gds" : {
      "code" : "...",
      "name" : "...",
      "enabled" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "tripLinkEnabled" : true,
    "quickLinks" : [ {
      "requiredPermission" : "...",
      "url" : "...",
      "text" : "...",
      "description" : "...",
      "linkOrder" : 12345,
      "allClients" : true,
      "newWindow" : true,
      "dashboards" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "requiredPermission" : "...",
      "url" : "...",
      "text" : "...",
      "description" : "...",
      "linkOrder" : 12345,
      "allClients" : true,
      "newWindow" : true,
      "dashboards" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "obeProfileLink" : 12345,
    "obeBookingLink" : 12345,
    "secureLogoutMessage" : "...",
    "unusedTicketEmail" : true,
    "hotelAttachment" : true,
    "travelApproval" : true,
    "surveyEmail" : true,
    "obeSubscriptionLevel" : 12345,
    "obeContractHolder" : 12345,
    "industry" : {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "secureProfile" : true,
    "hrFeed" : true,
    "customLogoutUrl" : "...",
    "atRiskNote" : "...",
    "enableProfileUrl" : true,
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
} ]
                
              

GET /dashboard/getDashboardLocations/{dashboardId}

Get all the dashboard widget locations for a specific user

Request Parameters
name type description constraints
dashboardId path long
Response Body
media type data type description
application/json array of DashboardLocation (JSON) dashboardLocationList
application/xml list of dashboardLocation (XML)

Example

Request
GET /dashboard/getDashboardLocations/{dashboardId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 200 OK
Content-Type: application/json

                
[ {
  "position" : 12345,
  "widget" : {
    "weight" : 12345,
    "description" : "...",
    "name" : "...",
    "code" : "...",
    "permission" : "...",
    "type" : "...",
    "viewPath" : "...",
    "small" : true,
    "medium" : true,
    "large" : true,
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "config" : "...",
  "size" : 12345,
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
} ]
                
              

GET /dashboard/getMangedWidgets/{dashboardId}

Get all available widgets for the given dashboard

Request Parameters
name type description constraints
dashboardId path long
Response Body
media type data type description
application/json array of ManagedWidget (JSON)
application/xml list of managedWidget (XML)

Example

Request
GET /dashboard/getMangedWidgets/{dashboardId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 200 OK
Content-Type: application/json

                
[ {
  "id" : 12345,
  "name" : "...",
  "desc" : "...",
  "enabled" : true,
  "type" : "..."
} ]
                
              

GET /dashboard/getQuickLinksForLoggedInUser/{dashboardId}

Get a list of quicklinks that belong to the client and dashboard

Request Parameters
name type description constraints
dashboardId path long
Response Body
media type data type description
application/json array of QuickLink (JSON)
application/xml list of quickLink (XML)

Example

Request
GET /dashboard/getQuickLinksForLoggedInUser/{dashboardId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 200 OK
Content-Type: application/json

                
[ {
  "requiredPermission" : "...",
  "url" : "...",
  "text" : "...",
  "description" : "...",
  "linkOrder" : 12345,
  "allClients" : true,
  "newWindow" : true,
  "dashboards" : [ {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  }, {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  } ],
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
} ]
                
              

GET /dashboard/getWidgetConfig/{dashboardLocationId}

Sets the config string for a user's widget

Request Parameters
name type description constraints
dashboardLocationId path The id of the user's widget long
Response Body
media type data type description
application/json string (JSON)
application/xml string (XML)

Example

Request
GET /dashboard/getWidgetConfig/{dashboardLocationId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 200 OK
Content-Type: application/json

                
...
                
              

GET /dashboard/getWidgetsForDashboard/{dashboardId}

Get all widgets available to a dashboard

Request Parameters
name type description constraints
dashboardId path The id of the dashboard long
Response Body
media type data type description
application/json array of WidgetDashboard (JSON) A list of WidgetDashboard objects, that contain the widget, the dashboard, and whether it is a default widget
application/xml list of widgetDashboard (XML)

Example

Request
GET /dashboard/getWidgetsForDashboard/{dashboardId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 200 OK
Content-Type: application/json

                
[ {
  "widget" : {
    "weight" : 12345,
    "description" : "...",
    "name" : "...",
    "code" : "...",
    "permission" : "...",
    "type" : "...",
    "viewPath" : "...",
    "small" : true,
    "medium" : true,
    "large" : true,
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "defaultWidget" : true,
  "defaultPosition" : 12345,
  "defaultSize" : 12345,
  "dashboard" : {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
} ]
                
              

POST /dashboard/saveLayout/{dashboardId}

Save a user's dashboard layout. This endpoint removes the old and adds the new, so there will be some id inflation

Request Parameters
name type description constraints
dashboardId path long
Request Body
media type data type
application/json array of DashboardLocation (JSON)
application/xml list of dashboardLocation (XML)

Example

Request
POST /dashboard/saveLayout/{dashboardId}
Content-Type: application/json

                
[ {
  "position" : 12345,
  "widget" : {
    "weight" : 12345,
    "description" : "...",
    "name" : "...",
    "code" : "...",
    "permission" : "...",
    "type" : "...",
    "viewPath" : "...",
    "small" : true,
    "medium" : true,
    "large" : true,
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "config" : "...",
  "size" : 12345,
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
} ]
                
              
Response
HTTP/1.1 201 Created

              

POST /dashboard/setWidgetConfig/{dashboardLocationId}

Sets the config string for a user's widget

Request Parameters
name type description constraints
dashboardLocationId path The id of the user's widget long
Request Body
media type data type description
application/json string (JSON) The string to set the config to.
application/xml string (XML)

Example

Request
POST /dashboard/setWidgetConfig/{dashboardLocationId}
Content-Type: application/json

                
...
                
              
Response
HTTP/1.1 201 Created

              

DELETE /dashboard/removeWidget/{widgetId}/{dashboardId}

A function to remove a widget for the user that is logged in.

Request Parameters
name type description constraints
dashboardId path long
widgetId path the id of the widget being removed. long
Response Body
media type data type description
application/json string (JSON)
application/xml string (XML)

Example

Request
DELETE /dashboard/removeWidget/{widgetId}/{dashboardId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 204 No Content
Content-Type: application/json

                
...
                
              

POST /dashboard/addWidget/{widgetId}/{newposition}/{dashboardId}

A function to swap the position of two widgets. If there was no previous widget in that position, then it will simply be added. This applies to the settings of a single user only.

Request Parameters
name type description constraints
dashboardId path long
newposition path the position that the widget was moved to, this is the position of the other widget being moved also. int
widgetId path the id of the widget being moved. long
Response Body
media type data type description
application/json string (JSON)
application/xml string (XML)

Example

Request
POST /dashboard/addWidget/{widgetId}/{newposition}/{dashboardId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
...
                
              

POST /dashboard/swapWidget/{widgetId}/{newposition}/{dashboardId}

A function to swap the position of two widgets. If there was no previous widget in that position, then it will simply be added. This applies to the settings of a single user only.

Request Parameters
name type description constraints
dashboardId path long
newposition path the position that the widget was moved to, this is the position of the other widget being moved also. int
widgetId path the id of the widget being moved. long
Response Body
media type data type description
application/json string (JSON)
application/xml string (XML)

Example

Request
POST /dashboard/swapWidget/{widgetId}/{newposition}/{dashboardId}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
...