Update API's - thenibirahmed/wp-client-management GitHub Wiki

Update a Client

Endpoint

/client/update/{id}

Endpoint for getting the client details for UI

/client/{id}/details

Note: We need an API to retrieve the client's details for updating.

   client/{id}/edit

Payload for updating a client

    {
       name: '',
       email: '',
       phone: '',
       address: '',
       city: '',
       state: '',
       country: '',
       zip: '',
       organization: '',
    }

Update a project ->

Endpoint ->

   /project/update/{id}

Note: We need a few API's according to the project update form need,

   /select-employee
   /select-client
   /select/project/status
   /select/project/priority

payload for updating project ->

  {
      title : '',
      manager_id: , // this will come from the "/select-employee" endpoint 
      client_id: , // this will come from the "/select-client" endpoint
      status_id: , // this will come from the "/select/project/status" endpoint
      priority_id: , // this will come from the "/select/project/priority" endpoint.
      budget: ,
      start_date: '',
      due_date: '',
      assignee_ids: [], // That might be an array of team member IDs, come from the "/select-employee" API
}

Update File

Endpoint

/file/update/{id}

Payload for updating a file

 {
    project_id : ,  // selected project_id
    title : '',
    url : '' 
}

Update Team Member

endpoint

   /team-member/update/{id}

Extra API that might be needed.

   /select-project

Payload for updating a team member

{
   name: '', // Unique 
   email: '', // Unique 
   phone: '',
   designation: '',
   projectIds: [],  // that might be an array of active projects for assigning the team member. "/select-project"
}

Task Update

   /task/update/{id}

Note: We need two APIs to update tasks:

   /select-employee
   /select/task/priority

Payload for creating task

 {
    title : '',
    assigned_to : ,  // this will come from the "/select-employee" endpoint
    priority_id : ,  // this will come from the "/select/task/priority" endpoint 
    start_date : '',
    end_date : ,
    description : ,
 }

Note Update

   /note/update/{id}

Extra api's

    /select-client
    /select-project

Payload for updating a note

 {
    client_id: ,  //This will come from the client '/select-client' endpoint
    project_id : ,  //This will come from the client '/select-client' endpoint
    note: ''
 }