createTaskWithHttpInfo method
- CreateTaskRequest createTaskRequest, {
- String? accountId,
- String? provider,
- String? xWorkspaceID,
Create a task.
Creates a new task under the target account. Target resolution mirrors POST /v1/notes: body accountId → ?accountId= → body provider → ?provider= → caller's single connected account (errors ambiguous_account if more than one and no selector).
Note: This method returns the HTTP Response.
Parameters:
-
CreateTaskRequest createTaskRequest (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 provider: Provider id (e.g.
native-notes,notion). Selects every connected account for the provider. Mutually exclusive withaccountId. -
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> createTaskWithHttpInfo(CreateTaskRequest createTaskRequest, { String? accountId, String? provider, String? xWorkspaceID, }) async {
// ignore: prefer_const_declarations
final path = r'/v1/tasks';
// ignore: prefer_final_locals
Object? postBody = createTaskRequest;
final queryParams = <QueryParam>[];
final headerParams = <String, String>{};
final formParams = <String, String>{};
if (accountId != null) {
queryParams.addAll(_queryParams('', 'accountId', accountId));
}
if (provider != null) {
queryParams.addAll(_queryParams('', 'provider', provider));
}
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,
);
}