MithiDocs

Ideolve API Documentation

Overview

Version    4
Contact    support@ideolve.com  
License   Mithi commercial license
Terms of service https://docs.mithi.com/home/terms-of-services
Download Swagger File Choose the format JSON YAML

Authenticate User API

About this API

This API is used to verify the authenticity of the user.

URL

https://api.ideolve.com/v4/user/{user}/auth

Method

POST

Headers

Client-Id: <Client-Id retrieved from Ideolve App>
Connector-Api-Key: <API key retrieved from Ideolve App>
App-Name: <Name of the application interacting with Ideolve>

Payload - (Mandatory attributes)

Not required

API Response

Content-Type

application/json

Success Response

HTTP Status: 200

{

    "status": "SUCCESS"

}

Error Responses

Required headers of Client-Id, Connector-Api-key and App-Name are not provided

HTTP Status : 401
{
    "status": "UNAUTHORIZED", 
    "reason": "Required request headers are not present."
}

Incorrect Client-Id and API Key pair

HTTP Status : 500
{
    "status": "ERROR", 
    "reason": "Invalid <client id>/<connector api key> provided."
}
 

Create Note API

URL

Method

POST

Headers

Client-Id: <Client-Id retrieved from Ideolve App>
Connector-Api-Key: <API key retrieved from Ideolve App>
App-Name: <Name of the application interacting with Ideolve>

Payload (Mandatory attributes)

{
"notehtmltext": "<Note content in html format>",
"subject": <Title to be added to note>
}

Additional payload

Optional (Append the mentioned payload to requested payload)

To share a note with users

users: { 
        "sharewith" : [ 
                                     { "user" : "<user 1 email id>" }, 
                                     { "user" : "<user 2 email id>" } 
                                ] 
              }

To share a note with groups

users: {
     "sharewith" : [
                                  { "group" : "<group name>" }
                             ]
             }

To share a note with users and groups 

users: {
     "sharewith" : [
                             { "user" : "<user 1 email id>" },
                             { "user" : "<user 2 email id>" },
                             { "group" : "<group name>" }
                          ]
           }

To assign a role along-with sharing a note with users and group

users: {
      "sharewith" : [
                              { "user" : "<user 1 email id>" },
                              { "user" : "<user 2 email id>" },
                              { "group" : "<group name>" }
                           ],
       "role" : [
                              {
                                 "user" : "<user email id>",
                                 "role" : "<any of role names : ShareOnly, Admin, Superadmin>"
                               }
                   ]
            }

To attach tags to the note

tags: [ "starks", "got" ]

To mark a note as read-only, to restrict the owner editing the note in Ideolve

readonly: true

API Response

Content-Type

application/json

Example

{
  "status": "string",
  "note": {
    "noteuuid": "60a06ac4-4255-4574-bb12-d6bbdb32e828",
    "subject": "Title to this note",
    "notehtmltext": "<b>HTML content <i>to<i> this note<b>",
    "notetext": "Plain text content to this note",
    "origin": "web",
    "readonly": true
  },
  "sharestatus": {
    "SUCCESS": [
      {
        "useruuid": "string",
        "usersignupid": "jon.snow@mithi.com",
        "displayname": "string",
        "profilepic": "string",
        "enablereport": true,
        "register": true,
        "verified": true,
        "canaccess": true,
        "showjoyride": true,
        "userinfouuid": "string",
        "newuser": true
      }
    ],
    "ERROR": [
      {
        "user": "string",
        "reason": "string"
      }
    ]
  }
}

Fetch User Workspaces API

About this API

This API is used to fetch workspaces list user is part of

URL

https://api.ideolve.com/v4/user/{user}/workspaces

Method

GET

Headers

Client-Id: <Client-Id retrieved from Ideolve App>
Connector-Api-Key: <API key retrieved from Ideolve App>
App-Name: <Name of the application interacting with Ideolve>

Payload - (Mandatory attributes)

Not required

API Response

Content-Type 

application/json

Success response

HTTP Status: 200

[

    {

        "workspaceuuid": "<workspaceuuid>",

        "id": "<workspaceuuid>",

        "workspace": "<Workspace name>",

        "description": "<Workspace description>"

    }

]

