Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA™ Asset Information Management

Connect to an OpenText DMS

  • Last UpdatedAug 07, 2024
  • 5 minute read

The OpenText sample is a json file split in six main sections. Some configuration parts of the sections are already hardcoded in the template so the sample will contain only some of the configurations, as follows:

  • Authentication

  • DmsConfiguration

  • MetadataAIMContext

  • AIMIngestion

  • HttpSettings

  • PipelineRunnerSettings

Authentication

In order to be able to authenticate using Oauth2 we must identify the:

  • Tenant ID - this value can be found on the OpenText platform.

AuthorizeApi: URL for requesting the access token. https://<REGION>.api.opentext.com/tenants/<TENANT ID>/oauth2/token

  • BasicLogin

    • username: Client ID

    • password: Client Secret

DmsConfiguration

DmsConfiguration is a section where we configure DMS-related settings such as formats, endpoints, query parameters, and so on.

  • DMSBaseUrl: represents the base URL of the endpoints that will be used. It is the common part of all the URLs that will be consumed. For example https://<REGION>.api.opentext.com

  • DeltaEndpoint: represents the endpoint that will return an expected list of documents that should be pushed to the ingestion. Usually, this endpoint returns a delta instead of all of the documents. A delta represents all of the documents that are new or were modified since a certain date. Usually that certain date will be transmitted to the endpoint as a query parameter. For OpenText, this value is: cms/instances/folder/cms_folder/{FolderId}/items

  • BlobIdEndpoint: it is used to get the blob ID for every file. This ID is needed to fetch the metadata and the actual content of files. for example /cms/instances/file/cms_file/{Id}/contents

  • RootFolder: represents the root folder in the OpenText folder structure. Based on the configuration, if pagination and recursive pull are wanted, the application will get all the files in the folder's hierarchy, or all the documents in the first level of the given folder. It is represented by the folder ID, for example 057a1d3a-2876-11e8-b467-0ed5f89f718b

  • DeltaQueryParameters: represents the parameters given to the document revision endpoint called. OpenText is using "filter":"update_time gt '%DeltaDate%' and type eq 'cms_file'“ - to fetch only the files created or updated after the given date, and "include-total": true, "items-per-page": 250 to specify that the recursive pull with pagination is wanted.

  • FolderQueryParameters: represents the parameters given to the folder query endpoint called. OpenText is using "filter": "type eq 'cms_folder'" - to fetch only the folder ID "include-total": true, "items-per-page": 250 to specify that the recursive pull with pagination is wanted.

  • DeltaPaging: represents the parameters needed for pagination and recursivity. The only flag that is configurable within this subsection is: IsWithRecursivity used in order to enable or disable the recursive retrieval of data within subfolders of the given RootFolder.

  • MetadataFromDelta: boolean. Informs the system if the delta response will contain mandatory information other than the document ID. In order to download a file we need the filename that contains the extension and a title. Also, if possible, we need the file size but it’s not mandatory. If the delta response is not able to give us all this information, then we need to make another call in order to get the document’s metadata. Should be false for OpenText.

  • DeltaMapping

    • id: Mapping for the document ID in the delta response. The mapping should be added surrounded by brackets. Check the sample file for an example.

    • DocumentDownloadLink: URL used to download the document. It should contain the document blob ID between brackets. Check the sample file for an example. For example: https://css.na-1-dev.api.opentext.com/v2/content/{blob_id}/download

    • MetadataDownloadLink: URL used to download the metadata of the file. It should contain the document blob ID between brackets. Check the sample file for an example. For example: https://css.na-1-dev.api.opentext.com/v2/content/{blob_id}

  • MetadataMapping

    • title: fixed string, mapping or combination. It will represent the pattern for the document title. Mappings are done just as for the ID and it should be surrounded by brackets. Because of the OpenText response format, these mappings have to be in the following format: {entries[0].fileName} - or size, the values for both title and filename should be the same.

    • filename: fixed string, mapping or combination. This represents the pattern for a document title. Mappings are done just for the ID and it should be surrounded by brackets.

    • filesize: The mapping should be added surrounded by brackets. For OpenText the value is size.

  • Filtering - optional - subsection will contain a list of FilteringItems and ValidationExpression.

    The FilteringItem - mandatory if Filtering is present - will contain:

    • Identifier: a unique identifier of the filteringItem, identifier that will be used in the ValidationExpression - mandatory if Filtering is present

    • Mapping: the actual property present in the incoming metadata for all DMSs - mandatory if Filtering is present

    • Value: the actual value against which the filtering is done, can contain a list of values separated by comma - mandatory if Filtering is present

      The ValidationExpression - mandatory if Filtering is present - will contain:

    • filtering condition based on the identifiers already created and the logical operators in use OR and AND.

      NOTE: Supported filters is entries0.mimeType. These are not configurable.

      Filtering can be configured by adding the following section within the DmsConfiguration section. The example is shown with sample values which must be replaced with actual values before adding to your configuration.

      "Filtering": {

      "FilteringItems": [

      {

      "Identifier": "identifier",

      "Mapping": "entries[0].mimeType",

      "Value": "text/plain"

      }

      ],

      "ValidationExpression": "{identifier}"

      }

  • IsMetadataToStore: boolean. A flag that allows us to save the response from the MetadataDownloadLink as a regi file or not.

  • DateTimeFormat: is a string representation of the date format supported by the DMS when calling the DeltaEndpoint. Different DMSs may use different formats so we need to convert our date to the DMS format before starting any request that contains a date, for example yyyy-MM-ddTHH:mm:ssZ

    NOTE: To get the files recursively with pagination, the following configurations must be present. These are partly configurable and partly predefined:

    "DeltaQueryParameters": {

    "filter": "update_time gt '%DeltaDate%' and type eq 'cms_file'",

    "include-total": true,

    "items-per-page": 250

    },

    "FolderQueryParameters": {

    "filter": "type eq 'cms_folder'",

    "include-total": true,

    "items-per-page": 250

    },

    ""DeltaPaging": {

    "TotalPagesFromResult": "total",

    "QueryParameterPageNumber": "page",

    "IsWithRecursivity": true

    },

