Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 19 Next »

The Entity System Configuration object contains system configuration settings for a specific entity



Entity Object Formats

JSON Format
{
  "AllowMobileCreateOrder": false,
  "CloudElements": {
    "CustomerID": "",
    "Email": "",
    "Enabled": false,
    "Modules": {
      "{ModuleID}": {
        "Enabled": true,
        "ID": "",
        "Key": "",
        "Name": "QuickBooks Online",
        "Token": ""
      }
    },
    "Name": "",
    "UserID": "",
    "UserSecret": ""
  },
  "DefaultCulturalIdentifer": "en",
  "EnableMobileApplication": true,
  "ExportNotifications": {
    "Authentication": {
      "URL": "",
      "Headers": [
        {
          "Name": "",
          "Value": ""
        }
      ],
      "Request": {
        "audience": "",
        "client_id": "",
        "client_secret": "",
        "grant_type": "client_credentials"
      },
      "Type": "OAuth2"
    },
    "Notifications": {
      "Activity": {
        "Enabled": false,
        "URL": "",
        "Headers": [
          {
            "Name": "",
            "Value": ""
          }
        ]
      },
      "Audit": {
        "Enabled": false,
        "URL": "",
        "Headers": [
          {
            "Name": "",
            "Value": ""
          }
        ]
      },
      "InventoryTransfer": {
        "Enabled": false,
        "URL": "",
        "Headers": [
          {
            "Name": "",
            "Value": ""
          }
        ]
      },
      "InventoryUsage": {
        "Enabled": false,
        "URL": "",
        "Headers": [
          {
            "Name": "",
            "Value": ""
          }
        ]
      },
      "LoadInventory": {
        "Enabled": false,
        "URL": "",
        "Headers": [
          {
            "Name": "",
            "Value": ""
          }
        ]
      },
      "StockLevelRecommendation": {
        "Enabled": false,
        "URL": "",
        "Headers": [
          {
            "Name": "",
            "Value": ""
          }
        ]
      },
      "TimeEntry": {
        "Enabled": false,
        "URL": "",
        "Headers": [
          {
            "Name": "",
            "Value": ""
          }
        ]
      },
      "WorkOrder": {
        "Enabled": false,
        "URL": "",
        "Headers": [
          {
            "Name": "",
            "Value": ""
          }
        ]
      }
    }
  },
  "ExtUserAuth": {
    "Enabled": false,
    "AuthEndpoint": "https://sm-dev.hostedservicepower.com/mock/3rdPartyjwt"
  },
  "Invoice": {
    "EmailFrom": "sender@servicemobility.com",
    "EmailSender": {
      "SourceArn": "",
      "FromArn": "",
      "ReturnPathArn": ""
    }
  },
  "Invoicing": true,
  "JMSExpirationInDays": 30,
  "MaxLoginAttempts": 3,
  "PasswordResetLength": 10,
  "PayByLink": {
    "ID": "1002",
    "MerchantID": "CAAF8BFE-65AD-466C-A513-CC7854D4E90D",
    "UserID": "rahulmetha",
    "Passcode": ""
  },
  "Payment": {
    "GatewayID": "1001",
    "MerchantID": "CAAF8BFE-65AD-466C-A513-CC7854D4E90D",
    "UserID": "apiUser",
    "Passcode": ""
  },
  "RestApi": {
    "AuthorizationHeaders": [
      {
        "Name": "",
        "Value": ""
      }
    ],
    "AssetModels": {
      "AuthorizationHeaders": [
        {
          "Name": "",
          "Value": ""
        }
      ],
      "URL": "https://sm-dev.hostedservicepower.com/mock/Assets/{0}/Models"
    },
    "AssetHistory": {
      "AuthorizationHeaders": [
        {
          "Name": "",
          "Value": ""
        }
      ],
      "Criteria": "{\"and\":[{\"==\":[{\"$expression\":\"$substring(Assets[0].Model,0,6)\"},\"{{$substring(Asset.Model,0,6)}}\"]},{\"==\":[{\"$expression\":\"Assets[0].SerialNum\"},\"{{Asset.SerialNum}}\"]}]}",
      "URL": ""
    },
    "BookJob": {
      "AuthorizationHeaders": [
        {
          "Name": "",
          "Value": ""
        }
      ],
      "URL": "https://sm-dev.hostedservicepower.com/crm/api/BookJobMock/{0}"
    },
    "EstimateHistory": {
      "AuthorizationHeaders": [
        {
          "Name": "",
          "Value": ""
        }
      ],
      "Criteria": "{\"and\":[{\"==\":[{\"$expression\":\"$substring(Assets[0].Model,0,6)\"},\"{{$substring(Assets[0].Model,0,6)}}\"]},{\"==\":[{\"$expression\":\"Assets[0].SerialNum\"},\"{{Assets[0].SerialNum}}\"]}]}",
      "URL": "https: //sm-dev.hostedservicepower.com/mock/Account/{0}/Location/{1}/EstimateHistory"
    },
    "IVR": {
      "AuthorizationHeaders": [
        {
          "Name": "",
          "Value": ""
        }
      ],
      "URL": "https://sm-dev.hostedservicepower.com/IVRMock/{0}"
    },
    "PartsOrdering": {
      "AuthorizationHeaders": [
        {
          "Name": "",
          "Value": ""
        }
      ],
      "URL": "https://sm-dev.hostedservicepower.com/partsOrderingMock"
    },
    "SiteHistory": {
      "AuthorizationHeaders": [
        {
          "Name": "",
          "Value": ""
        }
      ],
      "Criteria": "{\"in\":[{\"var\":\"Location.Address.AddrLine1\"},\"{{Location.Address.AddrLine1}}\"]}",
      "URL": ""
    },
    "SearchAppts": {
      "AuthorizationHeaders": [
        {
          "Name": "",
          "Value": ""
        }
      ],
      "URL": "https://sm-dev.hostedservicepower.com/crm/api/SearchApptsMock"
    }
  },
  "Scheduler": {
    "Host": null,
    "DBUser": null,
    "UserName": null,
    "Password": null,
    "DispatchExportTran": false,
    "IntegrationEnabled": false,
    "ExternalObjectName": null
  },
  "StockLevelRecommendation": {
    "ExpiryCheckEnabled": false,
    "ExpirationTime": 540
  },
  "SupportEmailAddress": "support@servicemobility.com",
  "SupportedCountries": "USA",
  "SSO": {
    "Enabled": false,
    "UsePKCEFlow": false
  },
  "TemplatePrefix": "",
  "TokenClaims": {
    "ExpirationTime": 5400,
    "ExpiryDeadband": 0
  },
  "WorkOrder": {
    "ClosedOverride": false,
    "GenerateHashKey": {
      "Enabled": true,
      "KeyFunctions": {
        "AccountNum": "$uppercase(\"A-\" & $string(Location.Contacts[0].LastName) & \"|\" & $string(Location.Address.Zip))",
        "LocationNum": "$uppercase(\"L-\" & $string(Location.Contacts[0].LastName) & \"|\" & $string(Location.Address.Zip))"
      }
    },
    "GenerateIncompleteOrderInvoice": true,
    "OnlyAllowProductCatalogParts": "true",
    "SendScheduleChangeNotification": false,
    "SkipDeletedWOExport": true,
    "UseSystemTaxRates": false
  }
}

