Skip to content

Commit

Permalink
init diffchecker (#2932)
Browse files Browse the repository at this point in the history
  • Loading branch information
fordosa90 authored Oct 19, 2023
1 parent f2dbfdd commit 8b275ae
Show file tree
Hide file tree
Showing 3 changed files with 392 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,314 @@
{
"swagger": "2.0",
"info": {
"title": "Diffchecker",
"description": "Diffchecker will compare your inputs to find the difference between two text files, images, PDFs and many other.",
"version": "1.0",
"contact": {
"name": "Fördős András",
"email": "fordosa90+ipc_diffcheck@gmail.com"
}
},
"host": "api.diffchecker.com",
"basePath": "/",
"schemes": [
"https"
],
"consumes": [],
"produces": [],
"paths": {
"/public/text": {
"post": {
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"rows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"end": {
"type": "boolean",
"description": "Is it the end?",
"title": "End"
},
"left": {
"type": "object",
"properties": {
"chunks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "Value of difference.",
"title": "Value"
},
"type": {
"type": "string",
"description": "Type of difference, for example 'equal' or 'remove'.",
"title": "Type"
}
}
},
"description": "Array of chunks.",
"title": "Chunks"
},
"line": {
"type": "integer",
"format": "int64",
"description": "Line number, containing the difference.",
"title": "Line"
}
},
"description": "Left text.",
"title": "Left"
},
"right": {
"type": "object",
"properties": {
"chunks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "Value of the difference.",
"title": "Value"
},
"type": {
"type": "string",
"description": "Type of the difference, for example 'equal' or 'remove'.",
"title": "Type"
}
}
},
"description": "Array of chunks.",
"title": "Chunks"
},
"line": {
"type": "integer",
"format": "int64",
"description": "Line number containing the difference.",
"title": "Line"
}
},
"description": "Right text.",
"title": "Right"
},
"insideChanged": {
"type": "boolean",
"description": "Is inside changed?",
"title": "Inside changed"
},
"start": {
"type": "boolean",
"description": "Is it the start?",
"title": "Start"
}
}
},
"description": "Array of differences identified.",
"title": "Rows"
},
"added": {
"type": "integer",
"format": "int64",
"description": "Added number of differences.",
"title": "Added"
},
"removed": {
"type": "integer",
"format": "int64",
"description": "Removed number of differences.",
"title": "Removed"
}
}
}
}
},
"summary": "Check text",
"description": "Diffchecker will compare text to find the difference between two text files.",
"operationId": "CheckText",
"parameters": [
{
"name": "output_type",
"in": "query",
"required": true,
"type": "string",
"default": "json",
"x-ms-summary": "Output type",
"description": "Specifies the type of output you receive in the response body.",
"x-ms-visibility": "internal",
"enum": [
"json",
"html",
"html_json"
]
},
{
"name": "diff_level",
"in": "query",
"required": false,
"type": "string",
"default": "word",
"x-ms-summary": "Diff level",
"description": "Specifies whether you want to diff by word or by character.",
"enum": [
"character",
"word"
]
},
{
"name": "Content-Type",
"in": "header",
"required": true,
"type": "string",
"default": "application/json",
"x-ms-visibility": "internal"
},
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"type": "object",
"properties": {
"left": {
"type": "string",
"description": "Left text you want to diff.",
"title": "Left"
},
"right": {
"type": "string",
"description": "Right text you want to diff.",
"title": "Right"
}
},
"required": [
"left",
"right"
]
}
}
]
}
},
"/public/image": {
"post": {
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"dataUrl": {
"type": "string",
"description": "URL prefixed with the data: scheme, containing the result of the comparison.",
"title": "Data URL"
}
}
}
}
},
"summary": "Check image",
"description": "Find the difference between pictures or other images!",
"operationId": "CheckImage",
"parameters": [
{
"name": "input_type",
"in": "query",
"required": true,
"type": "string",
"default": "json",
"description": "Specifies the request content-type. Value must be one of 'json' or 'form'.",
"x-ms-summary": "Input type",
"x-ms-visibility": "internal",
"enum": [
"json",
"form"
]
},
{
"name": "output_type",
"in": "query",
"required": true,
"type": "string",
"default": "json",
"x-ms-summary": "Output type",
"description": "Specifies the type of output you receive in the response body.",
"x-ms-visibility": "internal",
"enum": [
"json",
"png"
]
},
{
"name": "Content-Type",
"in": "header",
"required": true,
"type": "string",
"default": "application/json",
"x-ms-summary": "Content type",
"x-ms-visibility": "internal"
},
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"type": "object",
"properties": {
"left_image": {
"type": "string",
"description": "String containing data url (prefixed data:) of left image you want to diff (link).",
"title": "Left image"
},
"right_image": {
"type": "string",
"description": "String containing data url (prefixed data:) of right image you want to diff (link).",
"title": "Right image"
}
},
"required": [
"left_image",
"right_image"
]
}
}
]
}
}
},
"definitions": {},
"parameters": {},
"responses": {},
"securityDefinitions": {
"api_key": {
"type": "apiKey",
"in": "header",
"name": "X-Api-Key"
}
},
"security": [],
"tags": [],
"x-ms-connector-metadata": [
{
"propertyName": "Website",
"propertyValue": "https://www.diffchecker.com/"
},
{
"propertyName": "Privacy policy",
"propertyValue": "https://www.diffchecker.com/privacy-policy/"
},
{
"propertyName": "Categories",
"propertyValue": "Data"
}
]
}
47 changes: 47 additions & 0 deletions independent-publisher-connectors/Diffchecker/apiProperties.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"properties": {
"connectionParameters": {
"api_key": {
"type": "securestring",
"uiDefinition": {
"displayName": "API Key",
"description": "(optional) Pass your API Key, to access your paid tier.",
"tooltip": "Provide your API Key",
"constraints": {
"tabIndex": 2,
"clearText": false,
"required": "false"
}
}
},
"emailaddress": {
"type": "securestring",
"uiDefinition": {
"displayName": "Email",
"description": "Pass your email, without having a Diffchecker account to access free tier.",
"tooltip": "Provide your email",
"constraints": {
"tabIndex": 2,
"clearText": false,
"required": "false"
}
}
}
},
"iconBrandColor": "#da3b01",
"capabilities": [],
"policyTemplateInstances": [
{
"templateId": "setqueryparameter",
"title": "Emailaddress",
"parameters": {
"x-ms-apimTemplateParameter.name": "email",
"x-ms-apimTemplateParameter.value": "@connectionParameters('emailaddress')",
"x-ms-apimTemplateParameter.existsAction": "override"
}
}
],
"publisher": "Fördős András",
"stackOwner": "Checker Software Inc."
}
}
31 changes: 31 additions & 0 deletions independent-publisher-connectors/Diffchecker/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Diffchecker

Diffchecker will compare your inputs to find the difference between two text files, images, PDFs and many other.

## Publisher: Fördős András

## Prerequisites

There are no generic pre-requisites to this service as it is generally free, however there is a subscription tier available too with extended benefits to it.

You do need to identify yourself with an email address (does not need to be an actual user of the service).

## Obtain credentials (optional)

Follow the [Sign Up](https://www.diffchecker.com/pricing/) link to register for one of the subscription tiers, and obtain an API key.

When both an email and an API Key is used as connection parameter, the API Key is considered by the service.

## Supported Operations

### Check text
Diffchecker will compare text to find the difference between two text files.

### Check image
Find differences between pictures or other images!

## Known Issues and Limitations

There are currently no known issues with the connector itself, however bear in mind, that it only supports a subset of the operations and data points, that the underlying service provides. Let's connect, if you need additional features!

The underlying service itself has some limitations based on your subscription or usage: [https://www.diffchecker.com/pricing/](https://www.diffchecker.com/pricing/)

0 comments on commit 8b275ae

Please sign in to comment.