Inhalt
The available Swagger UI for the Congree REST API is located in the following URL: http:///congree/swagger
...
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
[
{
"Id": "CLTEditorWord",
"Name": "Congree for Microsoft Word"
},
{
"Id": "CLTFeatureDataGrooming",
"Name": "Congree Authoring Memory Candidates"
},
{
"Id": "CltFeatAuthMemory",
"Name": "Congree Authoring Memory"
},
{
"Id": "CltFeatLangCheckDe",
"Name": "Congree Language Check German"
},
{
"Id": "CltFeatBcs",
"Name": "Congree Language Check German"
},
{
"Id": "CltFeatLangCheckEn",
"Name": "Congree Language Check English"
},
{
"Id": "CltEditorPpt",
"Name": "Congree for Microsoft PowerPoint"
},
{
"Id": "CltEditorOutlook",
"Name": "Congree for Microsoft Outlook"
},
{
"Id": "CltEditorArbortext",
"Name": "Congree for PTC® Arbortext Editor™"
},
{
"Id": "CltEditorXmetal",
"Name": "Congree for JustSystems XMetaL® Author"
},
{
"Id": "CltEditorFrame",
"Name": "Congree for Adobe® FrameMaker®"
},
{
"Id": "CltEditorIndesign",
"Name": "Congree for Adobe® InDesign®"
},
{
"Id": "CltEditorAnytime",
"Name": "Congree Indie"
},
{
"Id": "CltEditorXmax",
"Name": "Congree for JustSystems XMetaL® XMAX™"
},
{
"Id": "CltFeatAmNative",
"Name": "Authoring Memory Non-native Authoring"
},
{
"Id": "CltFeatTerm",
"Name": "Congree Terminology"
},
{
"Id": "CltFeatTermExtract",
"Name": "Congree Term Extraction"
},
{
"Id": "CltEditorAuthit",
"Name": "Congree for ASC Author-it®"
},
{
"Id": "CltEditorProxy",
"Name": "Congree Client Proxy"
}
] |
Linguistic
...
Status | ||||
---|---|---|---|---|
|
...
/congree/api/Linguistic/v1/Check?ruleSet={rulesetName}
...
Checks the document
The request should be included in the body in the following form:
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"Xml": "string",
"Options": {
"IncludeValidTerms": true,
"IncludeReporting": true,
"IncludeContextMapping": true,
"ExtractTermCandidates": true
}
} |
Hinweis | ||
---|---|---|
| ||
“string” has some restrictions. It must be valid XML. It cannot just be any string. |
Options
...
IncludeValidTerms
...
IncludeReporting
...
IncludeContextMapping
...
Split input XML into contexts and map linguistic errors to the contexts. This option are enabled if IncludeReporting is true
...
ExtractTermCandidates
...
The response structure corresponds to LinguisticCheckResult3 class, see Congree Bulk Check Service documentation, see Type definitions - IBulkCheckService - Linguistic-related types.
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"ResultXml": "string",
"Errors": [
{
"Id": "string",
"ContextId": 0,
"Type": "Abbreviation",
"Descriptions": [
{
"Code": "string",
"Description": {
"Header": "string",
"Instruction": "string",
"Explanation": "string"
},
"Explanation": [
{
"Type": "Text",
"Text": "string"
}
],
"ExplanationRewrite": [
{
"Type": "Text",
"Text": "string"
}
]
}
],
"Proposals": [
{
"Text": "string",
"AdditionalInfo": "string",
"BaseTermForm": "string",
"ConceptId": 0
}
]
}
],
"TermCandidates": [
{
"Id": "string",
"Text": "string",
"Context": "string",
"IsExist": true
}
],
"Reporting": {
"TotalCheckedWords": 0,
"ReleaseLevel": 0,
"RelativeReleaseLevel": 0,
"SafeReleaseLevel": 0,
"SafeReleaseLevelTitle": "string",
"AcceptableReleaseLevel": 0,
"AcceptableReleaseLevelTitle": "string",
"UnsafeReleaseLevel": 0,
"UnsafeReleaseLevelTitle": "string",
"ReportingByTypes": [
{
"Type": "Abbreviation",
"ErrorCount": 0,
"Severity": 0,
"RelativeSeverity": 0
}
]
},
"FailedParagraphsInfo": {
"FailedParagraphsAmount": 0
}
} |
Here comes an example to describe "String" in more detail:
Codeblock | ||||
---|---|---|---|---|
| ||||
<ul><li><?cngr-ctx-b 6?>Wie verständlich einzelne Passagen <?cngr-lc-b 13?>waren<?cngr-lc-e 13?><?cngr-ctx-e 6?></li><li> |
Please note that in the example, Processing Instructions are used to mark ranges:
...
ctx = context (a paragraph ID)
...
lc = Language Check (a highlight/error ID)
...
e = end of the range
...
b = beginning of the range
Please find the additional response content explained below.
Errors
- Id: highlight/error ID to find the correct range of a Congree notification)
- ContextId: ContextId corresponds to a “ … ” region. These PIs are emitted when IncludeContextMapping is true or both IncludeReporting is true and RuleSet has reporting configuration set.
- Type: Spelling, Grammar, Style, Terminology, Abbreviation or Valid terms
- Descriptions:
- Code: identifier for a specific Congree notification
- Description:
- Header: short summary to identify the notification
- Instruction: short text telling the author what to correct
- Explanation: short text telling the author why to correct
- Explanation: negative example
- Type: can be Text or Explanation
- Text
- ExplanationRewrite: positive example
- Type: can be Text or Explanation
- Text
Hinweis | ||
---|---|---|
| ||
Sample texts are split into parts. Parts with Type = ‘Text’ are plain text and should be passed through; Parts with Type = ‘Explanation’ contain text to be highlighted. To get the final result, one should concatenate texts of parts, highlighting (in any way) appropriate parts. |
Proposals
- Text: any string which should be applied by authors as their correction of some problem
- AdditionalInfo: legacy property, has to be null
- BaseTermForm: String required for "Valid term" messages and also for Terminology Research to find a term
- ConceptId: If the proposal is a term, this is the concept ID of said term to be used if necessary.
TermCandidates
- Id: Id of corresponding “…” region
- Text: the candidates as displayed to the author
- Context: the sentence(s) in which a term candidate has been found
- IsExist: information if this term has already been proposed by someone else in the past
Reporting
- TotalCheckedWord: counter for the amount of checked words
- ReleaseLevel: value which shows the quality of checked text
- RelativeReleaseLevel: ReleaseLevel value, scaled as if quality levels (unsafe/acceptable/safe) were of equal length of 40. Returned values are in range [0…80) U {120}. 120 is returned only when ReleaseLevel = 100.
- SafeReleaseLevel: value when the shown release level is good
- SafeReleaseLevelTitle: name of the good release level
- AcceptableReleaseLevel: value when the shown release level is ok
- AcceptableReleaseLevelTitle: name of the ok release level
- UnsafeReleaseLevel: value when the shown release level is bad
- UnsafeReleaseLevelTitle: name of the bad release level
- ReportingByTypes: contains total counts and calculated severities of Language Check error types.
- Type
- ErrorCount
- Severity
- RelativeSeverity
- FailedParagraphsInfo
- FailedParagraphsAmount: provides information on how many paragraphs were skipped due to errors
...
Status | ||||
---|---|---|---|---|
|
...
/congree/api/Linguistic/v1/StartCheckTask?ruleSet={rulesetName}
...
Checks the document in asynchronous mode
The request is the same as for /congree/api/Linguistic/v1/Check?ruleSet=rulesetName but the result is a task id.
In order to get the task status and results, use methods described in Tasks. The result is the same as for /congree/api/Linguistic/v1/Check
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"Id": "00000000-0000-0000-0000-000000000000"
} |
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"Id": "514290f4-fc30-48e3-99b8-0973011bd2e5"
} |
...
Linguistic: StyleGuide
...
Status | ||||
---|---|---|---|---|
|
...
Create a new style guide
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
StyleGuide can be specified as follows:
- Id (integer, optional): Id of style guide
- Name (string, optional): Name
- RulesConfiguration (integer, optional): Id of rules configuration
- SynonymsConfiguration (integer, optional): Id of synonyms configuration
- UserLexiconConfiguration (integer, optional): Id of user lexicon configuration
- TerminologyConfiguration (integer, optional): Id of terminology configuration
Linguistic: StyleGuide Configurations
...
Status | ||||
---|---|---|---|---|
|
...
Creates some configuration of the specified culture and type
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Attributes for Configurations:
- Id (integer, optional): Id of existing configuration
- Name (string, optional): Configuration name
Parameters:
- culture (string)
- type (string): Rules, UserLexicon, Synonyms, Terminology
- request
The request should be included in the body in the following form:
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"Id": 0,
"Name": "string",
"Copy": true
} |
Linguistic: StyleGuide Rules
...
Status | ||||
---|---|---|---|---|
|
...
Linguistic: StyleGuide Synonyms
...
Status | ||||
---|---|---|---|---|
|
...
Adds new synonyms
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Linguistic: StyleGuide Terminology
...
Status | ||||
---|---|---|---|---|
|
...
Adds new term candidate filters
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Linguistic: StyleGuide User Lexicon
...
Status | ||||
---|---|---|---|---|
|
...
Adds new term candidate filters
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Linguistic: StyleGuide User Lexicon Word forms
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Document settings
...
/congree/api/Settings/v1/Document
...
Gets list of available document-specific rule sets
Codeblock | ||||
---|---|---|---|---|
| ||||
[
"string"
] |
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
[
"Congree Standard",
"Compathy",
"Congree Word"
] |
...
/congree/api/Settings/v1/Document/{RulesetName}
...
Gets all document-specific rule set settings
{RulesetName} is the name of the document-specific rule set. Available settings groups are described here.
Codeblock | ||||
---|---|---|---|---|
| ||||
{
<Settings group name>: <Settings object>
} |
...
/congree/api/Settings/v1/Document/{RulesetName}/{SettingsGroupName}
...
Gets specified document-specific rule set settings
{SettingsGroupName} is the name of the settings group. Parameter can contain a set of comma separated groups. Available settings groups are described here.
Codeblock | ||||
---|---|---|---|---|
| ||||
{
<Settings group name>: <Settings object>
} |
...
Language settings
Group name: LanguageSettings
Structure:
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"Language": string
} |
Language Check Report configuration
Group name: LinguisticReportingConfiguration
Structure (corresponds to LinguisticReportConfiguration, see Congree Bulk Check Service documentation, Type definitions - IBulkCheckSettingsService - Document settings XML description):
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"ConfigurationName": string,
"Language": string,
"WordCountFactor": double,
"HighRatingLimit": double,
"HighRatingName": string,
"MediumRatingLimit": double,
"MediumRatingName": string,
"LowRatingLimit": double,
"LowRatingName": string,
"Rules": [
{
"RuleName": string,
"CategoryType": string,
"Weight": double
}
],
"Categories": [
{
"ErrorType": string,
"Priority": double
}
]
} |
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"ConfigurationName": "Congree Standard DE",
"Language": "de",
"WordCountFactor": 1.2,
"HighRatingLimit": 95.0,
"HighRatingName": "Safe",
"MediumRatingLimit": 85.0,
"MediumRatingName": "Acceptable",
"LowRatingLimit": 0.0,
"LowRatingName": "Unsafe",
"Rules": [
{
"RuleName": "alt",
"CategoryType": "Spelling",
"Weight": 10.0
},
{
"RuleName": "unknown",
"CategoryType": "Spelling",
"Weight": 10.0
},
{
"RuleName": "ADM",
"CategoryType": "Terminology",
"Weight": 0.0
},
{
"RuleName": "DEPR",
"CategoryType": "Terminology",
"Weight": 10.0
},
{
"RuleName": "PARTDEPR",
"CategoryType": "Terminology",
"Weight": 5.0
},
{
"RuleName": "POSNEG",
"CategoryType": "Terminology",
"Weight": 0.0
},
{
"RuleName": "VARPOSNEG",
"CategoryType": "Terminology",
"Weight": 0.0
}
],
"Categories": [
{
"ErrorType": "Abbreviation",
"Priority": 1.0
},
{
"ErrorType": "Spelling",
"Priority": 10.0
},
{
"ErrorType": "Style",
"Priority": 1.0
},
{
"ErrorType": "Terminology",
"Priority": 10.0
},
{
"ErrorType": "Grammar",
"Priority": 3.0
}
]
} |
Paragraph recognition settings
Group name: ParagraphRecognition
Codeblock | ||||
---|---|---|---|---|
| ||||
"ParagraphRecognition": {
"IsAutomaticMode": bool,
"SymbolsAmountToCheck": int,
"CheckUnitDefinitions": [
{
"Name": string,
"Treatment": string,
"StructureClass": string,
"Parents": string,
"Attributes": string,
"Rules": [
{
"ErrorType": string,
"ErrorCode": string,
"IsDeactivated": bool
}
]
}
],
"InlineElementDefinitions": [
{
"Name": string,
"Treatment": string,
"IsReadOnly": bool,
"LanguageCheckSpecifics": string,
"Parents": string,
"Attributes": string
}
]
} |
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
"ParagraphRecognition": {
"IsAutomaticMode": false,
"SymbolsAmountToCheck": 2,
"CheckUnitDefinitions": [
{
"Name": "p",
"Treatment": "Check",
"StructureClass": "Regular",
"Parents": null,
"Attributes": null,
"Rules": [
{
"ErrorType": "Grammar",
"ErrorCode": "gESL325en",
"IsDeactivated": false
},
{
"ErrorType": "Grammar",
"ErrorCode": "gESL324en",
"IsDeactivated": true
},
// ...
]
},
// ...
],
"InlineElementDefinitions": [
{
"Name": "systemoutput",
"Treatment": "Check",
"IsReadOnly": false,
"LanguageCheckSpecifics": "c=noun,literal=yes,grkl=sic",
"Parents": null,
"Attributes": null
},
// ...
]
} |
Reporting
...
Status | ||||
---|---|---|---|---|
|
...
/congree/api/Reporting/v1/Linguistic
...
Stores the Language Check Report.
The report should be included in the body in following form:
DocumentId - is guid which uniquely identifies the document.
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"DocumentRuleSet": "string",
"DocumentId": "00000000-0000-0000-0000-000000000000",
"TotalCheckedWords": 0,
"ReleaseLevel": 0,
"RelativeReleaseLevel": 0,
"ErrorData": [
{
"ErrorType": "Abbreviation",
"ErrorCount": 0,
"ErrorSeverity": 0
}
]
} |
You can build report based on the response of linguistic check with parameter "IncludeReporting": true.
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"documentRuleSet" : "Congree Standard",
"documentId": "33BB8BDB-3E9F-4944-9E23-2FFA56C143EE",
"TotalCheckedWords": 498,
"ReleaseLevel": 3.82,
"RelativeReleaseLevel": 1.7976470588235292,
"ErrorData": [
{
"ErrorType": "Abbreviation",
"ErrorCount": 0,
"ErrorSeverity": 100.0
},
{
"ErrorType": "Grammar",
"ErrorCount": 4,
"ErrorSeverity": 97.59
},
{
"ErrorType": "Spelling",
"ErrorCount": 2,
"ErrorSeverity": 59.84
},
{
"ErrorType": "Style",
"ErrorCount": 7,
"ErrorSeverity": 98.59
},
{
"ErrorType": "Terminology",
"ErrorCount": 9,
"ErrorSeverity": 47.79
}
]
} |
Third-party settings
The current third-party system is defined at authorization step.
...
/congree/api/Settings/v1/ThirdParty/Current
...
Gets all settings of the current third-party system.
Codeblock | ||||
---|---|---|---|---|
| ||||
{
<Settings group name>: <Settings object>
} |
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"CongreeWebInterfaceSettings": {
"Rules": [
{
"Rule": "Rule 1",
"RuleSets": [
"Congree Standard"
]
}
]
}
} |
...
/congree/api/Reporting/v1/ThirdParty/Current/{SettingsGroupName}
...
Gets settings of the current third-party system specified by the settings group.
{SettingsGroupName} support comma separated set of settings groups.
Codeblock | ||||
---|---|---|---|---|
| ||||
{
<Settings group name>: <Settings object>
} |
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"CongreeWebInterfaceSettings": {
"Rules": [
{
"Rule": "Rule 1",
"RuleSets": [
"Congree Standard"
]
}
]
}
} |
Available Third-party settings groups
Congree Web Interface
Represents settings from group "Congree Web Interface" for Bulk Check Service.
Group name: CongreeWebInterfaceSettings
Structure:
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"Rules": [
{
"Rule": string,
"RuleSets": [
string
]
}
]
} |
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"Rules": [
{
"Rule": "Rule 1",
"RuleSets": [
"Congree Standard"
]
}
]
} |
...
Tasks endpoints allows to get the current status of the asynchronous task and it result.
...
/congree/api/Tasks/v1/Status/{taskId}
...
Gets task status
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"State": "string",
"ErrorInfo": {
"Code": int,
"Message": "string"
}
} |
Available states: Pending, InProgress, Success, Failed
ErrorInfo present in state Failed only. In other cases it is null.
...
/congree/api/Tasks/v1/Result/{taskId}
...
Gets task result
Available only for finished tasks (states: Success, Failed)
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"Result": <result object>
} |
In failed state "Result" contains ErrorInfo object. In success state - corresponding result. Result available 5 minutes after the task is completed.
Terminology
...
Status | ||||
---|---|---|---|---|
|
...
/congree/api/Terminology/v1/TermCandidate?ruleSet={ruleSetName}&addOnlyUnknown={true or false}
...
Stores new term candidate
Term candidate should be included in the body in following form (corresponding to the TermCandidateModel class, see Congree Bulk Check Service documentation, Type definitions - IBulkCheckService - DataGrooming-related types).
Codeblock | ||||
---|---|---|---|---|
| ||||
{
"Text": "string",
"Context": "string"
} |
...
/congree/api/Terminology/v1/SearchTerm?ruleSet={ruleSetName}&term={term text}&culture={CultureName}
...
Searches term in terminology system
The culture name in the format languagecode2-country/regioncode2. languagecode2 is a lowercase two-letter code derived from ISO 639-1. country/regioncode2 is derived from ISO 3166 and usually consists of two uppercase letters, or a BCP-47 language tag.
Responce structure corresponds Type definitions - IBulkCheckService - Terminology-related types.
Codeblock | ||||
---|---|---|---|---|
| ||||
[
{
"Concept": {
"ConceptId": 0,
"Properties": [
{
"Values": [
"string"
],
"Name": "string"
}
],
"Definitions": [
{
"Culture": "string",
"Text": "string",
"Note": "string"
}
],
"Synonyms": [
{
"Id": 0,
"Term": "string",
"Properties": [
{
"Values": [
{
"Usage": "string",
"Value": "string",
"IsMultiValue": boolean
}
],
"Name": "string"
}
]
}
]
},
"Id": 0,
"Term": "string",
"Properties": [
{
"Values": [
{
"Usage": "string",
"Value": "string",
"IsMultiValue": boolean
}
],
"Name": "string"
}
]
}
] |
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
[
{
"Concept": {
"ConceptId": 1,
"Properties": [
{
"Values": [
"555588"
],
"Name": "Note"
},
{
"Values": [
{
"Usage": "Undefined",
"Value": "V2",
"IsMultiValue": false
}
],
"Name": "PL1"
}
],
"Definitions": [
{
"Culture": "de-DE",
"Text": "Definition",
"Note": ""
}
],
"Synonyms": [
{
"Id": 0,
"Term": "Test",
"Properties": [
{
"Values": [
{
"Usage": "Normal",
"Value": "main entry term",
"IsMultiValue": false
}
],
"Name": "Term type"
},
{
"Values": [
{
"Usage": "Normal",
"Value": "noun",
"IsMultiValue": false
}
],
"Name": "Part of speech"
},
{
"Values": [
{
"Usage": "Recommended",
"Value": "standard",
"IsMultiValue": false
}
],
"Name": "Usage"
}
]
}
]
},
"Id": 2,
"Term": "Proband",
"Properties": [
{
"Values": [
{
"Usage": "Normal",
"Value": "main entry term",
"IsMultiValue": false
}
],
"Name": "Term type"
},
{
"Values": [
{
"Usage": "Normal",
"Value": "noun",
"IsMultiValue": false
}
],
"Name": "Part of speech"
},
{
"Values": [
{
"Usage": "Normal",
"Value": "masculine",
"IsMultiValue": false
}
],
"Name": "Grammatical gender"
},
{
"Values": [
{
"Usage": "Recommended",
"Value": "standard",
"IsMultiValue": false
}
],
"Name": "Usage"
}
]
}
] |