Index: Scribus/scribus/plugins/scriptplugin/cmdgetprop.cpp
===================================================================
--- Scribus/scribus/plugins/scriptplugin/cmdgetprop.cpp	(revision 22756)
+++ Scribus/scribus/plugins/scriptplugin/cmdgetprop.cpp	(working copy)
@@ -393,7 +393,43 @@
 	return lst;
 }
 
+PyObject *scribus_getimagecolorspace(PyObject* /* self */, PyObject* args)
+{
+	char *Name = const_cast<char*>("");
+	if (!PyArg_ParseTuple(args, "|es", "utf-8", &Name))
+		return nullptr;
+	if (!checkHaveDocument())
+		return nullptr;
+	PageItem *i = GetUniqueItem(QString::fromUtf8(Name));
+	if(i == nullptr)
+		return nullptr;
+	if(i->itemType() != PageItem::ImageFrame){
+		PyErr_SetString(PyExc_RuntimeError,
+			QObject::tr("Page item must be an ImageFrame", "python error").toLocal8Bit().constData());
+		return nullptr;
+	}
 
+	ScImage* pixm = &i->pixm;
+	if(pixm != nullptr){
+		if(pixm->width() != 0 && pixm->height() != 0){
+			ImageInfoRecord* iir = &pixm->imgInfo;
+			if(iir != nullptr){
+				int cspace = iir->colorspace;
+				/*
+				RGB  = 0,
+				CMYK = 1,
+				Gray = 2,
+				Duotone = 3,
+				Monochrome = 4
+				*/
+				return PyInt_FromLong(static_cast<long>(cspace));
+			}
+		}
+	}
+	return PyInt_FromLong(static_cast<long>(-1));
+}
+
+
 /*! HACK: this removes "warning: 'blah' defined but not used" compiler warnings
 with header files structure untouched (docstrings are kept near declarations)
 PV */
@@ -411,5 +447,5 @@
 	  << scribus_getimgscale__doc__ << scribus_getimagefile__doc__ 
 	  << scribus_getposi__doc__ << scribus_getsize__doc__ 
 	  << scribus_getrotation__doc__ <<  scribus_getallobj__doc__
-	  << scribus_getobjectattributes__doc__;
+	  << scribus_getobjectattributes__doc__ << scribus_getimagecolorspace__doc__;
 }
Index: Scribus/scribus/plugins/scriptplugin/cmdgetprop.h
===================================================================
--- Scribus/scribus/plugins/scriptplugin/cmdgetprop.h	(revision 22756)
+++ Scribus/scribus/plugins/scriptplugin/cmdgetprop.h	(working copy)
@@ -238,5 +238,15 @@
 "));
 PyObject *scribus_getobjectattributes(PyObject * /*self*/, PyObject* args);
 
+/*! docstring */
+PyDoc_STRVAR(scribus_getimagecolorspace__doc__,
+QT_TR_NOOP("getImageColorSpace([\"name\"]) -> integer\n\
+Returns the color space for an image in an Image Frame of \"name\".\n\
+0 RGB, 1 CMYK, 2 Gray, 3 Duotone, 4 Monochrome.\n\
+Returns the above numbers or -1 if there isn't an image\n\
+in the Image Frame.\n\
+"));
+PyObject *scribus_getimagecolorspace(PyObject * /*self*/, PyObject* args);
+
 #endif
 
Index: Scribus/scribus/plugins/scriptplugin/scriptplugin.cpp
===================================================================
--- Scribus/scribus/plugins/scriptplugin/scriptplugin.cpp	(revision 22756)
+++ Scribus/scribus/plugins/scriptplugin/scriptplugin.cpp	(working copy)
@@ -595,6 +595,7 @@
 	{const_cast<char*>("setTextAnnotation"), scribus_settextannotation, METH_VARARGS,tr(scribus_settextannotation__doc__)},
 	{const_cast<char*>("createPdfAnnotation"), scribus_createpdfannotation, METH_VARARGS,tr(scribus_createpdfannotation__doc__)},
 	{const_cast<char*>("isAnnotated"),(PyCFunction)scribus_isannotated, METH_VARARGS|METH_KEYWORDS,tr(scribus_isannotated__doc__)},
+        {const_cast<char*>("getImageColorSpace"), scribus_getimagecolorspace, METH_VARARGS, tr(scribus_getimagecolorspace__doc__)},
 	{nullptr, (PyCFunction)(nullptr), 0, nullptr} /* sentinel */
 };
 
