Sample code for 30+ languages & platforms
Dart

MedTunnel: Get Message Attachment

See more MedTunnel Examples

Get a specific attachment of a message. The MessageId and AttachmentId are obtained from the "Get Mailbox Messages" example.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // This example assumes the Chilkat API to have been previously unlocked.
  // See Global Unlock Sample for sample code.

  final http = CkHttp();

  // Implements the following CURL command:

  // curl -X GET -k 
  //         -H "Authorization:PutAuthorizationTokenHere" 
  //         https://server.medtunnel.com/medtunnelmsg/api/Message/GetAttachment?messageid=989448&attachmentid=424857&setreadflag=false

  // Use the following online tool to generate HTTP code from a CURL command
  // Convert a cURL Command to HTTP Source Code

  http.setRequestHeader('Authorization', 'PutAuthorizationTokenHere');

  // The messageId and attachmentId are contained in the response from reading the mailbox messages.
  http.setUrlVar('messageId', '989448');
  http.setUrlVar('attachmentId', '424857');
  http.setUrlVar('setReadFlag', 'false');

  // Download the attachment data into bd.
  final bd = CkBinData();
  try {
    http.quickGetBd('https://server.medtunnel.com/MedTunnelMsg/api/Message/GetAttachment?messageid={\$messageId}&attachmentid={\$attachmentId}&setreadflag={\$setReadFlag}', bd);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  final respStatusCode = http.lastStatus;
  print('Response Status Code = $respStatusCode');
  if (respStatusCode >= 400) {
    print('Response Header:');
    print(http.lastHeader);
    // For errors, the response body contains an error message instead of the actual attachment data.
    print('Response Body:');
    print(bd.getString('utf-8'));
    print('Failed.');
    return;
  }

  // Save the attachment data.
  // The attachment filename is also contained in the response from reading the mailbox messages.
  try {
    bd.writeFile('qa_output/starfish.jpg');
    print('Success.');
  } on ChilkatException {
    print('Failed to save attachment file.');
  }
}