Update user profile

Updated on 30 Apr 2020

Description

A User or External Entity acting as System User goes through all steps of “Get user profile” Use Case.

Then several update operations performed, including:

  • Update additional information
  • Update an existing user
  • Update and verify contact without confirmation
  • Update business information
  • Update person information
  • Update security settings
  • Update user address

Actors

  1. External Entity that can interact with System Operator API acting as a registered System Operator user with role PROFILE_OWNER.
  2. System Operator running “SDK.Finance” software and exposing the portfolio of financial APIs.

Preconditions

  1. The user must have a System Operator profile with role PROFILE_OWNER.

Basic Flow

By default, this flow assumes that External Entity sends Requests to System Operator Endpoints and System Operator sends back Responses to External Entity.

  1. Perform all steps of Use Case “Get user profile”.
  2. External Entity sends a request to Endpoint “Update additional information”.

API endpoint: https://sdkfinance.app/api/ui/#!/Operator_profile_management/Update_profile_additional_information

Parameters:

userId

Authorization

Request body example:



   "additional":{ 

 

   }

}
  1. External Entity sends a request to Endpoint “Update an existing user”.

API endpoint: https://sdkfinance.app/api/ui/#!/User_management/Update_existing_user

Parameters: 

userId

Authorization

Request body example:



   "active":false

}
  1. External Entity sends a request to Endpoint “Update and verifies contact without confirmation”.

API endpoint: https://sdkfinance.app/api/ui/#!/Operator_profile_management/updateContact

Parameter: userId

Request body example:

{

  "login": "string"

}
  1. External Entity sends a request to Endpoint “Update business information”.

API endpoint: https://sdkfinance.app/api/ui/#!/Owner_profile_management/updateBusinessName

Parameter: userId

Request body example:



   "companyName":"string",

   "type":"eshop",

   "vat":"string",

   "administrator":{ 

      "firstName":"string",

      "lastName":"string",

      "email":"string",

      "phone":"string"

   }

}
  1. External Entity sends a request to Endpoint “Update person information”.

API endpoint: https://sdkfinance.app/api/ui/#!/Owner_profile_management/updateProfile

Parameter: userId

Request body example:



   "person":{ 

      "namePlain":{ 

         "first":"string",

         "last":"string",

         "middle":"string"

      },

      "nameIntl":{ 

         "first":"string",

         "last":"string",

         "middle":"string"

      },

      "description":"string"

   }

}
  1. External Entity sends a request to Endpoint “Update security settings”.

API endpoint: https://sdkfinance.app/api/ui/#!/Owner_profile_management/Update_security_settings

Parameter: userId

Request body example:



   "security":{ 

      "twoFactorsAuthEnabled":false,

      "secretWord":"string",

      "transactionNotification":{ 

         "phone":false,

         "email":false

      },

      "authorizationNotification":{ 

         "phone":false,

         "email":false

      }

   }

}
  1. External Entity sends a request to Endpoint “Update user address”.

API endpoint: https://sdkfinance.app/api/ui/#!/Operator_profile_management/Update_user_address_into_profile

Parameter: userId

Request body example:



   "address":{ 

      "country":"AD",

      "zipCode":"string",

      "city":"string",

      "street":"string",

      "houseNumber":"string"

   }

}
  1. System Operator returns a result information to External Entity. (See Result example below)

Optional Flow with Web Browser UI

  1. Perform all steps of Use Case “Get user profile”.
  2. A user sends a request to Endpoint “Update additional information”.

API endpoint: https://sdkfinance.app/api/ui/#!/Operator_profile_management/Update_profile_additional_information

Parameter: userId

Request body example:



   "additional":{ 

 

   }

}
  1. A user sends a request to Endpoint “Update an existing user”.

API endpoint: https://sdkfinance.app/api/ui/#!/User_management/Update_existing_user

Parameter: userId

Request body example:



   "active":false

}
  1. A user sends a request to Endpoint “Update and verifies contact without confirmation”.

API endpoint: https://sdkfinance.app/api/ui/#!/Operator_profile_management/updateContact

Parameter: userId

Request body example:

{

  "login": "string"

}
  1. A user sends a request to Endpoint “Update business information”.

API endpoint: https://sdkfinance.app/api/ui/#!/Owner_profile_management/updateBusinessName

Parameter: userId

Request body example:



   "companyName":"string",

   "type":"eshop",

   "vat":"string",

   "administrator":{ 

      "firstName":"string",

      "lastName":"string",

      "email":"string",

      "phone":"string"

   }

}
  1. A user sends a request to Endpoint “Update person information”.

API endpoint: https://sdkfinance.app/api/ui/#!/Owner_profile_management/updateProfile

Parameter: userId

Request body example:



   "person":{ 

      "namePlain":{ 

         "first":"string",

         "last":"string",

         "middle":"string"

      },

      "nameIntl":{ 

         "first":"string",

         "last":"string",

         "middle":"string"

      },

      "description":"string"

   }

}
  1. A user sends a request to Endpoint “Update security settings”.

API endpoint: https://sdkfinance.app/api/ui/#!/Owner_profile_management/Update_security_settings

Parameter: userId

Request body example:



   "security":{ 

      "twoFactorsAuthEnabled":false,

      "secretWord":"string",

      "transactionNotification":{ 

         "phone":false,

         "email":false

      },

      "authorizationNotification":{ 

         "phone":false,

         "email":false

      }

   }

}
  1. A user sends a request to Endpoint “Update user address”.

API endpoint: https://sdkfinance.app/api/ui/#!/Operator_profile_management/Update_user_address_into_profile

Parameter: userId

Request body example:



   "address":{ 

      "country":"AD",

      "zipCode":"string",

      "city":"string",

      "street":"string",

      "houseNumber":"string"

   }

}
  1. System Operator returns a result information to External Entity. (See Result example below)

 

Post Conditions

All updated information is reflected on the User profile.

Result 

All updated information is returned back to request the sender with the message and status code:

"status": "ok", (or fail)

"message": "string"