Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Incluso o tópico sobre diferentes tipos de conteúdo

...

Bloco de código
languagejs
GET https://totvs.com/api/fluig/fdn/v1/users/10
{
	_expandables: ["permissions","communities","detailedInformation"],
    id: 10,
    name: "John",
    surname: "Doe",
    age: 25,
    country: "US",
    "links": [
        { "rel": "communities",  "href": "/fdn/v1/communities/5" },
        { "rel": "permissions",  "href": "/fdn/v1/permissions/30" }
    ]             
}

Tipos de Conteúdo

...

O formato padrão e recomendado de tipo de conteúdo nas , ou "Content-Type", a ser trafegado via APIs é "application/json".

Existem Em alguns casos pode existir a necessidade de utilizar "application/xml" , por ex: quando é exigido por legislação, em que pode ser necessário utilizar "application/xml"Nesse casoNessa situação, as mesmas regras definidas nos tópicos anteriores continuam valendo, visto que elas são mais estas estão relacionadas ao schema do que ao tipo em si..
(Se possível, evitar esse uso e sempre priorizar o JSON)

Outro cenário é o download e upload de arquivos . Nesse caso, não binários: Não utilizamos os tipos "multipart/xxxx", e sim os mais específicos ao tipo do arquivo em si, por ex: "image/png" para o download ou upload de um arquivo com extensão ".png".

Versionamento


As APIs devem ser versionadas sempre que alguma alteração quebrar o contrato entre o usuário e a plataforma, a versão deve estar presente na URI e deve estar no forma v{major.minor}.
A versão major indica uma grande versão da API, ou seja, a API mudou significativamente em seu formato e comportamento.
A versão minor indica uma alteração que pode quebrar o código do cliente.
Por exemplo:

...