I found the answer, I simply needed to do something like this:
for CHAT in CHATS:
var BUTTON = Button.new()
BUTTON.text = "Full Name - (Username)"
CHATS_CONTAINER.add_child(BUTTON)
Here's the code I ended up using:
func _on_HTTPRequest_request_completed(_result, _response_code, _headers, body):
var RESULT = body.get_string_from_utf8() #Data returned by backend
var USERS = parse_json(RESULT) #parse from json
for USER in USERS:
var CHAT = Button.new() #Create a new button
CHAT.text = USER[1] + " - (" + USER[0] + ")" #set the chat label text
CHAT.connect("pressed", self, "_chat_pressed", [CHAT, USER[0], USER]) #connect the pressed to a function
CHAT.rect_min_size.x = 250
CHAT.rect_min_size.y = 35
CHATS.add_child(CHAT) #add the button to the VBox Container