Если научитесь обращаться к API Дзенмани из powerquery или через VBA буду признателен за помощь. Пока нашел только экспорт данных в Google SpreadSheets (если вам нужно - гуглится по запросу "Ryadnov / zm2gspread")
// Create the data payload for the POST request. currentClientTimestamp задать текущему UnixTime, отбросив последние 3 знака, как сказано в https://github.com/zenmoney/ZenPlugins/wiki/ZenMoney-API#diff // Суть тут в том, чтобы передать хоть какие-нибудь данные в запрос. Тогда PowerQuery сделает POST запрос, а не GET Data = Json.FromValue([lastServerTimestamp = 0, currentClientTimestamp = 1730387544]),
// Set up headers, including the Authorization header. XXXX - ваш токен. можно взять в Zerro.app Headers = [ #"Authorization" = "Bearer XXXXXXXX", #"Content-Type" = "application/json" ],
// Configure the request to use the POST method, pass headers, and include the JSON payload Response = Web.Contents( SourceUrl, [ Headers = Headers, Content = Data, ManualStatusHandling = {400, 404, 500} // Optional: to handle specific status codes manually ] ),
// Parse the response JSON JsonResponse = Json.Document(Response) in JsonResponse
Если научитесь обращаться к API Дзенмани из powerquery или через VBA буду признателен за помощь. Пока нашел только экспорт данных в Google SpreadSheets (если вам нужно - гуглится по запросу "Ryadnov / zm2gspread")
let
// Define the URL for the request
SourceUrl = "https://api.zenmoney.ru/v8/diff/",
// Create the data payload for the POST request. currentClientTimestamp задать текущему UnixTime, отбросив последние 3 знака, как сказано в https://github.com/zenmoney/ZenPlugins/wiki/ZenMoney-API#diff
// Суть тут в том, чтобы передать хоть какие-нибудь данные в запрос. Тогда PowerQuery сделает POST запрос, а не GET
Data = Json.FromValue([lastServerTimestamp = 0, currentClientTimestamp = 1730387544]),
// Set up headers, including the Authorization header. XXXX - ваш токен. можно взять в Zerro.app
Headers = [
#"Authorization" = "Bearer XXXXXXXX",
#"Content-Type" = "application/json"
],
// Configure the request to use the POST method, pass headers, and include the JSON payload
Response = Web.Contents(
SourceUrl,
[
Headers = Headers,
Content = Data,
ManualStatusHandling = {400, 404, 500} // Optional: to handle specific status codes manually
]
),
// Parse the response JSON
JsonResponse = Json.Document(Response)
in
JsonResponse