Criar stored procedure recebendo Json como parâmetro

Boa tarde pessoal, estou tentando criar uma stored procedure no postgresql que recebe como parâmetro um json para armazenar em uma tabela, estou utilizando a função json_to_recordset para isso, porém está gravando todos os valores como nulo, alguém consegue me ajudar com isso?

Essa é a minha procedure

CREATE OR REPLACE PROCEDURE insere_agente2(json)
    LANGUAGE 'plpgsql'
AS $BODY$

	BEGIN
  	INSERT INTO agente
			select z.idAgente, z.Dac, z.dataMudanca, z.Ramal, z.Status from json_to_recordset($1) as z
			(
				idAgente text,
				Ramal text,
				Dac text,
				dataMudanca timestamp,
				Status text	
			);
	COMMIT;
	END
$BODY$;

Essa é a tabela na qual quero inserir

CREATE TABLE public.agente
(
    id_agente VARCHAR(255),
    dac VARCHAR(255),
    data_mudanca timestamp,
    ramal VARCHAR(255) ,
    status VARCHAR(255) 
)

E esse é um exemplo de json que quero passar como parâmetro na procedure

[
	{
		"IdAgente": "58832",
		"Ramal": "36174",
		"Dac": "1",
		"dataMudanca": "18/05/2021 12:44:46",
		"Status": "Atendimento"
	},
	{
		"IdAgente": "62302",
		"Ramal": "36188",
		"Dac": "1",
		"dataMudanca": "18/05/2021 12:44:59",
		"Status": "AUX4"
	},
	{
		"IdAgente": "57395",
		"Ramal": "30011",
		"Dac": "1",
		"dataMudanca": "18/05/2021 12:43:39",
		"Status": "Outro"
	}
]