Entity Object Properties

(info) Required properties are in bold.

PropertyTypeDescription
AllowMobileCreateOrderboolean

Identifies if the mobile worker can create a work order.

Valid values are:

  • true - The mobile worker can create a work order
  • false - The mobile worker can not create a work order

Default value is  false

CloudElementsobject

Contains Cloud Elements integration settings for the entity

PropertyTypeDescription
CustomerIDstringIdentifies an unique identifier for an entity in Cloud Elements
EmailstringThe email address of the user. This email receives all the password reset emails
Enabledboolean

Enable use of Cloud Elements integration for mobile workers.

Valid values are:

  • true - Mobile workers can use Cloud Elements integration features
  • false - Mobile workers cannot use Cloud Elements integration features

Default value is  false

Modulesobject

This object contains a list of authenticated modules (elements) in Cloud Elements

PropertyTypeDescription
${ModuleID}object

Indicates identifier for the module.

Valid values are:

  • 1001 - Quick Books Online
PropertyTypeDescription
Enabledboolean

Enable use of authenticated Cloud Elements module

Valid values are:

  • true - System can use authenticated Cloud Elements module.
  • false - System cannot use authenticated Cloud Elements module

Default value is  true

IDintegerIdentifies unique numeric identifier for authenticated module
KeystringIdentifies alpha numeric 
NamestringIdentifies name of the authenticated module
TokenstringThe security token returned upon authenticating a module. You must include token in Authorization header in API calls to Cloud Elements
NamestringIdentifies name of an entity
UserSecretstringIdentifies User Secret required for API calls to Cloud Element APIs
UserIDstringIdentifies user's unique ID for an entity registered in Cloud Elements

