PDF
Download PDF
Download page Conga IDD REST APIs.
Conga IDD REST APIs
openapi: 3.0.0
info:
title: The Conga IDD REST API Documentation
description: Welcome to the IDD REST API Documention. To explore the REST API,
you need a 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://IDD_URL/idd/api/v1
description: IDD API
tags:
- name: Config Discovery and Management
description: Provider and Mapping
- name: Document Analysis
description: Intelligent Import
paths:
/{tenantId}/config/registerprovider:
post:
tags:
- Config Discovery and Management
summary: Register Provider
description: Saves provider details in IDD. provider, providerSpecifics.version, providerUrl and kira token (passed as bearer token) are used by other APIs by dipping into the IDD cache/DB.
operationId: registerprovider
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: Instance url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
requestBody:
$ref: '#/components/requestBodies/registerProvider'
responses:
"200":
description: OK
"400":
description: Bad Request
"404":
description: Server Not Found
"500":
description: Internal Server Error
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/config/retrieveprovider:
get:
tags:
- Config Discovery and Management
summary: Retrieve Provider
description: Fetches the saved provider details from IDD. Uses tenantId, instanceurl and proovider as query to fetch the provider from IDD cache/DB.
operationId: retrieveprovider
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: Instance url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: providername
in: query
description: Name of provider
required: false
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
content:
application/json:
schema:
type: object
x-content-type: application/json
$ref: '#/components/schemas/storedProviderInfo'
"400":
description: Invalid tenantId supplied
"404":
description: Tenant not found
security:
- APIKeyAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/config/provider:
delete:
tags:
- Config Discovery and Management
summary: Delete Provider
description: Deletes the saved provider details from IDD. Uses tenantId, instanceurl and proovider as query to fetch the provider from IDD cache/DB.
operationId: deleteprovider
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: Instance url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: providername
in: query
description: Name of provider
required: false
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
"400":
description: Missing parameter
"500":
description: Invalid request
security:
- APIKeyAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/config/testconnection:
post:
tags:
- Config Discovery and Management
summary: Test Connection to Kira
description: Pings kira to check kira url provided by the user. Requires kira Token to be sent as bearer token.
operationId: testconnection
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: Instance url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: kiraurl
in: query
description: kira url
required: true
style: form
explode: false
schema:
type: string
example: https://ca.app.kirasystems.com/platform-api/
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
requestBody:
$ref: '#/components/requestBodies/registerProvider'
responses:
"200":
description: OK
"400":
description: Bad Request
"404":
description: Server Not Found
"500":
description: Internal Server Error
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/config/syncprovisions:
get:
tags:
- Config Discovery and Management
summary: Sync Provisions from Kira
description: Fetches kira token, url and version using retrieveProvider API. Makes a call to kira to get the latest kira provisions and stores as hashmap in IDD. If provision mapping array exists in the IDD, it is restored to the same kira field id as a part of the new set of kira provisions.
operationId: syncprovisions
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: instance url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/provisions'
"400":
description: Invalid tenantId supplied
"404":
description: Tenant not found
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/config/getprovisions:
get:
tags:
- Config Discovery and Management
summary: Get Provisions to Add
description: gets all kira provisions from IDD with mappings from projects
operationId: getprovisions
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: instance url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: provider
in: query
description: provider
required: true
style: form
explode: false
schema:
type: string
example: kira
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/getProvisions'
"400":
description: Invalid tenantId supplied
"404":
description: Tenant not found
security:
- APIKeyAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/config/createprovisionmap:
post:
tags:
- Config Discovery and Management
summary: Create Provision Map
description: Creates provision map in provision maps table within IDD using the details given by user. The table contains unique recordtypes, tenant and instanceurl. Makes kira API call to get the project_id from the given project_name. Another kira api call creates the template_id and adds field ids provided by the user into kira. A project, default worksheet with fields are created in kira. If syncProvisions is enabled then field mappings from syncProvisionIds is also added into the kira provisions table in IDD.
operationId: createprovisionmap
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: instance Url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
requestBody:
$ref: '#/components/requestBodies/createProvisionMap'
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/provisionMapResult'
"400":
description: Invalid tenantId supplied
"403":
description: Project access denied (if project_id was input)
"404":
description: Tenant not found or project does not exist (if project_id was input)
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/config/getprovisionmap:
get:
tags:
- Config Discovery and Management
summary: Get Provision Map
description: Gets provision map from provision maps table within IDD using the recordtype given by user.
operationId: getprovisionmap
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: instance Url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: recordtype
in: query
description: Record Type
required: true
style: form
explode: false
schema:
type: string
example: NDA
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/getProvisionMap'
"400":
description: Invalid tenantId supplied
"404":
description: Tenant not found
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/config/editprovisionmap:
post:
tags:
- Config Discovery and Management
summary: Edit Provision Map
description: Edits provision map from provision maps table within IDD using the details given by user. Fetches privder details from retrieve provider api. Fetches provision map details from get provision map api call. Makes kira API call to update the project_name from the given project_id (fetched from IDD). Another kira api call updates the field ids associated with the given template_id. If syncProvisions is enabled then field mappings from syncProvisionIds is also edited within the kira provisions table in IDD.
operationId: editprovisionmap
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: instance url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: recordtype
in: query
description: Record Type
required: true
style: form
explode: false
schema:
type: string
example: NDA
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
requestBody:
required: true
$ref: '#/components/requestBodies/editProvisionMap'
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/provisionMapResult'
"400":
description: Invalid Request Params
"404":
description: Record Not Found
"500":
description: Internal Server Error
security:
- APIKeyAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/config/deleteprovisionmap:
delete:
tags:
- Config Discovery and Management
summary: Delete Provision Map
description: Deletes provision map in the provisions table within IDD. Fetches provider details using retreive provider api. Fetches provision map info using get provision map api. Makes a kira call to delete the project from the project_id (fetched via the api).
operationId: deleteprovisionmap
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
example: apttussfdc
- name: instanceurl
in: query
description: instance url
required: true
style: form
explode: false
schema:
type: string
example: https://www.conga.com
- name: recordtype
in: query
description: Record Type
required: true
style: form
explode: false
schema:
type: string
example: NDA
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
- name: deleteflow
in: query
description: Delete Flow
required: true
style: form
explode: false
schema:
type: string
example: default/complete
responses:
"200":
description: OK
"400":
description: Invalid params
"404":
description: Project not found
"500":
description: Internal Server Error
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: ConfigDiscoveryAndManagement
/{tenantId}/analyze/uploadinfo:
get:
tags:
- Document Analysis
summary: Get the information to make an upload request
description: Retrieves the request details needed to make an upload directly to the provider. This is used primarily for small files.
operationId: uploadinfoGet
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: recordtype
in: query
description: Record type
required: true
style: form
explode: false
schema:
type: string
- name: instanceurl
in: query
description: Instance URL
required: true
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/uploadInfoResult'
"500":
description: Unable to retrieve data
security:
- APIKeyAuth: []
x-swagger-router-controller: DocumentAnalysis
post:
tags:
- Document Analysis
summary: Send provider's upload information (job id/document id) or send file information for IDD to do the upload
description: "<p>Collects job/document information if an upload is done manually. Or, will do the upload internally.<br><i>See the types of inputs in the request body description.</i></p><p>For requests with automatic notification enabled (i.e., notificationInfo object is included in request), then in the notification, the request body will look like the below:<UL><LI>status: complete,<LI>responseBody:<UL><LI>is_extracted: true,<LI>language: English,<LI>scan_quality: A,<LI>is_scanned: true,<LI>page_count: 10,<LI>error_code: 0,<LI>jobId: 412455,<LI>documentId: 86453,<LI>projectId: 625</UL></UL></p>"
operationId: uploadinfoPost
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: resumable
in: query
description: Set to 'true' if you want to upload documents using the resumable API
required: false
style: form
explode: false
schema:
type: string
example: false
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
requestBody:
$ref: '#/components/requestBodies/uploadInfoRequest'
responses:
"200":
description: OK <p>The information was received (when request body is of type uploadJobInfo or uploadJobInfoWithNotification). Or, if the request body is of type uploadDocumentInfo, then the file was downloaded successfully and automatic polling has begun.</p>
"500":
description: Invalid request
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: DocumentAnalysis
/{tenantId}/analyze/status:
get:
tags:
- Document Analysis
summary: Job status information
description: Retrieves the job status from the provider.
operationId: status
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: jobid
in: query
description: Job ID
required: true
style: form
explode: false
schema:
type: string
- name: documentid
in: query
description: Document ID
required: true
style: form
explode: false
schema:
type: string
- name: context
in: query
description: Stringified form of JSON representing the context from IDD
required: true
schema:
type: string
explode: true
example:
{
"recordType": "NDA",
"projectId": "557",
"instanceUrl": "https://www.conga.com"
}
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: In progress
content:
application/json:
schema:
$ref: '#/components/schemas/jobStatusInProgress'
"303":
description: Complete
content:
application/json:
schema:
$ref: '#/components/schemas/jobStatusComplete'
"403":
description: Job access denied
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeJobDeniedError'
"404":
description: Job does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeJobDoesNotExistError'
"410":
description: Job information unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeJobUnavailableError'
"500":
description: Internal error
security:
- APIKeyAuth: []
x-swagger-router-controller: DocumentAnalysis
post:
tags:
- Document Analysis
summary: Job status information with automatic notification upon completion
description: "<p>Retrieves the status information for the job/document given.</p><p>For requests with automatic notification enabled (i.e., notificationInfo object is included in request), then in the notification, the request body will look like the below:<UL><LI>status: complete,<LI>responseBody:<UL><LI>is_successful: true,<LI>redirect_href: https://ca.app.kirasystems.com/platform-api/v1/downloads/3625/files,<LI>downloadId: '3625'<LI>job_id: '1928'<LI>document_id: '83920'</UL></UL><br><i>Note that downloadId is only included if the job was an export.</i></p>"
operationId: statuspost
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: jobid
in: query
description: Job ID
required: true
style: form
explode: false
schema:
type: string
- name: documentid
in: query
description: Document ID
required: true
style: form
explode: false
schema:
type: string
- name: context
in: query
description: Stringified form of JSON representing the context from IDD
required: true
schema:
type: string
explode: true
example:
{
"recordType": "NDA",
"projectId": "557",
"instanceUrl": "https://www.conga.com"
}
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
requestBody:
$ref: '#/components/requestBodies/notificationInfoRequest'
responses:
"200":
description: In progress
content:
application/json:
schema:
$ref: '#/components/schemas/jobStatusInProgress'
"303":
description: Complete
content:
application/json:
schema:
$ref: '#/components/schemas/jobStatusComplete'
"403":
description: Job access denied
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeJobDeniedError'
"404":
description: Job does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeJobDoesNotExistError'
"410":
description: Job information unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeJobUnavailableError'
"500":
description: Internal error
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: Document Analysis
/{tenantId}/analyze/docstatus:
get:
tags:
- Document Analysis
summary: Document status information
description: Retrieves the current status of the document.
operationId: docstatus
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: documentid
in: query
description: Document ID
required: true
style: form
explode: false
schema:
type: string
- name: context
in: query
description: Stringified form of JSON representing the context from IDD
required: true
schema:
type: string
explode: true
example:
{
"recordType": "NDA",
"projectId": "557",
"instanceUrl": "https://www.conga.com"
}
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: Status of document
content:
application/json:
schema:
$ref: '#/components/schemas/documentStatus'
"403":
description: Document access denied
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeDocDeniedError'
"404":
description: Document does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeDocDoesNotExistError'
"500":
description: Internal error
security:
- APIKeyAuth: []
x-swagger-router-controller: Document Analysis
post:
tags:
- Document Analysis
summary: Document status information with automatic notification upon completion
description: "<p>Displays the status information for the document provided.</p><p>For requests with automatic notification enabled (i.e., notificationInfo object is included in request), then in the notification, the request body will look like the below:<UL><LI>status: complete,<LI>responseBody:<UL><LI>is_extracted: true,<LI>language: English,<LI>scan_quality: A,<LI>is_scanned: true,<LI>page_count: 10,<LI>error_code: 0,<LI>job_id: 412455,<LI>document_id: 86453,<LI>projectId: 625</UL></UL></p>"
operationId: docstatuspost
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: documentid
in: query
description: Document ID
required: true
style: form
explode: false
schema:
type: string
- name: context
in: query
description: Stringified form of JSON representing the context from IDD
required: true
schema:
type: string
explode: true
example:
{
"recordType": "NDA",
"projectId": "557",
"instanceUrl": "https://www.conga.com"
}
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
requestBody:
$ref: '#/components/requestBodies/notificationInfoRequest'
responses:
"200":
description: Status of document
content:
application/json:
schema:
$ref: '#/components/schemas/documentStatus'
"403":
description: Document access denied
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeDocDeniedError'
"404":
description: Document does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/analyzeDocDoesNotExistError'
"500":
description: Internal error
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: Document Analysis
/{tenantId}/analyze/docinfo:
get:
tags:
- Document Analysis
summary: Get extracted provisions
description: Retrieves the extracted information from the provider, along with mapped fields and templates.
operationId: docinfo
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: documentid
in: query
description: Document ID
required: true
style: form
explode: false
schema:
type: string
- name: instanceurl
in: query
description: Instance URL
required: true
style: form
explode: false
schema:
type: string
- name: recordtype
in: query
description: Record Type
required: true
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/extractedFileInfo'
"500":
description: Internal error
security:
- APIKeyAuth: []
x-swagger-router-controller: Document Analysis
/{tenantId}/analyze/normalizephrase:
get:
tags:
- Document Analysis
summary: Extracts date, currency, and numbers from natural language text.
description: Extracts date, currency, and numbers from natural language text. This API accepts Tenant Name, Input Phrase, and Time Zone as input parameters and returns date, currency, and time as output, with options to modify the date format of the output. For example,
<UL>
<LI><B>Input:</B> <P><I>The Acme agreement is expected to start on the first Monday of 2021 and end two years since then and it is valued at Fifty Thousand Dollars payable within the first 3 months of next year.</I>
<LI><B>Output:</B>
<OL>
<LI>first Monday of 2021 = 2021-01-04
<LI>two years since then = 2023-01-04
<LI>Fifty Thousand Dollars = USD 50000
<LI>the first 3 months of next year = 2021-01-01 to 2021-03-31
</OL>
</UL>
operationId: ichronosResolvePhrase
parameters:
- name: tenantId
in: path
description: Tenant name Eg. 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: Timezone [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
required: false
schema:
type: string
example:
{
"objectName": "Apttus__APTS_Agreement__c",
"fullNLUResult": false,
"format": "mm-dd-yyyy"
}
- name: instanceurl
in: query
description: Instance URL
required: true
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/entityResponseList'
security:
- APIKeyAuth: []
/{tenantId}/analyze/normalizetemplate:
get:
tags:
- Document Analysis
summary: Extracts date and time parameters from natural language queries containing variables or templates.
description: Extracts date and time parameters from natural language queries containing variables or templates. This API accepts Tenant Name, Template Phrase, Time Zone, Data Map and Options as input parameters. For example, <B><I>if you provide input query as 6 weeks from contract start date and specify the contract start date as 1/1/2021 under Data Map field, it returns the output as 2/12/2021. </B></I> This API works in combination with resolvephrase API.
operationId: ichronosResolveTemplate
parameters:
- name: tenantId
in: path
description: Tenant name Eg. 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: Timezone [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
required: false
schema:
type: string
example:
{
"objectName": "Apttus__APTS_Agreement__c",
"fullNLUResult": false,
"format": "mm-dd-yyyy"
}
- name: instanceurl
in: query
description: Instance URL
required: true
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/entityResponseList'
security:
- APIKeyAuth: []
/{tenantId}/analyze/feedback:
post:
tags:
- Document Analysis
summary: Logs app level feedback event on prior resolution
description: Logs app level feedback event on prior resolution. This API can be used by a client application to log analytics events that will help us understand how iChronos resolutions are performing. The API accepts Tenant Name, Prior API Response, along with the application level resolved value and the actual user specified correct value as input parameters.
operationId: ichronosFeedback
parameters:
- name: tenantId
in: path
description: Tenant name Eg. apttussfdc or max
required: true
style: simple
explode: false
schema:
type: string
example:
apttussfdc
- name: phrase
in: query
description: Input phrase that was 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 as is by the user. If true, user accepted as is. Else it should be set to false.
required: true
style: form
explode: true
schema:
type: boolean
example:
"true"
- name: resolvedValue
in: query
description: Stringified JSON or just string describing how app resolved the value
required: true
style: form
explode: true
schema:
type: string
example:
"36"
- name: correctValue
in: query
description: Stringified JSON or just string describing how 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. You need to pass in the context parameter with the below properties
<UL>
<LI>instanceUrl to identify the SFDC org originating the request.
<LI>userId SFDC userId identifying the user.
<LI>userName SFDC user name identifying the user.
<LI>requestId indicating the x-request-id returned by the original iChronos request for which feedback is provided
<LI>field such as Apttus__Contract_Start_Date__c for which the feedback is provided
<LI>sessionId a unique Id identifying a set of iChronos resolutions for a single user session (e.g., If start date, end date & term are resolved for a single user document, this could be set to the documentId)
</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"
}
}
- name: instanceurl
in: query
description: Instance URL
required: true
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
security:
- APIKeyAuth: []
/{tenantId}/analyze/export:
post:
tags:
- Document Analysis
summary: Send a request to start exporting the document and get an automatic notification once job is complete
description: "<p>Exports a document based on the settings given in the <i>payload</i> object of the request body.<br></p><p>For requests with automatic notification enabled (i.e., notificationInfo object is included in request), then in the notification, the request body will look like the below:<UL><LI>status: complete,<LI>responseBody:<UL><LI>is_successful: true,<LI>redirect_href: https://ca.app.kirasystems.com/platform-api/v1/downloads/3625/files,<LI>downloadId: 3625</UL></UL></p>"
operationId: exportPost
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: documentid
in: query
description: Document ID
required: true
style: form
explode: false
schema:
type: string
- name: format
in: query
description: File format
required: true
style: form
schema:
enum: [pdf, word, excel]
- name: instanceurl
in: query
description: Instance URL
required: true
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
requestBody:
$ref: '#/components/requestBodies/exportRequest'
responses:
"202":
description: Returns job ID and document ID and automatic polling of the job status will begin
content:
application/json:
schema:
$ref: '#/components/schemas/exportInfoResult'
"400":
description: Unsupported arguments
content:
application/json:
schema:
$ref: '#/components/schemas/exportUnsupportedArgumentsError'
"403":
description: Document, project, or field access denied
content:
application/json:
schema:
$ref: '#/components/schemas/exportAccessDeniedError'
"404":
description: Document does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/exportDocDoesNotExistError'
"503":
description: Service unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/exportServiceUnavailableError'
"500":
description: Internal error
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: Document Analysis
/{tenantId}/analyze/downloadinfo:
get:
tags:
- Document Analysis
summary: Retrieve info to download the document
description: Retrieves the information needed to download the file directly from the provider. This is used primarily for small files.
operationId: downloadinfo
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: downloadid
in: query
description: Download ID
required: true
style: form
explode: false
schema:
type: string
- name: instanceurl
in: query
description: Instance URL
required: true
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/downloadResult'
"403":
description: Download access denied
content:
application/json:
schema:
$ref: '#/components/schemas/downloadAccessDeniedError'
"404":
description: Download does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/downloadDoesNotExistError'
"500":
description: Internal error
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: Document Analysis
/{tenantId}/analyze/download:
post:
tags:
- Document Analysis
summary: Downloads the exported document and then uploads to the specified location
description: "<p>Downloads the exported file from the provider, and uploads to the specified url. A notification object must be provided in the request, to get notification that the upload to the client is complete.</p><p>In the notification, the request body will look like the below:<UL><LI>status: complete,<LI>responseBody:<UL><LI>id: \"0686g000009rGcUAAU\",<LI>success: \"true\",<LI>errors: [],<LI>downloadId: \"12293\",</UL></UL></p>"
operationId: download
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
requestBody:
$ref: '#/components/requestBodies/downloadDocRequest'
responses:
"200":
description: OK <p>The download from the provider was successful</p>
"500":
description: Invalid request
security:
- APIKeyAuth: []
- BearerAuth: []
x-swagger-router-controller: DocumentAnalysis
/{tenantId}/analyze/deletedoc:
delete:
tags:
- Document Analysis
summary: Delete the document
description: Deletes the document from the provider.
operationId: deletedoc
parameters:
- name: tenantId
in: path
description: Tenant name
required: true
style: simple
explode: false
schema:
type: string
- name: documentid
in: query
description: Document ID
required: true
style: form
explode: false
schema:
type: string
- name: instanceurl
in: query
description: Instance URL
required: true
style: form
explode: false
schema:
type: string
- name: username
in: query
description: User Name
required: true
style: form
explode: false
schema:
type: string
example: dummyuser
- name: userid
in: query
description: User ID
required: true
style: form
explode: false
schema:
type: string
example: a56392269d970c
responses:
"202":
description: Successfully deleted
"403":
description: Document access denied
"404":
description: Document does not exist
"500":
description: Internal error
security:
- APIKeyAuth: []
x-swagger-router-controller: Document Analysis
components:
examples:
downloadRequest:
value:
downloadId: "40289"
fileName: "highlightedNDA"
uploadUrl: "https://max4.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion"
context:
recordType: "NDA"
instanceUrl: "https://www.conga.com"
notificationInfo:
url: "https://www.notifyme.com"
method: "POST"
uploadJobInfo:
value:
jobId: "40289"
documentId: "89000"
context:
recordType: "NDA"
projectId: "342"
instanceUrl: "https://www.conga.com"
uploadJobInfoWithNotification:
value:
jobId: "40289"
documentId: "89000"
context:
recordType: "NDA"
projectId: "342"
instanceUrl: "https://www.conga.com"
notificationInfo:
url: "https://www.notifyme.com"
method: "POST"
uploadDocumentInfo:
value:
fileLink: "https://max4.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion/0686g000000y49vAAA/VersionData"
filesize: 95821
fileTitle: "ImportantDocument.docx"
fileFormat: "docx"
context:
recordType: "NDA"
instanceUrl: "https://www.conga.com"
notificationInfo:
url: "https://www.notifyme.com"
method: "POST"
schemas:
providerInfo:
type: object
properties:
provider:
type: string
description: provider name
format: string
example: "kira"
providerUrl:
type: string
description: provider url
format: string
example: "https://ca.app.kirasystems.com/platform-api"
useIchronos:
type: boolean
description: use Ichronos
format: boolean
example: true
logoUrl:
type: string
description: logo url
format: string
example: https://www.abc.com
providerSpecific:
type: object
properties:
version:
type: string
description: version
format: string
example: "v1"
defaultProjectId:
type: string
description: default Project Id
format: string
example: "209"
deleteDocumentFromKira:
type: boolean
description: default Project Id
format: boolean
example: false
retrieveHighlightedDocument:
type: boolean
description: default Project Id
format: boolean
example: true
storedProviderInfo:
type: object
properties:
provider:
type: string
description: provider name
format: string
example: "Kira"
providerUrl:
type: string
description: provider url
format: string
example: "https://ca.app.kirasystems.com/platform-api"
providerToken:
type: string
description: provider token
format: string
example: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzIjoiRUVWOTA4RzNrcEF2ZnVwTWpIZ1pZSGxnIiwiZiI6Mzk3fQ.B7jK7thmhWgsgd3Xxx-GtsV0TwSsEAXaIsTIuqV3vn8"
tenant:
type: string
description: tenant id
format: string
example: apttussfdc
instanceUrl:
type: string
description: instance Url
format: string
example: https://www.conga.com
maxUrl:
type: string
description: max Url
format: string
example: "https://maxazdev.apttuscloud.io"
maxToken:
type: string
description: max Token
format: string
example: "a17b499c0668904aea0b675099e531b82cfb"
iddUrl:
type: string
description: idd Url
format: string
example: "https://maxazdev.apttuscloud.io/idd"
iddToken:
type: string
description: idd token
format: string
example: "a17b499c0668904aea0b675099e531b82cfb"
logoUrl:
type: string
description: logo url
format: string
example: https://www.abc.com
useIchronos:
type: boolean
description: use Ichronos
format: boolean
example: true
providerSpecific:
type: object
properties:
version:
type: string
description: version
format: string
example: "v1"
defaultProjectId:
type: string
description: default Project Id
format: string
example: "123"
deleteDocumentFromKira:
type: boolean
description: default Project Id
format: boolean
example: false
retrieveHighlightedDocument:
type: boolean
description: default Project Id
format: boolean
example: true
createProvisionMap:
type: object
properties:
project_name:
type: string
description: project name
format: string
example: sample_idd
recordType:
type: string
description: record type
format: string
example: MSA
syncProvisions:
type: boolean
description: Sync Provisions
format: boolean
example: true
syncProvisionIds:
type: object
properties:
clauseMap:
type: object
properties:
268:
type: array
items:
example:
"congaTemplateId": "234abc"
fieldMap:
type: object
properties:
2:
type: array
items:
example:
"objectName": "Apttus__APTS_Agreement__c"
"congaField": "Free"
clauseMap:
type: object
properties:
267:
type: array
items:
example:
"congaTemplateId": "345678"
268:
type: array
items:
example:
"congaTemplateId": "234abc"
fieldMap:
type: object
properties:
2:
type: array
items:
example:
"objectName": "Apttus__APTS_Agreement__c"
"congaField": "Free"
1038:
type: array
items:
example:
"objectName": "Apttus__APTS_Agreement__c"
"congaField": "Lively"
getProvisionMap:
type: object
properties:
project_name:
type: string
description: project name
format: string
example: sample_idd
syncProvisions:
type: boolean
description: Sync Provisions
format: boolean
example: true
instanceUrl:
type: string
description: instance url
format: string
example: https://www.conga.com
syncProvisionIds:
type: object
properties:
clauseMap:
type: object
properties:
268:
type: array
items:
example:
"congaTemplateId": "234abc"
fieldMap:
type: object
properties:
2:
type: array
items:
example:
"objectName": "Apttus__APTS_Agreement__c"
"congaField": "Free"
project_id:
type: string
description: project id
format: string
example: 67
template_id:
type: string
description: template id
format: string
example: 795
recordType:
type: string
description: record type
format: string
example: NDA
tenant:
type: string
description: tenant
format: string
example: apttussfdc
clauseMap:
type: object
properties:
267:
type: array
items:
example:
"congaTemplateId": "345678"
268:
type: array
items:
example:
"congaTemplateId": "234abc"
fieldMap:
type: object
properties:
2:
type: array
items:
example:
"objectName": "Apttus__APTS_Agreement__c"
"congaField": "Free"
1038:
type: array
items:
example:
"objectName": "Apttus__APTS_Agreement__c"
"congaField": "Lively"
provisionMapResult:
type: object
properties:
project_id:
type: number
example: 209
template_id:
type: number
example: 170
editProvisionMap:
type: object
description: New Field map/Clause map Values
properties:
project_name:
type: string
description: Project Name
format: string
example: updated-project-name
project_id:
type: number
description: Existing project ID
example: 625
clauseMap:
type: object
properties:
272:
type: array
items:
example:
"congaTemplateId": "345678"
268:
type: array
items:
example:
"congaTemplateId": "234abc"
fieldMap:
type: object
properties:
9:
type: array
items:
example:
"objectName": "Apttus__APTS_Agreement__c"
"congaField": "Happy"
1038:
type: array
items:
example:
"objectName": "Apttus__APTS_Agreement__c"
"congaField": "Lively"
provider:
type: string
description: provider
format: string
example: kira
syncProvisions:
type: boolean
description: Sync Provisions
format: boolean
example: true
syncProvisionIds:
type: object
properties:
clauseMap:
type: object
properties:
272:
type: array
items:
example:
"congaTemplateId": "345678"
fieldMap:
type: object
properties:
9:
type: array
items:
example:
"objectName": "Apttus__APTS_Agreement__c"
"congaField": "Happy"
fieldsToAdd:
type: integer
example: [9, 272]
fieldsToRemove:
type: integer
example: [2, 267]
getProvisions:
type: object
properties:
provider:
type: string
description: provider info
format: string
example: kira
tenant:
type: string
description: tenant
format: string
example: apttussfdc
instanceUrl:
type: string
description: instance url
format: string
example: https://www.conga.com
provisions:
type: object
properties:
1:
type: object
example:
"field_id": 1,
"field_name": "Title"
2:
type: object
example:
"field_id": 2,
"field_name": "Parties"
"mappedProvisions": [ {
"objectName" : "Apttus__APTS_Agreement__c",
"congaField" : "Free"
}]
provisions:
type: object
properties:
provider:
type: string
description: provider info
format: string
example: kira
tenant:
type: string
description: tenant info
format: string
example: apttussfdc
instanceUrl:
type: string
description: instance info
format: string
example: "https://www.conga.com"
provisions:
type: array
items:
$ref: '#/components/schemas/provisionResult'
description: Sample provisions
example:
provider: kira
tenant: max
instanceUrl: https://www.conga.com
provisions:
- field_id: 1
field_name: Title
- field_id: 2
field_name: Parties
provisionResult:
type: object
properties:
field_id:
type: string
description: Id
format: id
example: 1
field_name:
type: string
description: field name
format: string
example: Title
provisionMapByRecordType:
type: object
properties:
tenant:
type: string
description: tenant name
example: conga
recordType:
type: string
description: Type of Record
example: NDA
objectName:
type: string
description: Name of CLM object
example: Apttus__APTS_Agreement__c
fieldMap:
$ref: '#/components/schemas/provisionMapByRecordType_fieldMap'
description: Filters Provion Map by Record Type
example:
fieldMap:
fieldId_1:
- fieldName: Apttus__Total_Contract_Value__c
- fieldName: Apttus__Total_Contract_Value__c
recordType: NDA
objectName: Apttus__APTS_Agreement__c
tenant: conga
fieldName:
type: object
properties:
fieldName:
type: string
description: field name
example: Apttus__Total_Contract_Value__c
description: Field Name
example:
fieldName: Apttus__Total_Contract_Value__c
entityResolutionResult:
type: object
properties:
type:
type: string
description: Entity type
Mod:
type: string
description: Modifier
start:
type: string
description: Start date of time period
format: datetime
end:
type: string
description: End date of time period
format: datetime
description: Explanation of query clause
User:
type: object
properties:
id:
type: integer
format: int64
username:
type: string
firstName:
type: string
lastName:
type: string
email:
type: string
password:
type: string
phone:
type: string
userStatus:
type: integer
description: User Status
format: int32
xml:
name: User
provisionResult_Apttus__ProvisionType__c:
type: object
properties:
Clause:
type: boolean
description: Clause
example: false
default: false
Field:
type: boolean
description: Field
example: true
default: false
description: Provision Type
example:
Field: true
Clause: false
provisionMapByRecordType_fieldMap:
type: object
properties:
fieldId_1:
type: array
description: field id maps to array of fields
items:
$ref: '#/components/schemas/fieldName'
description: Each Kira provision (field_id) maps to an array of CLM fields or
clauses (field name or template ID)
example:
fieldId_1:
- fieldName: Apttus__Total_Contract_Value__c
- fieldName: Apttus__Total_Contract_Value__c
entityResponse:
type: object
properties:
entity:
type: string
description: sub phrase
format: string
startIndex:
type: integer
description: Start index of the sub phrase
format: int32
endIndex:
type: integer
description: End index of the sub phrase
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
entityResolutionResultList:
type: object
description: Entity resolution
properties:
values:
type: array
items:
$ref: '#/components/schemas/entityResolutionResult'
uploadBody:
type: object
properties:
project_id:
type: string
description: Project ID
format: string
example: "880"
uploadContext:
type: object
properties:
recordType:
type: string
description: Record type
format: string
example: "NDA"
projectId:
type: string
description: Project ID
format: string
example: "880"
instanceUrl:
type: string
description: Instance URL
format: string
example: "https://www.conga.com"
uploadHeader:
type: object
properties:
accept:
type: string
description: Accept type
format: string
example: "application/json"
Authorization:
type: string
description: Bearer token
format: string
example: Bearer 12345
Content-Type:
type: string
description: Content type
format: string
example: "multipart/form-data"
uploadInfoResult:
type: object
properties:
uploadUrl:
type: string
description: URL
format: string
example: "https://www.conga.com/maxupload/documents"
uploadMethod:
type: string
description: Request method
format: string
example: GET
uploadHeader:
$ref: '#/components/schemas/uploadHeader'
uploadBodyParameter:
$ref: '#/components/schemas/uploadBody'
context:
$ref: '#/components/schemas/uploadContext'
notificationInfo:
type: object
description: Including this webhook information will enable automatic polling by IDD
properties:
url:
type: string
description: URL
format: string
example: "https://www.conga.com/maxupload/notify"
method:
type: string
description: Request method
format: string
example: "POST"
uploadInfo:
type: object
description: The document has been uploaded manually and client received document and job IDs. Use this object to pass that information to IDD
properties:
jobId:
type: string
description: Job ID
format: string
example: "80291"
documentId:
type: string
description: Document ID
format: string
example: "394201"
context:
$ref: '#/components/schemas/uploadContext'
notificationInfo:
$ref: '#/components/schemas/notificationInfo'
uploadFileInfo:
type: object
description: Pass the download document information to IDD, which will download the document and then upload it to the provider. If notificationInfo is included, then IDD will poll the document status and notify the webhook.
properties:
fileLink:
type: string
description: Link to file to upload
format: string
example: "https://somewebsite.com/document/download/"
filesize:
type: integer
description: Size of file
format: int64
example: 123213
fileFormat:
type: string
description: File format (e.g., docx, pdf)
format: string
example: "docx"
fileTitle:
type: string
description: File name
format: string
example: "NDA_Agreement.docx"
context:
$ref: '#/components/schemas/uploadContext'
notificationInfo:
$ref: '#/components/schemas/notificationInfo'
extractedProvision:
type: object
properties:
tags:
type: array
description: A possibly empty array of strings with tags that were assigned to the field instances.
items:
type: string
flag_user_id:
type: integer
description: Integer identifier of user that red-flagged the field instance.
format: int64
field_name:
type: string
description: Name of the field.
format: string
field_instance_url:
type: string
description: Url for viewing the field instance in the Kira UI
format: string
page_range:
type: array
description: An array of two Integers indicating the document pages on which the field instance starts and ends. Both values are inclusive.
items:
type: integer
format: int64
is_flagged:
type: boolean
description: Boolean, true/false value to indicate if a field instance has been red-flagged.
text_ranges:
description: An array of text ranges were this field instance text occurs in the document, each element containing two integer elements, representing the range start (inclusive) and end (exclusive) respectively.
type: array
items:
type: array
items:
type: integer
field_instance_id:
type: integer
format: int64
description: Integer identifier of the field-instance.
field_id:
description: Integer identifier of the field.
type: integer
format: int64
text:
description: Text of the field instance.
type: string
format: string
mappedFields:
description: An array of objects and fields this provision maps to
type: array
items:
$ref: '#/components/schemas/mappedField'
mappedClauses:
description: An array of template IDs this provision maps to
type: array
items:
$ref: '#/components/schemas/mappedClause'
mappedField:
type: object
properties:
objectName:
description: Object name
type: string
format: string
congaField:
description: Field name
type: string
format: string
mappedClause:
type: object
properties:
congaTemplateId:
description: Template ID
type: string
format: string
extractedFileInfo:
type: object
properties:
projectId:
type: string
description: Project ID
format: string
example: "625"
documentId:
type: string
description: Document ID
format: string
example: "82736"
jobId:
type: string
description: Job ID
format: string
example: "43325"
recordType:
type: string
description: Record Type
format: string
example: "NDA"
foundProvisionMap:
type: boolean
description: T/F if a provision map was found
format: string
example: true
extractedProvisions:
type: array
items:
$ref: '#/components/schemas/extractedProvision'
uploadFileFeedback:
type: object
properties:
projectId:
type: string
description: Project ID
format: string
example: "625"
documentId:
type: string
description: Document ID
format: string
example: "82736"
jobId:
type: string
description: Job ID
format: string
example: "43325"
jobStatusInProgress:
type: object
properties:
status:
type: string
description: Job status
format: string
example: "in progress"
responseBody:
type: object
description: Response from provider
properties:
retry_after:
type: integer
example: 15
job_status:
type: string
example: "in-progress"
last_update_time:
type: string
example: "2021-01-19T22:52:20Z"
jobStatusComplete:
type: object
properties:
status:
type: string
description: Job status
format: string
example: "complete"
responseBody:
type: object
description: Response from provider
properties:
is_successful:
type: boolean
example: true
downloadId:
type: string
description: Download ID - Only included if a download job was initiated
format: string
example: "1028"
job_id:
type: string
example: "405194"
document_id:
type: string
example: "85401"
redirect_href:
type: string
example: "https://ca.app.kirasystems.com/platform-api/v1/downloads/108876/files"
analyzeJobDeniedError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Job access denied"
analyzeJobDoesNotExistError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Job does not exist"
analyzeJobUnavailableError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Job information unavailable"
analyzeDocDeniedError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Document access denied"
analyzeDocDoesNotExistError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Document does not exist"
documentStatus:
type: object
properties:
status:
type: string
description: Status
format: string
example: "'in progress' or 'complete'"
responseBody:
type: object
description: Response from provider
properties:
is_extracted:
type: boolean
example: true
language:
type: string
example: "English"
scan_quality:
type: string
example: "A"
is_scanned:
type: boolean
example: true
page_count:
type: integer
example: 4
error_code:
type: integer
example: 0
jobId:
type: integer
example: 625
document_id:
type: string
example: "82839"
job_id:
type: string
example: "1920"
exportInfoResult:
type: object
properties:
jobId:
type: string
description: Job ID
format: string
example: "4839"
documentId:
type: string
description: Document ID
format: string
example: "83920"
context:
type: object
properties:
instanceUrl:
type: string
example: "https://www.conga.com"
exportUnsupportedArgumentsError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Unsupported arguments"
exportAccessDeniedError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Document, project, or field access denied"
exportDocDoesNotExistError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Document does not exist"
exportServiceUnavailableError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Service Unavailable"
downloadAccessDeniedError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Download access denied"
downloadDoesNotExistError:
type: object
properties:
status:
type: string
description: Status
format: string
example: "error"
errorMessage:
type: string
description: Error message
format: string
example: "Download does not exist"
downloadHeader:
type: object
properties:
Authorization:
type: string
example: "Bearer xxxx"
downloadResult:
type: object
properties:
status:
type: string
description: Status of file (downloaded - this file has already been downloaded, finished - export is done, and this file can be downloaded)
format: string
example: "downloaded or finished"
downloadUrl:
type: string
description: Download URL
format: string
example: "https://www.conga.com/max/download/123"
downloadMethod:
type: string
description: Download method
format: string
example: "GET"
downloadHeader:
$ref: '#/components/schemas/downloadHeader'
downloadDocRequest:
type: object
properties:
downloadId:
type: string
description: Download ID
format: string
example: "80291"
fileName:
type: string
description: Name of file
format: string
example: "hightlightedDoc"
uploadUrl:
type: string
format: string
example: "https://max4.my.salesforce.com/services/data/v47.0/sobjects/ContentVersion"
context:
$ref: '#/components/schemas/uploadContext'
notificationInfo:
$ref: '#/components/schemas/notificationInfo'
requestBodies:
registerProvider:
description: "Request to Register Provider"
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/providerInfo'
createProvisionMap:
description: "Request to Create Provision Map"
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/createProvisionMap'
editProvisionMap:
description: "Request to Edit Provision Map"
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/editProvisionMap'
editProvisionMapField:
description: "Request to Edit Provision Map"
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/editProvisionMap'
UserRequest:
description: Request for User
content:
application/json:
schema:
$ref: '#/components/schemas/User'
required: true
exportRequest:
description: Request for export. If notificationInfo is included, then polling is automatically done to check when export is complete.
required: true
content:
application/json:
schema:
type: object
properties:
payload:
type: object
properties:
export_format:
type: string
example: "pdf"
include_highlight:
type: boolean
example: false
pdf_quality:
type: string
example: "low"
notificationInfo:
$ref: '#/components/schemas/notificationInfo'
notificationInfoRequest:
description: "Webhook information"
required: true
content:
application/json:
schema:
type: object
properties:
notificationInfo:
$ref: '#/components/schemas/notificationInfo'
uploadInfoRequest:
description: "Request to do one of the following <p>1. uploadJobInfo: Provide IDD with job/document information<br>2. uploadJobInfoWithNotification: Provide IDD with job/document information and request to get notification upon completion<br>3. uploadDocumentInfo: Provide IDD with a link to the file to upload, and IDD will do the upload and notify upon completion if notificationInfo is provided as well.</p>"
required: true
content:
application/json:
schema:
anyOf:
- $ref: '#/components/schemas/uploadInfo'
- $ref: '#/components/schemas/uploadFileInfo'
examples:
uploadJobInfo:
$ref: '#/components/examples/uploadJobInfo'
uploadJobInfoWithNotification:
$ref: '#/components/examples/uploadJobInfoWithNotification'
uploadDocumentInfo:
$ref: '#/components/examples/uploadDocumentInfo'
downloadDocRequest:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/downloadDocRequest'
examples:
downloadRequest:
$ref: '#/components/examples/downloadRequest'
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
APIKeyAuth:
type: apiKey
name: X-API-Key
in: header