API REST é um tipo de arquitetura pra sistemas distribuídos, ele é baseado em alguns princípios como na utilização de recursos identificados como URI que é um identificador que pode ser usado para acessar um recurso na web e utilizando hiperlinks para conectar informações, o que permite a navegação em diferentes cenarios.
Já RESTful, é a aplicação de princípios REST na construção de APIs, ou seja, a implementação efetiva de uma API seguindo as diretrizes e boas práticas estabelecidas pelo estilo arquitetural REST.
A diferença principal entre REST e RESTful se deve a pratica real na qual, enquanto REST descreve uma forma de arquitetura, RESTful termina sendo a implementação na vida real no uso dessa arquitetura em uma API em especifico. De forma resumida, REST é um conceito teórico no mundo das ideias, enquanto RESTful é a aplicação prática desse conceito no mundo real.
Os verbos HTTP, como GET, POST, PUT e DELETE, servem pra indicar as ações que serão realizadas nos dados de APIs RESTful onde:
GET
: Serve para eecuperar informações.POST
: Para criar novos recursos.PUT
: Atualizar alguem recurso já existente.DELETE
: Apagar recursos que existem.
Os códigos de status HTTP servem para retornar uma resposta a uma requisição feita em uma API, indicando o resultado da operação. Eles podem informar se a requisição foi bem sucedida, se ocorreu um erro do lado do cliente ou do servidor, entre outras situações. Os exemplos mais comuns de códigos de status são:
200 (OK)
: Sucesso na requisição.404 (Not Found)
: Recurso não encontrado.500 (Internal Server Error)
: Erro interno do servidor.