EDDI Extentions

EDDI works with extensions, you can think of them as the features that your current instance of EDDI is supporting , in order to know which features are supported in your instance you can make a GET to /extensionstore/extensions and you will get a json object emphasizing all the details of the extensions in your current EDDI's instance.

HTTP MethodGET
API endpont /extensionstore/extensions

Example : 

Request URL
	http://localhost:7070/extensionstore/extensions

Response Body
[
  {
    "type": "ai.labs.normalizer",
    "displayName": "Input Normalizer",
    "configs": {
      "convertSpecialCharacter": {
        "displayName": "Convert Special Characters",
        "fieldType": "BOOLEAN",
        "defaultValue": true,
        "optional": true
      },
      "allowedChars": {
        "displayName": "Allowed Characters",
        "fieldType": "STRING",
        "defaultValue": "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz <=>#€+&.,:;!?1234567890äÄüÜöÖßéáß",
        "optional": true
      }
    },
    "extensions": {}
  },
  {
    "type": "ai.labs.parser",
    "displayName": "Input Parser",
    "configs": {
      "includeUnknown": {
        "displayName": "Include Unknown Expressions",
        "fieldType": "BOOLEAN",
        "defaultValue": true,
        "optional": true
      },
      "includeUnused": {
        "displayName": "Include Unused Expressions",
        "fieldType": "BOOLEAN",
        "defaultValue": true,
        "optional": true
      },
      "appendExpressions": {
        "displayName": "Append Expressions",
        "fieldType": "BOOLEAN",
        "defaultValue": true,
        "optional": true
      }
    },
    "extensions": {
      "corrections": [
        {
          "type": "ai.labs.parser.corrections.levenshtein",
          "displayName": "Damerau Levenshtein Correction",
          "configs": {
            "distance": {
              "displayName": "Distance",
              "fieldType": "INT",
              "defaultValue": 2,
              "optional": true
            }
          },
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.corrections.stemming",
          "displayName": "Grammar Stemming Correction",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.corrections.phonetic",
          "displayName": "Phonetic Matching Correction",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.corrections.mergedTerms",
          "displayName": "Merged Terms Correction",
          "configs": {},
          "extensions": {}
        }
      ],
      "normalizer": [
        {
          "type": "ai.labs.parser.normalizers.punctuation",
          "displayName": "Punctuation Normalizer",
          "configs": {
            "removePunctuation": {
              "displayName": "Remove Punctuation",
              "fieldType": "BOOLEAN",
              "defaultValue": false,
              "optional": true
            },
            "punctuationRegexPattern": {
              "displayName": "Punctuation RegEx Pattern",
              "fieldType": "STRING",
              "defaultValue": "!?:.,;",
              "optional": true
            }
          },
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.normalizers.specialCharacter",
          "displayName": "Convert Special Character Normalizer",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.normalizers.contractedWords",
          "displayName": "Contracted Word Normalizer",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.normalizers.allowedCharacter",
          "displayName": "Remove Undefined Character Normalizer",
          "configs": {},
          "extensions": {}
        }
      ],
      "dictionaries": [
        {
          "type": "ai.labs.parser.dictionaries.integer",
          "displayName": "Integer Dictionary",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.dictionaries.decimal",
          "displayName": "Decimal Dictionary",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.dictionaries.ordinalNumber",
          "displayName": "Ordinal Numbers Dictionary",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.dictionaries.punctuation",
          "displayName": "Punctuation Dictionary",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.dictionaries.time",
          "displayName": "Time Expression Dictionary",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.dictionaries.email",
          "displayName": "Email Dictionary",
          "configs": {},
          "extensions": {}
        },
        {
          "type": "ai.labs.parser.dictionaries.regular",
          "displayName": "Regular Dictionary",
          "configs": {
            "uri": {
              "displayName": "Resource URI",
              "fieldType": "URI",
              "defaultValue": null,
              "optional": false
            }
          },
          "extensions": {}
        }
      ]
    }
  },
  {
    "type": "ai.labs.behavior",
    "displayName": "Behavior Rules",
    "configs": {
      "uri": {
        "displayName": "Resource URI",
        "fieldType": "URI",
        "defaultValue": null,
        "optional": false
      }
    },
    "extensions": {}
  },
  {
    "type": "ai.labs.output",
    "displayName": "Output Generation",
    "configs": {
      "uri": {
        "displayName": "Resource URI",
        "fieldType": "URI",
        "defaultValue": null,
        "optional": false
      }
    },
    "extensions": {}
  },
  {
    "type": "ai.labs.templating",
    "displayName": "Templating",
    "configs": {},
    "extensions": {}
  },
  {
    "type": "ai.labs.property",
    "displayName": "Property Extraction",
    "configs": {},
    "extensions": {}
  },
  {
    "type": "ai.labs.callback",
    "displayName": "External Callback",
    "configs": {
      "callbackUri": {
        "displayName": "Callback URI",
        "fieldType": "URI",
        "defaultValue": null,
        "optional": false
      },
      "callOnActions": {
        "displayName": "Call on Actions",
        "fieldType": "STRING",
        "defaultValue": "",
        "optional": true
      },
      "timeoutInMillis": {
        "displayName": "Timeout in Milliseconds",
        "fieldType": "URI",
        "defaultValue": 10000,
        "optional": true
      }
    },
    "extensions": {}
  },
  {
    "type": "HttpCallsTask",
    "displayName": null,
    "configs": {},
    "extensions": {}
  }
]
Response Code
	200

Response Headers
{
  "access-control-allow-origin": "*",
  "date": "Sun, 29 Apr 2018 20:26:35 GMT",
  "content-type": "application/json",
  "access-control-allow-headers": "authorization, Content-Type",
  "content-length": "6048",
  "access-control-allow-methods": "GET, PUT, POST, DELETE, PATCH, OPTIONS",
  "access-control-expose-headers": "location"
}