From 63ef7fa19db7eeb2b4aeb8f3f0731f8e336baf1b Mon Sep 17 00:00:00 2001 From: Daniel McPherson <18294661+danmcpherson@users.noreply.github.com> Date: Wed, 25 Sep 2024 14:13:52 +0200 Subject: [PATCH] Sync changes from release-package fork V1.1.1 (#3656) * Sync changes from release-package fork * Update apiDefinition.swagger.json Fixes based on MS review. --------- Co-authored-by: Tendocs Developer --- .../apiDefinition.swagger.json | 1081 ++++++++++++++--- .../Tendocs Documents/apiProperties.json | 6 +- .../Tendocs Documents/readme.md | 6 +- 3 files changed, 898 insertions(+), 195 deletions(-) diff --git a/certified-connectors/Tendocs Documents/apiDefinition.swagger.json b/certified-connectors/Tendocs Documents/apiDefinition.swagger.json index a050a63b97..478d9bab76 100644 --- a/certified-connectors/Tendocs Documents/apiDefinition.swagger.json +++ b/certified-connectors/Tendocs Documents/apiDefinition.swagger.json @@ -2,13 +2,13 @@ "swagger": "2.0", "info": { "title": "Tendocs Documents", - "description": "A fast, simple, and capable service to automate the creation of Office documents based on text, images, documents and tables. More Information: https://www.tendocs.com", + "description": "A fast, simple, and smart service to automate the creation of Office documents using AI, text, images, documents and tables. More Information: https://www.tendocs.com", "contact": { "name": "Support", "url": "https://www.tendocs.com", "email": "support@tendocs.com" }, - "version": "v1" + "version": "v1.1.1" }, "host": "api.tendocs.com", "basePath": "/", @@ -22,8 +22,7 @@ "post": { "tags": [ "Documents", - "Template", - "Collaboration" + "Template" ], "operationId": "V1DocumentTemplatePost", "consumes": [ @@ -44,11 +43,9 @@ ], "responses": { "200": { - "description": "Office Template (Binary) File", + "description": "Success", "schema": { - "format": "binary", - "title": "Template File", - "type": "string" + "$ref": "#/definitions/TemplateResponse" } }, "403": { @@ -61,16 +58,103 @@ "description": "Something has gone wrong, please contact support@tendocs.com" } }, - "summary": "Create New Document From Template", + "summary": "Create a new document from a template", "description": "Create a new Office document by merging an office template with text, images, documents and tables." } }, + "/envelopes/v1/instances": { + "post": { + "tags": [ + "Template", + "Envelopes" + ], + "operationId": "V1EnvelopesInstancesPost", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/EnvelopesInstancesRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/InstancesResponse" + } + }, + "403": { + "description": "The request is not authorized to make the template request" + }, + "404": { + "description": "Service has not been found, please contact support@tendocs.com" + }, + "500": { + "description": "Something has gone wrong, please contact support@tendocs.com" + } + }, + "summary": "Securely share a PDF document", + "description": "Securely share a PDF document with activity tracking, comments, terms and more." + } + }, + "/documents/v1/jsonTemplate": { + "post": { + "tags": [ + "Documents", + "Template" + ], + "operationId": "V1DocumentJsonTemplatePost", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/JsonDocumentTemplateRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/TemplateResponse" + } + }, + "403": { + "description": "The request is not authorized to make the template request" + }, + "404": { + "description": "Service has not been found, please contact support@tendocs.com" + }, + "500": { + "description": "Something has gone wrong, please contact support@tendocs.com" + } + }, + "summary": "Create a new document from a template and JSON", + "description": "Create a new Office document by merging an office template with JSON Object." + } + }, "/conversion/v1/convert": { "post": { "tags": [ "Documents", - "Conversion", - "PDF" + "Conversion" ], "operationId": "V1ConversionConvertPost", "consumes": [ @@ -91,12 +175,9 @@ ], "responses": { "200": { - "description": "Binary File", + "description": "Success", "schema": { - "format": "binary", - "title": "File", - "type": "string", - "example": "[[Binary File]]" + "$ref": "#/definitions/ConversionResponse" } }, "403": { @@ -109,7 +190,7 @@ "description": "Something has gone wrong, please contact support@tendocs.com" } }, - "summary": "Convert a Document to PDF, HTML or TXT", + "summary": "Convert a document to PDF, HTML or TXT", "description": "Convert a document to a new file format. Includes PDF and HTML." } }, @@ -117,8 +198,7 @@ "post": { "tags": [ "Documents", - "AI", - "Summary" + "AI" ], "operationId": "V1AiSummaryPost", "consumes": [ @@ -138,6 +218,21 @@ } ], "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AiSummaryResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "Returns the URL where the results of the job can be retrieved.", + "type": "string" + } + } + }, "403": { "description": "The request is not authorized to make the conversion request" }, @@ -146,65 +241,38 @@ }, "500": { "description": "Something has gone wrong, please contact support@tendocs.com" - }, - "200": { - "description": "default", - "schema": { - "type": "object", - "properties": { - "Type": { - "type": "string", - "example": "Summary" - }, - "Content": { - "type": "string", - "example": "Summary of the document provided." - }, - "Length": { - "type": "number", - "example": 300 - } - }, - "required": [ - "Type", - "Content", - "Length" - ] - } } }, "summary": "Summarise a document using AI", "description": "Create a AI (GPT-4) generated summary of the provided document." } }, - "/ai/v1/tasks/summary/result": { + "/ai/v1/tasks/summary/{jobId}": { "get": { "responses": { "200": { "description": "default", "schema": { - "type": "object", - "properties": { - "Type": { - "type": "string" - }, - "Content": { - "type": "string" - }, - "TargetWords": { - "type": "string" - }, - "Length": { - "type": "number" - } - }, - "required": [ - "Type", - "Content", - "TargetWords", - "Length" - ] + "$ref": "#/definitions/AiSummaryResponse" } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "Returns the URL where the results of the job can be retrieved.", + "type": "string" + } + } + }, + "403": { + "description": "The request is not authorized to make the conversion request" + }, + "404": { + "description": "Service has not been found, please contact support@tendocs.com" + }, + "500": { + "description": "Something has gone wrong, please contact support@tendocs.com" } }, "summary": "V1AiSummaryResult", @@ -213,16 +281,107 @@ "x-ms-visibility": "internal", "parameters": [ { - "name": "runId", - "in": "query", - "required": false, - "type": "string" + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "x-ms-url-encoding": "single" + } + ] + } + }, + "/ai/v1/tasks/templateBuilder": { + "post": { + "tags": [ + "Documents", + "AI" + ], + "operationId": "V1AiTemplateBuilderPost", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/AiTemplateBuilderRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AiTemplateBuilderResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "Returns the URL where the results of the job can be retrieved.", + "type": "string" + } + } + }, + "403": { + "description": "The request is not authorized to make the conversion request" + }, + "404": { + "description": "Service has not been found, please contact support@tendocs.com" + }, + "500": { + "description": "Something has gone wrong, please contact support@tendocs.com" + } + }, + "summary": "Create a new Document from a description", + "description": "Create a new document with a complete Table of Contents, example text and instructions." + } + }, + "/ai/v1/tasks/templatebuilder/{jobId}": { + "get": { + "responses": { + "200": { + "description": "default", + "schema": { + "$ref": "#/definitions/AiTemplateBuilderResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "Returns the URL where the results of the job can be retrieved.", + "type": "string" + } + } + }, + "403": { + "description": "The request is not authorized to make the conversion request" + }, + "404": { + "description": "Service has not been found, please contact support@tendocs.com" }, + "500": { + "description": "Something has gone wrong, please contact support@tendocs.com" + } + }, + "summary": "V1AiTemplateBuilderResult", + "description": "Status of the TemplateBuilder call", + "operationId": "V1AiTemplateBuilderResult", + "x-ms-visibility": "internal", + "parameters": [ { - "name": "threadId", - "in": "query", - "required": false, - "type": "string" + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "x-ms-url-encoding": "single" } ] } @@ -252,6 +411,21 @@ } ], "responses": { + "200": { + "description": "default", + "schema": { + "$ref": "#/definitions/AiCompareResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "Returns the URL where the results of the job can be retrieved.", + "type": "string" + } + } + }, "403": { "description": "The request is not authorized to make the conversion request" }, @@ -260,98 +434,275 @@ }, "500": { "description": "Something has gone wrong, please contact support@tendocs.com" - }, - "200": { - "description": "default", - "schema": { - "type": "object", - "properties": { - "differences": { - "type": "array", - "items": { - "type": "object", - "properties": { - "aspect": { - "type": "string" - }, - "detailsummary": { - "type": "string" - }, - "detail": { - "type": "array", - "items": { - "type": "object", - "properties": { - "Document": { - "type": "string" - }, - "Summary": { - "type": "string" - } - }, - "required": [ - "Document", - "Summary" - ] - } - }, - "importance": { - "type": "string" - } - }, - "required": [ - "aspect", - "detailsummary", - "detail", - "importance" - ] - } - }, - "summary": { - "type": "string" - } - }, - "required": [ - "differences", - "summary" - ] - } } }, "summary": "Compare documents using AI", "description": "Create an AI (GPT-4) comparison of documents (contracts, reports, quotes, etc)." } }, - "/ai/v1/tasks/compare/result": { + "/ai/v1/tasks/compare/{jobId}": { "get": { "responses": { - "default": { + "200": { "description": "default", - "schema": {} + "schema": { + "$ref": "#/definitions/AiCompareResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "Returns the URL where the results of the job can be retrieved.", + "type": "string" + } + } + }, + "403": { + "description": "The request is not authorized to make the conversion request" + }, + "404": { + "description": "Service has not been found, please contact support@tendocs.com" + }, + "500": { + "description": "Something has gone wrong, please contact support@tendocs.com" + } + }, + "summary": "V1AiCompareResult", + "description": "Result of the compare call", + "operationId": "V1AiCompareResult", + "x-ms-visibility": "internal", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "x-ms-url-encoding": "single" + } + ] + } + } + }, + "definitions": { + "TemplateResponse": { + "format": "binary", + "description": "Template File", + "type": "string", + "x-ms-summary": "Processed Template File Contents", + "example": "[[Binary File]]" + }, + "ConversionResponse": { + "format": "binary", + "description": "Template File", + "type": "string", + "x-ms-summary": "Converted File Contents", + "example": "[[Binary File]]" + }, + "InstancesResponse": { + "type": "object", + "properties": { + "url": { + "description": "Secure URL to the document to be shared with the recipient.", + "type": "string", + "x-ms-summary": "Document Url", + "example": "https://app.10docs.com/viewer/555555555555555" + } + }, + "required": [ + "url" + ] + }, + "AiTemplateBuilderResponse": { + "type": "object", + "properties": { + "title": { + "type": "string", + "x-ms-summary": "Document Title", + "description": "Recommended Template title" + }, + "filename": { + "type": "string", + "x-ms-summary": "Document Filename", + "description": "Recommended Template filename" + }, + "outline": { + "type": "array", + "items": { + "type": "object", + "x-ms-summary": "Outline", + "description": "Outline of the template", + "properties": { + "title": { + "type": "string", + "x-ms-summary": "Title", + "description": "Section title" + }, + "summary": { + "type": "string", + "x-ms-summary": "Description", + "description": "Description of the section" + }, + "example": { + "type": "string", + "x-ms-summary": "Example", + "description": "Example content for the section" + }, + "subheadings": { + "type": "array", + "x-ms-summary": "Subheadings", + "description": "Subheadings for the template", + "items": { + "type": "object", + "properties": { + "title": { + "type": "string", + "x-ms-summary": "Title", + "description": "Subsection title" + }, + "summary": { + "type": "string", + "x-ms-summary": "Description", + "description": "Subsection description" + }, + "example": { + "type": "string", + "x-ms-summary": "Example", + "description": "Subsection example" + }, + "subheadings": { + "type": "array", + "description": "Subsections", + "x-ms-summary": "Subsections", + "items": {} + } + }, + "required": [ + "title", + "summary", + "example", + "subheadings" + ] + } + } + }, + "required": [ + "title", + "summary", + "example", + "subheadings" + ] + } + } + }, + "required": [ + "title", + "filename", + "outline" + ] + }, + "AiSummaryResponse": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "Summary", + "x-ms-summary": "Type", + "description": "The type of summary provided." + }, + "content": { + "type": "string", + "example": "Summary of the document provided.", + "x-ms-summary": "Summary", + "description": "Summary of the document." + }, + "targetWords": { + "type": "number", + "example": 300, + "x-ms-summary": "Target", + "description": "The targeted length in words." + }, + "lengthWords": { + "type": "number", + "example": 300, + "x-ms-summary": "Length", + "description": "The length of the summary in words." + } + }, + "required": [ + "type", + "content", + "targetWords", + "lengthWords" + ] + }, + "AiCompareResponse": { + "type": "object", + "properties": { + "differences": { + "type": "array", + "items": { + "type": "object", + "properties": { + "aspect": { + "type": "string", + "x-ms-summary": "Aspect", + "description": "An aspect of the differences between the documents" + }, + "detailSummary": { + "type": "string", + "x-ms-summary": "Summary", + "description": "Describes the differences between the two documents" + }, + "detail": { + "type": "array", + "items": { + "type": "object", + "properties": { + "document": { + "type": "string", + "x-ms-summary": "Document", + "description": "The Document the summary is referring to" + }, + "summary": { + "type": "string", + "x-ms-summary": "Document Summary", + "description": "Description of the difference based on one of the documents" + } + }, + "x-ms-summary": "Difference", + "description": "Difference compared to the other document.", + "required": [ + "document", + "summary" + ] + }, + "x-ms-summary": "Details", + "description": "Details of the changes across both documents." + }, + "importance": { + "type": "string", + "x-ms-summary": "Importance", + "description": "Assessment of how important this difference is" + } + }, + "required": [ + "aspect", + "detailSummary", + "detail", + "importance" + ] } }, - "summary": "V1AiCompareResult", - "description": "Result of the compare call", - "operationId": "V1AiCompareResult", - "x-ms-visibility": "internal", - "parameters": [ - { - "name": "runId", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "threadId", - "in": "query", - "required": false, - "type": "string" - } - ] - } - } - }, - "definitions": { + "summary": { + "type": "string" + } + }, + "required": [ + "differences", + "summary" + ] + }, "DocumentTemplateRequest": { "required": [ "template" @@ -373,9 +724,12 @@ } }, "example": { - "$content-type": "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - "$content": "UEsDBBQABgAIAAAAIQCqt...[[Base64 Encoded File]]" - } + "file": { + "$content-type": "application/vnd.openxmlformats-officedocument.wordprocessingml.document", + "$content": "iVBORw0KGgoAAAANSUhEUgA...[[Base64 Encoded File]]" + } + }, + "description": "Office Template" }, "images": { "type": "array", @@ -416,6 +770,7 @@ } ], "x-ms-summary": "Image", + "description": "Collection of images to be merged into the document", "x-ms-visibility": "advanced" }, "text": { @@ -426,7 +781,7 @@ "example": { "Title": "10docs", "CompanyName": "10docs", - "CompanySlogan": "Delivering stuff you didn't expect", + "CompanySlogan": "Delivering things", "InvoiceNumber": "9999999", "CompanyStreetAddress": "1 Documentation Road", "CompanyCity": "Small Town", @@ -435,11 +790,6 @@ "InvoiceToName": "Joost van Hoorn", "InvoiceToCompany": "VIP Customer Ltd", "InvoiceToStreetAddress": "101 Client Office Road", - "InvoiceToCity": "Big Town", - "InvoiceToPostCode": "4533", - "InvoiceDate": "2023-01-01", - "InvoiceDescription": "Significant work done.", - "InvoicePurchaseOrder": "PO 32423423", "Modified": "2023-10-24T14:48:26Z", "Created": "2023-08-24T08:17:36Z" } @@ -523,7 +873,8 @@ } ], "x-ms-summary": "Table", - "x-ms-visibility": "advanced" + "x-ms-visibility": "advanced", + "description": "Collection of collections to be merged into the document as tables" }, "configuration": { "type": "object", @@ -557,6 +908,324 @@ } } }, + "EnvelopesInstancesRequest": { + "required": [ + "document", + "introduction", + "email", + "firstName", + "title", + "lastName", + "expiry", + "organisationTitle", + "organisationContactEmail", + "organisationContactName", + "isSignatureRequired" + ], + "type": "object", + "properties": { + "document": { + "type": "object", + "required": [ + "file" + ], + "properties": { + "file": { + "format": "binary", + "type": "string", + "x-ms-visibility": "important", + "x-ms-summary": "PDF Document", + "description": "File Contents of the PDF Document." + } + }, + "example": { + "file": { + "$content-type": "application/pdf", + "$content": "UEsDBBQABgAIAAAAIQCqt...[[Base64 Encoded File]]" + } + }, + "description": "PDF Document" + }, + "configuration": { + "type": "object", + "properties": { + "keys": { + "type": "object", + "description": "Advanced Configuration Settings (use only as instructed)", + "x-ms-visibility": "advanced", + "x-ms-summary": "Configuration Keys" + } + }, + "description": "Configuration Settings", + "example": { + "Keys": { + "example_key1": "example_key_value1", + "example_key2": "example_key_value2" + } + } + }, + "title": { + "type": "string", + "description": "Title of the document, displayed at the top of the document page.", + "x-ms-visibility": "important", + "x-ms-summary": "Document Title", + "example": { + "title": "Updated Health and Safety Protocols" + } + }, + "introduction": { + "type": "string", + "description": "Paragraph of text displayed at the top of the page introducing the purpose and background of the document.", + "x-ms-visibility": "important", + "x-ms-summary": "Document Introduction", + "example": { + "introduction": "This document describes a set of new health and safety protocols which makes it critical all staff have reviewed." + } + }, + "logoUrl": { + "type": "string", + "description": "Full URL to a logo that is displayed in the top left of the document.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Document Logo", + "example": { + "logoUrl": "https://app.tendocs.com/images/doc.png" + } + }, + "email": { + "type": "string", + "description": "Email address of the document recipient.", + "x-ms-visibility": "important", + "x-ms-summary": "Recipient Email", + "example": { + "email": "recipient@10docs.com" + } + }, + "firstName": { + "type": "string", + "description": "The first name of the recipient.", + "x-ms-visibility": "important", + "x-ms-summary": "Recipient First Name", + "example": { + "firstName": "Linda" + } + }, + "lastName": { + "type": "string", + "description": "The last name of the recipient.", + "x-ms-visibility": "important", + "x-ms-summary": "Recipient Last Name", + "example": { + "lastName": "Green" + } + }, + "checkboxText": { + "type": "string", + "description": "When specified a checkbox is displayed along with this text.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Checkbox", + "example": { + "checkboxText": "By checking this box you agree that you have read the updated Health and Safety protocols." + } + }, + "expiry": { + "type": "string", + "description": "The date after which the document is no longer valid and cannot be accessed.", + "x-ms-visibility": "important", + "x-ms-summary": "Expiry Date", + "example": { + "expiry": "2024-06-01T09:00:00Z" + } + }, + "isSignatureRequired": { + "type": "boolean", + "description": "Determines if the recipient name and an empty text box where they need to enter their name is included on the document page.", + "x-ms-visibility": "important", + "x-ms-summary": "Signature Required", + "example": { + "isSignatureRequired": true + } + }, + "organisationTitle": { + "type": "string", + "description": "The title of the company, department or organisation that is responsible for sending the document.", + "x-ms-visibility": "important", + "x-ms-summary": "Organisation Title", + "example": { + "organisation": "Human Resources" + } + }, + "organisationWebsite": { + "type": "string", + "description": "Link to a website. This could be internal, or external to the organisation and provide more details on the document or process.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Organisation Website", + "example": { + "organisationWebsite": "www.10docs.com" + } + }, + "organisationContactEmail": { + "type": "string", + "description": "Email address of the owner, or organisation that is responsible for the document or process.", + "x-ms-visibility": "important", + "x-ms-summary": "Organisation Email", + "example": { + "organisationContactEmail": "owner@10docs.com" + } + }, + "organisationContactPhone": { + "type": "string", + "description": "Phone number of the owner, or organisation that is responsible for the document or process.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Organisation Phone", + "example": { + "organisationContactPhone": "555-5555" + } + }, + "organisationContactName": { + "type": "string", + "description": "Name of the owner who is responsible for the document or process.", + "x-ms-visibility": "important", + "x-ms-summary": "Organisation Owner", + "example": { + "organisationContactName": "Pauline Jones" + } + }, + "organisationContactTitle": { + "type": "string", + "description": "Job title of the owner who is responsible for the document or process.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Organisation Owner Title", + "example": { + "organisationContactTitle": "Head of HR" + } + }, + "commentsEnabled": { + "type": "boolean", + "description": "Choose whether or not a comments box should be included on the document page.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Comments", + "example": { + "commentsEnabled": false + } + }, + "otp": { + "type": "boolean", + "description": "Protect access to the document via a one-time-password sent to the users email.", + "x-ms-visibility": "advanced", + "x-ms-summary": "One Time Password", + "example": { + "otp": false + } + }, + "projectIdentifier": { + "type": "string", + "description": "A unique value that is used to identify a single document sharing campaign.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Project ID", + "example": { + "projectIdentifier": "HR-HealthSafety-Update-001" + } + }, + "completeButtonLabel": { + "type": "string", + "description": "The label that is displayed on the button to complete the document.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Complete Button Label", + "example": { + "completeButtonLabel": "Finish" + } + }, + "completeStatusLabel": { + "type": "string", + "description": "The label displayed on the document when it has been completed.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Complete Document Label", + "example": { + "completeStatusLabel": "Finished" + } + }, + "incompleteStatusLabel": { + "type": "string", + "description": "The label displayed on the document when it is in not complete.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Incomplete Document Label", + "example": { + "incompleteStatusLabel": "In Progress" + } + } + } + }, + "JsonDocumentTemplateRequest": { + "required": [ + "template", + "json" + ], + "type": "object", + "properties": { + "template": { + "type": "object", + "required": [ + "file" + ], + "properties": { + "file": { + "format": "binary", + "type": "string", + "x-ms-visibility": "important", + "x-ms-summary": "Template File", + "description": "File Contents of the Office Document template." + } + }, + "example": { + "$content-type": "application/vnd.openxmlformats-officedocument.wordprocessingml.document", + "$content": "UEsDBBQABgAIAAAAIQCqt...[[Base64 Encoded File]]" + }, + "description": "Office Template" + }, + "json": { + "type": "object", + "description": "JSON Object for merging into the document Template", + "x-ms-visibility": "important", + "x-ms-summary": "JSON Object", + "example": { + "value": { + "companySlogan": "Delivering stuff", + "invoiceNumber": "9999999" + } + } + }, + "configuration": { + "type": "object", + "properties": { + "documentResponseFormat": { + "type": "string", + "enum": [ + "Original", + "PDF", + "HTML" + ], + "description": "The format you would like the document to be converted to.", + "x-ms-visibility": "advanced", + "x-ms-summary": "Document Format" + }, + "keys": { + "type": "object", + "description": "Advanced Configuration Settings (use only as instructed)", + "x-ms-visibility": "advanced", + "x-ms-summary": "Configuration Keys" + } + }, + "description": "Configuration Settings", + "example": { + "documentResponseFormat": "PDF", + "keys": { + "example_key1": "example_key_value1", + "example_key2": "example_key_value2" + } + } + } + } + }, "ConversionConvertRequest": { "type": "object", "required": [ @@ -587,10 +1256,10 @@ "configuration": { "type": "object", "required": [ - "documentresponseformat" + "documentResponseFormat" ], "properties": { - "documentresponseformat": { + "documentResponseFormat": { "type": "string", "enum": [ "PDF", @@ -608,8 +1277,8 @@ } }, "example": { - "documentresponseformat": "PDF", - "Keys": { + "documentResponseFormat": "PDF", + "keys": { "example_key1": "example_key_value1", "example_key2": "example_key_value2" } @@ -648,21 +1317,15 @@ "configuration": { "type": "object", "required": [ - "targetwords" + "targetWords" ], "properties": { - "targetwords": { - "type": "string", - "enum": [ - "Miniature", - "Small", - "Medium", - "Large", - "Massive" - ], - "description": "An indication of how large you would like the summary to be.", + "targetWords": { + "type": "integer", + "description": "The target number of words for the summary.", "x-ms-visibility": "important", - "x-ms-summary": "Word Count" + "x-ms-summary": "Target Word Count", + "minimum": 10 }, "keys": { "type": "object", @@ -672,8 +1335,44 @@ } }, "example": { - "MaximumWordCount": 300, - "Keys": { + "maximumWordCount": 300, + "keys": { + "example_key1": "example_key_value1", + "example_key2": "example_key_value2" + } + }, + "description": "Configuration Settings" + } + } + }, + "AiTemplateBuilderRequest": { + "type": "object", + "required": [ + "description" + ], + "properties": { + "description": { + "type": "string", + "x-ms-visibility": "important", + "x-ms-summary": "Describe the document (< 1000 chars)", + "description": "Template Description", + "maxLength": 1000, + "example": { + "description": "Business Plan for a company that is creating a Software as a Service (SaaS) marketplace, direct to consumer, for purchasing cosmetic products in bulk. The audience is prospective investors, so financial case is important." + } + }, + "configuration": { + "type": "object", + "properties": { + "keys": { + "type": "object", + "description": "Advanced Configuration Settings (use only as instructed)", + "x-ms-visibility": "advanced", + "x-ms-summary": "Configuration Keys" + } + }, + "example": { + "keys": { "example_key1": "example_key_value1", "example_key2": "example_key_value2" } @@ -685,12 +1384,12 @@ "AiCompareRequest": { "type": "object", "required": [ - "comparisondocument", - "sourcedocument", + "comparisonDocument", + "sourceDocument", "configuration" ], "properties": { - "sourcedocument": { + "sourceDocument": { "type": "object", "required": [ "file" @@ -700,7 +1399,7 @@ "format": "binary", "type": "string", "x-ms-visibility": "important", - "x-ms-summary": "File", + "x-ms-summary": "First File", "description": "First file to be compared." } }, @@ -710,7 +1409,7 @@ }, "description": "File to be summarised." }, - "comparisondocument": { + "comparisonDocument": { "type": "object", "required": [ "file" @@ -720,7 +1419,7 @@ "format": "binary", "type": "string", "x-ms-visibility": "important", - "x-ms-summary": "File", + "x-ms-summary": "Second File", "description": "Second file to be compared" } }, @@ -746,7 +1445,7 @@ ], "description": "The profession who would best be able to compare the documents.", "x-ms-visibility": "advanced", - "x-ms-summary": "Document Format" + "x-ms-summary": "Profession" }, "keys": { "type": "object", @@ -757,7 +1456,7 @@ }, "example": { "profession": "Lawyer", - "Keys": { + "keys": { "example_key1": "example_key_value1", "example_key2": "example_key_value2" } diff --git a/certified-connectors/Tendocs Documents/apiProperties.json b/certified-connectors/Tendocs Documents/apiProperties.json index f4884ee73e..17cd6c0f6e 100644 --- a/certified-connectors/Tendocs Documents/apiProperties.json +++ b/certified-connectors/Tendocs Documents/apiProperties.json @@ -15,8 +15,10 @@ } } }, - "iconBrandColor": "#282828", - "capabilities": ["Actions"], + "iconBrandColor": "#000000", + "capabilities": [ + "Actions" + ], "publisher": "Tendocs", "stackOwner": "Tendocs" } diff --git a/certified-connectors/Tendocs Documents/readme.md b/certified-connectors/Tendocs Documents/readme.md index 1afa71bb7e..76b06e88eb 100644 --- a/certified-connectors/Tendocs Documents/readme.md +++ b/certified-connectors/Tendocs Documents/readme.md @@ -8,7 +8,7 @@ You will need the following to proceed: * The Power platform CLI tools ## Deployment Instructions -The connector can be deployed in one of two ways, described below. +The connector can be deployed in one of two ways. ### Using the Power Platform Connector CLI Run the following commands and follow the prompts: @@ -28,8 +28,10 @@ Use the following values for the the connector security page: ## Supported Operations The connector supports the following operations: -* `Create New Document From Template`: Creates a new document based on a Template (Word, PowerPoint or Excel) that contains any number of Document Replacement Tokens (e.g. {{Name}}, {{Date}}, {{Invoice.Amount}}). The service match any number of text, image, document or tables to these tokens, returning a new document in it's original, PDF or HTML format, that merges it all together. * `Convert Document To New File Format`: Provides for the conversion of standard Office documents (docx, pptx, xlsx) to a variety of other document formats, including PDF and HTML. +* `Convert a Document (PDF/HTML/TXT)`: Provides for the conversion of standard Office documents (docx, pptx, xlsx) to a variety of other document formats, including PDF and HTML. +* `Compare documents (AI)`: Compares two documents, summarises the differences, identifying specific deifferences, and indicating how big the difference is. +* `Summarise a document (AI)`: Summarises a document down to an approximate length. ## Known Issues and Limitations - Number of Text Token limited to a maximum of 128.