On the endorsement screen (EndorsementFragment), tapping "download abstract" on a SHG card calls EndorsementRepositoryImpl.getShgAbstract on the network executor. This is an online call. The binary body is written to cacheDir/Report_<id>.xlsx and opened with an ACTION_VIEW intent (application/vnd.ms-excel). A toast appears if no spreadsheet app is installed or the body is empty. The callback reports success or failure to the fragment, which shows a message.
Headers
Header
Value
Notes
X-SESSIONID
<session id>
Passed explicitly as a @Header by the caller (AndroidSessionManager.sessionId). AuthInterceptor also fills it when missing, and on a 401 or 400 it invalidates the token, fetches a new one and retries once.
Parameters
Param
In
Required
Example
Notes
id
path
Yes
440012
SHG entity id (EndorsementEntity.entityId).
adminUser
query
Yes
true
Always true. The endpoints.json path leaves it out, but the Retrofit method sends it.
Request
No body. shg id
Response
Example response body (synthetic data)
{
"part": "binary Excel workbook (application/vnd.ms-excel or xlsx)"
}
Field
Type
Required
Notes
(body)
binary
SHG abstract report, saved as Report_<id>.xlsx. PII: likely contains member names and land details for the group (contents are not parsed by the app).
Errors
Status
When
What the app does
non-2xx
Report not available
callback(false), and the fragment shows a failure message.