MetadataAIMContext

MetadataAIMContext is a section where we configure what we send to the ingestion, such as paths, groups, naming formats, extensions, and so on.

  • context: a value sent to the ingestion and used to group files for clients with multiple tenants.

  • ClassLibraryRegisterPath

    • DocumentMetadataRegister: a path for the document revisions.

    • ScrapedFileRegister: a path for scraped files.

  • FileTimeStampFormat: a timestamp format that will be used for delta file names.

  • FileNamePrefix: a file name prefix for regi files, used for identification.

  • FileNameSuffixForDelta

    • Suffix: a delta filename suffix.

    • Extension: a delta extension. Represents the DeltaEndpoint response type extension to be saved to. For OpenText, the delta response extension is json.

AIMIngestion

AIMIngestion section is about ingestion configuration.

  • BaseUrl: represents the base URL for the Ingestion API.

  • AssetId: represents the ID of the asset for which the upload is done.

  • ProcessingUnit: represents the processing units with the attached allowed extension type.

    Note: Document Connector now supports service to service integration with the Data Pipeline. If your configuration already has an Ingestion Token, it will be ignored with no impact to the processing. There is no need to remove the key from the configuration.

HttpSettings

HttpSettings section configures timeouts and retries. Most of them are hardcoded in the template, only the DMS timeout can be configured.

  • DmsTimeout: a timeout used for DMS HTTP calls

PipelineRunnerSettings

PipelineRunnerSettings is a section that will configure the flow of the program. Most of the configurations are already hardcoded in the template.

  • DownloadFiles: boolean, a switch for toggling on and off the files transfer. Has to be TRUE for OpenText.

In This Topic
TitleResults for “How to create a CRG?”Also Available in