     }
 
     /**
-     Create workspace.
-
-     Create a workspace based on component objects. You must provide workspace components defining the content of the new workspace.
-
-     - parameter properties: Valid data defining the content of the new workspace.
-     - parameter failure: A function executed if an error occurs.
-     - parameter success: A function executed with the successful result.
-    */
-    public func createWorkspace(
-        properties: CreateWorkspace? = nil,
-        failure: ((Error) -> Void)? = nil,
-        success: @escaping (Workspace) -> Void)
+     Get a response to a user's input.
+
+     - parameter workspaceID: Unique identifier of the workspace.
+     - parameter request: The user's input, with optional intents, entities, and other properties from the response.
+     - parameter nodesVisitedDetails: Whether to include additional diagnostic information about the dialog nodes that were visited during processing of the message.
+     - parameter failure: A function executed if an error occurs.
+     - parameter success: A function executed with the successful result.
+     */
+    public func message(
+        workspaceID: String,
+        request: MessageRequest? = nil,
+        nodesVisitedDetails: Bool? = nil,
+        failure: ((Error) -> Void)? = nil,
+        success: @escaping (MessageResponse) -> Void)
     {
         // construct body
-        guard let body = try? JSONEncoder().encodeIfPresent(properties) else {
+        guard let body = try? JSONEncoder().encodeIfPresent(request) else {
             failure?(RestError.serializationError)
             return
         }

    }

    /**
     Update entity.

     Update an existing entity with new or modified data.

     - parameter workspaceID: The workspace ID.
     - parameter entity: The name of the entity.
     - parameter properties: An UpdateEntity object defining the updated content of the entity.
     - parameter failure: A function executed if an error occurs.
     - parameter success: A function executed with the successful result.
    */
    public func updateEntity(
        workspaceID: String,
        entity: String,
        properties: UpdateEntity,
        failure: ((Error) -> Void)? = nil,
        success: @escaping (Entity) -> Void)
    {

     - parameter cursor: A token identifying the last value from the previous page of results.
     - parameter failure: A function executed if an error occurs.
     - parameter success: A function executed with the successful result.
     */
    public func listSynonyms(
        workspaceID: String,
        entity: String,
