SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Autor: Danilo Santos
Analista QA
COMO TESTAR API’S
em 15 minutos
COMO FUNCIONA UMA
REQUISIÇÃO
Cliente (Aplicação) está em um Restaurante e verifica no Cardápio o prato desejado
(um suculento Bife). Em seguida chama o Garçom (API) e solicita esse pedido. O
Garçom consulta a disponibilidade do prato na Cozinha (Servidor), e os responsáveis
pelo prato na cozinha informam se o prato está disponível ou indisponível, havendo
disponibilidade do prato, o garçom devolve o prato a você.
TIPOS DE TESTE
Cliente (Aplicação) está em um Restaurante e verifica no Cardápio o prato desejado
(um suculento Bife). Em seguida chama o Garçom (API) e solicita esse pedido. O
Garçom consulta a disponibilidade do prato na Cozinha (Servidor), e os responsáveis
pelo prato na cozinha informam se o prato está disponível ou indisponível, havendo
disponibilidade do prato, o garçom devolve o prato a você.
Teste não funcional: Qual tempo
de resposta da
requisição(Pedido)?
Teste funcional: As informações
trazidas estão corretas?
O código de resposta está
de acordo para o recurso
indisponível?
MÉTODOS QUE SERÃO ABORDADOS
•GET - Obter
•POST - Inserir
•PUT - Alterar
•DELETE - Excluir
CÓDIGOS HTTP DE RETORNO
MAIS COMUNS
http://www.restpatterns.org
• 200 Sucesso
• 201 Criado com sucesso
• 204 Sem conteúdo
• 400 Parâmetros inválidos
• 401 Não Autenticado
• 403 Não Autorizado
• 404 Não Encontrado
• 500 Erro interno do Servidor
FERRAMENTAS PARA TESTE
• Postman
• Apache JMeter
MÉTODO GET
• GET http://api.cozinhadotiodan.com.br/pratos
Método
Protocolo
Endereço da API Recurso

COMO SOLICITAR O BIFE ENTÃO?
PARÂMETRO PATH
• GET http://api.cozinhadotiodan.com.br/pratos/19
• Informando o Id no Path estamos solicitando o nosso glorioso Bifão

