Nifty API
  • Authentication
  • OAuth 2.1
  • v1.0 API
  • API tokens
Information
Apps
    Get AppsgetGet Appget
Authentication
    Generate TokenpostAuthorize (browser entry point)get
Chats
    Get ChatsgetGet Chatget
Documents
    Get DocumentsgetCreate documentpostGet Personal DocumentsgetCreate Personal DocumentpostGet DocumentgetUpdate DocumentputRemove DocumentdeleteMove DocumentputUpdate Document MemberputRemove Document MemberdeleteUpdate DocumentpostUpdate Document LabelsputRemove Document Labelsdelete
Custom Fields
    Get Custom fieldsgetGet Custom fieldget
Files
    Get FilesgetUpload FilespostGet FilegetUpdate FileputRemove FiledeleteCopy FilepostAdd File LabelsputRemove File Labelsdelete
Folders
    Get Folder ChildrengetAdd FolderpostGet Folderget/api/v2.0/folders/{folderId}putRemove FolderdeleteGet Folder Conntentsget
Invite
    Get Inviteeget
Tags
    Get TagsgetCreate TagpostGet TaggetUpdate TagputRemove Tagdelete
Members
    Get Members DetailsgetGet Member Detailsget
Messages
    Get MessagesgetCreate MessagepostGet MessagegetUpdate MessageputRemove MessagedeleteMark Message seenpostMark Message heardpost
Milestones & Lists
    Get MilestonesgetCreate MilestonepostGet MilestonegetUpdate MilestoneputRemove MilestonedeleteMove MilestoneputTie Task To MilestoneputRemove Milestone TaskdeleteArchive Milestonepost
Projects
    Get ProjectsgetCreate ProjectpostGet ProjectgetUpdate ProjectputRemove ProjectdeleteInvite Team Member for projectpostLeave ProjectpostStart ProjectpostGet Project Custom FieldsgetAdd Project Custom FieldspostUpdate Project Custom Fieldsput
Portfolios
    Get PortfoliosgetCreate PortfoliopostGet PortfoliogetUpdate PortfolioputRemove PortfoliodeleteUpdate Portfolio MemberputRemove Portfolio MemberdeleteLeave Portfoliopost
Tasks
    Get TasksgetCreate TaskpostRemove TaskdeleteGet Personal TasksgetCreate Personal TaskpostGet TaskgetUpdate TaskputRemove TaskdeleteUpdate Task MilestoneputComplete TaskpostArchive TaskpostMove TaskpostAssign TaskputRemove AssigneedeleteAdd LabelsputRemove LabelsdeleteGet FieldsgetAdd FieldspostUpdate FieldsputAdd DocumentputClone TaskpostMove Taskpost
Status
    Get StatusesgetCreate StatuspostGet StatusgetUpdate StatusputRemove StatusdeleteMove TaskspostAssign Status MembersputRemove Status Memberdelete
Templates
    Get Templatesget
Time Tracking
    Get Tracked Time ReportgetGet Tracked Time Durationget
Users
    Get User Detailsget
Webhook
    Get WebhooksgetCreate WebhookpostUpdate WebhookputRemove Webhookdelete
Other endpoints
    /get
Schemas
powered by Zudoku
Nifty API v1.0
Nifty API v1.0

Files


Get Files

GET
https://openapi.niftypm.com
/api/v1.0/files

This endpoint fetch list of files based on the given query parameters.

Get Files › query Parameters

project_id
​string · required

Project ID

task_id
​string · required

Task ID

doc_id
​string · required

Document ID

user_id
​string · required

User ID

type
​string

Type

limit
​string

No of records per page

Example: 25
offset
​string

Record Offset

Example: 0
folder_id
​string

Folder ID

name
​string

File Name

group
​string

Group

tag
​string

Tag

sort
​string · enum

Sorting order, default is descending

Enum values:
ascending
descending

Get Files › Responses

Success Response

