openapi: 3.0.0 info: title: The Conga Max REST API description: Welcome to the Max REST API. Find out more about Max at the [Conga MAX website](https://apttus.com/solutions/artificial-intelligence-quote-to-cash/). To explore the Max API, you must have an API key and a valid tenant registered with Max. termsOfService: https://apttus.com/company/legal/apttus-general-terms-of-use/ contact: email: maxcustomersupport@conga.com version: 1.0.0 servers: - url: https://MAX_MAIN_URL/api/v1 description: Max API tags: - name: ichronos description: Resolve natural language-based time phrases, currency, and numeric expressions. - name: isearch description: Smart Search for business objects using various input flavors - name: document description: Document conversion, information, and snippet extraction - name: admin description: Administrator queries paths: /{tenantId}/ichronos/resolvephrase: get: tags: - ichronos summary: Extract data from natural language. description: <p>Extracts date, currency, and numeric data from natural language text. This API accepts tenant name, input phrase, and time zone as input parameters and returns date, currency, and time as outputs, with options to modify the date format. For example,</p> <ul> <li><b>Input:</b><p><i>"The Acme agreement is expected to start on the first Monday of 2021 and end two years later, and it is valued at fifty thousand dollars, payable in the first 3 months of next year."</i></p></li> <li><b>Output:</b> <ul> <li>first Monday of 2021 = 2021-01-04</li> <li>two years later = 2023-01-04</li> <li>fifty thousand dollars = USD 50000</li> <li>the first 3 months of next year = 2021-01-01 to 2021-03-31</li> </ul> </li> </ul> operationId: ichronosResolvePhrase parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: input in: query description: Input phrase to be resolved required: true style: form explode: true schema: type: string example: effective as of 01 / 01/ 2019 - name: timezone in: query description: Time zone [SID key](https://www.salesforceben.com/list-timezonesidkey-salesforce/) required: false style: form explode: true schema: type: string example: "America/Los_Angeles" - name: options in: query description: Stringified form of JSON representing the iChronosOptions object required: false schema: type: string example: { "objectName": "Apttus__APTS_Agreement__c", "fullNLUResult": false, "format": "mm-dd-yyyy" } responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/entityResponseList' security: - APIKeyAuth: [] /{tenantId}/ichronos/resolvetemplate: get: tags: - ichronos summary: Extract date and time parameters from natural language. description: Extracts date and time parameters from natural language queries that contain variables or templates. This API accepts tenant name, template phrase, time zone, data map, and options as input parameters. For example, if you provide input query as 6 weeks from contract start date and specify the contract start date as `1/1/2021` in the Data Map field, it returns `2/12/2021`. This API works in combination with the Resolve Phrase API. operationId: ichronosResolveTemplate parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: input in: query description: Input templated phrase to be resolved. required: true style: form explode: true schema: type: string example: "90 days from the ${Apttus__Contract_Start_Date__c}" - name: timezone in: query description: Time zone [SID key](https://www.salesforceben.com/list-timezonesidkey-salesforce/) required: false style: form explode: true schema: type: string example: "America/Los_Angeles" - name: dataMap in: query description: Stringified form of JSON representing the dataMap to resolve the template required: false style: form explode: true schema: type: string example: { "Apttus__Contract_Start_Date__c": "2019-10-01", "Apttus__Contract_End_Date__c": "2020-10-01" } - name: options in: query description: Stringified form of JSON representing the iChronosOptions object required: false schema: type: string example: { "objectName": "Apttus__APTS_Agreement__c", "fullNLUResult": false, "format": "mm-dd-yyyy" } responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/entityResponseList' security: - APIKeyAuth: [] /{tenantId}/ichronos/feedback: post: tags: - ichronos summary: Log a feedback event. description: Logs app-level feedback event on iChronos resolution. This API can be used by a client application to log analytics events that show how iChronos resolutions are performing. The API accepts tenant name, prior API response, the application-level resolved value, and the user-specified correct value as input parameters. operationId: ichronosFeedback parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: phrase in: query description: Input phrase used in recent iChronos API request. required: true style: form explode: true schema: type: string example: "the term is three (3) years" - name: response in: query description: Stringified form of JSON response returned by iChronos required: false style: form explode: true schema: type: string example: { "phrase": "the term is three (3) years", "entities": [ { "entity": "three (3) years", "startIndex": 12, "endIndex": 26, "type": "duration", "resolution": { "values": [ { "type": "duration", "value": 94608000000 } ] } } ] } - name: correctResolution in: query description: Indicates whether the iChronos resolution was accepted unchanged by the user. If `true`, user accepts it as-is; else, iChronos resolution was changed and it is thus set `false`. required: true style: form explode: true schema: type: boolean example: "true" - name: resolvedValue in: query description: Stringified JSON or a simple string describing how the app resolved the value required: true style: form explode: true schema: type: string example: "36" - name: correctValue in: query description: Stringified JSON or a simple string describing how the user corrected the value required: true style: form explode: true schema: type: string example: "48" - name: options in: query description: Stringified form of JSON representing the iChronosOptions object. You must pass in the context parameter with the below properties <ul> <li><b>instanceUrl</b>, the SFDC org originating the request.</li> <li><b>userId</b>, the SFDC userId, identifying the user.</li> <li><b>userName</b>, the SFDC user name, identifying the user.</li> <li><b>requestId</b>, indicating the x-request-id returned by the original iChronos request</li> <li>a field, such as Apttus__Contract_Start_Date__c, for which the feedback is provided <li><b>sessionId</b>, a unique ID identifying a set of iChronos resolutions for a single user session (e.g., if the start date, end date, and term are resolved for a single user document, this could be set to the documentId)</li> </ul> required: false schema: type: string example: { "context": { "instanceUrl": "https://max1.my.salesforce.com", "clientVersion": "12.2020.000.0001", "userId": "0054T000000dqllQAB", "userName": "Jeremy Jones", "requestId": "29080e70-3993-437a-a923-fa59700cc07e", "field": "Apttus__Contract_Start_Date__c", "sessionId": "a0h4T000000iuqjQAA" } } responses: "200": description: OK security: - APIKeyAuth: [] /{tenantId}/isearch/tenantinfo: get: tags: - isearch summary: Return a tenant profile. description: Returns a tenant profile with limits, license types, supported modules, tables, and other information. operationId: isearchGetTenantInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: instanceUrl in: query description: The URL of the org instance required: true explode: false schema: type: string example: https://max1.my.salesforce.com - name: module in: query description: Module to search, such as `clm`, `cpq`, `qtc` etc. required: true explode: false schema: type: string example: clm - name: clientVersion in: query description: Version of client software required: true explode: false schema: type: string example: 12.80.000.1 - name: clientChannel in: query description: Channel associated with client required: true explode: false schema: type: string example: SFDC responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/iSearchTenantConfig' security: - APIKeyAuth: [] BearerAuth: [] post: tags: - isearch summary: Create a tenant info object. description: Creates the tenant info object for a specific tenant. operationId: isearchPostTenantInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: instanceUrl in: query description: The URL of the org instance required: true explode: false schema: type: string example: https://max1.my.salesforce.com requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchTenantConfig' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/iSearchTenantConfig' security: - APIKeyAuth: [] put: tags: - isearch summary: Update a tenant info object. description: Updates the tenant info object for a specific tenant. operationId: isearchPutTenantInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: instanceUrl in: query description: The URL of the org instance required: true explode: false schema: type: string example: https://max1.my.salesforce.com requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchTenantConfig' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/iSearchTenantConfig' security: - APIKeyAuth: [] delete: tags: - isearch summary: Delete tenant profile. description: Deletes tenant profile information operationId: isearchDeleteTenantInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: instanceUrl in: query description: The URL of the org instance required: true explode: false schema: type: string example: https://max1.my.salesforce.com - name: module in: query description: Module to delete, such as `clm`, `cpq`, `qtc`, etc. required: true explode: false schema: type: string example: clm responses: "200": description: OK security: - APIKeyAuth: [] /{tenantId}/isearch/alias: get: tags: - isearch summary: Return a user's search aliases. description: Returns a list of search aliases associated with a user. operationId: isearchGetAlias parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: The SFDC user ID of the logged-in user or "global" for the public alias required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/iSearchAliasInfoList' security: - APIKeyAuth: [] post: tags: - isearch summary: Create or update a search alias list for a user. description: Creates or updates a search alias list for a user. operationId: isearchPostAlias parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user or "global" for public alias required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchAliasInfoList' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/iSearchAliasInfoList' security: - APIKeyAuth: [] put: tags: - isearch summary: Create or update a list of search aliases for a user. description: Creates or updates a list of search aliases for a given user. operationId: isearchPutAlias parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user, or "global" for public alias required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchAliasInfoList' responses: "200": description: OK security: - APIKeyAuth: [] delete: tags: - isearch summary: Delete search alias(es) for a user. description: Delete search alias or aliases for a given user. If no aliasList is specified, the entire alias list for that user is removed. operationId: isearchDeleteAlias parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user or "global" for public alias required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: aliasList in: query description: List of aliases to be removed required: false style: form explode: true schema: $ref: '#/components/schemas/stringItems' example: ["NDA2020", "HighValueMSAs"] responses: "200": description: OK security: - APIKeyAuth: [] patch: tags: - isearch summary: Create or update a list of search aliases for a user. description: Creates or updates a specific list of search aliases for a given user. operationId: isearchEditAlias parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user or "global" for public alias required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: oldAliasKey in: query description: Existing Alias name for the search required: true style: form explode: true schema: type: string example: NDA from 2020 - name: newAliasKey in: query description: New Alias name for the search required: true style: form explode: true schema: type: string example: All NDA's from 2020 responses: "200": description: OK "404": description: Not Found security: - APIKeyAuth: [] /{tenantId}/isearch/displayinfo: get: tags: - isearch summary: Return personalized display column settings. description: Returns a list of personalized display column settings for each search object. operationId: isearchGetDisplayInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: module in: query description: Module to search, such as `clm`, `cpq`, `qtc`, etc. required: true explode: false schema: type: string example: clm responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/iSearchDisplayInfoList' security: - APIKeyAuth: [] BearerAuth: [] put: tags: - isearch summary: Create or update display column info. description: Creates or updates display column info for each search object for a given user operationId: isearchPutDisplayInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: module in: query description: Module for display config, such as `clm`, `cpq`, `qtc`, etc. required: true explode: false schema: type: string example: clm requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchDisplayInfoList' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/iSearchDisplayInfoList' security: - APIKeyAuth: [] BearerAuth: [] delete: tags: - isearch summary: Return search aliases for a user. description: Returns a list of search aliases associated with a specific user operationId: isearchDeleteDisplayInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: module in: query description: Module for display config, such as `clm`, `cpq`, `qtc`, etc. required: true explode: false schema: type: string example: clm responses: "200": description: OK security: - APIKeyAuth: [] /{tenantId}/isearch/typeahead: get: tags: - isearch summary: Return auto-complete suggestions for type-ahead. description: Returns auto-complete suggestions for the given phrase for a type-ahead feature. operationId: isearchTypeAhead parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: input in: query description: Input prefix to be resolved required: true style: form explode: true schema: type: string example: agreements - name: limit in: query description: Input prefix to be resolved required: false style: form explode: true schema: type: integer default: 5 example: 5 responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/matchingPhraseList' security: - APIKeyAuth: [] /{tenantId}/isearch/spellcheck: get: tags: - isearch summary: Check for input spelling errors, auto-correct, and suggest corrections. description: Checks for spelling errors in user input, auto-corrects the input, and offers recommendations for correct spellings. operationId: isearchSpellcheck parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: input in: query description: Input prefix to be resolved required: true style: form explode: true schema: type: string example: cntracts over $20k that mention Force Majure - name: limit in: query description: Input prefix to be resolved required: false style: form explode: true schema: type: integer default: 5 example: 5 responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/spellcheckPhraseList' security: - APIKeyAuth: [] /{tenantId}/isearch/resolvequeryplan: post: tags: - isearch summary: Find business objects per query plan. description: Finds business objects based on a query plan. It accepts tenant name, input query, the logged-in user's SFDC user ID, and the SFDC org's Instance URL as input parameters. operationId: isearchResolveQueryPlan parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: module in: query description: Module for display config, such as `clm`, `cpq`, `qtc`, etc. required: true explode: false schema: type: string example: clm - name: timezone in: query description: Time zone [SID key](https://www.salesforceben.com/list-timezonesidkey-salesforce/) required: false style: form explode: true schema: type: string example: "America/Los_Angeles" - name: limit in: query description: Record count for the query required: false schema: type: integer example: 25 requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchQuery' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/searchQueryResponse' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/isearch/resolvephrase: post: tags: - isearch summary: Extract business objects from natural language. description: Finds business objects in natural-language text. It accepts tenant name, input query, the logged-in user's SFDC user ID, and the SFDC org's instance URL as input parameters. For example, <ul> <li><b>Input:</b> <p><i>Pull up agreements over $20k with the mention "Force Majeure"</i></p></li> <li><b>Output:</b> <p>Returns a list of agreements matching the criteria</p></li> </ul> operationId: isearchResolvePhrase parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: timezone in: query description: Time zone [SID key](https://www.salesforceben.com/list-timezonesidkey-salesforce/) required: false style: form explode: true schema: type: string example: "America/Los_Angeles" - name: limit in: query description: Record count for the query required: false schema: type: integer example: 25 - name: module in: query description: Module for display config, such as `clm`, `cpq`, `qtc`, etc. required: true explode: false schema: type: string example: clm requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchNLQuery' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/searchResponse' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/isearch/resolvefollowup: post: tags: - isearch summary: Run a followup query and filter objects. description: Finds business objects based on a followup query plan. operationId: isearchResolvFollowup parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: requestId in: query description: RequestId corresponding to the page required: true schema: type: string example: 7fd04d80-c4c3-4ab6-a770-e9a9ff277328 - name: limit in: query description: Record count for the query required: false schema: type: integer example: 25 requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchFollowupQuery' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/searchQueryResponse' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/isearch/validaterules: post: tags: - isearch summary: Validate the rules specification. description: <p>Validates each term in the conditions list to ensure it is correct and ready to be processed.</p> <p>Conditions are validated as below</p> <ul> <li>There is no scope block in validaterules call.</li> <li>If fieldType = metaData or keywords or mergedField or extractedField or extractedClause</li> <li>fieldId is required for all fields except metaData fields</li> <li>If operator = Natural Language, the expression specified in the value field is evaluated to ensure it is a valid expression</li> <li>If value is a relative expression that contains other fields, these should be valid fields of the primary object.</li> <ul> <li>Eg value = "2 years from ${Apttus__Contract_Start_Date__c}", Apttus__Contract_Start_Date__c must be a valid field in the specified primary object</li> </ul> </ul> </p> operationId: isearchValidateRules parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: module in: query description: Module for display config, such as `clm`, `cpq`, `qtc`, etc. required: true explode: false schema: type: string example: clm - name: timezone in: query description: Time zone [SID key](https://www.salesforceben.com/list-timezonesidkey-salesforce/) required: false style: form explode: true schema: type: string example: "America/Los_Angeles" requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchRuleQuery' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/searchRuleResponseList' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/isearch/resolverules: post: tags: - isearch summary: Evaluate the rules implied by terms and keywords. description: <p>This endpoint loads business objects specified in scope, overlays objectData (if options.objectOverride = true), then evaluates the conditions specified in the terms group. Individually annotated results, as well as a description of the condition evaluation result, are returned. Any specified metadata, such as a cookie, is also returned with the result.</p> <p>Conditions are evaluated as follows.</p> <ul> <li>If <code>fieldType = metaData</code>, the value of the field in the object record is used.</li> <li>If <code>fieldType = extractedField</code>, the value extracted from document is used.</li> <li>If <code>fieldType = mergedField</code>, the value extracted from document is used to override the object level value. If extracted value is empty object level data is used.</li> <li>If <code>fieldType = extractedClause</code>, the clause extracted from the document is used. If operator = Natural Language the value is interpreted as keyword expression and the matching is performed similarly to the case where fieldType = keyword.</li> <li>If <code>field = keywords</code>, the value is used to search the document specified by the fieldId. Only operator = Natural Language is supported for this field</li> <li>fieldId is used to resolve the value of extractedField and extractedClause field types. For <code>field = keywords</code>, fieldId specifies the document's ID (for example, the ContentVersion ID for an SFDC object)</li> <li>The desc field is used to annotate the result</li> <li>If <code>operator = Natural Language</code>, the expression specified in the value field is evaluated. For example, <ul> <li><code>value="30 days from now"</code> is resolved to a date 30 days in the future.</li> <li><code>value="Pandemic, earthquake but not floods"</code> is resolved to an appropriate keyword Boolean expression.</li> <li><code>value="NOT Pandemic and (earthquake or flood)"</code> is resolved to an appropriate keyword Boolean expression.</li> </ul></li> <li>If <code>value</code> is a relative expression that contains other fields, the value of all dependent fields is resolved before this expression is evaluated. For example, <ul> <li><code>value = "2 years from ${Apttus__Contract_Start_Date__c}"</code>, Apttus__Contract_Start_Date__c is resolved first; then the larger expression is resolved.</li> <li>If the dependent field is already in the list of conditions, its field type is used to resolve its value.</li> <li>Otherwise, the defaultFieldType options setting is used to determine the dependent field's type. <code>defaultFieldType = mergedField</code> implies its value will be resolved to extractedField or the object-level metaData value.</li> <li>Other values for defaultFieldType are extractedField, extractedClause or metaData</li> </ul> <li>Here is a list of valid operators (with their normalized value in parentheses). <ul> <li>greater (>)</li> <li>greater than (>)</li> <li>greater than or equals (>=)</li> <li>greater than equals (>=)</li> <li>greater or equals (>=)</li> <li>lesser (<)</li> <li>lesser than (<)</li> <li>lesser than or equals (<=)</li> <li>lesser than equals (<=)</li> <li>less or equal (<=)</li> <li>less or equals (<=)</li> <li>equals (==)</li> <li>equal (==)</li> <li>not equals (!=)</li> <li>not equal (!=)</li> <li>> (>)</li> <li>>= (>=)</li> <li>< (<)</li> <li><= (<=)</li> <li>== (==)</li> <li>!= (!=)</li> <li>natural language (natural language)</li> <li>contains (contains)</li> <li>not contains (not contains)</li> <li>doesn't contains (not contains)</li> <li>starts with (starts with)</li> <li>ends with (ends with)</li> <li>missing (not contains)</li> <li>like (like)</li> <li>not like (not like)</li> <li>in (in)</li> <li>not in (not in)</li> </ul> </ul> </p> operationId: isearchResolveRules parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: module in: query description: Module for display config, such as `clm`, `cpq`, `qtc`, etc. required: true explode: false schema: type: string example: clm - name: timezone in: query description: Time zone [SID key](https://www.salesforceben.com/list-timezonesidkey-salesforce/) required: false style: form explode: true schema: type: string example: "America/Los_Angeles" - name: async in: query description: If true, this operation is performed asynchronously. Default is `false`. required: false style: form explode: true schema: type: boolean example: false requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchRuleQuery' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/searchRuleResponseList' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/isearch/page: get: tags: - isearch summary: Return the specified page. description: Returns the page specifed by pageIndex. The requestId parameter identifies the paged response. operationId: isearchGetPage parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: requestId in: query description: Request ID corresponding to the page required: true schema: type: string example: 7fd04d80-c4c3-4ab6-a770-e9a9ff277328 - name: pageIndex in: query description: Zero-based index of the page to fetch required: true schema: type: string example: 1 - name: deleteResponse in: query description: If true, all pages associated with this request are deleted. required: false schema: type: boolean example: false responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/searchResponse' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/isearch/sort: post: tags: - isearch summary: Return records in order. description: Returns the records in a page in sorted order. Items can be sorted either within the page or globally across all pages. Only paged responses identified by requestId can be sorted. operationId: isearchPostSort parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: requestId in: query description: RequestId corresponding to the response required: true schema: type: string example: 7fd04d80-c4c3-4ab6-a770-e9a9ff277328 - name: sortFields in: query description: List of fields for sorting. The first field is used as the primary sorting criterion. Subsequent fields are used in order for secondary sorting. required: true schema: type: array items: type: string example: ["Name", "LastModifiedDate"] - name: sortOrder in: query description: Sort order ASC (ascending) or DESC (descending). ASC is the default. required: false schema: type: string enum: [ASC, DESC] example: ASC - name: groupResults in: query description: If true result is grouped by primary object, when possible. required: false schema: type: boolean default: true example: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/searchResponse' security: - APIKeyAuth: [] /{tenantId}/isearch/feedback: post: tags: - isearch summary: Log app-level feedback on iSearch resolution. description: Logs an app-level feedback event when an iSearch resolves. A client application can use this API to log analytics events that show how iSearch resolutions are performing. operationId: isearchFeedback parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: module in: query description: Module to search, such as `clm`, `cpq`, `qtc`, etc. required: true explode: false schema: type: string example: clm - name: like in: query description: "Like/Dislike: `1` (like), `-1` (dislike)" required: true schema: type: number example: 1 requestBody: description: Original request, with options context for analytics content: application/json: schema: $ref: '#/components/schemas/iSearchFeedback' responses: "200": description: OK security: - APIKeyAuth: [] /{tenantId}/isearch/validateexpression: get: tags: - isearch summary: Validate search expressions. description: Validates Boolean query expressions that could be used for Smart Search. For example, <ul> <li><b>Input:</b> <p><i>(1 AND 2) OR 3</i></li> <li><b>Output:</b> <p>OK</p></li> </ul> operationId: isearchValidateExpression parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: input in: query description: Input phrase to be resolved required: true style: form explode: true schema: type: string example: (1 OR 2) AND 3 responses: "200": description: OK security: - APIKeyAuth: [] /{tenantId}/isearch/parsequeryterm: post: tags: - isearch summary: Parse query terms and return metadata. description: Parses query terms and returns metadata operationId: isearchParseQueryTerm parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: The full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: objectName in: query description: "Object name, such as: Apttus__APTS_Agreement__c" required: true schema: type: string example: Apttus__APTS_Agreement__c requestBody: content: application/json: schema: $ref: '#/components/schemas/iSearchQueryTerms' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/iSearchParsedQueryTermResponse' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/async/jobstatus: get: tags: - async summary: Return the status of an asynchronous task. description: Returns the status of an asynchronous task. operationId: asyncGetJobStatus parameters: - name: tenantId in: path description: The name of the tenant, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: The SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: The full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: jobId in: query description: The async task ID required: true schema: type: string example: edae526a-c5b4-4f87-846b-90fbb6615b8b responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/jobStatusResponse' security: - APIKeyAuth: [] /{tenantId}/async/jobresult: get: tags: - async summary: Return results of a completed async task. description: Returns the results of a completed async task. If the task is invalid, a 404 is returned. If the task is incomplete, this API behaves like the jobstatus API. operationId: asyncGetJobResult parameters: - name: tenantId in: path description: The tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: The SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: The full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: jobId in: query description: Async task Id required: true schema: type: string example: edae526a-c5b4-4f87-846b-90fbb6615b8b responses: "200": description: OK content: application/json: schema: type: string application/pdf: schema: type: string format: binary application/vnd.openxmlformats-officedocument.wordprocessing: schema: type: string format: binary application/octet-stream: schema: type: string format: binary text/html: schema: type: string security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/document/snippet: post: tags: - document summary: Return matching snippets. description: Returns snippets that match requested keywords. operationId: documentPostSnippet parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: async in: query description: If true, this operation is performed asynchronously. Default is `false`. required: false style: form explode: true schema: type: boolean example: false requestBody: content: application/json: schema: $ref: '#/components/schemas/snippetExtractionInfo' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/snippetResponseWrapper' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/document/snippetfromchunks: post: tags: - document summary: Return matching snippets from chunks. description: Returns the snippets matching requested keywords from searched chunks. operationId: chunksGetSnippet parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: async in: query description: If true, this operation is performed asynchronously. Default is `false`. required: false style: form explode: true schema: type: boolean example: false requestBody: content: application/json: schema: $ref: '#/components/schemas/snippetExtractionChunkInfo' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/snippetChunkResponseWrapper' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/document/snippetfromrequest: post: tags: - document summary: Return matching snippets as a search result. description: Returns the snippets matching requested keywords for a given search result. operationId: documentGetSnippetFromRequest parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: requestId in: query description: Request identifier identifying the search results required: true style: form explode: true schema: type: string example: 6cf63034-fe7e-4cb4-a536-549f9602219e - name: objectId in: query description: Object ID associated with text snippets to be searched required: true style: form explode: true schema: type: string example: a0C4T000000iF5rUAE requestBody: content: application/json: schema: $ref: '#/components/schemas/snippetExtractionInfo2' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/snippetResponseForText' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/document/snippetfromfile: post: tags: - document summary: Return matching snippets from a file. description: Returns the snippets matching requested keywords from a file. operationId: documentGetSnippetFromFile parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: async in: query description: If true, this operation is performed asynchronously. Default is `false`. required: false style: form explode: true schema: type: boolean example: false requestBody: content: multipart/form-data: schema: type: object properties: srcFileName: type: string format: string srcFormat: type: string enum: [docx, doc, pdf, pptx, ppt, csv, xls, xlsx, html] srcFile: type: string format: binary keywordMap: $ref: '#/components/schemas/keywordMap' format: string options: $ref: '#/components/schemas/snippetOptions' format: string responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/snippetResponseWrapper' security: - APIKeyAuth: [] /{tenantId}/document/supportedinfo: get: tags: - document summary: Return matching snippets. description: Returns the snippets matching requested keywords. operationId: documentGetSupportedInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/docSupportInfo' security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/document/email: get: tags: - document summary: Prepare email for sharing search results. description: Prepares email content (subject, default body, attachments, etc.) for sharing search results. operationId: docGetEmailInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: requestId in: query description: Request identifier for search results required: true style: form explode: true schema: type: string example: 6cf63034-fe7e-4cb4-a536-549f9602219e - name: subject in: query description: Optional email subject required: false style: form explode: true schema: type: string example: Search report - name: body in: query description: Email body required: false style: form explode: true schema: type: string example: Below are the results of your recent search - name: includeQueryInfo in: query description: Flag to include search query info in the email body required: false style: form explode: true schema: type: boolean default: false example: false - name: objectList in: query description: List of object IDs to be included in the report. All objects are included by default. required: false style: form explode: true schema: $ref: '#/components/schemas/stringItems' responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/searchResultEmail' security: - APIKeyAuth: [] post: tags: - document summary: Email a search snapshot report. description: Sends an email report of search results operationId: docPostEmailInfo parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: requestId in: query description: Request identifier required: true style: form explode: true schema: type: string example: 6cf63034-fe7e-4cb4-a536-549f9602219e - name: from in: query description: '"From:" email address(es)' required: false style: form explode: true schema: type: array items: type: string example: ["\"Conga Max\" <maxcustomersupport@conga.com>"] - name: to in: query description: '"To:" email address(es)' required: true style: form explode: true schema: type: array items: type: string example: ["fmorris@acme.com"] - name: cc in: query description: '"Cc:" email addresses' required: false style: form explode: true schema: type: array items: type: string example: ["jdaniels@acme.com"] - name: subject in: query description: Email subject required: false style: form explode: true schema: type: string example: Search Report - name: body in: query description: Email body required: false style: form explode: true schema: type: string example: Below are the results of your recent search - name: includeQueryInfo in: query description: Flag that indicates whether search query info must be included in the email body required: false style: form explode: true schema: type: boolean default: false example: false - name: attachment in: query description: Attachment preference. If unspecified or set to none, the email body will contain search results in html. If set to empty, only the body is sent in email, with no attachments or inline reports sent. required: false schema: type: string enum: [none, empty, html, xlsx, csv, pdf] default: none - name: objectList in: query description: List of object IDs to be included in the report. All objects are included by default. required: false style: form explode: true schema: $ref: '#/components/schemas/stringItems' responses: "200": description: OK security: - APIKeyAuth: [] /{tenantId}/document/report: get: tags: - document summary: Prepare a report of search results for sharing. description: Prepares a report of search results for sharing operationId: docGetReport parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: requestId in: query description: Request identifier required: true style: form explode: true schema: type: string example: 6cf63034-fe7e-4cb4-a536-549f9602219e - name: format in: query description: Report content format (html, pdf, xlsx, etc.) required: false style: form explode: true schema: type: string enum: [html, pdf, xlsx, csv] example: html - name: pageIndex in: query description: Page index. If not specified, the entire result is sent. required: false style: form explode: true schema: type: string example: 1 - name: objectList in: query description: List of object IDs to be included in the report. All objects are included by default. required: false style: form explode: true schema: $ref: '#/components/schemas/stringItems' responses: "200": description: OK security: - APIKeyAuth: [] /{tenantId}/document/convert: post: tags: - document summary: Convert a remote document's format. description: Convert a remote document from one format to another. operationId: documentConvert parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: SFDC user ID of the logged-in user required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: instanceUrl in: query description: The URL of the SFDC org instance required: true style: form explode: true schema: type: string example: https://max1.my.salesforce.com - name: format in: query description: Target format (html, pdf, etc.) required: false style: form explode: true schema: type: string enum: [html, pdf, text, png] example: html - name: async in: query description: If true, this operation is performed asynchronously. Default is `false`. required: false style: form explode: true schema: type: boolean example: false requestBody: content: application/json: schema: $ref: '#/components/schemas/docInfo' responses: "200": description: OK content: application/pdf: schema: type: string format: binary application/vnd.openxmlformats-officedocument.wordprocessing: schema: type: string format: binary application/octet-stream: schema: type: string format: binary text/html: schema: type: string security: - APIKeyAuth: [] BearerAuth: [] /{tenantId}/document/convertfile: post: tags: - document summary: Convert a document's format. description: Convert a document from one format to another. operationId: documentConvertFile parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: format in: query description: Target document format required: true schema: type: string enum: [pdf, html, text, png] example: pdf - name: async in: query description: If true, this operation is performed asynchronously. Default is `false`. required: false style: form explode: true schema: type: boolean example: false requestBody: content: multipart/form-data: schema: type: object properties: srcFileName: type: string format: string srcFormat: type: string enum: [docx, doc, pdf, pptx, ppt, csv, xls, xlsx, html, gif, tiff, jpeg, png] srcFile: type: string format: binary responses: "200": description: OK content: application/pdf: schema: type: string format: binary application/vnd.openxmlformats-officedocument.wordprocessing: schema: type: string format: binary application/octet-stream: schema: type: string format: binary text/html: schema: type: string security: - APIKeyAuth: [] /{tenantId}/document/history: put: tags: - document summary: Add search history. description: >- Adds every user search, along with user ID, tenant ID, org, search topics, and time stamp. operationId: adduserHistory parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: 'User ID. For example: "0056g000001tJrMAAU"' required: true explode: false schema: type: string example: 0056g000001tJrMAAU - name: instanceUrl in: query description: The URL of the org instance required: true explode: false schema: type: string example: 'https://max1.my.salesforce.com' - name: topic in: query description: Search topic to add required: true explode: false schema: type: string example: history requestBody: content: application/json: schema: $ref: '#/components/schemas/historyaddUser' responses: '200': description: OK '500': description: Internal server error. Couldn't add. security: - APIKeyAuth: [] get: tags: - document summary: Return a user's searches. description: Returns a list of search entries for a given user based on tenant ID and user ID operationId: getUserHistory parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc - name: userId in: query description: 'User ID that is unique within the tenant ID. For example: "0056g000001tJrMAAU"' required: true explode: true schema: type: string example: "0056g000001tJrMAAU" - name: instanceUrl in: query description: The URL of the SFDC org instance required: true explode: true schema: type: string example: https://max1.my.salesforce.com - name: topic in: query description: Topic in which the search is happening required: true explode: true schema: type: string example: history - name: size in: query description: The size limit of the data on person required: false explode: true schema: type: number example: 50 - name: unit in: query description: The unit for age (default day) required: false schema: type: string enum: [Years, Months, Days, Hours, Minutes, Seconds] example: Days - name: age in: query description: The data time at which it can be left required: false explode: true schema: type: number example: 2 - name: phrase in: query description: Key word that can be used for searching required: false explode: true schema: type: string example: "force" responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/historyretrieveentries' "500": description: Internal server error security: - APIKeyAuth: [] delete: tags: - document summary: Delete search history. description: Deletes a user's search history by tenant and user IDs operationId: deleteUserHistory parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true explode: false schema: type: string example: apttussfdc - name: userId in: query description: Unique user ID required: true explode: false schema: type: string example: "0056g000001tJrMAAU" - name: instanceUrl in: query description: The URL of the org instance required: true explode: false schema: type: string example: "https://max1.my.salesforce.com" - name: topic in: query description: Topic to delete from required: true explode: false schema: type: string example: "history" - name: size in: query description: The size limit of the data on person. required: false explode: true schema: type: number example: 50 - name: unit in: query description: The unit for age (default day) required: false schema: type: string enum: [Years, Months, Days, Hours, Minutes, Seconds] example: Day - name: age in: query description: Time from which data can be deleted required: false explode: false schema: type: number example: 2 - name: phrase in: query description: Key word that can be used for searching required: false explode: true schema: type: string example: "force" responses: "200": description: OK "404": description: Not found "500": description: Internal server error security: - APIKeyAuth: [] /max/admin/apikey: get: tags: - admin summary: Generate an API key for Max API access. description: Generates a unique API key you can use to access Max APIs. You can also activate the API key in Max's admin console. operationId: genAPIKey responses: "200": description: OK content: text/plain: schema: type: string x-content-type: text/plain security: - APIKeyAuth: [] x-swagger-router-controller: Admin /max/admin/preregistertenant: post: tags: - admin summary: Start two-factor tenant onboarding. description: Starts a two-factor auth-based onboarding process for new tenants. A valid email used at product purchase provides a secret code. operationId: preregisterTenant parameters: - name: provider in: query description: Provider name required: false explode: false schema: type: string example: ApttusSFDC - name: tenantId in: query description: Unique tenant ID, in lower case. required: true explode: false schema: type: string example: nokia - name: appName in: query description: App name. For example, `SmartSearch` or `IDD`. required: false explode: false schema: type: string enum: [SmartSearch, IDD] example: SmartSearch - name: orgId in: query description: Org identifier required: true schema: type: string example: 0054T012000dqllXAC - name: instanceUrl in: query description: The URL of the org instance required: true explode: false schema: type: string example: "https://max1.my.salesforce.com" - name: userId in: query description: SFDC user ID of the logged-in user or "global" for public alias required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: email in: query description: Valid email address to which the secret code must be sent. This email must belong to the same domain as the registered tenant. required: true schema: type: string example: "joe@acme.com" - name: enableOfflineReview in: query description: If true, the preregister request must be reviewed by a customer representative for approval. required: false schema: type: boolean example: false - name: resend in: query description: If true, the preregister request can resend one-time passcodes even for existing tenants already in the preregister queue. required: false schema: type: boolean example: false responses: "200": description: OK content: text/plain: schema: type: string x-content-type: text/plain security: - APIKeyAuth: [] x-swagger-router-controller: Admin /max/admin/registertenant: post: tags: - admin summary: Onboard a new tenant and return an API key. description: Onboards a new tenant and returns an API key. Can revoke and replace existing API keys. operationId: registerTenant parameters: - name: provider in: query description: Provider name required: false explode: false schema: type: string example: ApttusSFDC - name: tenantId in: query description: Unique tenant ID, in lowercase only required: true explode: false schema: type: string example: nokia - name: appName in: query description: App name, such as "SmartSearch" or "IDD" required: false explode: false schema: type: string enum: [SmartSearch, IDD] example: SmartSearch - name: orgId in: query description: Org identifier required: true schema: type: string example: 0054T012000dqllXAC - name: instanceUrl in: query description: The URL of the org instance. Required for first-time registration. required: true explode: false schema: type: string example: "https://max1.my.salesforce.com" - name: userId in: query description: SFDC user ID of the logged-in user or "global" for public alias required: true style: form explode: true schema: type: string example: 0054T000000dqllQAA - name: userName in: query description: Full name of the logged-in SFDC user required: true style: form explode: true schema: type: string example: Gilad Turbahn - name: regenerateKey in: query description: If true, any existing key is revoked and a new key is generated required: false schema: type: boolean default: false responses: "200": description: OK content: text/plain: schema: type: string x-content-type: text/plain security: - APIKeyAuth: [] x-swagger-router-controller: Admin /max/admin/unregistertenant: post: tags: - admin summary: Unregister a tenant. description: Unregisters an existing tenant. This tenant no longer has API access for any services. operationId: unregisterTenant parameters: - name: provider in: query description: Provider name required: false explode: false schema: type: string example: ApttusSFDC - name: tenantId in: query description: Unique tenant ID, in lowercase only required: true explode: false schema: type: string example: nokia - name: appName in: query description: App name, usch as "SmartSearch" or "IDD" required: false explode: false schema: type: string enum: [SmartSearch, IDD] example: SmartSearch responses: "200": description: OK content: text/plain: schema: type: string x-content-type: text/plain security: - APIKeyAuth: [] x-swagger-router-controller: Admin /{tenantId}/admin/version: get: tags: - admin summary: Return software version and config details. description: Returns software version and config details for a tenant. Call this API to obtain the version, environment, tenant configuration, build information, and other details about your Max instance. operationId: adminVersion parameters: - name: tenantId in: path description: Tenant name, such as "apttussfdc" or "max" required: true style: simple explode: false schema: type: string example: apttussfdc responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/versionResponse' security: - APIKeyAuth: [] components: schemas: historyaddUser: type: object properties: entries: type: object description: A user's most common search entries example: { "entries": [ { "text": "Clause text contains Force majeure" }, { "text": "Start date is 12/20/20" }, { "text": "Location equals to SanFrancisco, California" }, { "text": "force of nature" }, { "text": "natural force" }, { "text": "earthquake" } ] } historyretrieveentries: type: object properties: entries: type: object description: A user's most common search entries example: { "entries": [ "Clause text contains Force majeure", "Start date is 12/20/20", "Location equals to SanFrancisco, California", "force of nature", "natural force", "earthquake" ] } entityResponse: type: object properties: entity: type: string description: Sub-phrase format: string startIndex: type: integer description: Sub-phrase's start index format: int32 endIndex: type: integer description: Sub-phrase's end index format: int32 type: type: string description: Entity resolution type format: string resolution: $ref: '#/components/schemas/entityResolutionResultList' entityResponseList: type: object properties: phrase: type: string description: Input phrase entities: type: array items: $ref: '#/components/schemas/entityResponse' example: phrase: pull up quotes expiring in the next 90 days that are starting next week entities: - entity: in the next 90 days startIndex: 24 endIndex: 42 type: daterange resolution: values: - type: daterange start: '2020-09-11' end: '2020-12-10' - entity: starting next week startIndex: 53 endIndex: 70 type: daterange resolution: values: - type: daterange Mod: since start: '2020-09-14' altValues: - type: daterange start: '2020-09-14' end: '2020-09-20' notes: starting searchResponsePage: type: object properties: index: type: integer description: Zero-based index of current result page, e.g., 0 total: type: integer description: Total number of pages in result, e.g., 3 pageSize: type: integer description: Size of each page in number of records, e.g., 30 keywordMapList: type: array items: $ref: '#/components/schemas/keywordMap' keywordMap: type: object properties: keywords: type: array items: type: string description: List of keywords detected rawExpression: type: string description: The un-normalized expression constructed based on a query normalizedExpression: type: string description: The normalized expression after factoring in synonyms synomymMap: type: object description: Synonym map used for normalization missingKeywords: type: boolean description: If true, the keywords constitute a missing list example: { "keywords": [ "Force majeure", "term" ], "synonymMap": { "force majeure": { "className": "Force majeure", "synonyms": [ "Force majeure", "act of god", "natural disaster", "force of nature", "natural force", "earthquake" ] }, "term": { "className": null, "synonyms": [ "term" ] } } } searchRuleResponseList: type: array items: $ref: '#/components/schemas/searchRuleResponse' searchRuleResponse: type: object properties: metaData: type: object description: Meta data format: string result: type: object description: Rule evaluation result example: { "metaData": { "name": "Core risk criteria", "score": "0.1" }, "result": [ { "objectId": "a0C4T000000ifZZUAY", "objectType": "Apttus__APTS_Agreement__c", "ruleEvaluation": { "terms": { "result": true, "expression": "(1 AND ((2 AND 3) OR 4 OR 5) AND 6 AND (7 OR 8))", "desc": [ { "field": "Apttus__Contract_Start_Date__c", "fieldType": "mergedField", "fieldId": "1039", "value": "1/1/2019", "desc": "Agreement Start Date <= 2021-10-22", "result": true }, { "field": "Apttus__Contract_End_Date__c", "fieldType": "mergedField", "fieldId": "1040", "value": "12/31/2019", "desc": "Agreement End Date >= 2019-01-01", "result": true }, { "field": "Apttus__Contract_End_Date__c", "fieldType": "mergedField", "fieldId": "1040", "value": "12/31/2019", "desc": "Agreement End Date >= 2021-01-01", "guidance": "End date is more than 2 years from start date", "result": false }, { "field": "Kira : Contract Value", "fieldType": "extractedField", "fieldId": 681, "value": "150000", "desc": "Total Agreement Value > 1000", "result": true }, { "field": "Apttus__Remaining_Contracted_Days__c", "fieldType": "metaData", "value": 0, "desc": "Remaining Contracted Days = 0", "result": false }, { "field": "keywords", "fieldType": "keywords", "fieldId": "0684T000003u3eeQAA", "value": "[pp: 2] pecific Software or\nService giving rise to such claim , or (b ) One Million United States Dollars.\n\nTerm of Agreement. The term of the Agreement commences on the 1/1/2019 , ( “ Effective Date” ) and\n1[pp: 2] ...of stock, reorganization or otherwise.\n\nForce Majeure Neither party shall be liable to the ot...", "desc": "['Term': found, 'Force Majeure': found]", "result": true }, { "field": "Force Majeure", "fieldType": "extractedClause", "fieldId": "267", "value": "9. Force Majeure. Neither party shall be liable to the other party for its failure to perform any of its obligations under the Agreement (except for breaches of Section 8 or any payment obligations) during any period in which such performance is delayed or rendered impracticable or impossible due to circumstances beyond the nonperforming party’s reasonable control.", "desc": "Force Majeure not contains Pandemic, earthquake", "result": true }, { "field": "Limitation of Liability", "fieldType": "extractedField", "desc": "Limitation of Liability > 2000000", "result": false } ] } } } ] } searchResponse: type: object properties: query: type: string description: SFDC SOQL query capturing the NL phrase format: string phrase: type: string description: NL phrase input inputType: type: string description: Type of input page: $ref: '#/components/schemas/searchResponsePage' description: Paging info whereClauseFields: type: array description: List of fields in the "where" clause items: type: string description: DB field selectFields: type: array description: List of select fields in the query items: type: string description: DB field orderByFields: type: array description: List of fields in the "order by" clause items: type: string description: DB field questionClauseFields: type: array description: List of fields in the "question" clause items: type: string description: DB field keywordMap: type: object description: Keyword metadata extracted from the query $ref: '#/components/schemas/keywordMapList' result: $ref: '#/components/schemas/searchResponseResult' explanation: $ref: '#/components/schemas/explanationResult' example: { "query": "SELECT Id,Apttus_Approval__Approval_Status__c,Apttus__Agreement_Number__c,Apttus__Perpetual__c....,Apttus__LatestVersionId__r.Apttus__ContentId__c,CreatedDate,LastModifiedDate,CreatedById,CreatedBy.Name,LastModifiedById FROM Apttus__DocumentVersions__r ) FROM Apttus__APTS_Agreement__c WHERE Id IN ('a0C4T000000iGG3UAM', 'a0C4T000000iGFyUAM', ... 'a0C4T000000iBOmUAM', 'a0C4T000000iBMCUA2') AND CreatedDate >= 2020-01-01T08:00:00.000Z AND CreatedDate <= 2021-01-01T08:00:00.000Z AND (CreatedBy.Id = '0054T000000dqllQAA' OR OwnerId = '0054T000000dqllQAA') ORDER BY CreatedDate DESC NULLS LAST LIMIT 15", "phrase": "pull up agreements from last year with the mention Force Majeure or Term", "inputType": "NL", "whereClauseFields": [ "CreatedDate", "CreatedBy.Name", "Owner.Name" ], "selectFields": [], "orderByFields": [ "CreatedDate" ], "questionClauseFields": [], "keywordMap": [ { "keywords": [ "Force majeure", "term" ], "rawExpression": "(\"Force majeure\" OR \"term\")", "normalizedExpression": "((\"Force majeure\" OR \"act of god\" OR \"natural disaster\" OR \"force of nature\" OR \"natural force\" OR \"earthquake\") OR (\"term\"))", "synonymMap": { "force majeure": { "className": "Force majeure", "synonyms": [ "Force majeure", "act of god", "natural disaster", "force of nature", "natural force", "earthquake" ] }, "term": { "className": null, "synonyms": [ "term" ] } }, "missingKeywords": false, "fileNameMach": false } ], "result": { "objectName": "Apttus__APTS_Agreement__c", "objectDisplayName": "Agreement", "docHits": 2, "rowCount": 974, "records": [ { "Id": "a0C4T000000iFFqUAM", "Name": "2 years issue", "Apttus__Account__r": { "Name": "Kirk Solutions" }, "Apttus__Primary_Contact__r": { "Name": "Diego Francis" }, "RecordType": { "Name": "NDA" }, "Apttus__Status_Category__c": "Import", "Apttus__Status__c": "Review", "Apttus_Approval__Approval_Status__c": "Not Submitted", "CreatedBy": { "Name": "Gilad Turbahn" }, "CreatedDate": "2020-12-31T05:43:27.000+0000", "LastModifiedBy": { "Name": "Gilad Turbahn" }, "LastModifiedDate": "2020-12-31T05:44:12.000+0000", "__docs": [ { "id": "0694T000003rc7hQAA", "type": "ContentDocument", "desc": null, "title": "Intelligent Import Sample Document -Defect two Years Ter.docx", "fileType": "WORD_X", "fileExt": "docx", "version": { "major": 1, "minor": 0, "latest": "1.0.0" }, "link": "https://max1.my.salesforce.com/sfc/servlet.shepherd/document/download/0694T000003rc7hQAA", "downloadLink": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003rnzGQAQ/VersionData", "thumbNail": "https://max1.my.salesforce.com/sfc/servlet.shepherd/version/renditionDownload?rendition=THUMB720BY480&versionId=\"0684T000003rnzGQA\"&operationContext=CHATTER&page=0", "size": 17970 } ], "__link": { "value": "https://max1.my.salesforce.com/a0C4T000000iFFqUAM", "fields": [ "Name", "Id" ] } }, { "Id": "a0C4T000000iF5XUAU", "Name": "Multi value check- 2", "Apttus__Account__r": { "Name": "Kirk Solutions" }, "Apttus__Primary_Contact__r": { "Name": "Diego Francis" }, "RecordType": { "Name": "NDA" }, "Apttus__Status_Category__c": "Import", "Apttus__Status__c": "Review", "Apttus_Approval__Approval_Status__c": "Not Submitted", "CreatedBy": { "Name": "Gilad Turbahn" }, "CreatedDate": "2020-12-30T03:55:38.000+0000", "LastModifiedBy": { "Name": "Gilad Turbahn" }, "LastModifiedDate": "2020-12-30T03:56:11.000+0000", "__docs": [ { "id": "0694T000003ramnQAA", "type": "ContentDocument", "desc": null, "title": "JH-BVV_Jungheinrich Master-Agreement 26 02 2014.doc", "fileType": "WORD", "fileExt": "doc", "version": { "major": 1, "minor": 0, "latest": "1.0.0" }, "link": "https://max1.my.salesforce.com/sfc/servlet.shepherd/document/download/0694T000003ramnQAA", "downloadLink": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003rmQtQAI/VersionData", "thumbNail": "https://max1.my.salesforce.com/sfc/servlet.shepherd/version/renditionDownload?rendition=THUMB720BY480&versionId=\"0694T000003ramnQAA\"&operationContext=CHATTER&page=0", "size": 52950 } ], "__link": { "value": "https://max1.my.salesforce.com/a0C4T000000iF5XUAU", "fields": [ "Name", "Id" ] } } ], "displayConfig": [ { "field": "Id", "label": "Record Id" }, { "field": "Name", "label": "Name" }, { "field": "Apttus__Account__r.Name", "label": "Account" }, { "field": "Apttus__Primary_Contact__r.Name", "label": "Primary Contact" }, { "field": "RecordType.Name", "label": "Type" }, { "field": "Apttus__Status_Category__c", "label": "Status Category" }, { "field": "Apttus__Status__c", "label": "Agreement Status" }, { "field": "Apttus_Approval__Approval_Status__c", "label": "Approval Status" }, { "field": "CreatedBy.Name", "label": "Created By" }, { "field": "CreatedDate", "label": "Created Date" }, { "field": "LastModifiedBy.Name", "label": "Last Modified By" }, { "field": "LastModifiedDate", "label": "Last Modified Date" }, { "field": "__docs", "label": "Documents" } ], "scope": { "page0": "Id IN ('a0C4T000000iFFqUAM', 'a0C4T000000iFFXUA2', 'a0C4T000000iF5rUAE', 'a0C4T000000iF5cUAE', 'a0C4T000000iF5XUAU')", "page1": "Id IN ('a0C4T000000iF5SUAU', 'a0C4T000000iDiRUAU', 'a0C4T000000iDiCUAU', 'a0C4T000000iDfAUAU', 'a0C4T000000iDf5UAE')", "page2": "Id IN ('a0C4T000000iDf0UAE', 'a0C4T000000iDHIUA2', 'a0C4T000000iCqFUAU', 'a0C4T000000iCqAUAU', 'a0C4T000000iCO5UAM')" }, "size": 15, "page": { "requestId": "c6097ddd-8050-4fa6-aacb-0f7e96e097fb", "index": 0, "total": 3, "pageSize": 5 } }, "explanation": { "mainClause": { "objectName": "Apttus__APTS_Agreement__c", "annotation": [ { "subphrase": "mention '\"Term\"'", "whereClause": "Id IN ('a0C4T000000iGG3UAM', 'a0C4T000000iGFyUAM', 'a0C4T000000iGFkUAM', .., 'a0C4T000000iBOmUAM', 'a0C4T000000iBOmUAM', 'a0C4T000000iBMCUA2')", "queryClauseType": "whereClause", "nestedClause": false, "annotation": "50 agreements with documents matching the criteria \"Term\"", "questionClause": false }, { "subphrase": "from last year", "whereClause": "CreatedDate >= 2020-01-01T08:00:00.000Z AND CreatedDate <= 2021-01-01T08:00:00.000Z", "queryClauseType": "whereClause", "nestedClause": false, "annotation": "'Created Date' is more than 2020-01-01T08:00:00.000Z AND 'Created Date' is less than 2021-01-01T08:00:00.000Z", "questionClause": false }, { "subphrase": "my (default alias)", "whereClause": "(CreatedBy.Id = '0054T000000dqllQAA' OR OwnerId = '0054T000000dqllQAA')", "queryClauseType": "alias", "nestedClause": false, "annotation": "(CreatedBy.Id is 'Gilad Turbahn' OR OwnerId is 'Gilad Turbahn')", "questionClause": false }, { "subphrase": "implicit sort criteria", "whereClause": "", "queryClauseType": "sortCriteria", "nestedClause": false, "annotation": "Sort by created date in DESC order", "questionClause": false }, { "subphrase": "record count", "whereClause": "", "queryClauseType": "recordCount", "nestedClause": false, "annotation": "Maximum number of records fetched: 15", "questionClause": false } ] } } } searchQueryResponse: type: object properties: query: type: string description: SFDC SOQL query capturing the NL phrase format: string queryPlan: $ref: '#/components/schemas/iSearchQuery' description: Input query plan page: $ref: '#/components/schemas/searchResponsePage' description: Paging info whereClauseFields: type: array description: List of fields in the "where" clause items: type: string description: DB field selectFields: type: array description: List of select fields in the query items: type: string description: DB field orderByFields: type: array description: List of fields in the "order by" clause items: type: string description: DB field questionClauseFields: type: array description: List of fields in the "question" clause items: type: string description: DB field keywords: type: array description: List of keywords detected in the query items: type: string description: keyword result: $ref: '#/components/schemas/searchResponseResult' explanation: $ref: '#/components/schemas/explanationResult' example: { "query": "SELECT Id,Apttus_Approval__Approval_Status__c...,LastModifiedDate,CreatedById,CreatedBy.Name,LastModifiedById FROM Apttus__DocumentVersions__r ) FROM Apttus__APTS_Agreement__c WHERE (CreatedDate < 2020-07-01T00:00:00.000Z AND (Apttus__Total_Contract_Value__c > 20000 OR Apttus__Perpetual__c = true)) AND Apttus__Account__c IN (SELECT Id FROM Account WHERE (BillingPostalCode = '95134' OR BillingPostalCode = '95135')) AND Id IN ('a0C4T000000gCs0UAE', 'a0C4T000000gCy2UAE', 'a0C4T000000gCxlUAE', 'a0C4T000000gCyBUAU', 'a0C4T000000gCxjUAE', 'a0C4T000000gCyEUAU') ORDER BY LastModifiedDate LIMIT 15", "queryPlan": { "primaryObject": "Apttus__APTS_Agreement__c", "clause": { "Apttus__APTS_Agreement__c": { "expression": "(1 AND (2 OR 3))", "terms": [ "CreatedDate < 2020-07-01T00:00:00.000Z", "Apttus__Total_Contract_Value__c > 20000", "Apttus__Perpetual__c = true" ] }, "Account": { "expression": "(1 OR 2)", "terms": [ "BillingPostalCode = '95134'", "BillingPostalCode = '95135'" ] } }, "scope": [ "Id IN ('a0C4T000000gCs0UAE', 'a0C4T000000gCy2UAE', 'a0C4T000000gCxlUAE', 'a0C4T000000gCyBUAU', 'a0C4T000000gCxjUAE', 'a0C4T000000gCyEUAU')" ], "alias": { "name": "PerpetualAgreementsFromPast", "private": true } }, "whereClauseFields": [ "CreatedDate", "Apttus__Total_Contract_Value__c", "Apttus__Perpetual__c", "BillingPostalCode", "Id" ], "selectFields": [], "orderByFields": [], "questionClauseFields": [], "keywordMap": [], "result": { "objectName": "Apttus__APTS_Agreement__c", "rowCount": 974, "records": [ { "Id": "a0C4T000000gCy2UAE", "Name": "MSA", "Apttus__Account__r": { "Name": "ABC Corporation" }, "Apttus__Primary_Contact__r": { "Name": "Diego Francis" }, "RecordType": { "Name": "MSA" }, "Apttus__Status_Category__c": "In Authoring", "Apttus__Status__c": "Approved Request", "Apttus_Approval__Approval_Status__c": "Approved", "CreatedBy": { "Name": "Gilad Turbahn" }, "CreatedDate": "2019-09-12T21:40:28.000+0000", "LastModifiedBy": { "Name": "Gilad Turbahn" }, "LastModifiedDate": "2019-09-12T21:40:28.000+0000" }, { "Id": "a0C4T000000gCyEUAU", "Name": "ABC MSA", "Apttus__Account__r": { "Name": "ABC Corporation" }, "Apttus__Primary_Contact__r": { "Name": "Diego Francis" }, "RecordType": { "Name": "MSA" }, "Apttus__Status_Category__c": "In Signatures", "Apttus__Status__c": "Ready for Signatures", "Apttus_Approval__Approval_Status__c": "Approved", "CreatedBy": { "Name": "Gilad Turbahn" }, "CreatedDate": "2019-09-12T21:40:28.000+0000", "LastModifiedBy": { "Name": "Gilad Turbahn" }, "LastModifiedDate": "2020-08-05T23:29:52.000+0000" } ], "objectDisplayName": "Agreement", "displayConfig": [ { "field": "Id", "link": "https://max1.my.salesforce.com/a0C4T000000gCy2UAE", "label": "Record Id" }, { "field": "Name", "label": "Name" }, { "field": "Apttus__Account__r.Name", "label": "Account" }, { "field": "Apttus__Primary_Contact__r.Name", "label": "Primary Contact" }, { "field": "RecordType.Name", "label": "Type" }, { "field": "Apttus__Status_Category__c", "label": "Status Category" }, { "field": "Apttus__Status__c", "label": "Agreement Status" }, { "field": "Apttus_Approval__Approval_Status__c", "label": "Approval Status" }, { "field": "CreatedBy.Name", "label": "Created By" }, { "field": "CreatedDate", "label": "Created Date" }, { "field": "LastModifiedBy.Name", "label": "Last Modified By" }, { "field": "LastModifiedDate", "label": "Last Modified Date" } ], "scope": { "page0": "Id IN ('a0C4T000000gCy2UAE', 'a0C4T000000gCs0UAE', 'a0C4T000000gCxlUAE', 'a0C4T000000gCyBUAU', 'a0C4T000000gCxjUAE', 'a0C4T000000gCyEUAU')" }, "size": 6 }, "explanation": { "mainClause": { "objectName": "Apttus__APTS_Agreement__c", "annotation": [ { "subphrase": "Clause: Apttus__APTS_Agreement__c.CreatedDate < 2020-07-01T00:00:00.000Z", "whereClause": "CreatedDate < 2020-07-01T00:00:00.000Z", "queryClauseType": "whereClause", "annotation": "Created Date < 2020-07-01T00:00:00.000Z", "questionClause": false }, { "subphrase": "Clause: Apttus__APTS_Agreement__c.Apttus__Total_Contract_Value__c > 20000", "whereClause": "Apttus__Total_Contract_Value__c > 20000", "queryClauseType": "whereClause", "annotation": "Total Agreement Value > 20000", "questionClause": false }, { "subphrase": "Clause: Apttus__APTS_Agreement__c.Apttus__Perpetual__c = true", "whereClause": "Apttus__Perpetual__c = true", "queryClauseType": "whereClause", "annotation": "Perpetual = true", "questionClause": false }, { "subphrase": "Nested Clause: Account.BillingPostalCode = '95134'", "whereClause": "BillingPostalCode = '95134'", "queryClauseType": "whereClause", "annotation": "Billing Zip/Postal Code = '95134'", "questionClause": false }, { "subphrase": "Nested Clause: Account.BillingPostalCode = '95135'", "whereClause": "BillingPostalCode = '95135'", "queryClauseType": "whereClause", "annotation": "Billing Zip/Postal Code = '95135'", "questionClause": false }, { "subphrase": "Scope: Apttus__APTS_Agreement__c.Id IN ('a0C4T000000gCs0UAE', 'a0C4T000000gCy2UAE', 'a0C4T000000gCxlUAE', 'a0C4T000000gCyBUAU', 'a0C4T000000gCxjUAE', 'a0C4T000000gCyEUAU')", "whereClause": "Id IN ('a0C4T000000gCs0UAE', 'a0C4T000000gCy2UAE', 'a0C4T000000gCxlUAE', 'a0C4T000000gCyBUAU', 'a0C4T000000gCxjUAE', 'a0C4T000000gCyEUAU')", "queryClauseType": "whereClause", "annotation": "Record ID IN ('a0C4T000000gCs0UAE', 'a0C4T000000gCy2UAE', 'a0C4T000000gCxlUAE', 'a0C4T000000gCyBUAU', 'a0C4T000000gCxjUAE', 'a0C4T000000gCyEUAU')", "questionClause": false } ] } } } iChronosOptions: type: object properties: fullNLUResult: type: boolean description: If true, returns the full result (NLU + iChronos results). Otherwise, returns only iChronos results. format: boolean default: false objectName: type: string description: Table name of the object. This is used to generate template expressions for relative time phrases. example: Apttus__APTS_Agreement__c resolveRelativeReference: type: boolean description: Indicates whether to resolve relative reference expressions to templates. format: boolean default: true context: type: object description: Any JSON object to be logged in the analytics payload associated with this request. SFDC instanceUrl is a helpful context setting to pass in. format: type: string description: Date format, such as mm/dd/yyyy (where m=month, d=day, y=year) default: yyyy-mm-dd startOfQuarter: type: string default: "01-01-current" description: <p>Common scenarios include</p> <ol> <li>The current fiscal year starts and ends with the calendar year => No configuration needed</li> <li>The current fiscal year began the previous calendar year, runs into and ends during the current calendar year, and the next fiscal year begins during this calendar year. In this typical case, configure StartOfQuarter as shown.</li> <ul> <li>Current calendar year = 2019, fiscal year = 2019</li> <li>FY 2019 began 06/15/2018 and ends 06/14/2019</li> <li>Q1":" 06/15/2018 to 09/14/2018</li> <li>Q2":" 09/15/2018 to 12/14/2018</li> <li>Q3":" 12/15/2018 to 03/14/2019</li> <li>Q4":" 03/15/2019 to 06/14/2019</li> <li>startOfQuarter = "06-15-next". This tells Max that the next fiscal year begins on 06/15 during calendar year 2019. With this hint, Max automatically computes the current and next fiscal years.</li> </ul> <li>The current fiscal year begins in the middle of the calendar year, runs into next year, and ends during the next calendar year, while the prior fiscal year ends during the current calendar year. In this unusual but possible case, configure the StartOfQuarter as shown.</li> <ul> <li>Current calendar year = 2019, fiscal year = 2019</li> <li>FY 2019 began 06/15/2019 and ends 06/14/2020</li> <li>Q1":" 06/15/2019 to 09/14/2019</li> <li>Q2":" 09/15/2019 to 12/14/2019</li> <li>Q3":" 12/15/2019 to 03/14/2020</li> <li>Q4":" 03/15/2020 to 06/14/2020</li> <li>startOfQuarter = "06-15-current". This tells Max that the current fiscal year begins on 06/15 during calendar year 2019. With this hint, Max automatically computes the current and next fiscal years.</li> </ul> <li>The prior fiscal year begins in the middle of the calendar year, runs into next year, and ends during the next calendar year. In this very unusual but theoretically possible case, configure the StartOfQuarter as shown:</li> <ul> <li>Current calendar year = 2019, fiscal year = 2018</li> <li>FY 2018 began 06/15/2019 and ends 06/14/2020</li> <li>Q1":" 06/15/2019 to 09/14/2019</li> <li>Q2":" 09/15/2019 to 12/14/2019</li> <li>Q3":" 12/15/2019 to 03/14/2020</li> <li>Q4":" 03/15/2020 to 06/14/2020</li> <li>startOfQuarter = "06-15-prior". This tells Max that the prior fiscal year began on 06/15 during the calendar year 2019. With this hint, Max automatically computes the current and next fiscal years. </ul> </ol> example: a) 03-15-current (FY20 begins 03-15-2020 and ends 03-14-2021) b) 03-15-next (FY 21 begins on 03-15-2020 and ends 03-14-2021) or c) 01-15-prior (FY 19 begins 03-15-2020 and ends 03-14-2021) startOfWeek: type: string default: "monday" description: Weekday that marks the beginning of the week example: sunday or saturday (any day of the week) example: { "objectName": "Apttus__APTS_Agreement__c", "fullNLUResult": false, "format": "mm-dd-yyyy" } dataMap: type: object additionalProperties: type: string description: Map of key-value pairs containing values for keys to be substituted in the templated expression example: { "Apttus__Contract_Start_Date__c": "2019-10-01", "Apttus__Contract_End_Date__c": "2020-10-01" } searchOptions: type: object properties: fetchResults: type: boolean description: If true, resolve query and return object IDs matching the query. format: boolean default: false fetchQueryPlan: type: boolean description: If true, return query plan used to resolve the NL phrase. format: boolean default: false mask: type: boolean description: If true, redact input phrase details in analytics logging. format: boolean default: false sessionTreatment: type: string description: '''clear'': Clears the session <br>''keep-alive'': Does not alter the session<br>''terminate'' (or any other value): Terminates the session' format: string default: terminate applyDefaultAlias: type: boolean description: If true, applies a default implicit alias to applicable objects. For example, when querying for opportunities, only opportunities with stage open are returned. default: true personalize: type: boolean description: If true, only records owned or created by the searching user are searched. default: true keywordCacheTimeout: type: integer description: Time, in minutes, that document lookups are cached (0 to 60). If <= 0, cache is disabled. default: 30 searchLimit: type: integer description: "Maximum number of records to pull up during document search" default: 300 pageSize: type: integer description: "Maximum number of records to return in a single response" default: 30 countRows: type: boolean description: "Enables counting records matching the query, regardless of limit" default: false enableDocVersionSearch: type: boolean description: "Enables a search of the doc version" default: true enableContentDocumentSearch: type: boolean description: "Enables a search of document contents" default: true enableAgreementDocSearch: type: boolean description: "Enables an agreement doc search" default: true singleDocPerRow: type: boolean description: "If set, one array row is returned for each document" default: false includeFiles: type: array description: List of file names to be included in document search. If specified, trumps the excludeFiles setting items: type: string example: ["*Final.pdf", "*.docx", "Intelligent.*"] excludeFiles: type: array description: List of file names to be excluded from document search. If specified in tandem with includeFiles, this is ignored. items: type: string example: ["*Tentative.pdf", "*.rtf", "Intelligent*.png"] timeout: type: integer description: "Time, in milliseconds, allowed for the execution of a search query. The maximum permissible timeout is 90 seconds" default: 15000 context: type: object description: Any JSON object to be logged in an analytics payload example: { "fetchResults": true, "sessionTreatment": "clear", "countRows": true, "enableSynonymSearch": true } searchResponseResult: type: object properties: objectName: type: string description: Object returned in results objectDisplayName: type: string description: Object display name records: type: array description: Object record data items: $ref: '#/components/schemas/recordData' size: type: integer description: Number of results questionClauseMatchSize: type: integer description: Number of question clause matches (if question clause is present) docs: $ref: '#/components/schemas/docResultList' example: size: 0 records: {} object: object docResultList: type: array items: $ref: '#/components/schemas/docResult' docResult: type: object properties: id: type: string description: Document ID type: type: string description: The document type in SFDC; for example, "ContentDocument" desc: type: string description: Document description title: type: string description: Document title fileType: type: string description: The document's file type; for example, "WORD_X" fileExt: type: string description: The document's file extension; for example, "docx" version: description: The document's major, minor, and latest version $ref: '#/components/schemas/docVersion' link: type: string description: SFDC link to the document page downloadLink: type: string description: SFDC download link for the raw document size: type: integer description: Document size in bytes example: { "id": "0694T000003rIf5QAE", "type": "ContentDocument", "desc": null, "title": "Final_Term_Defect check for apostrophy.docx", "fileType": "WORD_X", "fileExt": "docx", "version": { "major": 1, "minor": 0, "latest": "1.0.0" }, "link": "https://max1.my.salesforce.com/sfc/servlet.shepherd/document/download/0694T000003rIf5QAE", "downloadLink": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003rTKaQAM/VersionData", "size": 20608 } docVersion: type: object description: Document version properties: major: type: string description: Major version of document minor: type: string description: Minor version of document latest: type: string description: Latest version of document recordData: type: object description: Entity resolution properties: Id: type: string description: Object ID field: type: string description: Field name and value in the record match: type: boolean description: If true, this record matches the question clause. entityResolutionResultList: type: object description: Entity resolution properties: values: type: array items: $ref: '#/components/schemas/entityResolutionResult' entityResolutionResult: type: object description: Explanation of query clause properties: type: type: string description: Entity type Mod: type: string description: Modifier start: type: string description: Start date format: datetime end: type: string description: End date format: datetime explanationResult: type: object description: Explanation of query properties: mainClause: type: object description: Main object clause list properties: objectName: type: string description: Object returned in results annotation: type: array description: Annotation of clauses items: $ref: '#/components/schemas/annotationItem' nestedClause: type: object description: Nested object clause list properties: object: type: string description: Object returned in results annotation: type: array description: Annotation of clauses items: $ref: '#/components/schemas/annotationItem' annotationItem: type: object description: Explanation of query clause properties: subphrase: type: object description: User NL subphrase whereClause: type: object description: Actual "where" clause annotation: type: object description: Annotation of "where" clause questionClause: type: boolean description: Is this a question clause? versionResponse: type: object description: Max platform and tenant version info properties: version: type: string description: Max platform version buildTime: type: string description: Time the version was built platformSubroutines: type: string description: Last update time for platform subroutines platformDialogs: type: string description: Last update time for platform dialogs platformConversations: type: string description: Last update time for platform conversations tenantSubroutines: type: string description: Last update time for tenant subroutines tenantDialogs: type: string description: Last update time for tenant dialogs tenantConversations: type: string description: Last update time for tenant conversations tenantConfig: type: string description: Last update time for tenant configuration example: { "version": "4.0.0.472", "buildTime": "2020-10-15T02:14:45.000Z (2 hours ago)", "currentTimeUTC": "2020-10-15T05:11:39.527Z (now)", "startTime": "2020-10-15T03:21:12.910Z (1 hours ago)", "platformConversations": "2020-10-15T03:21:23.664Z (1 hours ago)", "platformDialogs": "2020-10-15T03:19:56.994Z (1 hours ago)", "platformSubroutines": "2020-10-15T03:20:42.958Z (1 hours ago)", "tenant": "ApttusSFDC", "tenantDialogs": "2020-10-15T03:21:13.598Z (1 hours ago)", "tenantConversations": "2020-10-15T03:21:13.598Z (1 hours ago)", "tenantSubroutines": "2020-10-15T03:21:37.994Z (1 hours ago)", "tenantConfig": "2020-10-15T03:21:05.678Z (1 hours ago)", "env": "Azure_qa" } iSearchTenantConfig: type: object format: string description: Max platform and tenant version info properties: clientVersion: type: string description: Client version clientChannel: type: string description: Client channel, such as sfdc, slack, teams license: type: string description: License type emailReportTemplate: type: object description: Search limits properties: subject: type: string description: Email template subject body: type: string description: Email template body limits: type: object description: Search limits defaultTenant: type: boolean description: Indicates if this is a default tenant or a custom tenant module: type: string description: Module subscribed to for search searchObjects: type: object description: Objects available for search example: { "license": "full", "defaultTenant": false, "module": "clm", "searchObjects": [ { "objectName": "Opportunity", "objectId": "opportunity", "related": [ "Account", "Contact", "Apttus__APTS_Agreement__c" ], "enableDocSearch": true, "relationships": { "Account": [ { "relationship": "Account", "field": "AccountId", "label": "Account ID" } ], "Contact": [ { "relationship": "APTSMD_Primary_Contact__r", "field": "APTSMD_Primary_Contact__c", "label": "Primary Contact" } ] } }, { "objectName": "Account", "objectId": "account", "related": [ "Opportunity", "Contact", "Apttus__APTS_Agreement__c", "Apttus__DocumentVersion__c", "Apttus__DocumentVersionDetail__c" ], "enableDocSearch": true, "relationships": { "Contact": [ { "relationship": "PersonContact", "field": "PersonContactId", "label": "Contact ID" }, { "relationship": "APTSMD_Primary_Contact__r", "field": "APTSMD_Primary_Contact__c", "label": "Primary Contact" } ] } }, { "objectName": "Contact", "objectId": "contact", "related": [ "Opportunity", "Account", "Apttus__APTS_Agreement__c" ], "relationships": { "Account": [ { "relationship": "Account", "field": "AccountId", "label": "Account ID" } ] } }, { "objectName": "Apttus__APTS_Agreement__c", "objectId": "agreement", "primary": true, "related": [ "Opportunity", "Account", "Contact", "Apttus__Agreement_Clause__c", "Apttus_Approval__Approval_Request__c", "Apttus__DocumentVersion__c" ], "enableDocSearch": true, "relationships": { "Opportunity": [ { "relationship": "Apttus__Related_Opportunity__r", "field": "Apttus__Related_Opportunity__c", "label": "Related Opportunity" } ], "Account": [ { "relationship": "Apttus__Account__r", "field": "Apttus__Account__c", "label": "Account" }, { "relationship": "Apttus_CMConfig__BillToAccountId__r", "field": "Apttus_CMConfig__BillToAccountId__c", "label": "Bill To" }, { "relationship": "Apttus_CMConfig__ShipToAccountId__r", "field": "Apttus_CMConfig__ShipToAccountId__c", "label": "Ship To" } ], "Contact": [ { "relationship": "Apttus__Company_Signed_By__r", "field": "Apttus__Company_Signed_By__c", "label": "Company Signed By" }, { "relationship": "Apttus__Other_Party_Signed_By__r", "field": "Apttus__Other_Party_Signed_By__c", "label": "Other Party Signed By" }, { "relationship": "Apttus__Primary_Contact__r", "field": "Apttus__Primary_Contact__c", "label": "Primary Contact" } ] } }, { "objectName": "Apttus__Agreement_Clause__c", "objectId": "agreementclause", "related": [ "Apttus__APTS_Agreement__c", "Apttus__DocumentVersion__c" ], "enableDocSearch": true, "enableObjectSearch": true, "relationships": { "Apttus__APTS_Agreement__c": [ { "relationship": "Apttus__Agreement__r", "field": "Apttus__Agreement__c", "label": "Agreement" } ], "Apttus__DocumentVersion__c": [ { "relationship": "Apttus__VersionId__r", "field": "Apttus__VersionId__c", "label": "Document Version" } ] } }, { "objectName": "Apttus_Approval__Approval_Request__c", "objectId": "approval", "related": [ "Opportunity", "Account", "Contact", "Apttus__APTS_Agreement__c", "Apttus__Agreement_Clause__c" ], "relationships": { "Opportunity": [ { "relationship": "Apttus_Approval__Related_Opportunity__r", "field": "Apttus_Approval__Related_Opportunity__c", "label": "Related Opportunity" } ], "Apttus__APTS_Agreement__c": [ { "relationship": "Apttus_Approval__Parent_Agreement__r", "field": "Apttus_Approval__Parent_Agreement__c", "label": "Parent Agreement" }, { "relationship": "Apttus_Approval__Related_Agreement__r", "field": "Apttus_Approval__Related_Agreement__c", "label": "Related Agreement" } ] } }, { "objectName": "Apttus__ReviewCycle__c", "objectId": "reviewcycle", "related": [ "Apttus__Reviewer__c" ], "relationships": {} }, { "objectName": "Apttus__Reviewer__c", "objectId": "reviewer", "related": [], "relationships": {} }, { "objectName": "Apttus__DocumentVersion__c", "objectId": "docversion", "related": [ "Apttus__DocumentVersionDetail__c", "Apttus__APTS_Agreement__c" ], "relationships": { "Apttus__DocumentVersionDetail__c": [ { "relationship": "Apttus__CheckoutVersionDetailId__r", "field": "Apttus__CheckoutVersionDetailId__c", "label": "Checkout Version Detail" }, { "relationship": "Apttus__LatestVersionId__r", "field": "Apttus__LatestVersionId__c", "label": "Latest Version Detail" } ], "Apttus__APTS_Agreement__c": [ { "relationship": "Apttus__AgreementId__r", "field": "Apttus__AgreementId__c", "label": "Agreement" } ] } }, { "objectName": "Apttus__DocumentVersionDetail__c", "objectId": "docversiondetail", "related": [ "Apttus__DocumentVersion__c", "Apttus__ReviewCycle__c" ], "relationships": { "Apttus__DocumentVersion__c": [ { "relationship": "Apttus__DocumentVersionId__r", "field": "Apttus__DocumentVersionId__c", "label": "Document Version" } ] } } ], "emailReportTemplate": { "subject": "${objectname} report ${date}", "body": "Hi -- Here is the report of the recent search you ran\n. Thanks\n!" }, "limits": { "userAliasList": 15, "globalAliasList": 50, "snippetWindowSize": 200, "maxSnippetsInSearch": 25, "snippetMatchIgnoreCase": true, "startSnippetMatchAtPage": 0, "endSnippetMatchAtPage": -1, "applyDefaultAlias": true, "personalize": true, "enableSynonymSearch": true, "fuzzySnippetMatch": true, "preferWholeWordsMatch": true, "preferredSnippetLinebreak": "\r\n", "preferredSnippetInsertPage": true, "matchWholeWordsOnly": true, "docSearchLimit": 2000, "searchResultLimit": 100, "pageSize": 30, "keywordCacheTimeout": 30, "enableLargeFileSearch": false }, "tenantId": "apttussfdc", "userId": "user", "channel": "api", "org": "https://max1.my.salesforce.com", "lastUpdateTime": 1618958070957, "clientVersion": "12.80.000.1", "clientChannel": "SFDC" } iSearchAliasInfoList: type: array format: string items: $ref: '#/components/schemas/iSearchAliasInfo' example: { "NDA2020": { "type": "NL", "query": { "expression": "Pull up NDAs from 2020" }, "desc": "NDAs from the year 2020", "private": false, "owner": "0054T000000dqllQAB" }, "IBM-NDA2020": { "type": "NL", "query": { "scope": [ "Apttus__Account__r.Name = 'IBM'" ], "expression": "Pull up NDAs from 2020" }, "desc": "NDAs from the year 2020", "private": true, "owner": "0054T000000dqllQAA" }, "HighValuePastAgreements": { "type": "QueryPlan", "desc": "High value agreements prior to this year", "private": false, "primaryObject": "Apttus__APTS_Agreement__c", "query": { "clause": { "Apttus__APTS_Agreement__c": { "expression": "(1 AND (2 OR 3))", "terms": [ "CreatedDate < 2020-07-01T00:00:00.000Z", "Apttus__Total_Contract_Value__c > 20000", "Apttus__Perpetual__c = true" ] }, "Account": { "expression": "(1 OR 2)", "terms": [ "BillingPostalCode = '95134'", "BillingPostalCode = '95135'" ] } } }, "owner": "0054T000000dqllQAA" } } iSearchAliasInfo: type: object description: Search alias config properties: name: type: string description: Name of the alias type: type: string description: Alias type (NL, QueryPlan) desc: type: string description: Description of the alias query: $ref: '#/components/schemas/iSearchQuery' description: Query expression example: { "name":"NDA2020", "type": "NL", "query": { "expression": "Pull up NDAs from 2020" }, "desc": "NDAs from the year 2020" } iSearchFeedback: type: object description: iSearch query block properties: scope: type: array description: List of conditions specifying the candidate objects on which the query plan must be executed items: $ref: '#/components/schemas/iSearchQueryTerm' input: oneOf: - $ref: '#/components/schemas/iSearchNLQuery' - $ref: '#/components/schemas/iSearchQuery' description: Search input (stringified JSON of iSearchNLQuery or iSearchQueryPlan) query: type: object description: Optional query plan object options: description: "Stringified form of JSON representing the iChronosOptions. You must pass in the context parameter with: <ul> <li><b>instanceUrl</b> to identify the SFDC org originating the request.</li> <li><b>userId</b> SFDC userId identifying the user.</li> <li><b>userName</b> SFDC user name identifying the user.</li> <li><b>requestId</b> indicating the x-request-id returned by the original iChronos request for which feedback is provided</li> </ul>" type: object example: { "input": { "scope": [ "Id IN ('a0C4T000000gCrZUAU', 'a0C4T000000gCraUAE')" ], "phrase": "pull up agreements from last year with the mention \"Term\"", "options": { "fetchResults": true, "sessionTreatment": "clear", "pageSize": 4 }, "alias": { "name": "Recent agreement terms", "private": true } }, "result":{ "recordCount": 15, "docCount": 5, "pageTotal": 4, "pageSize": 4, "keywords": ["Force Majeure", "Terms"] }, "context": { "instanceUrl": "https://max1.my.salesforce.com", "userId": "0054T000000dqllQAB", "userName": "Jeremy Jones", "requestId": "29080e70-3993-437a-a923-fa59700cc07e" } } iSearchNLQuery: type: object description: iSearch query block properties: scope: type: array description: List of conditions specifying the candidate objects on which the query plan must be executed items: $ref: '#/components/schemas/iSearchQueryTerm' phrase: type: string description: NL phrase options: $ref: '#/components/schemas/searchOptions' example: { "scope": [ "RecordType.Name IN ('NDA')" ], "phrase": "pull up agreements from last year with the mention \"Term\"", "options": { "fetchResults": true, "sessionTreatment": "clear", "pageSize": 4, "countRows": false, "enableSynonymSearch": false, "singleDocPerRow": true, "saveToSearchHistory": true }, "alias": { "name": "Recent agreement terms", "private": true } } iSearchQuery: type: object description: iSearch query block properties: primaryObject: type: string description: Primary object being queried scope: type: array description: List of conditions specifying the candidate objects on which the query plan shall be executed items: $ref: '#/components/schemas/iSearchQueryTerm' clause: type: array items: $ref: '#/components/schemas/iSearchQueryClauseList' options: $ref: '#/components/schemas/searchOptions' example: { "primaryObject": "Apttus__APTS_Agreement__c", "scope": [ "Id IN ('a0C4T000000gCrZUAU', 'a0C4T000000gCraUAE')" ], "clause": { "Apttus__APTS_Agreement__c": { "expression": "(1 AND (2 OR 3))", "terms": [ "CreatedDate < 2020-07-01T00:00:00.000Z", "Apttus__Total_Contract_Value__c > 20000", "Apttus__Perpetual__c = true" ], "keywords": "Force Majeure and Term but not Tax Credits" }, "Account": { "expression": "(1 OR 2)", "terms": [ "BillingPostalCode = '95134'", "BillingPostalCode = '95135'" ] } }, "options": { "fetchResults": true, "sessionTreatment": "clear", "singleDocPerRow": false }, "alias": { "name": "PerpetualAgreementsFromPast", "private": true } } iSearchRuleQuery: type: object description: iSearch rule query block properties: primaryObject: type: string description: Primary object being queried primaryObjectLabel : type: string description: Primary object Label being queried scope: type: array description: List of conditions specifying the candidate objects on which the query plan shall be executed items: $ref: '#/components/schemas/iSearchQueryTerm' clause: type: array items: $ref: '#/components/schemas/iSearchRuleQueryClauseList' options: $ref: '#/components/schemas/searchOptions' example: { "name": "MSA-Risk", "primaryObject": "Apttus__APTS_Agreement__c", "primaryObjectLabel" : "Agreement", "scope": ["a0C4T000000ifZZUAY"], "iddJobId" : ["a5u7A0000000C67QAE"], "clause": { "Apttus__APTS_Agreement__c": { "terms": { "recordType" : "MSA", "expression": "(1 AND ((2 AND 3) OR 4 OR 5) AND 6 AND (7 OR 8))", "conditions": [ { "field": "Apttus__Contract_Start_Date__c", "fieldType": "mergedField", "fieldId": "1039", "operator": "Natural Language", "value": "less than 30 days from now" }, { "field": "Apttus__Contract_End_Date__c", "fieldType": "mergedField", "fieldId": "1040", "operator": "Natural Language", "value": "after ${Apttus__Contract_Start_Date__c}" }, { "field": "Apttus__Contract_End_Date__c", "fieldType": "mergedField", "fieldId": "1040", "operator": "Natural Language", "value": "more than 2 years from ${Apttus__Contract_Start_Date__c}", "guidance": "End date is more than 2 years from start date" }, { "field": "Kira : Contract Value", "fieldType": "extractedField", "fieldId": 681, "operator": ">", "value": "1000" }, { "field": "Apttus__Remaining_Contracted_Days__c", "fieldType": "metaData", "operator": "=", "value": "0" }, { "field": "keywords", "fieldType": "ContentVersion", "fieldId": "0684T000003u3eeQAA", "title": "intellimport", "format": "pdf", "operator": "Natural Language", "value": "Force Majeure and Term" }, { "field": "Force Majeure", "fieldType": "extractedClause", "fieldId": "267", "operator": "not contains", "value": "Pandemic, earthquake" }, { "field": "Limitation of Liability", "fieldType": "extractedField", "operator": ">", "value": "2000000", "desc": "High liability" } ] } } }, "options": { "objectOverride": true, "defaultFieldType": "mergedField", "fetchResults": true, "sessionTreatment": "clear", "singleDocPerRow": false }, "objectData": { "a0C4T000000ifZUUAY": { "Account.Name": "Acme Inc", "Limitation of Liability": "1000000" } }, "metaData": { "name": "Core risk criteria", "score": "0.1" } } iSearchFollowupQuery: type: object description: iSearch query block properties: primaryObject: type: string description: Primary object being queried scope: type: array description: List of conditions specifying the candidate objects on which the query plan shall be executed items: $ref: '#/components/schemas/iSearchQueryTerm' clause: type: array items: $ref: '#/components/schemas/iSearchQueryClauseList' options: $ref: '#/components/schemas/searchOptions' example: { "keepClause": [0, 1, 3], "addClause": { "expression": "(1 AND (2 OR 3))", "terms": [ "CreatedDate < 2020-07-01T00:00:00.000Z", "Apttus__Total_Contract_Value__c > 20000", "Apttus__Perpetual__c = true" ], "keywords": "Force Majeure and Term but not Tax Credits" }, "options": { "fetchResults": true, "sessionTreatment": "clear", "singleDocPerRow": false } } iSearchRuleQueryClauseList: type: array items: $ref: '#/components/schemas/iSearchRuleQueryClause' iSearchRuleQueryClause: type: object additionalProperties: $ref: '#/components/schemas/iSearchRuleQueryClauseItem' iSearchRuleQueryClauseItem: type: object properties: expression: type: string description: Query expression terms: type: array items: $ref: '#/components/schemas/iSearchRuleQueryClauseTerm' keywords: type: string description: Keyword expression iSearchRuleQueryClauseTerm: type: object properties: condition: type: string description: Query expression example: "Apttus__Total_Contract_Value__c > 20000" desc: type: string description: "Contract value compliance" iSearchQueryClauseList: type: array items: $ref: '#/components/schemas/iSearchQueryClause' iSearchQueryClause: type: object additionalProperties: $ref: '#/components/schemas/iSearchQueryClauseItem' iSearchQueryClauseItem: type: object properties: expression: type: string description: Query expression terms: type: array items: type: string keywords: type: string description: Keyword expression iSearchQueryTerm: type: object additionalProperties: type: string description: Map of key-value pairs containing table-to-query-term mapping iSearchQueryTerms: type: array items: $ref: '#/components/schemas/iSearchQueryTermItem' example: [ "CreatedDate < 2020-07-01T00:00:00.000Z", "Apttus__Total_Contract_Value__c > 20000", "NOT Name LIKE '%NDA%'" ] iSearchQueryTermItem: type: string example: CreatedDate >= 2021-05-06T00:00:00Z iSearchParsedQueryTermResponse: type: array items: $ref: '#/components/schemas/iSearchParsedQueryTermResponseItem' example: [ { "objectName": "Agreement", "field": "CreatedDate", "label": "Created Date", "operator": "<", "value": "2020-07-01T00:00:00.000Z", "leadModifier": "" }, { "objectName": "Agreement", "field": "Apttus__Total_Contract_Value__c", "label": "Total Agreement Value", "operator": ">", "value": "20000", "leadModifier": "" }, { "objectName": "Agreement", "field": "Name", "label": "Agreement Name", "operator": "LIKE", "value": "'%NDA%'", "leadModifier": "NOT" } ] iSearchParsedQueryTermResponseItem: type: object example: { "objectName": "Agreement", "field": "Apttus__Total_Contract_Value__c", "label": "Total Agreement Value", "operator": ">", "value": "20000", "leadModifier": "" } iSearchDisplayInfoList: type: object format: string description: Display config for search results properties: object: $ref: '#/components/schemas/iSearchDisplayInfo' example: { "searchObjects": { "Opportunity": [ { "label": "Opportunity Name", "type": "string", "field": "Name" }, { "label": "Account", "type": "string", "field": "Account.Name" }, { "label": "Owner", "type": "string", "field": "Owner.Name" }, { "label": "Stage Name", "type": "picklist", "field": "StageName" }, { "label": "Amount", "type": "currency", "field": "Amount" }, { "label": "Close Date", "type": "date", "field": "CloseDate" } ], "Account": [ { "label": "Account Name", "type": "string", "field": "Name" }, { "label": "Primary Contact", "type": "string", "field": "APTSMD_Primary_Contact__r.Name" }, { "label": "Type", "type": "picklist", "field": "Type" }, { "label": "Account Owner", "type": "string", "field": "Owner.Name" }, { "label": "Industry", "type": "picklist", "field": "Industry" }, { "label": "Billing Address", "type": "textarea", "field": "BillingStreet" } ], "Contact": [ { "label": "Contact Name", "type": "string", "field": "Name" }, { "label": "Account Name", "type": "string", "field": "Account.Name" }, { "label": "Title", "type": "string", "field": "Title" }, { "label": "Contact Owner", "type": "string", "field": "Owner.Name" }, { "label": "Phone Number", "type": "phone", "field": "Phone" }, { "label": "Email", "type": "email", "field": "Email" }, { "label": "Mailing Address", "type": "textarea", "field": "MailingStreet" } ], "Apttus__APTS_Agreement__c": [ { "label": "Name", "type": "string", "field": "Name" }, { "label": "Account", "type": "string", "field": "Apttus__Account__r.Name" }, { "label": "Primary Contact", "type": "string", "field": "Apttus__Primary_Contact__r.Name" }, { "label": "Type", "type": "string", "field": "RecordType.Name" }, { "label": "Status Category", "type": "picklist", "field": "Apttus__Status_Category__c" }, { "label": "Agreement Status", "type": "picklist", "field": "Apttus__Status__c" }, { "label": "Approval Status", "type": "picklist", "field": "Apttus_Approval__Approval_Status__c" }, { "label": "Created By", "type": "string", "field": "CreatedBy.Name" }, { "label": "Created Date", "type": "datetime", "field": "CreatedDate" }, { "label": "Last Modified By", "type": "string", "field": "LastModifiedBy.Name" }, { "label": "Last Modified Date", "type": "datetime", "field": "LastModifiedDate" } ], "Apttus__Agreement_Clause__c": [ { "label": "Account", "type": "string", "field": "Apttus__Agreement__r.Apttus__Account__r.Name" }, { "label": "Agreement", "type": "string", "field": "Apttus__Agreement__r.Name" }, { "label": "Primary Contact", "type": "string", "field": "Apttus__Agreement__r.Apttus__Primary_Contact__r.Name" }, { "label": "Category", "type": "picklist", "field": "Apttus__Category__c" }, { "label": "Approval Status", "type": "picklist", "field": "Approval_Status__c" }, { "label": "Created By", "type": "string", "field": "CreatedBy.Name" }, { "label": "Created Date", "type": "datetime", "field": "CreatedDate" }, { "label": "Last Modified By", "type": "string", "field": "LastModifiedBy.Name" }, { "label": "Last Modified Date", "type": "datetime", "field": "LastModifiedDate" } ], "Apttus_Approval__Approval_Request__c": [ { "label": "Business Object", "type": "string", "field": "Apttus_Approval__Object_Name__c" }, { "label": "Approval Request Id", "type": "string", "field": "Name" }, { "label": "Approval Request Status", "type": "picklist", "field": "Apttus_Approval__Approval_Status__c" }, { "label": "Assigned To", "type": "string", "field": "Apttus_Approval__Assigned_To_Name__c" }, { "label": "Approval Details", "type": "textarea", "field": "Apttus_Approval__Request_Comments__c" }, { "label": "Initial Submitter", "type": "string", "field": "Apttus_Approval__Initial_Submitter__r.Name" }, { "label": "Approver Comments", "type": "textarea", "field": "Apttus_Approval__Approver_Comments__c" }, { "label": "Requestor Comments", "type": "textarea", "field": "Apttus_Approval__SubmissionComment1__c" } ], "Apttus__ReviewCycle__c": [ { "label": "Name", "type": "string", "field": "Name" }, { "label": "Agreement", "type": "string", "field": "Apttus__OriginalDocumentVersionDetail__r.Apttus__DocumentVersionId__r.Apttus__AgreementId__r.Name" }, { "label": "Account", "type": "string", "field": "Apttus__OriginalDocumentVersionDetail__r.Apttus__DocumentVersionId__r.Apttus__AgreementId__r.Apttus__Account__r.Name" }, { "label": "Review Status", "type": "picklist", "field": "Apttus__ReviewStatus__c" }, { "label": "Created Date", "type": "datetime", "field": "CreatedDate" }, { "label": "Created By", "type": "string", "field": "CreatedBy.Name" } ], "Apttus__Reviewer__c": [ { "label": "Review Cycle", "type": "string", "field": "Apttus__ReviewCycle__r.Name" }, { "label": "Agreement", "type": "string", "field": "Apttus__ReviewCycle__r.Apttus__OriginalDocumentVersionDetail__r.Apttus__DocumentVersionId__r.Apttus__AgreementId__r.Name" }, { "label": "Account", "type": "string", "field": "Apttus__ReviewCycle__r.Apttus__OriginalDocumentVersionDetail__r.Apttus__DocumentVersionId__r.Apttus__AgreementId__r.Apttus__Account__r.Name" }, { "label": "Name", "type": "string", "field": "Name" }, { "label": "Email", "type": "email", "field": "Apttus__ReviewerEmail__c" }, { "label": "Review Status", "type": "picklist", "field": "Apttus__ReviewStatus__c" }, { "label": "Created Date", "type": "datetime", "field": "CreatedDate" }, { "label": "Created By", "type": "string", "field": "CreatedBy.Name" } ] }, "tenantId": "apttussfdc", "userId": "0054T000000dqllQAA", "channel": "api", "org": "https://max1.my.salesforce.com", "module": "clm", "lastUpdateTime": 1610089483217 } iSearchDisplayInfo: type: array items: $ref: '#/components/schemas/iSearchDisplayColumn' iSearchDisplayColumn: type: object properties: label: type: string description: Display label type: type: string description: Column type field: type: string description: Display column field stringItems: type: array items: type: string example: ["Item1", "Item2"] keywordList: type: array items: type: string example: ["Force Majeure", "Tax Credits"] snippetExtractionChunkInfo: type: object properties: doc: $ref: '#/components/schemas/chunkInfo' options: $ref: '#/components/schemas/snippetOptions' keywordMap: $ref: '#/components/schemas/keywordMap' snippetExtractionInfo: type: object properties: doc: $ref: '#/components/schemas/docInfo' options: $ref: '#/components/schemas/snippetOptions' keywordMap: $ref: '#/components/schemas/keywordMap' snippetExtractionInfo2: type: object properties: options: $ref: '#/components/schemas/snippetOptions' keywordMap: $ref: '#/components/schemas/keywordMap' docInfo: type: object format: string description: Document metadata properties: id: type: string description: Identifier example: 0684T000003rao4QAA url: type: string description: Full URL or relative path to the document download URL example: /services/data/v47.0/sobjects/ContentVersion/0684T000003rao4QAA/VersionData type: type: string description: SFDC object type title: type: string description: Doc title format: type: string description: "Doc format; for example: doc, docx, pdf, rtf." size: type: number description: Document size example: { "id": "0684T000003rao4QAA", "url": "/services/data/v47.0/sobjects/ContentVersion/0684T000003rao4QAA/VersionData", "title": "TC_2349-KIRA Extraction- Term (In Years).docx", "type": "ContentDocument", "format": "docx", "size": 2397 } ocrDocInfo: type: object format: string description: Document metadata properties: id: type: string description: Identifier example: 0684T000003rao4QAA url: type: string description: Full URL or relative path to the document download URL example: /services/data/v47.0/sobjects/ContentVersion/0684T000003rao4QAA/VersionData type: type: string description: SFDC object type title: type: string description: Doc title format: type: string description: "Doc format; for example: doc, docx, pdf, rtf" size: type: number description: Document size example: { "id": "0684T0000084vwoQAA", "url": "/services/data/v47.0/sobjects/ContentVersion/0684T0000084vwoQAA/VersionData", "title": "ABC-MSA-Scanned.pdf", "type": "ContentDocument", "format": "pdf", "size": 2397, "options": { "ocrOnly": false, "startPage": 1 } } chunkInfo: type: object format: string description: Document metadata properties: id: type: string description: Identifier example: 0684T000003rao4QAA chunks: type: array items: $ref: '#/components/schemas/chunkItemInfo' type: type: string description: SFDC object type title: type: string description: Doc title format: type: string description: "Doc format; for example: doc, docx, pdf, rtf" size: type: number description: Document size example: { "id": "0684T000003rao4QAA", "title": "TC_2349-KIRA Extraction- Term (In Years).pdf", "type": "ContentDocument", "format": "pdf", "size": 3111459473, "chunks": [ { "chunkId": 9, "url": "/services/data/v47.0/sobjects/ContentVersion/0684T000003tNlHQAU/VersionData" }, { "chunkId": 14, "url": "/services/data/v47.0/sobjects/ContentVersion/0684T000003tEp1QAE/VersionData" } ] } chunkItemInfo: type: object format: string properties: chunkId: type: integer description: Chunk ID example: 1 url: type: string description: Relative or absolute URL of the chunk document example: /services/data/v47.0/sobjects/ContentVersion/0684T000003rao4QAC/VersionData snippetResponseForText: type: object description: Snippet response wrapper properties: object: type: string description: Object ID corresponding to the text example: 0684T000003rao4QAA type: type: string description: Text blob type example: text snippets: $ref: '#/components/schemas/snippetResponseList' example: { "objectId": "a0L4T000000ToMAUA0", "type": "text", "snippets": [ { "snippet": "olding agent shall provide reasonable cooperation to the Company in claiming any corresponding U.S. tax credits, including without limitation by providing to Company the withholding tax certificate is", "keywords": [ { "className": "Tax credits", "searchWord": "Tax credits", "synonymMatch": "Tax credits", "startIndex": 100, "endIndex": 110 } ], "page": 1, "snippetStartIndex": 250, "snippetEndIndex": 450, "size": 200, "label": "Text" } ] } snippetResponseWrapper: type: object description: Snippet response wrapper properties: url: type: string description: Full URL or relative path to the document download URL example: /services/data/v47.0/sobjects/ContentVersion/0684T000003rao4QAA/VersionData type: type: string description: "File format type; for example: pdf, docx" example: pdf name: type: string description: Document name example: Intelligent-Import-Demo.pdf snippets: $ref: '#/components/schemas/snippetResponseList' snippetChunkResponseWrapper: type: object description: Snippet response wrapper properties: url: type: string description: Full URL or relative path to the document download URL example: /services/data/v47.0/sobjects/ContentVersion/0684T000003rao4QAA/VersionData type: type: string description: "File format; for example: pdf, docx" example: pdf name: type: string description: Document name example: Intelligent-Import-Demo.pdf snippets: $ref: '#/components/schemas/snippetChunkResponseList' snippetResponseList: type: array description: List of snippets items: $ref: '#/components/schemas/snippetResponse' example: { "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003rao4QAA/VersionData", "name": "TC_2349-KIRA Extraction- Term (In Years).docx", "type": "docx", "summary": { "stats": { "term": 3, "Act of God": 1, "liable": 1 }, "preferredSnippet": { "snippet": "[pp: 2] ...e Million United States Dollars). \r\nThe Term of this Agreement shall be for an initi...\r\n[pp: 2] ement relates, whether by merger, sale of assets, sale of stock, reorganization or otherwise. \r\nForce Majeure. Neither party shall be liable to the other party for its failure to perform any of i", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "synonymSearch": false, "startIndex": 51, "endIndex": 55 }, { "className": "Force majeure", "searchWord": "Act of God", "synonymMatch": "force majeure", "synonymSearch": true, "startIndex": 208, "endIndex": 221 }, { "className": "liable", "searchWord": "liable", "synonymMatch": "liable", "synonymSearch": false, "startIndex": 247, "endIndex": 253 } ], "page": [ 2 ], "snippetStartIndex": 1669, "snippetEndIndex": 3734, "size": 308, "uniqueKeywordMatch": 3, "snippetIndex": [ 0, 100 ], "formattedSnippet": "<b>[pp: 2]</b>...e Million United States Dollars). \r\nThe <mark>Term</mark> of this Agreement shall be for an initi...\r\n<b>[pp: 2]</b>ement relates, whether by merger, sale of assets, sale of stock, reorganization or otherwise. \r\n<mark>Force Majeure</mark>. Neither party shall be <mark>liable</mark> to the other party for its failure to perform any of i" } }, "snippets": [ { "snippet": "Service giving rise to such claim, or (b) USD $1,000,000 (One Million United States Dollars). \r\nThe Term of this Agreement shall be for an initial period of three (3) years after the Effective Date of", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "synonymSearch": false, "startIndex": 100, "endIndex": 104 } ], "page": 2, "snippetStartIndex": 1669, "snippetEndIndex": 1869, "size": 200, "formattedSnippet": "Service giving rise to such claim, or (b) USD $1,000,000 (One Million United States Dollars). \r\nThe <mark>Term</mark> of this Agreement shall be for an initial period of three (3) years after the Effective Date of" }, { "snippet": "ll have given notice of termination of this Agreement sixty (60) days before the end of the initial term or any renewal term, or unless otherwise terminated in accordance with this Agreement.\r\nTermina", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "synonymSearch": false, "startIndex": 100, "endIndex": 104 }, { "className": "term", "searchWord": "term", "synonymMatch": "term", "synonymSearch": false, "startIndex": 120, "endIndex": 124 } ], "page": 2, "snippetStartIndex": 1985, "snippetEndIndex": 2185, "size": 200, "formattedSnippet": "ll have given notice of termination of this Agreement sixty (60) days before the end of the initial <mark>term</mark> or any renewal <mark>term</mark>, or unless otherwise terminated in accordance with this Agreement.\r\nTermina" }, { "snippet": "ement relates, whether by merger, sale of assets, sale of stock, reorganization or otherwise. \r\nForce Majeure. Neither party shall be liable to the other party for its failure to perform any of i", "keywords": [ { "className": "Force majeure", "searchWord": "Act of God", "synonymMatch": "force majeure", "synonymSearch": true, "startIndex": 100, "endIndex": 113 }, { "className": "liable", "searchWord": "liable", "synonymMatch": "liable", "synonymSearch": false, "startIndex": 139, "endIndex": 145 } ], "page": 2, "snippetStartIndex": 3534, "snippetEndIndex": 3734, "size": 200, "formattedSnippet": "ement relates, whether by merger, sale of assets, sale of stock, reorganization or otherwise. \r\n<mark>Force Majeure</mark>. Neither party shall be <mark>liable</mark> to the other party for its failure to perform any of i" } ] } snippetChunkResponseList: type: array description: List of snippets items: $ref: '#/components/schemas/snippetResponse' example: { "url": "test.pdf", "name": "test.pdf", "type": "pdf", "summary": { "stats": { "term": 10 }, "preferredSnippet": { "snippet": "porated into, and part of this Agreement. In the event of any conflict or inconsistency between the\nterms of the Professional Services Agreement and any Statement of Work the terms of the Statement of", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 100, "endIndex": 104 }, { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 175, "endIndex": 179 } ], "page": 3, "snippetStartIndex": 997, "snippetEndIndex": 1197, "size": 200, "chunk": { "chunkId": 9, "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003tNlHQAU/VersionData", "type": "pdf", "size": 722160 }, "uniqueKeywordMatch": 1 } }, "snippets": [ { "snippet": " 2/25/2021\n\nEnd Date 2/26/2022\n\n\nSchedule of Rates\n\n\nPayment Terms\n\nPhase Completion Date Pay", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 100, "endIndex": 104 } ], "page": 2, "snippetStartIndex": 184, "snippetEndIndex": 384, "size": 200, "chunk": { "chunkId": 9, "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003tNlHQAU/VersionData", "type": "pdf", "size": 722160 }, "uniqueKeywordMatch": 1 }, { "snippet": "porated into, and part of this Agreement. In the event of any conflict or inconsistency between the\nterms of the Professional Services Agreement and any Statement of Work the terms of the Statement of", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 100, "endIndex": 104 }, { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 175, "endIndex": 179 } ], "page": 3, "snippetStartIndex": 997, "snippetEndIndex": 1197, "size": 200, "chunk": { "chunkId": 9, "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003tNlHQAU/VersionData", "type": "pdf", "size": 722160 }, "uniqueKeywordMatch": 1 }, { "snippet": "l continue until the completion of the Services described in such Statement of Work, unless earlier\nterminated in accordance with this Agreement.\n\n2.2 Tier1 Systems warrants that they will have and wi", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 100, "endIndex": 104 } ], "page": 3, "snippetStartIndex": 1431, "snippetEndIndex": 1631, "size": 200, "chunk": { "chunkId": 9, "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003tNlHQAU/VersionData", "type": "pdf", "size": 722160 } }, { "snippet": "Acceptance and Authorization\n\nThe terms and conditions of the Professional Services Agreement apply in full to the services and\nproduc", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 34, "endIndex": 38 } ], "page": 6, "snippetStartIndex": 0, "snippetEndIndex": 134, "size": 134, "chunk": { "chunkId": 9, "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003tNlHQAU/VersionData", "type": "pdf", "size": 722160 } }, { "snippet": "isclosure, are designated as\n“Confidential” or “Proprietary” in writing to the receiving 5. Term. The Term of this Agreement commences on\nParty. Information contained in any RFP document shall", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 100, "endIndex": 104 }, { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 110, "endIndex": 114 } ], "page": 1, "snippetStartIndex": 2663, "snippetEndIndex": 2863, "size": 200, "chunk": { "chunkId": 14, "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003tEp1QAE/VersionData", "type": "pdf", "size": 627608 } }, { "snippet": "ng the foregoing, either Party may\nParty only for purpose of legal reasons. terminate this Agreement upon thirty (30) days written\n ", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 100, "endIndex": 104 } ], "page": 1, "snippetStartIndex": 3137, "snippetEndIndex": 3337, "size": 200, "chunk": { "chunkId": 14, "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003tEp1QAE/VersionData", "type": "pdf", "size": 627608 } }, { "snippet": " notice to the other Party, but such termination shall not\n2. Exceptions. The following shall not be “Confidential relieve the P", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 100, "endIndex": 104 } ], "page": 1, "snippetStartIndex": 3293, "snippetEndIndex": 3493, "size": 200, "chunk": { "chunkId": 14, "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003tEp1QAE/VersionData", "type": "pdf", "size": 627608 } }, { "snippet": " any patent, trademark, mask work, copyright, or other\n3. Obligations. (a) During the Term of this Agreement proprietary right under this Agreement. This Agreement\nor while this", "keywords": [ { "className": "term", "searchWord": "term", "synonymMatch": "term", "startIndex": 100, "endIndex": 104 } ], "page": 1, "snippetStartIndex": 4724, "snippetEndIndex": 4924, "size": 200, "chunk": { "chunkId": 14, "url": "https://max1.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0684T000003tEp1QAE/VersionData", "type": "pdf", "size": 627608 } } ] } snippetResponse: type: object description: Single snippet properties: snippet: type: string description: Text snippet page: type: number description: Page number keywords: type: array items: type: string example: { "snippet": "The Force of Nature clause: .....", "keywords": [{ "className": "Force Majeure", "searchWord": "Act of God", "synonymMatch": "Force of Nature" }], "page": 2, "startIndex": 21, "endIndex": 221, "size": 201 } snippetOptions: type: object description: Snippet extraction options properties: snippetWindowSize: type: integer description: Snippet size extracted (min = 200) default: 200 maxSnippetsInSearch: type: integer description: Maximum number of snippets to be extracted from a document default: 30 matchWholeWordsOnly: type: boolean description: If true, only whole words are matched. default: true snippetMatchIgnoreCase: type: boolean description: Ignore case for snippet matching. default: true enableSynonymSearch: type: boolean description: If true, search synonyms of keywords. default: false startSnippetMatchAtPage: type: integer description: The page number to start matching from (zero-based index). Use -1 to start from the last page, -2 to start from the second-to-last last, and so forth. default: 0 endSnippetMatchAtPage: type: integer description: The page number to end matching (zero-based index). Use -1 to end at the last page, -2 to end at the second-to-last, and so forth. default: -1 preferWholeWordsMatch: type: boolean description: If true, whole-word matching is tried first (if matchWholeWordsOnly=true), failing which, a partial match is performed. default: true preferredSnippetLinebreak: type: string description: Insert this pattern between consolidated preferred snippets. example: \\r\\n or <br> default: "" preferredSnippetInsertPage: type: boolean description: If true, insert a page number before each consolidated snippet. default: true module: type: string description: Module to search, such as `clm`, `cpq`, `qtc` etc. default: "clm" example: { "snippetWindowSize": 200, "maxSnippetsInSearch": 10, "matchWholeWordsOnly": true, "startSnippetMatchAtPage": 0, "endSnippetMatchAtPage": -1, "enableSynonymSearch": false, "snippetMatchIgnoreCase": true, "module": "clm" } ocrOptions: type: object description: OCR options properties: ocrOnly: type: boolean description: If true, raw OCR JSON is returned. Else, searchable PDF is returned. default: false startPage: type: integer description: Page number where OCR must start. Valid range [-lastPage to lastPage]. startPage = -n => startPage is <i>n</i>th from last default: 1 endPage: type: integer description: Page number where OCR must end. Valid range [1 to lastPage]. If unspecified, it is the last page. default: undefined example: { "ocrOnly": false, "startPage": 1 } spellcheckPhraseList: type: object items: type: string example: { "fuzzyMatch": true, "result": [ { "phrase": "contracts over $20k that mention Force majeure", "matchHint": [ { "word": "contracts", "dictionary": "entityDictionary" }, { "word": "over", "dictionary": "entityDictionary" }, { "word": "$20k", "dictionary": "none" }, { "word": "that", "dictionary": "iChronosDictionary" }, { "word": "mention", "dictionary": "entityDictionary" }, { "word": "Force", "dictionary": "synonymDictionary" }, { "word": "majeure", "dictionary": "synonymDictionary" } ], "confidence": 0.85 }, { "phrase": "contacts over $20k that mention Force majeure", "matchHint": [ { "word": "contacts", "dictionary": "entityDictionary" }, { "word": "over", "dictionary": "entityDictionary" }, { "word": "$20k", "dictionary": "none" }, { "word": "that", "dictionary": "iChronosDictionary" }, { "word": "mention", "dictionary": "entityDictionary" }, { "word": "Force", "dictionary": "synonymDictionary" }, { "word": "majeure", "dictionary": "synonymDictionary" } ], "confidence": 0.85 }, { "phrase": "contract over $20k that mention Force majeure", "matchHint": [ { "word": "contract", "dictionary": "entityDictionary" }, { "word": "over", "dictionary": "entityDictionary" }, { "word": "$20k", "dictionary": "none" }, { "word": "that", "dictionary": "iChronosDictionary" }, { "word": "mention", "dictionary": "entityDictionary" }, { "word": "Force", "dictionary": "synonymDictionary" }, { "word": "majeure", "dictionary": "synonymDictionary" } ], "confidence": 0.85 }, { "phrase": "contracts over $20k that mention Force mature", "matchHint": [ { "word": "contracts", "dictionary": "entityDictionary" }, { "word": "over", "dictionary": "entityDictionary" }, { "word": "$20k", "dictionary": "none" }, { "word": "that", "dictionary": "iChronosDictionary" }, { "word": "mention", "dictionary": "entityDictionary" }, { "word": "Force", "dictionary": "synonymDictionary" }, { "word": "mature", "dictionary": "languageDictionary" } ], "confidence": 0.78 }, { "phrase": "contacts over $20k that mention Force mature", "matchHint": [ { "word": "contacts", "dictionary": "entityDictionary" }, { "word": "over", "dictionary": "entityDictionary" }, { "word": "$20k", "dictionary": "none" }, { "word": "that", "dictionary": "iChronosDictionary" }, { "word": "mention", "dictionary": "entityDictionary" }, { "word": "Force", "dictionary": "synonymDictionary" }, { "word": "mature", "dictionary": "languageDictionary" } ], "confidence": 0.78 } ] } matchingPhraseList: type: array items: type: object example: [ { "objectId": "account", "text": "Are there any accounts in California?", "phrase": "Are there any", "matchingWordCount": 3 }, { "objectId": "contact", "text": "Are there any contacts in California?", "phrase": "Are there any", "matchingWordCount": 3 }, { "objectId": "contact", "text": "Are there any contacts in California for quotes over $20k?", "phrase": "Are there any", "matchingWordCount": 3 } ] searchResultEmail: type: object properties: subject: type: string description: Email subject body: type: string description: Base64 encoding of email body in HTML example: { "subject": "Acme NDA 2020 Report", "body": "PGRpdiBpZD0iYm9keSI+...Q+MjAyMC0wOC0wNVQyMzoyOTo1Mi4wMDArMDAwMDwvdGQ+ICAgICAgPC90cj4gIDwvdGFibGU+PC9kaXY+PC9kaXY+PC9kaXY+" } jobStatusResponse: type: object properties: status: type: string description: Job status enum: ["started", "completed"] example: { "status": "completed" } docSupportInfo: type: array items: type: object example: { "pdf": { "contentType": "application/pdf", "snippetSupported": true, "conversionSupported": [ "text" ], "reportSupported": true }, "docx": { "contentType": "application/vnd.openxmlformats-officedocument", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": false }, "doc": { "contentType": "application/msword", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": false }, "text": { "contentType": "text/plain", "snippetSupported": true, "conversionSupported": [ "text" ], "reportSupported": false }, "rtf": { "contentType": "text/plain", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": false }, "csv": { "contentType": "application/csv", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": false }, "xls": { "contentType": "application/vnd.ms-excel", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": false }, "xlsx": { "contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": true }, "ppt": { "contentType": "application/vnd.ms-powerpoint", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": false }, "pptx": { "contentType": "application/vnd.openxmlformats-officedocument.presentationml.presentation", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": false }, "html": { "contentType": "text/html", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": true }, "default": { "contentType": "application/octet-stream", "snippetSupported": true, "conversionSupported": [ "pdf", "html", "text" ], "reportSupported": false } } securitySchemes: BearerAuth: type: apiKey name: Authorization in: header APIKeyAuth: type: apiKey name: X-API-Key in: header