Bom dia!
Aprendi a fazer a conexão em uma API JSON usando a linguagem M no Curso Dominando o Power BI. Abaixo escrevi o código que faz a requisição na API do ERP Sienge e faz os devidos tratamentos para que possa apresentar os dados todos tabelados.
Porém, esta API tem uma conexão web básica onde solicita login e senha, mas durante o curso fala sobre de uma forma vaga e confesso que não compreendi.
Gostaria da ajuda dos participantes do fórum como posso inserir as informações de login e senha dentro do código abaixo?
let
Fonte = Json.Document(
Web.Contents(
"https://api.sienge.com.br",
[
RelativePath = "/{subdomain-do-cliente}/public/api/v1/sales-contracts?",
Query = [
limit = Number.ToText(200),
offset = Number.ToText(0)
]
]
)
),
#"Requisição" =
(numeroPagina) =>
Json.Document(
Web.Contents("https://api.sienge.com.br",
[
RelativePath = "/{subdomain-do-cliente}/public/api/v1/sales-contracts?",
Query = [
limit = Number.ToText(200),
offset = Number.ToText(numeroPagina)
]
]
)
),
#"Resultado" = Fonte[resultSetMetadata][count],
#"Limit" = Fonte[resultSetMetadata][limit],
#"Paginas" = Number.RoundUp(#"Resultado" / #"Limit"),
#"Tabela" =
Table.ExpandRecordColumn(
Table.ExpandListColumn(
Table.FromList(
List.Generate(
()=> [ Pagina = 0, Consulta = try #"Requisição"(0)[results] otherwise null],
each [Pagina] < #"Paginas",
each [Consulta = try #"Requisição"([Pagina]+1)[results] otherwise null, Pagina = [Pagina]+1],
each [Consulta]
), Splitter.SplitByNothing(), null, null, ExtraValues.Error
), "Column1"
), "Column1",
{"id", "enterpriseId", "receivableBillId", "number", "correctionType", "situation", "discountType", "cancellationReason", "discountPercentage", "value", "totalSellingValue", "contractDate", "issueDate", "cancellationDate", "creationDate", "lastUpdateDate", "proRataIndexer", "interestPercentage", "interestType", "fineRate", "lateInterestCalculationType", "dailyLateInterestValue", "containsRemadeInstallments", "externalId", "keysDeliveredAt", "brokers", "salesContractCustomers", "salesContractUnits", "paymentConditions", "links"}
)
in
#"Tabela"