ANALISANDO O RETORNO DO MÉTODO GET- ENFIM O BIFE É
RETORNADO
01. HTTP/1.1 200 OK
02. Date: Sat, 01 Oct 2016 02:24:44 GMT
03. Server: Apache/2.2.29 (Unix) mod_fastcgi/2.4.6
mod_wsgi/3.4 Python/2.7.8
PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2
mod_perl/2.0.8 Perl/v5.20.0
04. X-Powered-By: PHP/5.6.2
05. Content-Length: 165
06. Keep-Alive: timeout=5, max=100
07. Connection: Keep-Alive
08. Content-Type: application/json;charset=UTF-8
09.
10. {
11. "code":200,
12. "message":"dados do prato de ID 19",
13. "data":
14. {
15. “pratoid":19,
16. “nomePrato":“Bife",
17. “precoPrato":“20 reais",
18. }
19. }
01. HTTP/1.1 200 OK
02. Date: Sat, 01 Oct 2016 02:24:44 GMT
03. Server: Apache/2.2.29 (Unix) mod_fastcgi/2.4.6
mod_wsgi/3.4 Python/2.7.8
PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2
mod_perl/2.0.8 Perl/v5.20.0
04. X-Powered-By: PHP/5.6.2
05. Content-Length: 165
06. Keep-Alive: timeout=5, max=100
07. Connection: Keep-Alive
08. Content-Type: application/json;charset=UTF-8
09.
10. {
11. "code":200,
12. "message":"dados do prato de ID 19",
13. "data":
14. {
15. “pratoid":19,
16. “nomePrato":“Bife",
17. “precoPrato":“20 reais",
18. }
19. }
O MÉTODO POST
Método
Divisor atributos
Nome do atributo
Valor atributo
POST http://api.cozinhadotiodan.com.br/pratos?valorCalorico=600 calorias
PARÂMETRO QUERY
CADASTRANDO UM NOVO PRATO
• POST http://api.cozinhadotiodan.com.br/pratos?valorCalorico=600calorias
• Body (Corpo da requisição)
• Formato JSON
• {
• “prato" : {
• "nomeDoPrato" : “bife com Quiabo",
• “valorPrato" : “40 reais"
• }
}
ANALISANDO O RETORNO DO
MÉTODO POST
01. HTTP/1.1 201 CREATED
02. Date: Sat, 01 Oct 2016 02:21:30 GMT
03. Server: Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8
PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0
04. X-Powered-By: PHP/5.6.2
05. Content-Length: 165
06. Keep-Alive: timeout=5, max=100
07. Connection: Keep-Alive
08. Content-Type: application/json;charset=UTF-8
09.
10. {
11. "code":, 201,
12. "message":“prato adicionado com sucesso",
13. "data”: {
15. “pratoid":21,
16. “nomePrato":“Bife com Quiabo",
17. “precoPrato":“40reais",
18. “valorCalorico:“600 calorias”
19. }
20. }
Informações do prato cadastradas
devem ser exibidas na resposta
Foi atribuído e criado um novo id para o prato cadastrado
O status response do body está correto
O status response do header está correto
O MÉTODO PUT
• PUT http://api.cozinhadotiodan.com.br/pratos/21
• Formato JSON
{
“prato" : {
"nomeDoPrato" : “bife com Quiabo",
“valorPrato" : “80 reais" ,
“descricaoAlteracao”: ”Crise financeira”
}
}
Acessando o prato criado
ANALISANDO O RETORNO DO
MÉTODO PUT
01. HTTP/1.1 200 OK
02. Date: Sat, 01 Oct 2016 02:21:30 GMT
03. Server: Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8
PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0
04. X-Powered-By: PHP/5.6.2
05. Content-Length: 165
06. Keep-Alive: timeout=5, max=100
07. Connection: Keep-Alive
08. Content-Type: application/json;charset=UTF-8
09.
10. {
11. "code": 200,
12. "message": “prato alterado com sucesso",
13. "data": {
15. “pratoid":21
16. “nomePrato":“bife com Quiabo ",
17. “precoPrato":“80 reais"
18. }
19. }
O valor do prato foi alterado de acordo com a chamada requisitada
O status response do Header está correto
O status Response do Body está correto
O MÉTODO DELETE
• DELETE http://api.cozinhadotiodan.com.br/pratos/21
• 204 Sem Conteúdo
• * Deletando um prato de nossa cozinha
Acessando o prato a ser deletado
ANALISANDO O RETORNO DO
MÉTODO DELETE
Retorno de status HTTP: 204
Status Response
MEUS CONTATOS
danilow86@gmail.com
Linkedin.com/in/danilo-jose-093249a0

Weitere ähnliche Inhalte

Was ist angesagt?

Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetos
soncino
 
Apresentando ferramentas CASE
Apresentando ferramentas CASEApresentando ferramentas CASE
Apresentando ferramentas CASE
Aline Ferreira
 

Was ist angesagt? (20)

Swagger - make your API accessible
Swagger - make your API accessibleSwagger - make your API accessible
Swagger - make your API accessible
 
Todas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágilTodas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágil
 
Testes de contrato
Testes de contratoTestes de contrato
Testes de contrato
 
Exemplo de Plano de testes
Exemplo de Plano de testes Exemplo de Plano de testes
Exemplo de Plano de testes
 
Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
 
Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetos
 
Curso Java Básico - Aula 01
Curso Java Básico - Aula 01Curso Java Básico - Aula 01
Curso Java Básico - Aula 01
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScriptCurso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
 
Apresentando ferramentas CASE
Apresentando ferramentas CASEApresentando ferramentas CASE
Apresentando ferramentas CASE
 
Linguagem PHP
Linguagem PHPLinguagem PHP
Linguagem PHP
 
Curso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTMLCurso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTML
 
Análise Estática de Código
Análise Estática de CódigoAnálise Estática de Código
Análise Estática de Código
 
