Use Rest API to retrieve custom schema results with Page Provider
I'm trying to retrieve document custom schema properties via a REST call. I am only able to pull basic document details. I would like to pull the custom schema fields for my document type via rest. Is this possible, and if so how can it be done?
What's returned Example:
{“entity-type”:“documents”,“isPaginable”:true,“resultsCount”:1,“pageSize”:10,“maxPageSize”:1000,“resultsCountLimit”:10000,“currentPageSize”:1,“currentPageIndex”:0,“currentPageOffset”:0,“numberOfPages”:1,“isPreviousPageAvailable”:false,“isNextPageAvailable”:false,“isLastPageAvailable”:false,“isSortable”:true,“hasError”:false,“errorMessage”:null,“totalSize”:1,“pageIndex”:0,“pageCount”:1,“entries”:[{“entity-type”:“document”,“repository”:“default”,“uid”:“cd83d8cc-58bb-4bfc-9ca3-857901da5851”,“path”:“/default-domain/workspaces/MasterData/0100311180”,“type”:“ps_ShipTo”,“state”:“project”,“parentRef”:“e1099e02-f961-457a-a543-a7b7a03a298e”,“isCheckedOut”:true,“isVersion”:false,“isProxy”:false,“changeToken”:“1-0”,“isTrashed”:false,“title”:“0100311180”,“lastModified”:“2020-02-21T17:00:31.643Z”,“facets”:[],“schemas”:[{“name”:“uid”,“prefix”:“uid”},{“name”:“common”,“prefix”:“common”},{“name”:“dublincore”,“prefix”:“dc”},{“name”:“ps_shipto”,“prefix”:“ps_shipto”}]}]}
What I'm trying to pull :
“dc:source”: null,
"dc:publisher": null,
"ps_shipto:shiptp_effstatus": "A",
"ps_shipto:shipto_customer": "0060182404",
"ps_shipto:shipto_product": "1092",
"ps_shipto:shipto_oper_unit": "5915",
"ps_shipto:shipto_bu": "80152",
"ps_shipto:shipto_department": "6200"
Page Provider table layout
Hello,
I am not sure if you want to know how to search by using the custom schema properties, or if you want to get those properties in the results object. Anyway, I'll explain how to do both:
1) Search by using custom schema properties:
If you have defined your Page Provider using Nuxeo Studio, then, by default, you will have a “Named Parameter” page provider. I mean, you will have something like this: https://doc.nuxeo.com/nxdoc/search-endpoints/#named-parameter-in-where-clause
So if you want to use the REST API, you can add the parameters after the “execute”. For example: GET http://NUXEO_SERVER/nuxeo/api/v1/search/pp/pp_PP_ShipTo/execute?ps_shipto_shipto_effstatus=A&ps_shipto_shipto_customer=0060182404
The name “ps_shipto_shipto_customer” is the same you can see in the Table layout changin the “:” to a low bar.
2) Retrieve custom schema properties:
In this case, you will need to add the “properties” header in your request. Check this: https://doc.nuxeo.com/nxdoc/special-http-headers/
Regards.