curl --request PATCH \
--url https://api.malvo.io/items/{id}/disable-auto-sync \
--header 'X-API-KEY: <api-key>'const options = {method: 'PATCH', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.malvo.io/items/{id}/disable-auto-sync', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.malvo.io/items/{id}/disable-auto-sync"
headers = {"X-API-KEY": "<api-key>"}
response = requests.patch(url, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.malvo.io/items/{id}/disable-auto-sync",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"connector": {
"id": 612,
"name": "Nubank",
"type": "PERSONAL_BANK",
"imageUrl": "https://malvo.io/connectors/nubank.svg",
"primaryColor": "820AD1",
"isOpenFinance": true,
"isSandbox": false
},
"status": "CREATING",
"executionStatus": "CREATED",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"products": [
"<string>"
],
"consecutiveFailedLoginAttempts": 123,
"lastUpdatedAt": "2023-11-07T05:31:56Z",
"nextAutoSyncAt": "2023-11-07T05:31:56Z",
"clientUserId": "<string>",
"webhookUrl": "<string>",
"consentExpiresAt": "2023-11-07T05:31:56Z",
"statusDetail": {
"accounts": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"creditCards": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"transactions": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"investments": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"identity": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"paymentData": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"loans": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"investmentsTransactions": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
}
},
"error": {
"code": "INVALID_CREDENTIALS",
"message": "The provided credentials are incorrect",
"providerMessage": "Senha inválida. Você tem mais 2 tentativas.",
"attributes": {
"remainingAttempts": "2"
}
},
"parameter": {},
"userAction": {
"instructions": "<string>",
"attributes": {},
"expiresAt": "2023-11-07T05:31:56Z"
},
"oauthRedirectUri": "<string>"
}{
"code": 404,
"message": "Item not found",
"codeDescription": "ITEM_NOT_FOUND"
}{
"code": 404,
"message": "Item not found",
"codeDescription": "ITEM_NOT_FOUND"
}Desativar auto-sync do item
Desativa as atualizações automáticas deste Item. A Malvo também desativa o agendamento correspondente na infraestrutura interna quando ela oferece essa operação. O Item e os dados já persistidos permanecem disponíveis; nextAutoSyncAt passa a null. Atualizações manuais continuam disponíveis.
curl --request PATCH \
--url https://api.malvo.io/items/{id}/disable-auto-sync \
--header 'X-API-KEY: <api-key>'const options = {method: 'PATCH', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.malvo.io/items/{id}/disable-auto-sync', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.malvo.io/items/{id}/disable-auto-sync"
headers = {"X-API-KEY": "<api-key>"}
response = requests.patch(url, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.malvo.io/items/{id}/disable-auto-sync",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"connector": {
"id": 612,
"name": "Nubank",
"type": "PERSONAL_BANK",
"imageUrl": "https://malvo.io/connectors/nubank.svg",
"primaryColor": "820AD1",
"isOpenFinance": true,
"isSandbox": false
},
"status": "CREATING",
"executionStatus": "CREATED",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"products": [
"<string>"
],
"consecutiveFailedLoginAttempts": 123,
"lastUpdatedAt": "2023-11-07T05:31:56Z",
"nextAutoSyncAt": "2023-11-07T05:31:56Z",
"clientUserId": "<string>",
"webhookUrl": "<string>",
"consentExpiresAt": "2023-11-07T05:31:56Z",
"statusDetail": {
"accounts": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"creditCards": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"transactions": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"investments": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"identity": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"paymentData": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"loans": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
},
"investmentsTransactions": {
"isUpdated": true,
"warnings": [
{
"code": "<string>",
"message": "<string>",
"providerMessage": "<string>"
}
],
"lastUpdatedAt": "2023-11-07T05:31:56Z"
}
},
"error": {
"code": "INVALID_CREDENTIALS",
"message": "The provided credentials are incorrect",
"providerMessage": "Senha inválida. Você tem mais 2 tentativas.",
"attributes": {
"remainingAttempts": "2"
}
},
"parameter": {},
"userAction": {
"instructions": "<string>",
"attributes": {},
"expiresAt": "2023-11-07T05:31:56Z"
},
"oauthRedirectUri": "<string>"
}{
"code": 404,
"message": "Item not found",
"codeDescription": "ITEM_NOT_FOUND"
}{
"code": 404,
"message": "Item not found",
"codeDescription": "ITEM_NOT_FOUND"
}Authorizations
Chave de API (apiKey, TTL ~2h) obtida via POST /auth. Enviada no header X-API-KEY.
Path Parameters
Identificador (UUID) do item.
Response
Auto-sync desativado. Retorna o Item atualizado com nextAutoSyncAt=null.
Objeto Item completo (§4.1).
Identificador do item. Sempre inclua-o ao reportar problemas — o suporte não investiga sem ele.
Connector embutido no Item. Na criação/reconsentimento OAuth, oauthUrl contém a URL efêmera de autorização.
Show child attributes
Show child attributes
{
"id": 612,
"name": "Nubank",
"type": "PERSONAL_BANK",
"imageUrl": "https://malvo.io/connectors/nubank.svg",
"primaryColor": "820AD1",
"isOpenFinance": true,
"isSandbox": false
}
Estado do item (nível do item).
CREATING: registro criado, execução ainda não iniciada (não terminal).UPDATING: conexão sincronizando com o provedor (não terminal).LOGIN_IN_PROGRESS: autenticando na instituição (não terminal).WAITING_USER_INPUT: pausado aguardando uma entrada do usuário, tipicamente token MFA.WAITING_USER_ACTION: pausado aguardando uma ação fora do formulário, como aprovar no aplicativo da instituição.UPDATED: último sync concluído com sucesso (possivelmente parcial — verifiqueexecutionStatusestatusDetail); terminal até o próximo sync.OUTDATED: parâmetros validados mas a execução falhou; retriável; terminal até nova tentativa.LOGIN_ERROR: credenciais inválidas; o usuário deve reautenticar; terminal até atualizar as credenciais.
CREATING, UPDATING, LOGIN_IN_PROGRESS, WAITING_USER_INPUT, WAITING_USER_ACTION, UPDATED, OUTDATED, LOGIN_ERROR Estado detalhado da última execução.
Transitivos (em andamento): CREATED (execução na fila), LOGIN_IN_PROGRESS (autenticando, até 5 minutos), LOGIN_MFA_IN_PROGRESS (validando token MFA), ACCOUNTS_IN_PROGRESS (coletando contas), CREDITCARDS_IN_PROGRESS (coletando cartões), TRANSACTIONS_IN_PROGRESS (coletando transações), INVESTMENT_TRANSACTIONS_IN_PROGRESS (coletando transações de investimento), PAYMENT_DATA_IN_PROGRESS (coletando metadados de pagamento das transações — ainda agregação de dados, NÃO iniciação), IDENTITY_IN_PROGRESS (coletando identidade), MERGING (analisando e armazenando dados coletados).
Intermediários (bloqueados): WAITING_USER_INPUT (aguardando entrada do usuário — tipicamente token MFA), WAITING_USER_ACTION (aguardando ação na instituição) e USER_AUTHORIZATION_PENDING (aguardando autorização — aprovação de dispositivo ou redirect regulado ainda não concluído).
Finais — sucesso: SUCCESS (todos os produtos solicitados recuperados), PARTIAL_SUCCESS (alguns produtos falharam — inspecione statusDetail por produto).
Finais — erro: ERROR (erro de conexão inesperado), MERGE_ERROR (dados coletados mas falha ao armazenar/mesclar), INVALID_CREDENTIALS (autenticação falhou), INVALID_CREDENTIALS_MFA (token MFA incorreto ou expirado), USER_INPUT_TIMEOUT (a entrada pedida ao usuário expirou), ALREADY_LOGGED_IN (sessão ativa na instituição bloqueia novo login), SITE_NOT_AVAILABLE (instituição fora do ar), ACCOUNT_LOCKED (conta bloqueada na instituição), ACCOUNT_NEEDS_ACTION (ação manual necessária na instituição — veja userAction), ACCOUNT_CREDENTIALS_RESET (instituição força reset de senha), USER_NOT_SUPPORTED (tipo de conta não suportado pelo connector), CONNECTION_ERROR (não foi possível alcançar a instituição), USER_AUTHORIZATION_NOT_GRANTED (usuário rejeitou o consentimento), USER_AUTHORIZATION_REVOKED (usuário revogou o consentimento na instituição).
CREATED, LOGIN_IN_PROGRESS, LOGIN_MFA_IN_PROGRESS, ACCOUNTS_IN_PROGRESS, CREDITCARDS_IN_PROGRESS, TRANSACTIONS_IN_PROGRESS, INVESTMENT_TRANSACTIONS_IN_PROGRESS, PAYMENT_DATA_IN_PROGRESS, IDENTITY_IN_PROGRESS, MERGING, WAITING_USER_INPUT, WAITING_USER_ACTION, SUCCESS, PARTIAL_SUCCESS, ERROR, MERGE_ERROR, INVALID_CREDENTIALS, INVALID_CREDENTIALS_MFA, USER_INPUT_TIMEOUT, ALREADY_LOGGED_IN, SITE_NOT_AVAILABLE, ACCOUNT_LOCKED, ACCOUNT_NEEDS_ACTION, ACCOUNT_CREDENTIALS_RESET, USER_NOT_SUPPORTED, CONNECTION_ERROR, USER_AUTHORIZATION_PENDING, USER_AUTHORIZATION_NOT_GRANTED, USER_AUTHORIZATION_REVOKED Horário de criação do item.
Última mutação do registro do item.
Produtos que este item coleta.
Contagem de execuções de login que falharam consecutivamente; volta a 0 em login bem-sucedido. Usado pelos clientes para parar de insistir e solicitar ação ao usuário.
Horário de conclusão do último sync bem-sucedido; null até o primeiro sucesso. Âncora do delta-sync.
Próximo auto-sync agendado; null quando o auto-sync está desativado para este item/plano.
Eco do identificador de usuário fornecido pelo caller.
Destino de webhook específico do item.
Expiração conhecida do consentimento/sessão. No fluxo internacional, respeita a validade máxima informada pelo ASPSP.
Detalhamento por produto (§4.4). null até a primeira execução completar.
Show child attributes
Show child attributes
Presente quando a última execução terminou em erro. null caso contrário.
Show child attributes
Show child attributes
{
"code": "INVALID_CREDENTIALS",
"message": "The provided credentials are incorrect",
"providerMessage": "Senha inválida. Você tem mais 2 tentativas.",
"attributes": { "remainingAttempts": "2" }
}
Descritor da credencial pendente quando status = WAITING_USER_INPUT. null caso contrário.
Presente quando a instituição exige uma ação externa para continuar; null caso contrário.
Show child attributes
Show child attributes
Eco da URI de redirect quando fornecida (fluxos OF).