3.47.0

DefaultCulturalIdentiferstring

The default language code identifier associated with entity.

Default value is  en

EnableMobileApplicationboolean

Enable use of mobile application for mobile workers.

Valid values are:

  • true - Mobile workers can use mobile application.
  • false - Mobile workers cannot use mobile application

Default value is  true

3.37.0
ExtUserAuthobject

This object contains settings for allowing third-party authentication for mobile workers

PropertyTypeDescription
AuthEndpointstring

Third-party Authentication service REST API endpoint

Default value is  ""

Enabledboolean

Flag to enable third-party authentication for all mobile workers within an entity

Default value is  false

Invoiceobject

This object contains settings which support emailing invoice to the customer

PropertyTypeDescription
EmailFromstring

The FROM email address

Default value is ""

EmailSenderobject

Identifies configuration settings for cross-account/delegate sender's identity information

PropertyTypeDescription
SourceArnstringCross-account/delegate sender's Amazon Resource Name (ARN) for email's Source
FromArnstringCross-account/delegate sender's Amazon Resource Name (ARN) for email's From address
ReturnPathArnstringCross-account/delegate sender's Amazon Resource Name (ARN) for email's ReturnPath parameter

3.33.0

Invoicingboolean

Identifies setting for Invoicing feature. The flag value determines support for invoice generation.

Default value is  true

JMSExpirationInDaysinteger

Identifies ActiveMQ message's expiration value.

Default value is 30

MaxLoginAttemptsinteger

Identifies the maximum number of failed login attempts allowed in the system. This setting will trigger user account lockout after several failed attempts.

Default value is 3

4.16.2

PasswordResetLengthinteger

Identifies the length of reset password

Default value is  12

PayByLinkobject

This object contains configuration for sending a payment link.

The PayByLink property is relevant when payment for work items will be collected via integration with a 3rd party payment processing facility which is not ServicePowerHub. See also the REST Webhook REST APIs Payment Processor Webhook REST API.

PropertyTypeDescription
IDstring

Identifies Pay by Link system ID for an entity

Default value is 1002

MerchantIDstring

Identifies Pay by Link system Merchant ID for an entity 

UserIDstring

Identifies Pay by Link system User ID for an entity

PasscodestringIdentifies password for Pay by Link system User ID

4.0.0

Paymentobject

This object contains payment gateway information for processing payments.

The Payment property is relevant when payment for work items will be collected via the ServicePowerHub payment processing facility. See also the Payment Transaction Token REST API.

PropertyTypeDescription
GatewayIDstring

Identifies payment gateway ID for an entity

Default value is 1001

MerchantIDstring

Identifies payment gateway Merchant ID for an entity

Default value is  CAAF8BFE-65AD-466C-A513-CC7854D4E90D

UserIDstring

Identifies payment gateway User ID for an entity 

Default value is apiUser

PasscodestringIdentifies password for payment gateway User ID
RestApiobject

Identifies settings for entity hosted REST API

PropertyTypeDescription
AuthorizationHeaderscollection

Identifies a collection of one or more HTTP header name and value for REST API authentication

PropertyTypeDescription
Namestring

