Error uploading private app: undefined method `join' for nil:NilClass | Community
Skip to main content

Error uploading private app: undefined method `join' for nil:NilClass

  • May 29, 2025
  • 6 replies
  • 0 views

Nick32

Hi,

 

I'm working on a private Support app using the ZAF framework. When I go to upload the app within Zendesk I get this error. I've tried running `zcli apps:validate` but it says there are no validation errors. 

 

For some more context: the app is based on the provided react scaffold, and runs in the ticket_sidebar location. As far as I can tell, the manifest and other required files match what is described in the docs. 

 

6 replies

Leafworks12

Same story. I have a custom template, and the app was building fine. It just stopped working today. The build files look okay, and I can run the app locally with ?zcli_apps=true. But I can't import the private app to my instance or upload it to the marketplace.


Greg29
  • June 12, 2025

Hey Nick and Andriy, apologies for the delay in my response!

 

Would you be able to provide your manifests for me so that I can see if there's anything funny going on? If you can do that, please strip out any sensitive data before posting. I'm not aware of any changes that would have affected the ability to upload apps, but I also trust that you both have done this enough times that something must have happened on our end. For what it's worth, I am able to install apps using the current version of ZCLI and in the UI, so hopefully it's just a minor issue!


Leafworks12

Hello,

Thanks for the reply, but I was able to fix my issue. In the end, the problem was with damaged screenshot files. 

Best,
Andriy


Aliaksei11

I had the exact same issue when testing out the React scaffold package. I believe this boilerplate is somewhat raw and error-prone, and it hasn't been updated for a while, so I would advise against using it.

 

The error itself was related to the invalid format of the logo PNG files in the assets folder, if I recall correctly. I'm not sure what the exact issue was with these files, but when I replaced them with other PNG files, the app started building properly.  However, the error `undefined method `join' for nil:NilClass`doesn't contain useful info about the source of the error, so it would be a good idea for Zendesk to improve error handling here. 


  • March 11, 2026

Me too. I ran zcli apps:new --scaffold=react and started fresh. I did migrate it to TypeScript but the app is running fine locally.  Here's what I tried:

 

I noticed that dist/manifest.json had a _warningkey in it, about it being generated. I get that, I see how it's set up in rollup, but I tried removing it before zipping anyway. No change.

 

I also noticed that location.support.ticket_editor.url was still the dev value of localhost:3001so I manually changed that to assets/index.html. Still no change.  Side note: I would have thought that npm run build would use .env.production, not .env. Is this a bug? Am I doing something wrong?

 

From the previous comments I tried looking at images in my assets folder. I noticed that some icon images, which are fine in src/assets, appear damaged and won't open from dist/assets. One of these is the default logo-small.png and the other was my custom logo.png. I tried manually copying these from src to dist and packaging again, but still no change.

 

Here is my manifest

 

{
  "name": "◼️◼️◼️◼️◼️",
  "author": {
    "name": "◼️◼️◼️◼️◼️",
    "email": "◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️"
  },
  "defaultLocale": "en",
  "private": true,
  "location": {
    "support": {
      "ticket_editor": {
        "flexible": true,
        "url": "assets/index.html"
      }
    }
  },
  "version": "3.0.0",
  "frameworkVersion": "2.0",
  "parameters": [
    {
      "name": "key",
      "type": "number",
      "label": "Key"
    }
  ]
}

  • March 12, 2026

I got it to work but only after a few hours of messing with it.  It seems that zcli apps:create dist causes some images to get corrupted or something.  I don't now if Vite is doing some “optimization” on the images when copying them to dist or what, but the create command would result in the “undefined method join for nil” error.

 

What did work was running npm run build, then zcli apps:package dist, then manually uploading the zip to our support site at /admin/apps-integrations/apps/support-apps.

 

It also worked after running the create command, then manually copying good images into dist/assets, and then running package and uploading manually.  The bad images were always logo.png and logo-small.png.  I have a icon)ticket_editor.svg that copied fine, and a few other svgs as well. I just removed logo-small.png and copied logo.png from the src/assets folder to dist/assets, packaged and uploaded.

 

logo-small was actually the one included from the react app scaffold, I didn't change it out or anything. Weird that both a zendesk-scaffolded image as well as a custom image suffered problems. I don't have any other image files in my app, but also judging from other comments here it's the images that present problems.