Home Service Manager Portal Feature Requests
We appreciate you taking the time to vote and add your suggestions to make our products awesome! Your request will be submitted to the community for review and inclusion into the backlog.

We recommend reviewing what is submitted before posting, in case your idea has already been submitted by another community member. If it has been submitted, vote for that existing feature request (by clicking the up arrow) to increase its opportunity of being added to Cireson solutions.

For more information around feature requests in the Cireson Community click here.

Option to include/exclude encoded images in API GetServiceCatalog for lightweight response

Sebastian_HansenSebastian_Hansen Customer IT Monkey ✭
Please add an option for the API to include/discard endoded images in result.

Currently the API returns both service request and offering request images encoded as base 64 and base 32 (?) for each image in the service catalog. In a case with 60 request offerings this means 240 (2 image x 2 encodings x 60 offerings) images encoded in the request. Even if the images are small (60KB) this amounts to sizes far exceeding what is needed (240 images x 60KB per image = 1.4MB total).

Adding an optional attribute to the API could trim this data from the API call, making it faster and more usable for custom solutions. If includeImageData is false, the api could return true/false for the existence of image data.

/**
 * GetServiceCatalog
 *
 * api/V3/ServiceCatalog/GetServiceCatalog?userId={userId}&isScoped={isScoped}&includeImageData={includeImageData}
 * 
 * API endpoint for retrieving a service catalog with all offerings for a user.
 *
 */
<br>@param {string} userId
  // The user ID hash for which user to fetch data.

@param {boolean} isScoped
  // Select if the request should return only offerings matching the current users scope.

@param {boolean} includeImageData
  // Select weather or not to include encoded image data in the API result. Default true.

@example [...]/GetServiceCatalog?userId=[...]&isScoped=true&includeImageData=false
  [
    {
      "CategoryId": "bcacf8fe-4c63-4735-896e-eb18e9dec1b6",
      "Category": "sample string 2",
      "ServiceOfferingId": "25a26713-0a17-46e8-9850-1f77b16e3d6e",
      "Service": "sample string 4",
      "ServiceImage": true,
      "RequestOfferingId": "8afa5d4c-7610-4b41-a6bd-e5f9d76272c0",
      "RequestOfferingImage": true,
      "RequestOfferingTitle": "sample string 6",
      "RequestOfferingDescription": "sample string 7",
      "RequestOfferingTargetTemplateType": "sample string 8",
      "IsFavorite": true,
      "FavoriteImage": "GoldStar.png",
      "IsAdvancedRequestOffering": true,
      "RequestOfferingLinkUrl": "sample string 11",
      "RequestOfferingLinkTargetType": "sample string 12"
    },
    {...}
  ]

@example [...]/GetServiceCatalog?userId=[...]&isScoped=true&includeImageData=true
  [
    {
      "CategoryId": "bcacf8fe-4c63-4735-896e-eb18e9dec1b6",
      "Category": "sample string 2",
      "ServiceOfferingId": "25a26713-0a17-46e8-9850-1f77b16e3d6e",
      "Service": "sample string 4",
      "ServiceImage": "QEA=[...]",
      "ServiceImage64": "QEA=[...]",
      "RequestOfferingId": "8afa5d4c-7610-4b41-a6bd-e5f9d76272c0",
      "RequestOfferingImage": "QEA=[...]",
      "RequestOfferingImage64": "QEA=[...]",
      "RequestOfferingTitle": "sample string 6",
      "RequestOfferingDescription": "sample string 7",
      "RequestOfferingTargetTemplateType": "sample string 8",
      "IsFavorite": true,
      "FavoriteImage": "GoldStar.png",
      "IsAdvancedRequestOffering": true,
      "RequestOfferingLinkUrl": "sample string 11",
      "RequestOfferingLinkTargetType": "sample string 12"
    },
    {...}
  ]<br>

7 votes

Submitted · Last Updated

Sign In or Register to comment.