Identifies HTTP header name for authentication.

Default value is  null

Valuestring

Identifies HTTP header value for authentication.

Default value is  null

3.35.0

AssetModelsstring

Identifies settings for Asset Model Number Verification REST API

PropertyTypeDescription
AuthorizationHeaderscollection

Identifies a collection of one or more HTTP header name and value for REST API authentication

PropertyTypeDescription
Namestring

Identifies HTTP header name for authentication.

Default value is  null

Valuestring

Identifies HTTP header value for authentication.

Default value is  null

URLstring

Identifies Asset Model Number Verification REST API endpoint

Default value is   http://localhost:3000/mock/Assets/{0}/Models

3.33.0

AssetHistorystring

Identifies settings for Asset History REST API

PropertyTypeDescription
AuthorizationHeaderscollection

Identifies a collection of one or more HTTP header name and value for REST API authentication

PropertyTypeDescription
Namestring

Identifies HTTP header name for authentication.

Default value is  null

Valuestring

Identifies HTTP header value for authentication.

Default value is  null

CriteriastringIdentifies criteria for matching history for an asset
URLstring

Identifies Asset History REST API endpoint

Default value is  null


3.32.0

BookJobstring

Identifies settings for BookJob REST API

PropertyTypeDescription
AuthorizationHeaderscollection

Identifies a collection of one or more HTTP header name and value for REST API authentication

PropertyTypeDescription
Namestring

Identifies HTTP header name for authentication.

Default value is  null

Valuestring

Identifies HTTP header value for authentication.

Default value is  null

URLstring

Identifies book job REST API endpoint

Default value is  http://localhost:3000 /mock/BookJobMock/{0}

EstimateHistorystring

Identifies settings for Account Location Work Order Estimate History REST API

PropertyTypeDescription
AuthorizationHeaderscollection

Identifies a collection of one or more HTTP header name and value for REST API authentication

PropertyTypeDescription
Namestring

Identifies HTTP header name for authentication.

Default value is  null

Valuestring

Identifies HTTP header value for authentication.

Default value is  null

CriteriastringIdentifies criteria for matching history for a work order
URLstring

Identifies Account Location Work Order Estimate History REST API endpoint

Default value is  http://localhost:3000 /mock/Account/{0}/Location/{1}/EstimateHistory

3.34.0

IVRstring

Identifies settings for VR REST API

PropertyTypeDescription
AuthorizationHeaderscollection

Identifies a collection of one or more HTTP header name and value for REST API authentication

PropertyTypeDescription
Namestring

Identifies HTTP header name for authentication.

Default value is  null

Valuestring

Identifies HTTP header value for authentication.

Default value is  null

URLstring

Identifies IVR REST API endpoint

Default value is  http://localhost:3000/IVRMock/{0}

PartsOrderingstring

Identifies settings for Parts Ordering REST API

PropertyTypeDescription
AuthorizationHeaderscollection

Identifies a collection of one or more HTTP header name and value for REST API authentication

PropertyTypeDescription
Namestring

Identifies HTTP header name for authentication.

Default value is  null

Valuestring

Identifies HTTP header value for authentication.

Default value is  null

URLstring

Identifies parts ordering REST API endpoint

Default value is  http://localhost:3000/mock/partsOrderingMock

3.35.0

SearchApptsstring

Identifies settings for  search appointment REST API 

PropertyTypeDescription
AuthorizationHeaderscollection

Identifies a collection of one or more HTTP header name and value for REST API authentication

PropertyTypeDescription
Namestring

Identifies HTTP header name for authentication.

Default value is  null

Valuestring

Identifies HTTP header value for authentication.

Default value is  null

URLstring

Identifies search appointment REST API endpoint

Default value is  http://localhost:3000/mock/SearchApptsMock

SiteHistorystring

Identifies settings for Site History REST API

PropertyTypeDescription
AuthorizationHeaderscollection

Identifies a collection of one or more HTTP header name and value for REST API authentication

PropertyTypeDescription
Namestring

Identifies HTTP header name for authentication.

Default value is  null

Valuestring

Identifies HTTP header value for authentication.

