Value was either too large or too small for an Int32 in List Account Codes endpoint

Hi,

For one of the our customer we are trying to call below endpoint

And the endpoint returns the following error response

{
"Error": "failed to get account codes",
"Details": [
"Value was either too large or too small for an Int32."
],
"ErrorPath": null
}

We kindly request your immediate assistance in diagnosing and resolving this issue.

Comments

  • Alex Wong
    Alex Wong Community All-Star
    Ninth Anniversary Kudos 5 Facilitator 3 Raiser's Edge NXT Fall 2025 Product Update Briefing Badge

    @Nikunj Prajapati
    I have no problem making this call, which basically is just a list all account code API endpoint.

    You are going to have to provide a little more details on how you are making the call.

    For us, account code is 4 digits only, the “value” returned is INT32, which can hold up to 9-10 digits of integer, so unless your client configured account codes to have more digits, which is hard to imagine being the case.

  • @Alex Wong yes so in our case the customer has set 13 character long account code.

  • Alex Wong
    Alex Wong Community All-Star
    Ninth Anniversary Kudos 5 Facilitator 3 Raiser's Edge NXT Fall 2025 Product Update Briefing Badge

    @Nikunj Prajapati
    I see. Then your customer's problem cannot be resolved easily. They will likely need to open a Blackbaud support case.

    @Erik Leaver @Ben Wong looking at the FE database schema, it appears that SKY API made a mistake here.

    2027cf302745e6a3f8de768c3b069daf-huge-im

    while GL7ACCOUNTCODESID is an INTEGER data type, this is not the account code value. ACCOUNTCODE is, which is defined as a VARCHAR(30). Meaning up to 30 characters, which definitrely is too big for a INT32 data type used to store the value

    f85ce20517557be3ba59e1a49672ed15-huge-im

    this “value” probably should be defined as string data type, but i'm not sure how you can fix this without causing a regression for all others who have used FE SKY API expecting a INT32 from value.

  • Ben Wong
    Ben Wong Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Alex Wong @Nikunj Prajapati INTeresting…that does appear to be an oversight. I'll ask the FE team to confirm. In the meantime, it's best to get a support case created so that this issue can be tracked in our systems. Thanks for the catch!

  • Ben Wong
    Ben Wong Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Alex Wong @Nikunj Prajapati The FE team confirmed that this is a bug and they plan to address this soon. No specific date but it should be within a month or so. Thanks for helping us find the bug!

  • Mohit Kumar
    Mohit Kumar Blackbaud Employee
    Ninth Anniversary Kudos 1 Name Dropper Facilitator 1

    @Alex Wong @Nikunj Prajapati This issue should now be resolved. We've made the following update to this endpoint:

    • A new property, account_code_value, has been introduced as a replacement for value.
    • To avoid potential datatype or length-related issues, please use account_code_value instead of value.
    • The value property will remain available but is now considered deprecated. While it won't cause errors, it will return 0 if the account code length exceeds the supported limit.

    Thanks for the feedback. Should you encounter any issues or require further assistance, please let us know.