diff --git a/Controllers/TarefaController.cs b/Controllers/TarefaController.cs
index ba96b30f..c088f0db 100644
--- a/Controllers/TarefaController.cs
+++ b/Controllers/TarefaController.cs
@@ -5,7 +5,7 @@
 namespace TrilhaApiDesafio.Controllers
 {
     [ApiController]
-    [Route("[controller]")]
+    [Route("api/[controller]")]
     public class TarefaController : ControllerBase
     {
         private readonly OrganizadorContext _context;
@@ -19,16 +19,20 @@ public TarefaController(OrganizadorContext context)
         public IActionResult ObterPorId(int id)
         {
             // TODO: Buscar o Id no banco utilizando o EF
-            // TODO: Validar o tipo de retorno. Se não encontrar a tarefa, retornar NotFound,
+            var tarefa = _context.Tarefas.Find(id);
+            // TODO: Validar o tipo de retorno. Se não encontrar a tarefa, retornar NotFound,           
+            if (tarefa == null)
+                return NotFound();
             // caso contrário retornar OK com a tarefa encontrada
-            return Ok();
+            return Ok(tarefa);
         }
 
         [HttpGet("ObterTodos")]
         public IActionResult ObterTodos()
         {
             // TODO: Buscar todas as tarefas no banco utilizando o EF
-            return Ok();
+            var tarefas = _context.Tarefas.ToList();
+            return Ok(tarefas);
         }
 
         [HttpGet("ObterPorTitulo")]
@@ -36,10 +40,13 @@ public IActionResult ObterPorTitulo(string titulo)
         {
             // TODO: Buscar  as tarefas no banco utilizando o EF, que contenha o titulo recebido por parâmetro
             // Dica: Usar como exemplo o endpoint ObterPorData
-            return Ok();
+            var tarefas = _context.Tarefas
+            .Where(t => t.Titulo.Contains(titulo))
+            .ToList();
+            return Ok(tarefas);
         }
 
-        [HttpGet("ObterPorData")]
+        [HttpGet("ObterPorData/yyyy-MM-dd")]
         public IActionResult ObterPorData(DateTime data)
         {
             var tarefa = _context.Tarefas.Where(x => x.Data.Date == data.Date);
@@ -62,6 +69,8 @@ public IActionResult Criar(Tarefa tarefa)
                 return BadRequest(new { Erro = "A data da tarefa não pode ser vazia" });
 
             // TODO: Adicionar a tarefa recebida no EF e salvar as mudanças (save changes)
+            _context.Tarefas.Add(tarefa);
+            _context.SaveChanges();
             return CreatedAtAction(nameof(ObterPorId), new { id = tarefa.Id }, tarefa);
         }
 
@@ -78,7 +87,15 @@ public IActionResult Atualizar(int id, Tarefa tarefa)
 
             // TODO: Atualizar as informações da variável tarefaBanco com a tarefa recebida via parâmetro
             // TODO: Atualizar a variável tarefaBanco no EF e salvar as mudanças (save changes)
-            return Ok();
+            tarefaBanco.Titulo =tarefa.Titulo;
+            tarefaBanco.Descricao =tarefa.Descricao;
+            tarefaBanco.Data =tarefa.Data;
+            tarefaBanco.Status =tarefa.Status;
+            
+            _context.Tarefas.Update(tarefaBanco);
+            _context.SaveChanges();
+
+            return Ok(tarefaBanco);
         }
 
         [HttpDelete("{id}")]
@@ -88,9 +105,10 @@ public IActionResult Deletar(int id)
 
             if (tarefaBanco == null)
                 return NotFound();
-
             // TODO: Remover a tarefa encontrada através do EF e salvar as mudanças (save changes)
-            return NoContent();
+            _context.Tarefas.Remove(tarefaBanco);
+            //return NoContent(); 
+            return Ok(tarefaBanco);//aqui ele retorna as informções do que foi deletado
         }
     }
 }