POO - Aula 10 - Polimorfismo
POO - Aula 10 - PolimorfismoPOO - Aula 10 - Polimorfismo
POO - Aula 10 - Polimorfismo
 
Curso de Desenvolvimento Web - Módulo 02 - CSS
Curso de Desenvolvimento Web - Módulo 02 - CSSCurso de Desenvolvimento Web - Módulo 02 - CSS
Curso de Desenvolvimento Web - Módulo 02 - CSS
 
Selenium webdriver interview questions and answers
Selenium webdriver interview questions and answersSelenium webdriver interview questions and answers
Selenium webdriver interview questions and answers
 
Automação e virtualização de serviços
Automação e virtualização de serviçosAutomação e virtualização de serviços
Automação e virtualização de serviços
 
TestNG - The Next Generation of Unit Testing
TestNG - The Next Generation of Unit TestingTestNG - The Next Generation of Unit Testing
TestNG - The Next Generation of Unit Testing
 
PHP - Introdução
PHP - IntroduçãoPHP - Introdução
PHP - Introdução
 
engenharia-de-requisitos
engenharia-de-requisitosengenharia-de-requisitos
engenharia-de-requisitos
 

Andere mochten auch (15)

Caso callaway
Caso callawayCaso callaway
Caso callaway
 
9_glossary
9_glossary9_glossary
9_glossary
 
Reglamento ilustrado a010 a020 a030
Reglamento ilustrado a010 a020 a030Reglamento ilustrado a010 a020 a030
Reglamento ilustrado a010 a020 a030
 
Espuma contra incendios
Espuma contra incendiosEspuma contra incendios
Espuma contra incendios
 
Metrologia unidades del sistema interncaional
Metrologia unidades del sistema interncaionalMetrologia unidades del sistema interncaional
Metrologia unidades del sistema interncaional
 
Minda Projects Ltd
Minda Projects Ltd Minda Projects Ltd
Minda Projects Ltd
 
CompliCheck_Presentation_2
CompliCheck_Presentation_2CompliCheck_Presentation_2
CompliCheck_Presentation_2
 
Alcatel-Lucent KBN6B
Alcatel-Lucent KBN6BAlcatel-Lucent KBN6B
Alcatel-Lucent KBN6B
 
Des. Cecília Melo - Camargo Correa Hc Pr1
Des. Cecília Melo - Camargo Correa Hc Pr1Des. Cecília Melo - Camargo Correa Hc Pr1
Des. Cecília Melo - Camargo Correa Hc Pr1
 
Alcatel-Lucent UN538
Alcatel-Lucent UN538Alcatel-Lucent UN538
Alcatel-Lucent UN538
 
Credential_Certificate
Credential_CertificateCredential_Certificate
Credential_Certificate
 
Red Argan Catalog
Red Argan CatalogRed Argan Catalog
Red Argan Catalog
 
back
backback
back
 
HCI Technologies Inc
HCI Technologies IncHCI Technologies Inc
HCI Technologies Inc
 
Aula 5 foucault
Aula 5   foucaultAula 5   foucault
Aula 5 foucault
 

Kürzlich hochgeladen

Kürzlich hochgeladen (9)

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 

