I am using MetadataApi, to get listview Metadata via Apex. if i logged in as System administrator it's working fine and get the data, but when i call same Apex Method from Community as Community user i got exception.
IO Exception: Unauthorized endpoint, please check Setup->Security->Remote site settings. endpoint = https://XXXXXX/Soap/m/46.0
i found this accessing-metadata-api-in-communities after a deep hunt in our forum
but that one is 2 years back solution, so i am still searching is there any new features came up after 2017 to access the MetadataApi as Community user.
use case
i need add limit to show the no of records for my listviews in community, unfortunately with full layout
option in record list
component doesn't support the no of records limit to show,
so this lack of feature made me to develop a custom lightning component and i used lightning:listview
and then by apex SOQL
i pulled list view
developer Names for my sobject
and then bind to lightning:select
based on select option i loading the lightning:listview
dynamically up to here every thing works fine.
but some of listviews are using sharing settings like visible to certain groups
option. but my get listview
developer name SOQL
query returns all listviews
developer names, some of them doesn't have access for logged in user.
so above lack of feature made me to use MetadataApi
to get the listview sharing setting Metatadata and then Check Access level of listview. but after all community user is not able to access metatadata API.
is there any other work around for my use case.