Uma api feita baseada em uma prova para desenvolvedores juniors da DevMedia, onde originalmente era para ter sindo feito com php e mysql. Eu fiz com go e postgrsql e acresentei mais coisas no que tinha na ideia original. Essas melhorias foram feitas com objetivo de testar meus conhecimentos.
Os dados de qualquer requisição ou resposta desta API será transferidos pelo formato JSON.
exemplos de JSON a serem enviados pelo corpo da requisição.
## object
{
"attribute: "value",
"attribute": [{
"attribute: "value",
}]
}
## array
[
{
"attribute: "value",
},
{
"attribute: "value",
}
]
passando dados pela URL.
/example?attribute=value&attribute=value
STATUS = 403, 404, 407, 500 => { "code": integer, "message": string, "mid": string, }
criando um nova categoria
request | type | method |
---|---|---|
body | object | POST |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
kind |
string |
255 |
true |
tipo da categoria |
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
listando categorias
request | type | method |
---|---|---|
queries | - | GET |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
count |
int |
numero linhas trazidas do database |
categorias |
[]Categoria |
array de categorias |
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
Categoria | type | description |
---|---|---|
id |
string |
id da categoria |
kind |
string |
tipo da categoria |
buscando uma categoria por id de categoria
request | type | method |
---|---|---|
queries | - | GET |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
id |
string |
id da categoria |
kind |
string |
tipo da categoria |
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
atualizando uma categoria por id de categoria
request | type | method |
---|---|---|
body | object | PUT |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
kind |
string |
255 |
true |
tipo da categoria |
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
deletando uma categoria por id de categoria
request | type | method |
---|---|---|
queries | - | DELETE |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
criando um nova notícia
request | type | method |
---|---|---|
body | object | POST |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
titulo |
string |
255 |
true |
titulo da notícia |
conteudos |
[]conteudo |
- |
true |
topicos da notícia |
categoria |
string |
100 |
true |
categoria da notícia |
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
conteudo | type | size | is it required? | description |
---|---|---|---|---|
subTitulo |
string |
255 |
true |
subtitulo da notícia(titulo do topico) |
texto |
string |
5000 |
true |
texto do topico |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
listando todas as noticias
request | type | method |
---|---|---|
queries | - | GET |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
count |
int |
numero linhas trazidas do database |
noticias |
[]Noticias |
array de noticias |
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
Noticias | type | description |
---|---|---|
id |
string |
id da noticia |
titulo |
string |
titulo da notícia |
conteudos |
[]conteudo |
topicos da notícia |
categoria |
string |
categoria da notícia |
conteudo | type | description |
---|---|---|
subTitulo |
string |
subtitulo da notícia(titulo do topico) |
texto |
string |
texto do topico |
listando noticias por titulo ou categoria
request | type | method |
---|---|---|
queries | - | GET |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
count |
int |
numero linhas trazidas do database |
noticias |
[]Noticias |
array de noticias |
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
Noticias | type | description |
---|---|---|
id |
string |
id da noticia |
titulo |
string |
titulo da notícia |
conteudos |
[]conteudo |
topicos da notícia |
categoria |
string |
categoria da notícia |
conteudo | type | description |
---|---|---|
subTitulo |
string |
subtitulo da notícia(titulo do topico) |
texto |
string |
texto do topico |
atualizando uma noticia por id de noticia
request | type | method |
---|---|---|
body | object | PUT |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
titulo |
string |
255 |
true |
titulo da notícia |
conteudos |
[]conteudo |
- |
true |
topicos da notícia |
categoria |
string |
100 |
true |
categoria da notícia |
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
conteudo | type | size | is it required? | description |
---|---|---|---|---|
cid |
string |
36 |
true |
id do conteudo |
subTitulo |
string |
255 |
true |
subtitulo da notícia(titulo do topico) |
texto |
string |
5000 |
true |
texto do topico |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
deletando uma noticia por id de noticia
request | type | method |
---|---|---|
queries | - | DELETE |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
buscando uma noticia pelo seu id
request | type | method |
---|---|---|
queries | - | GET |
attribute name | type | size | is it required? | description |
---|---|---|---|---|
mid |
string |
- |
false |
mensagem da resposta caso o codigo http seja 200 |
request | type | status |
---|---|---|
body | object | 200 |
attribute name | type | description |
---|---|---|
id |
string |
id da noticia |
titulo |
string |
titulo da notícia |
conteudos |
[]conteudo |
topicos da notícia |
categoria |
string |
categoria da notícia |
mid |
string |
mensagem da resposta caso o codigo http seja 200 |
conteudo | type | description |
---|---|---|
subTitulo |
string |
subtitulo da notícia(titulo do topico) |
texto |
string |
texto do topico |
the end! made by Jonatas.