Apresentacap qaninjaconf

  • 3. COMO FUNCIONA UMA REQUISIÇÃO Cliente (Aplicação) está em um Restaurante e verifica no Cardápio o prato desejado (um suculento Bife). Em seguida chama o Garçom (API) e solicita esse pedido. O Garçom consulta a disponibilidade do prato na Cozinha (Servidor), e os responsáveis pelo prato na cozinha informam se o prato está disponível ou indisponível, havendo disponibilidade do prato, o garçom devolve o prato a você.
  • 4. TIPOS DE TESTE Cliente (Aplicação) está em um Restaurante e verifica no Cardápio o prato desejado (um suculento Bife). Em seguida chama o Garçom (API) e solicita esse pedido. O Garçom consulta a disponibilidade do prato na Cozinha (Servidor), e os responsáveis pelo prato na cozinha informam se o prato está disponível ou indisponível, havendo disponibilidade do prato, o garçom devolve o prato a você. Teste não funcional: Qual tempo de resposta da requisição(Pedido)? Teste funcional: As informações trazidas estão corretas? O código de resposta está de acordo para o recurso indisponível?
  • 5. MÉTODOS QUE SERÃO ABORDADOS •GET - Obter •POST - Inserir •PUT - Alterar •DELETE - Excluir
  • 6. CÓDIGOS HTTP DE RETORNO MAIS COMUNS http://www.restpatterns.org • 200 Sucesso • 201 Criado com sucesso • 204 Sem conteúdo • 400 Parâmetros inválidos • 401 Não Autenticado • 403 Não Autorizado • 404 Não Encontrado • 500 Erro interno do Servidor
  • 7. FERRAMENTAS PARA TESTE • Postman • Apache JMeter
  • 8. MÉTODO GET • GET http://api.cozinhadotiodan.com.br/pratos Método Protocolo Endereço da API Recurso 
  • 9. COMO SOLICITAR O BIFE ENTÃO? PARÂMETRO PATH • GET http://api.cozinhadotiodan.com.br/pratos/19 • Informando o Id no Path estamos solicitando o nosso glorioso Bifão 
  • 10. ANALISANDO O RETORNO DO MÉTODO GET- ENFIM O BIFE É RETORNADO 01. HTTP/1.1 200 OK 02. Date: Sat, 01 Oct 2016 02:24:44 GMT 03. Server: Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0 04. X-Powered-By: PHP/5.6.2 05. Content-Length: 165 06. Keep-Alive: timeout=5, max=100 07. Connection: Keep-Alive 08. Content-Type: application/json;charset=UTF-8 09. 10. { 11. "code":200, 12. "message":"dados do prato de ID 19", 13. "data": 14. { 15. “pratoid":19, 16. “nomePrato":“Bife", 17. “precoPrato":“20 reais", 18. } 19. } 01. HTTP/1.1 200 OK 02. Date: Sat, 01 Oct 2016 02:24:44 GMT 03. Server: Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0 04. X-Powered-By: PHP/5.6.2 05. Content-Length: 165 06. Keep-Alive: timeout=5, max=100 07. Connection: Keep-Alive 08. Content-Type: application/json;charset=UTF-8 09. 10. { 11. "code":200, 12. "message":"dados do prato de ID 19", 13. "data": 14. { 15. “pratoid":19, 16. “nomePrato":“Bife", 17. “precoPrato":“20 reais", 18. } 19. }
  • 11. O MÉTODO POST Método Divisor atributos Nome do atributo Valor atributo POST http://api.cozinhadotiodan.com.br/pratos?valorCalorico=600 calorias
  • 12. PARÂMETRO QUERY CADASTRANDO UM NOVO PRATO • POST http://api.cozinhadotiodan.com.br/pratos?valorCalorico=600calorias • Body (Corpo da requisição) • Formato JSON • { • “prato" : { • "nomeDoPrato" : “bife com Quiabo", • “valorPrato" : “40 reais" • } }
  • 13. ANALISANDO O RETORNO DO MÉTODO POST 01. HTTP/1.1 201 CREATED 02. Date: Sat, 01 Oct 2016 02:21:30 GMT 03. Server: Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0 04. X-Powered-By: PHP/5.6.2 05. Content-Length: 165 06. Keep-Alive: timeout=5, max=100 07. Connection: Keep-Alive 08. Content-Type: application/json;charset=UTF-8 09. 10. { 11. "code":, 201, 12. "message":“prato adicionado com sucesso", 13. "data”: { 15. “pratoid":21, 16. “nomePrato":“Bife com Quiabo", 17. “precoPrato":“40reais", 18. “valorCalorico:“600 calorias” 19. } 20. } Informações do prato cadastradas devem ser exibidas na resposta Foi atribuído e criado um novo id para o prato cadastrado O status response do body está correto O status response do header está correto
  • 14. O MÉTODO PUT • PUT http://api.cozinhadotiodan.com.br/pratos/21 • Formato JSON { “prato" : { "nomeDoPrato" : “bife com Quiabo", “valorPrato" : “80 reais" , “descricaoAlteracao”: ”Crise financeira” } } Acessando o prato criado
  • 15. ANALISANDO O RETORNO DO MÉTODO PUT 01. HTTP/1.1 200 OK 02. Date: Sat, 01 Oct 2016 02:21:30 GMT 03. Server: Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0 04. X-Powered-By: PHP/5.6.2 05. Content-Length: 165 06. Keep-Alive: timeout=5, max=100 07. Connection: Keep-Alive 08. Content-Type: application/json;charset=UTF-8 09. 10. { 11. "code": 200, 12. "message": “prato alterado com sucesso", 13. "data": { 15. “pratoid":21 16. “nomePrato":“bife com Quiabo ", 17. “precoPrato":“80 reais" 18. } 19. } O valor do prato foi alterado de acordo com a chamada requisitada O status response do Header está correto O status Response do Body está correto
  • 16. O MÉTODO DELETE • DELETE http://api.cozinhadotiodan.com.br/pratos/21 • 204 Sem Conteúdo • * Deletando um prato de nossa cozinha Acessando o prato a ser deletado
  • 17. ANALISANDO O RETORNO DO MÉTODO DELETE Retorno de status HTTP: 204 Status Response

Hinweis der Redaktion

  1. Você = Aplicação ,Garçom = Endereço de requisição e cozinha = Mainframe/Servidor
  2. Você = Aplicação ,Garçom = Endereço de requisição e cozinha = Mainframe/Servidor
  3. Há, basicamente, três tipos de parâmetros quando trata-se de APIs REST, são eles: query, path e header. Query são parâmetros enviados ao fim da URI, por exemplo, http://api.juliodelima.com.br/clientes?clientenome=isabelle. Já os parâmetros do tipo Path são passados como parte da URI, vejamos, http://api.juliodelima.com.br/clientes/456. Por fim, parâmetros do tipo Header, são passados diretamente no cabeçalho da requisição ou resposta, neste caso, possui uma propriedade, ex. “x-meu-token”, com um determinado valor, ex. “1c0bda575202fb8d7ff108fca4c0eccc”.
  4. Há, basicamente, três tipos de parâmetros quando trata-se de APIs REST, são eles: query, path e header. Query são parâmetros enviados ao fim da URI, por exemplo, http://api.juliodelima.com.br/clientes?clientenome=isabelle. Já os parâmetros do tipo Path são passados como parte da URI, vejamos, http://api.juliodelima.com.br/clientes/456. Por fim, parâmetros do tipo Header, são passados diretamente no cabeçalho da requisição ou resposta, neste caso, possui uma propriedade, ex. “x-meu-token”, com um determinado valor, ex. “1c0bda575202fb8d7ff108fca4c0eccc”.
  5. Há, basicamente, três tipos de parâmetros quando trata-se de APIs REST, são eles: query, path e header. Query são parâmetros enviados ao fim da URI, por exemplo, http://api.juliodelima.com.br/clientes?clientenome=isabelle. Já os parâmetros do tipo Path são passados como parte da URI, vejamos, http://api.juliodelima.com.br/clientes/456. Por fim, parâmetros do tipo Header, são passados diretamente no cabeçalho da requisição ou resposta, neste caso, possui uma propriedade, ex. “x-meu-token”, com um determinado valor, ex. “1c0bda575202fb8d7ff108fca4c0eccc”.
  6. Há, basicamente, três tipos de parâmetros quando trata-se de APIs REST, são eles: query, path e header. Query são parâmetros enviados ao fim da URI, por exemplo, http://api.juliodelima.com.br/clientes?clientenome=isabelle. Já os parâmetros do tipo Path são passados como parte da URI, vejamos, http://api.juliodelima.com.br/clientes/456. Por fim, parâmetros do tipo Header, são passados diretamente no cabeçalho da requisição ou resposta, neste caso, possui uma propriedade, ex. “x-meu-token”, com um determinado valor, ex. “1c0bda575202fb8d7ff108fca4c0eccc”.
  7. Formato Json