When you have multiple authorization modes, you can specify the mode with the `authorizationMode` parameter. You can also specify the API name with the `apiName` parameter. ```dart Future<void> mutateWithApiKey() async { final operation = Amplify.API.mutate<String>( request: GraphQLRequest( document: graphQLDocumentString, authorizationMode: APIAuthorizationType.apiKey, ), ); final response = await operation.response; final data = response.data; safePrint('data: $data'); } Future<void> mutateWithIam() async { final operation = Amplify.API.mutate<String>( request: GraphQLRequest( document: graphQLDocumentString, authorizationMode: APIAuthorizationType.iam, ), ); final response = await operation.response; final data = response.data; safePrint('data: $data'); } Future<void> mutateByApiName() async { final operation = Amplify.API.mutate<String>( request: GraphQLRequest( document: graphQLDocumentString, apiName: '[FRIENDLY-NAME-API-WITH-API-KEY]', ), ); final response = await operation.response; final data = response.data; safePrint('data: $data'); } ```