Name:
interface
Value:
Amplify has re-imagined the way frontend developers build fullstack applications. Develop and deploy without the hassle.

Page updated Oct 15, 2024

Create, update, and delete application data

In this guide, you will learn how to create, update, and delete your data using Amplify Libraries' Data client.

Before you begin, you will need:

Create an item

You can run a GraphQL mutation with Amplify.API.mutate to create your data.

Future<void> createTodo() async {
try {
final todo = Todo(name: 'my first todo', description: 'todo description');
final request = ModelMutations.create(todo);
final response = await Amplify.API.mutate(request: request).response;
final createdTodo = response.data;
if (createdTodo == null) {
safePrint('errors: ${response.errors}');
return;
}
safePrint('Mutation result: ${createdTodo.name}');
} on ApiException catch (e) {
safePrint('Mutation failed: $e');
}
}

Update an item

To update the Todo with a new name:

Future<void> 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');
}

Delete an item

To delete the Todo:

Future<void> deleteTodo(Todo todoToDelete) async {
final request = ModelMutations.delete(todoToDelete);
final response = await Amplify.API.mutate(request: request).response;
safePrint('Response: $response');
}

Or you can delete by ID, which is ideal if you do not have the instance in memory yet:

Future<void> 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');
}

Conclusion

Congratulations! You have finished the Create, update, and delete application data guide. In this guide, you created, updated, and deleted your app data.

Next steps

Our recommended next steps include using the API to query data and subscribe to real-time events to look for mutations in your data. Some resources that will help with this work include: