createEmailLabelWithHttpInfo method

Future<Response> createEmailLabelWithHttpInfo(
  1. CreateLabelRequest createLabelRequest, {
  2. String? accountId,
  3. String? xWorkspaceID,
})

Create a label.

Note: This method returns the HTTP Response.

Parameters:

  • CreateLabelRequest createLabelRequest (required):

  • String accountId: Connected-account row id. Selects which provider account this request targets when more than one is connected. Mutually exclusive with provider. If omitted on a list endpoint the call fans out across every connected account.

  • String xWorkspaceID: Workspace scope for unscoped tokens. Workspace-scoped PATs and OAuth tokens carry this implicitly; for session/JWT auth without a scoped PAT, pass it explicitly.

Implementation

Future<Response> createEmailLabelWithHttpInfo(CreateLabelRequest createLabelRequest, { String? accountId, String? xWorkspaceID, }) async {
  // ignore: prefer_const_declarations
  final path = r'/v1/mail/labels';

  // ignore: prefer_final_locals
  Object? postBody = createLabelRequest;

  final queryParams = <QueryParam>[];
  final headerParams = <String, String>{};
  final formParams = <String, String>{};

  if (accountId != null) {
    queryParams.addAll(_queryParams('', 'accountId', accountId));
  }

  if (xWorkspaceID != null) {
    headerParams[r'X-Workspace-ID'] = parameterToString(xWorkspaceID);
  }

  const contentTypes = <String>['application/json'];


  return apiClient.invokeAPI(
    path,
    'POST',
    queryParams,
    postBody,
    headerParams,
    formParams,
    contentTypes.isEmpty ? null : contentTypes.first,
  );
}