Could anyone tell me or point me to resources which provide information on the compatibility of the Python API with the different Portal releases?
- Can the Python API used in combination with ArcGIS Portal 10.3/10.4/10.5 ?
- Can all classes / methods described in Python API reference be used succesfully?
Version matching between Python API and Portal can be tricky.
First of all, Python API and Portal are not released hand in hand, their versions are loosely related via REST API.
Secondly, Python API is a wrapper around the ArcGIS REST API. So it's really about matching REST API with your server and portal. If a Python API function is not working as expected, I would go back to REST API to check if the operation is supported by my portal and server version. If the operations are applicable to ArcGIS Server, I noticed the REST API document will give you the "Version Introduced" information.
Thirdly, ArcGIS REST API seems intentionally weaken the notion of the software version, which makes sense for one major platform the API interacts with - ArcGIS Online which has moved away from traditional version shifting to a continuous evolving & improving strategy - no backward compatibility issues for ArcGIS Online users, obvious.
Last, ArcGIS REST API is a big umbrella trying to cover all ESRI Web GIS products (AGOL, Enterprise), although version is not an issue for AGOL, it does confuse Enterprise users, as you know, ArcGIS Enterprise is still released in discrete versions like desktop products. On the other hand, I don't think it's gonna to be easy to give a suitable version number to the REST API which consists of resources and operations of different categories (AGOL, Portal, Server, etc) which themselves use different version strategies.
So, there seems no easy answer to you question. Just some food for thought. and hope it helps.
Thanks for your contribution!
I would like to hear an official standpoint from Esri on this matter, it seems to be insuffiiciently covered in the official product documentation.
For now I hope to avoid compatibility issues in my next project by using the most current release of Python API 1.5.0 and Portal 10.6.1