Erro "sintaxe de entrada inválida para inteiro" para um não inteiro?

Estou usando Python e psycopg2.

Estou tentando executar uma instrução preparada com uma lista de valores como tal:

cur.callproc(prepared_func, prepared_values)

psycopg2.DataError: invalid input syntax for integer: "WwLEA6XZ0V"
LINE 1: ... fn_approve_external_lead(ARRAY[1004, 2, 1079412, 'WwLEA6XZ0...

A função no Postgres tem a seguinte aparência:

CREATE OR REPLACE FUNCTION fn_approve_external_lead(
     internal_usrid bigint
   , ofr_src_id bigint
   , ofr_ext_id varchar
   , puuid varchar
   , paid varchar
   , p_note varchar DEFAULT '') ...

Até onde eu sei, estou colocando um valor não int em um argumento não int, então deve funcionar, mas, por alguma razão, ele acha que esse valor é int?

O que causaria isso?

questionAnswers(1)

yourAnswerToTheQuestion