Error responses

If required headers of Client-Id, Connector-Api-key and App-Name are not provided

HTTP Status : 401
{
"status": "UNAUTHORIZED",
"reason": "Required request headers are not present."
}

Incorrect Client-Id and API Key-pair

HTTP Status : 500
{
"status": "ERROR",
"reason": "Invalid <client id>/<connector api key> provided."
}

Get workspace contacts API

About this API

This API is used to fetch users associated in the workspace

URL

https://api.ideolve.com/v4/user/{user}/contacts

Method

GET

Headers

Client-Id: <Client-Id retrieved from Ideolve App>
Connector-Api-Key: <API key retrieved from Ideolve App>
App-Name: <Name of the application interacting with Ideolve>

Query params

query : <contact initials to search contacts or use SHOWALL to fetch all contacts>
workspace : <use workspaceuuid of the workspace to fetch associated contacts to workspace>
workspacefilter : <use allnotes as a filter if workspace is not known, this will fetch contacts associated in all workspaces you are part of>
Note: It is mandatory to add either workspace or workspacefilter param to request.

Payload - (Mandatory attributes)

Not required

Example: To fetch all contacts in specific workspace

https://api.ideolve.com/v4/user/<user>/contacts?query=SHOWALL&workspace=<36 digit unique workspace uuid>

Example: To fetch contacts with initials san in specific workspace

https://api.ideolve.com/v4/user/<user>/contacts?query=san&workspace=<36 digit unique workspace uuid>

Example: To fetch contacts with initials san in all workspaces

https://api.ideolve.com/v4/user/<user>/contacts?query=san&workspacefilter=allnotes

API Response

Content-Type

application/json

Success response

HTTP Status: 200

[

    {

        "useruuid": "<user uuid>",

        "id": "<user uuid>",

        "displayname": "<user display name>",

        "emailid": "<user email id>"

    }

]

Error responses

If required headers of Client-Id, Connector-Api-key and App-Name are not provided

HTTP Status : 401
{
"status": "UNAUTHORIZED",
"reason": "Required request headers are not present."
}

Incorrect Client-Id and API Key-pair

HTTP Status : 500
{
"status": "ERROR",
"reason": "Invalid <client id>/<connector api key> provided."
}

Add file to a Note API

About this API

This API is used to attach file as an attachment to a note

URL

https://api.ideolve.com/v4/user/{user}/note/{noteuuid}/files

Method

POST

Headers

Client-Id: <Client-Id retrieved from Ideolve App>
Connector-Api-Key: <API key retrieved from Ideolve App>
App-Name: <Name of the application interacting with Ideolve>

Query params

workspace: <Provide the workspace uuid where the note belongs>

Payload - (Mandatory attributes)

files[]: <binary file>
Content-Type: multipart/form-data
Content-Disposition: attachment
filename: <filename>
fileuuid: <uniquely generated uuid for the file>

API Response

Content-Type

application/json

Success response

HTTP Status: 200

{

    "file": {

        "fileuuid": "<fileuuid>",

        "noteuuid": "<noteuuid>",

        "filename": "<file name>",

        "filepath": "<file path on the server>",

        "type": "<file type>",

        "creationdate": "<date in standard format>",

        "r_creationdate": <timestamp from epoch time>,

        "filesize": "<size in user friendly format in KB/MB/GB etc>",

        "filesizeinbytes": <file size in bytes>,

        "category": "Image",

        "displayabledate": "<date in display format>",

        "fileext": "<file extension>",

        "link": "<link to download the file>",

        "author": "<User who uploaded this file>",

        "workspaceuuid": "<workspace uuid>",

    },

    "status": "SUCCESS"

}

Error responses

If required headers of Client-Id, Connector-Api-key and App-Name are not provided

HTTP Status : 401
{
"status": "UNAUTHORIZED",
"reason": "Required request headers are not present."
}

Incorrect Client-Id and API Key pair

HTTP Status : 500
{
"status": "ERROR",
"reason": "Invalid <client id>/<connector api key> provided."
}

Download the Swagger file

Choose the format JSON YAML