Impossible to connect to DigitalOcean space, plugins are broken

Hi there, struggling to connect to DO Spaces. Tried both “strapi-provider-upload-do” and “strapi-provider-upload-dos” packages.

  1. “strapi-provider-upload-do” - followed the docs (GitHub - shorwood/strapi-provider-upload-do: Strapi Upload Provider for Digital Ocean Spaces. This provider will upload to the space using the AWS S3 API.) tried every single config people posted on forum claiming is working for them and every time I get same error: Invalid endpoint: undefined. Im not sure if this package was made for other versions when Strapi’s file structure was different but the point is: it doesnt matter where I place it (in config in env/production) I always get same error…

    Also tried the solution from this post: Strapi-provider-upload-do for strapi v4 and still wont work for me… same error
    2: “strapi-provider-upload-dos” - apparently this package was made for Strapi’s v4, followed the docs and this one deploys fine with no errors BUT when uploading something in Media Library file wont show up in my DO space. And yes I triple checked my DO_SPACE_ACCESS_KEY, DO_SPACE_SECRET_KEY, DO_SPACE_ENDPOINT and DO_SPACE_BUCKET.
    Here’s my dependecies “dependencies”: {
    @strapi/plugin-i18n”: “4.1.6”,
    @strapi/plugin-users-permissions”: “4.1.6”,
    @strapi/strapi”: “4.1.6”,
    “better-sqlite3”: “^7.5.0”,
    “pg”: “^8.7.3”,
    “strapi-provider-upload-do”: “^3.6.6”,
    “strapi-provider-upload-dos”: “^4.0.5”
    “engines”: {

    “node”: “>=12.x.x <=14.x.x”,

    “npm”: “>=8.0.0”

Already suspecting maybe this particular version of Strapi is causing problem, downgraded to 4.0.5 and 4.0.7 but I get same result. Can someone pls help

How is your config setup? /config/plugins.js you need to setup your DO settings… have you done that?
I’m using “strapi-provider-upload-do” and my settings are as follows:

module.exports = ({ env }) => ({
  // ...
  upload: {
    config: {
      provider: 'strapi-provider-upload-do',
      providerOptions: {
        key: env('DO_SPACE_ACCESS_KEY'),
        secret: env('DO_SPACE_SECRET_KEY'),
        endpoint: env('DO_SPACE_ENDPOINT'),
        space: env('DO_SPACE_BUCKET'),
        directory: env('DO_SPACE_DIRECTORY'),
  // ...

This information was pulled directly from the plugin GitHub page.

[Edit: As of this post, I still can’t get DO’s CDN to work, but it works if you turn it off… just FYI]