This information is the private serialization of a build and is hopefully not accessible via API. What information is missing? Each build participant can make more values public if it makes sense.
I tried $JENKINS_URL/job/JOB/BUILD_ID/build.xml but got 403
build.xml has the full trace of build causes; whereas api/json gives you the build causes just one level above. I know I can get the same info by tracing through the layers but build.xml has all the work done.
build.xml has ‘workspace’ but not api/json. I could get PWD from injectedVars but it’s not always the same as $WORKSPACE.
Look at the parent node of the not accessible data in the build.xml, then you see which plugin stores that information. Create an issue (or even better a PR that adds a corresponding @Exported annotation) for the affected plugin.
Lets say a build needs to copy the current workspace of its upstream ancestor. This probably shouldn’t happened in the Jenkins model but that’s the way it’s been setup in our environment long ago.