GetFilesResponseDto
​FileFullResponse[] · required

List of Label records

hasMore
​boolean

True if there are more record else false

Default: false
GET/api/v1.0/files
curl 'https://openapi.niftypm.com/api/v1.0/files?project_id=<string>&task_id=<string>&doc_id=<string>&user_id=<string>' \ --header 'Authorization: Bearer <token>'
Example Responses
{ "hasMore": false, "files": [ { "id": "id", "name": "name", "size": 0, "url": "url", "download": "download", "thumbnail": "thumbnail", "uploader": "uploader", "comments": 0, "created_at": "2024-08-25T15:00:00Z", "googleId": "googleId", "googleType": "googleType", "processed": true, "task": "task", "project_id": "project_id", "message": "message", "labels": [ "string" ], "folder": "folder", "folder_stack": [ "string" ], "document": "document", "annotations_task_id": "annotations_task_id" } ] }
json
application/json

Upload Files

POST
https://openapi.niftypm.com
/api/v1.0/files

This endpoint uploads multiples files.

Upload Files › query Parameters

project_id
​string · required

Project ID

task_id
​string · required

Task ID

doc_id
​string · required

Document ID

folder_id
​string

Folder ID

folder_stack
​string[]

Folder stack

Upload Files › Request Body

FilesUploadDto
files
​string[] · application/octet-stream

It contains list of files path from local desktop to upload.

Upload Files › Responses

The resource created successfully

UploadFilesResponseDto
​FileFullResponse[] · required

List of Label records

message
​string

Success message

POST/api/v1.0/files
curl 'https://openapi.niftypm.com/api/v1.0/files?project_id=<string>&task_id=<string>&doc_id=<string>' \ --request POST \ --header 'Content-Type: multipart/form-data' \ --header 'Authorization: Bearer <token>' \ --form 'files='
Example Request Body
{ "files": [ "" ] }
text
Example Responses
{ "message": "message", "files": [ { "id": "id", "name": "name", "size": 0, "url": "url", "download": "download", "thumbnail": "thumbnail", "uploader": "uploader", "comments": 0, "created_at": "2024-08-25T15:00:00Z", "googleId": "googleId", "googleType": "googleType", "processed": true, "task": "task", "project_id": "project_id", "message": "message", "labels": [ "string" ], "folder": "folder", "folder_stack": [ "string" ], "document": "document", "annotations_task_id": "annotations_task_id" } ] }
json
application/json

Get File

GET
https://openapi.niftypm.com
/api/v1.0/files/{file_id}

This endpoint fetch the details of the file based on unique file identified

Get File › path Parameters

file_id
​string · required

File ID

Get File › Responses

Success Response

FileFullResponse
id
​string · required
name
​string · required
size
​number · required
url
​string · required
download
​string · required
thumbnail
​string · required
uploader
​string · required
comments
​number · required

Number of comments

created_at
​string · date-time · required
googleId
​string · required
googleType
​string · required
processed
​boolean · required
task
​string · required

Task

project_id
​string · required

Project ID

message
​string · required

Message

labels
​string[] · required

List of labels

folder
​string · required

folder

folder_stack
​string[] · required

Folder path stack

document
​string · required

Document

annotations_task_id
​string · required

Annotation Task ID

GET/api/v1.0/files/{file_id}
curl https://openapi.niftypm.com/api/v1.0/files/:file_id \ --header 'Authorization: Bearer <token>'
Example Responses
{ "id": "id", "name": "name", "size": 0, "url": "url", "download": "download", "thumbnail": "thumbnail", "uploader": "uploader", "comments": 0, "created_at": "2024-08-25T15:00:00Z", "googleId": "googleId", "googleType": "googleType", "processed": true, "task": "task", "project_id": "project_id", "message": "message", "labels": [ "string" ], "folder": "folder", "folder_stack": [ "string" ], "document": "document", "annotations_task_id": "annotations_task_id" }
json
application/json

Update File