Default value is  null

CriteriastringIdentifies criteria for matching history for a site/location
URLstring

Identifies Site History REST API endpoint

Default value is  null

3.32.0


Schedulerobject

Contains ServiceScheduling integration settings for the entity

PropertyTypeDescription
Hoststring

Scheduler instance host

Default value is  null

DBUserstring

Scheduler instance DB User (Catalog)

Default value is  null

UserNamestring

Identifies user name for scheduler

Default value is  null

Passwordstring

Identifies password for scheduler

Default value is  null

DispatchExportTranboolean

Flag to enable auto creation of new Export Transaction upon dispatching a new job

Default value is  false

IntegrationEnabledboolean

Flag to enable integration with ServiceScheduling for an entity

Default value is  false

ExternalObjectNamestring

External object name for scheduler technician

Default value is  null

StockLevelRecommendationobject

Identifies settings for Stock Level Recommendation module for the entity. This setting will purge expired/overdue open Stock Level Recommendations. See also the Stock Level Recommendation REST API.

PropertyTypeDescription
ExpiryCheckEnabledboolean

Indicates the ability to expire/purge overdue open Stock Level Recommendations

Default value is false.  This is the default value if this property is not specified.

ExpirationTimeinteger

Indicates the number of minutes which will be added to Stock Level Recommendation's DueDate property.  The calculated value will be compared against current date time for expiry check.

Default value is 540

4.11.0

StorageLocationobject

Identifies settings for Storage Location (Inventory) module for the entity. This settings control the migration of Inventory, open Inventory Loads, open Physical Inventory Requests, open Stock Level Recommendations and Stock Level Recommendations Usage Data for a change in mobile worker's Storage Location. See also the User REST API  and REST Bulk Import REST APIs User Bulk Import REST API

PropertyTypeDescription

MigrateInventory

boolean

Enable migration of inventory to mobile worker's new Storage Location.

Valid values are:

  • true - System will migrate inventory from old Storage Location to new Storage Location. Mobile application will receive Automatic Inventory Adjustment load for migrated inventory items.
  • false - System will remove old inventory items from mobile application.

Default value is false. This is the default value if this property is not specified.

MigrateOpenCountRequests

boolean

Enable migration of incomplete Physical Inventory Count Requests (Status = "1001") to mobile worker's new Storage Location.

Valid values are:

  • true - System will migrate incomplete Physical Inventory Count Requests from old Storage Location to new Storage Location. System will update StorageLocationID field of incomplete Physical Inventory Count Requests.
  • false - System will remove incomplete Physical Inventory Count Requests from mobile application.

Default value is false. This is the default value if this property is not specified.

MigrateOpenInventoryLoads

boolean

Enable migration of incomplete Inventory Loads (Status = "1001") to mobile worker's new Storage Location.

Valid values are:

  • true - System will migrate incomplete Inventory Loads from old Storage Location to new Storage Location. System will update StorageLocationID field of incomplete Inventory Loads.
  • false - System will remove incomplete Inventory Loads from mobile application.

Default value is false. This is the default value if this property is not specified.

MigrateOpenStockLevels

boolean

Enable migration of under review Stock Level Recommendations (Status = "1001") to mobile worker's new Storage Location.

Valid values are:

  • true - System will migrate under review Stock Level Recommendations from old Storage Location to new Storage Location. System will update StorageLocationID field of incomplete Stock Level Recommendations.
  • false - System will remove under review Stock Level Recommendations from mobile application.

Default value is false. This is the default value if this property is not specified.

MigrateStockLevelsData

boolean

Enable migration Storage Location Usage Data to mobile worker's new Storage Location.

Valid values are:

  • true - System will migrate Storage Location Usage Data from old Storage Location to new Storage Location. 
  • false - System will remove Storage Location Usage Data from mobile application.

Default value is false. This is the default value if this property is not specified.

4.17.0

SupportEmailAddressstring

Identifies ServiceMobility/Nexus customer care email address

Default value is support@servicemobility.com

SupportedCountriesstring

Identifies comma separated list of entity supported countries.