diff --git a/Migrations/20241019011109_CriacaoTabelaTarefas.Designer.cs b/Migrations/20241019011109_CriacaoTabelaTarefas.Designer.cs
new file mode 100644
index 00000000..e94934f7
--- /dev/null
+++ b/Migrations/20241019011109_CriacaoTabelaTarefas.Designer.cs
@@ -0,0 +1,54 @@
+// <auto-generated />
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using TrilhaApiDesafio.Context;
+
+#nullable disable
+
+namespace TrilhaApiDesafio.Migrations
+{
+    [DbContext(typeof(OrganizadorContext))]
+    [Migration("20241019011109_CriacaoTabelaTarefas")]
+    partial class CriacaoTabelaTarefas
+    {
+        protected override void BuildTargetModel(ModelBuilder modelBuilder)
+        {
+#pragma warning disable 612, 618
+            modelBuilder
+                .HasAnnotation("ProductVersion", "6.0.5")
+                .HasAnnotation("Relational:MaxIdentifierLength", 128);
+
+            SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
+
+            modelBuilder.Entity("TrilhaApiDesafio.Models.Tarefa", b =>
+                {
+                    b.Property<int>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("int");
+
+                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
+
+                    b.Property<DateTime>("Data")
+                        .HasColumnType("datetime2");
+
+                    b.Property<string>("Descricao")
+                        .HasColumnType("nvarchar(max)");
+
+                    b.Property<int>("Status")
+                        .HasColumnType("int");
+
+                    b.Property<string>("Titulo")
+                        .HasColumnType("nvarchar(max)");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("Tarefas");
+                });
+#pragma warning restore 612, 618
+        }
+    }
+}
diff --git a/Migrations/20241019011109_CriacaoTabelaTarefas.cs b/Migrations/20241019011109_CriacaoTabelaTarefas.cs
new file mode 100644
index 00000000..5af09bbb
--- /dev/null
+++ b/Migrations/20241019011109_CriacaoTabelaTarefas.cs
@@ -0,0 +1,35 @@
+using System;
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace TrilhaApiDesafio.Migrations
+{
+    public partial class CriacaoTabelaTarefas : Migration
+    {
+        protected override void Up(MigrationBuilder migrationBuilder)
+        {
+            migrationBuilder.CreateTable(
+                name: "Tarefas",
+                columns: table => new
+                {
+                    Id = table.Column<int>(type: "int", nullable: false)
+                        .Annotation("SqlServer:Identity", "1, 1"),
+                    Titulo = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Descricao = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Data = table.Column<DateTime>(type: "datetime2", nullable: false),
+                    Status = table.Column<int>(type: "int", nullable: false)
+                },
+                constraints: table =>
+                {
+                    table.PrimaryKey("PK_Tarefas", x => x.Id);
+                });
+        }
+
+        protected override void Down(MigrationBuilder migrationBuilder)
+        {
+            migrationBuilder.DropTable(
+                name: "Tarefas");
+        }
+    }
+}
diff --git a/Migrations/OrganizadorContextModelSnapshot.cs b/Migrations/OrganizadorContextModelSnapshot.cs
new file mode 100644
index 00000000..a03c0a7e
--- /dev/null
+++ b/Migrations/OrganizadorContextModelSnapshot.cs
@@ -0,0 +1,52 @@
+// <auto-generated />
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using TrilhaApiDesafio.Context;
+
+#nullable disable
+
+namespace TrilhaApiDesafio.Migrations
+{
+    [DbContext(typeof(OrganizadorContext))]
+    partial class OrganizadorContextModelSnapshot : ModelSnapshot
+    {
+        protected override void BuildModel(ModelBuilder modelBuilder)
+        {
+#pragma warning disable 612, 618
+            modelBuilder
+                .HasAnnotation("ProductVersion", "6.0.5")
+                .HasAnnotation("Relational:MaxIdentifierLength", 128);
+
+            SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
+
+            modelBuilder.Entity("TrilhaApiDesafio.Models.Tarefa", b =>
+                {
+                    b.Property<int>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("int");
+
+                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
+
+                    b.Property<DateTime>("Data")
+                        .HasColumnType("datetime2");
+
+                    b.Property<string>("Descricao")
+                        .HasColumnType("nvarchar(max)");
+
+                    b.Property<int>("Status")
+                        .HasColumnType("int");
+
+                    b.Property<string>("Titulo")
+                        .HasColumnType("nvarchar(max)");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("Tarefas");
+                });
+#pragma warning restore 612, 618
+        }
+    }
+}
diff --git a/appsettings.Development.json b/appsettings.Development.json
index 9978cbfd..0991548a 100644
--- a/appsettings.Development.json
+++ b/appsettings.Development.json
@@ -6,6 +6,6 @@
     }
   },
   "ConnectionStrings": {
-    "ConexaoPadrao": "COLOCAR SUA CONNECTION STRING AQUI"
+    "ConexaoPadrao": "Server=localhost\\SQLEXPRESS01; Initial Catalog =Tarefa; Integrated Security=True ; TrustServerCertificate=True ; Encrypt=False"
   }
 }