Verifique no POSTMAN se vc esta enviando um POST.
abaixo segue o codigo que fiz em php e está funcionando, talvez na leitura vc identifique algo q possa estar faltando no seu code.
public function enviarBoletoApi2022($boleto) {
$client = new Client();
$headers = [
'x-itau-apikey' => $this->apiitau_cliente_id,
'x-itau-correlationID' => '3',
'x-itau-flowID' => '3',
'Authorization' => 'Bearer ' . $this->token,
'Content-Type' => 'application/json'
];
$options = ['cert' => [ dirname(__FILE__). "/certificados/cert_{$this->cnpj}.crt"],
'ssl_key' => [ dirname(__FILE__). "/certificados/privada_{$this->cnpj}.key"]];
$id_beneficiario = $boleto['agencia_beneficiario'] . $boleto['conta_beneficiario']. $boleto['digito_verificador_conta_beneficiario'];
if(strlen($boleto['cpf_cnpj_pagador']) == 11) {
$tipo_pessoa = "F";
$numero = 'numero_cadastro_pessoa_fisica": "'.$boleto['cpf_cnpj_pagador'].'"';
} else {
$tipo_pessoa = "J";
$numero = '"numero_cadastro_nacional_pessoa_juridica": "'.$boleto['cpf_cnpj_pagador'].'"';
}
$body = '{"data": {
"etapa_processo_boleto": "efetivacao",
"codigo_canal_operacao": "API",
"beneficiario": {
"id_beneficiario": "'.$id_beneficiario.'"
},
"dado_boleto": {
"descricao_instrumento_cobranca": "boleto",
"tipo_boleto": "a vista",
"codigo_carteira": "'.$boleto['tipo_carteira_titulo'].'",
"valor_total_titulo": "'.$boleto['valor_cobrado'].'",
"codigo_especie": "01",
"valor_abatimento": "000",
"data_emissao": "'.$boleto['data_emissao'].'",
"indicador_pagamento_parcial": true,
"quantidade_maximo_parcial": 0,
"pagador": {
"pessoa": {
"nome_pessoa": "'.$boleto['nome_pagador'].'",
"tipo_pessoa": {
"codigo_tipo_pessoa": "'.$tipo_pessoa.'",
'.$numero.'
}
},
"endereco": {
"nome_logradouro": "'.$boleto['logradouro_pagador'].'",
"nome_bairro": "'.$boleto['bairro_pagador'].'",
"nome_cidade": "'.$boleto['cidade_pagador'].'",
"sigla_UF": "'.$boleto['uf_pagador'].'",
"numero_CEP": "'.$boleto['cep_pagador'].'"
}
},
"dados_individuais_boleto": [
{
"numero_nosso_numero": "'.$boleto['nosso_numero'].'",
"data_vencimento": "'.$boleto['data_vencimento'].'",
"valor_titulo": "'.$boleto['valor_cobrado'].'",
"texto_uso_beneficiario": "",
"texto_seu_numero": "'.$boleto['seu_numero'].'"
}
],
"multa": {
"codigo_tipo_multa": "02",
"quantidade_dias_multa": 1,
"percentual_multa": "000000100000"
},
"juros": {
"codigo_tipo_juros": 90,
"quantidade_dias_juros": 1,
"percentual_juros": "000000100000"
},
"recebimento_divergente": {
"codigo_tipo_autorizacao": "01"
},
"desconto_expresso": false
}
}
}';
try {
$request = new Request('POST', 'https://api.itau.com.br/cash_management/v2/boletos', $headers, $body);
$res = $client->sendAsync($request, $options)->wait();
return json_decode($res->getBody()->getContents(), true);
//return $res->getBody()->getContents();
} catch (\GuzzleHttp\Exception\ClientException $e) {
$response = $e->getResponse();
$responseBodyAsString = json_decode($response->getBody()->getContents());
//var_dump($responseBodyAsString->mensagem);
var_dump($responseBodyAsString);
exit();
}
}