PUT
https://openapi.niftypm.com
/api/v1.0/files/{file_id}

This endpoint update the file details.

Update File › path Parameters

file_id
​string · required

File ID

Update File › Request Body

UpdateFile
folder_id
​string

Folder ID

folder_stack
​string[]

Folder stack

annotations_task_id
​string

Annotations Task ID

Update File › Responses

Success Response

UpdateFileResponse
message
​string · required

Message

file_id
​string · required

File ID

PUT/api/v1.0/files/{file_id}
curl https://openapi.niftypm.com/api/v1.0/files/:file_id \ --request PUT \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "folder_id": "folder_id", "folder_stack": [ "string" ], "annotations_task_id": "annotations_task_id" }'
Example Request Body
{ "folder_id": "folder_id", "folder_stack": [ "string" ], "annotations_task_id": "annotations_task_id" }
json
Example Responses
{ "message": "message", "file_id": "file_id" }
json
application/json

Remove File

DELETE
https://openapi.niftypm.com
/api/v1.0/files/{file_id}

This endpoint removes the file using the unique file idetifier.

Remove File › path Parameters

file_id
​string · required

File ID

Remove File › Responses

Success Response

GeneralFileResponse
message
​string · required

Success message

id
​string · required

Created Label ID

DELETE/api/v1.0/files/{file_id}
curl https://openapi.niftypm.com/api/v1.0/files/:file_id \ --request DELETE \ --header 'Authorization: Bearer <token>'
Example Responses
{ "message": "message", "id": "id" }
json
application/json

Copy File

POST
https://openapi.niftypm.com
/api/v1.0/files/{file_id}/copy

This endpoint creates a new copy of the file.

Copy File › path Parameters

file_id
​string · required

File ID

Copy File › Request Body

CopyFile
task_id
​string · required

Task ID associated with the file

message_id
​string · required

Message ID associated with the file

project_id
​string · required

Project ID associated with the file

Copy File › Responses

The resource created successfully

No data returned
POST/api/v1.0/files/{file_id}/copy
curl https://openapi.niftypm.com/api/v1.0/files/:file_id/copy \ --request POST \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "task_id": "task_id", "message_id": "message_id", "project_id": "project_id" }'
Example Request Body
{ "task_id": "task_id", "message_id": "message_id", "project_id": "project_id" }
json
Example Responses
No example specified for this content type

Add File Labels

PUT
https://openapi.niftypm.com
/api/v1.0/files/{file_id}/labels

This endpoint adds the labels for the file.

Add File Labels › path Parameters

file_id
​string · required

File ID

Add File Labels › Request Body

UpdateLabels
labels
​string[] · required

Labels

Add File Labels › Responses

Success Response

AddLabelsReponse
message
​string · required

Message

labels
​string[] · required

List of labels

PUT/api/v1.0/files/{file_id}/labels
curl https://openapi.niftypm.com/api/v1.0/files/:file_id/labels \ --request PUT \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "labels": [ "string" ] }'
Example Request Body
{ "labels": [ "string" ] }
json
Example Responses
{ "message": "message", "labels": [ "string" ] }
json
application/json

Remove File Labels

DELETE
https://openapi.niftypm.com
/api/v1.0/files/{file_id}/labels

This endpoint remove the labels from the file.

Remove File Labels › path Parameters

file_id
​string · required

File ID

Remove File Labels › Request Body

UpdateLabels
labels
​string[] · required

Labels

Remove File Labels › Responses

Success Response

RemoveLabelsResponse
message
​string · required

Message

labels
​string[] · required

List of labels

DELETE/api/v1.0/files/{file_id}/labels
curl https://openapi.niftypm.com/api/v1.0/files/:file_id/labels \ --request DELETE \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "labels": [ "string" ] }'
Example Request Body
{ "labels": [ "string" ] }
json
Example Responses
{ "message": "message", "labels": [ "string" ] }
json
application/json

Custom FieldsFolders