Default value is  USA

SSOobject

ServiceMobility supports /wiki/spaces/MOB3/pages/2510243. The design of single sign-on implements OAuth 2.0 Authorization Flow with Proof Key for Code Exchange (PKCE) extension. This property identifies settings to setup SSO for the entity.

PropertyTypeDescription
Enabledboolean

Indicates the ability to use single sign-on for ServiceMobility users

Default value is false.  This is the default value if this property is not specified.

UsePKCEFlowboolean 

Indicates the ability to use Authorization Flow with Proof Key for Code Exchange (PKCE)

Default value is false.  This is the default value if this property is not specified.

4.2.0

TemplatePrefixstring

Identifies the prefix for Templates.

Default value is "".

3.37.0

TokenClaimsobject

ServiceMobility implements token based authentication. ServiceMobility issues JSON Web Token (JWT) in response to user credentials verification. Mobile application uses JWT to exchange data with the server. JWT contains registered, public and private claims in JSON format in the payload. JWT claims are a collection of key-value pairs. This property identifies JWT claim values for the entity.

PropertyTypeDescription
ExpirationTimeinteger

Indicates the expiration time in minutes for JWT token.

Default value is 5400

ExpiryDeadbandinteger

Indicates Expiry Dead Band in minutes for JWT. This private claim will allow a mobile worker to remain logged into the mobile application through the auto-login process even after the expiration of JWT token. The mobile application will not have ability to communicate with the back office when a mobile worker is logged with expired JWT.

Default value is 0

4.3.0

WorkOrderobject

Identifies settings for Work Order module for the entity

PropertyTypeDescription
ClosedOverrideboolean

Indicates the ability to accept mobile application transactions after work order has been closed from back office

Default value is  false

GenerateHashKeyobject

Mobile workers can review the historical data for a given work order. ServiceMobility groups this historical work order data using the AccountNum and LocationNum properties.

In order for grouping to work, unique account and location values need to be present in the ServiceMobility data. In the event that ServiceMobility customers cannot generate their own unique values, the optional GenerateHashKey property allows a ServiceMobility Entity to be configured define a key structure which will be used to generate hash keys for the data. These keys will reduce query result sets by grouping data.

The GenerateHashKey property is relevant when used in conjunction with Account Location History, Asset History and Estimate History REST API. 

When enabled, the GenerateHashKey option will only create unique account and location values for grouping for new data that is added to ServiceMobility. Any existing historical work order data for the entity will not have unique account and location values generated.

PropertyTypeDescription
Enabledboolean

Ability to auto-generate identifier (for e.g. AccountNum, LocationNum) values for work orders.

Default value is false.  This is the default value if this property is not specified.

KeyFunctionsobject

When the GenerateHashKey option is Enabled for a given Entity, each entry in the object defines the expression for the hash key structure. Expressions are defined in JSONata function format.  

PropertyTypeDescription
AccountNumstring

Identifies JSONata function to construct a string based on a series of field values. This string will be used to calculate the AccountNum hash code.

ServiceMobility will store hash code value in Account.AccountNum field of Work Order object.

LocationNumstring

Identifies JSONata function to construct a string based on a series of field values. This string will be used to calculate the LocationNum hash code.

ServiceMobility will store hash code value in Location.LocationNum field of Work Order object.

4.4.0

GenerateIncompleteOrderInvoice

boolean

Indicates the ability to generate invoice for a incomplete work order. The OrderStatus field of Work Order object will contain value Closed Incomplete (4097)

Default value is  true

4.15.0

OnlyAllowProductCatalogPartsboolean

Ability to only allow product catalog parts for in a work order. The valid values are "true" or "false"

Default value is  true

SendScheduleChangeNotification
boolean

Indicates the ability to send work order dispatch and schedule change notification SMS

Default value is  false

3.26.0

SkipDeletedWOExportboolean

Identifies a flag to exclude deleted work order transactions from Work Order Export REST API

Default value is  false

UseSystemTaxRatesboolean

Indicates the ability to use system specified tax rates for totals calculation

Default value is false

3.42.0


  • No labels