Reading time: < 1 minutes
The structure for making a call from Flutter to an API and sending parameters to receive data is as follows:
First, we declare and initialize a variable with the API route, in this case, I call it uri:
final uri = 'https://name/api/route';Then, I declare the headers, content-type:
final headers = {
      'Content-Type': 'application/json',
  };I create the body with the necessary data to be sent for the call:
 final body = {
      'email': email,
      'password': password,
    };
final jsonBody = jsonEncode(body);Next, I make the call and store the response in a variable called response:
 final response =
        await http.post(Uri.parse(uri), headers: headers, body: jsonBody);To check if the call was successful, I verify the statusCode and print the response data in JSON format to the console with the following line of code:
if (response.statusCode == 200) {
      print(json.decode(response.body));
  
} else {
      print('Error in request: ${response.statusCode}');
}The complete code for the POST call is shown below:
final uri = 'https://name/api/route';
final body = {
  'email': email,
  'password': password,
};
final headers = {
  'Content-Type': 'application/json',
};
final jsonBody = jsonEncode(body);
final response =
    await http.post(Uri.parse(uri), headers: headers, body: jsonBody);
if (response.statusCode == 200) {
  print(json.decode(response.body));
} else {
  print('Error in request: ${response.statusCode}');
}
Hope this helps! Have a great day.

