## Run a mutation
Now that the client is set up, you can run a GraphQL mutation with `Amplify.API.mutate` to create, update, and delete your data.
import createTodo from "/src/fragments/lib/graphqlapi/flutter/getting-started/50_createtodo.mdx";
To update the `Todo` with a new name:
```dart
Future updateTodo(Todo originalTodo) async {
final todoWithNewName = originalTodo.copyWith(name: 'new name');
final request = ModelMutations.update(todoWithNewName);
final response = await Amplify.API.mutate(request: request).response;
safePrint('Response: $response');
}
```
To delete the `Todo`:
```dart
Future deleteTodo(Todo todoToDelete) async {
final request = ModelMutations.delete(todoToDelete);
final response = await Amplify.API.mutate(request: request).response;
safePrint('Response: $response');
}
```
```dart
// or delete by ID, ideal if you do not have the instance in memory, yet
Future deleteTodoById(Todo todoToDelete) async {
final request = ModelMutations.deleteById(
Todo.classType,
TodoModelIdentifier(id: '8e0dd2fc-2f4a-4dc4-b47f-2052eda10775'),
);
final response = await Amplify.API.mutate(request: request).response;
safePrint('Response: $response');
}
```