KuyoDynamics / SILCServer

API for SILC/Village Banking Applications written in nodejs
MIT License
2 stars 1 forks source link

Metadata: Add Query Parameters To Customize Queries #14

Open chaiwa-berian opened 5 years ago

chaiwa-berian commented 5 years ago

The following query parameters should be available for customizing your request:

Param Type Required Options (default first) Description
assumeTrue boolean false true | false Indicates whether to get all resources or no resources by default.
viewClass enum false export | basic | detailed Alternative views of the metadata. Please note that only metadata exported with viewClass=export or detailed can be used for import.
dryRun boolean false false | true If you set this to true, the actual import will not happen. Instead the system will generate a summary of what would have been done.
{resources} boolean false true | false (default depends on assumeTrue) See /api for available resources. Indicates which resources to include in the response.
lastUpdated date false Several formats are available: yyyy, yyyy-MM, yyyy-MM-dd, yyyyMM, yyyyMMdd Filters the metadata based on the lastUpdated field.
preheatCache boolean false true | false Turn cache-map preheating on/off. This is on by default, turning this off will make initial load time for importer much shorter (but will make the import itself slower). This is mostly used for cases where you have a small XML/JSON file you want to import, and don't want to wait for cache-map preheating.
strategy enum false CREATE_AND_UPDATE | CREATE | UPDATE | DELETE Import strategy to use, see below for more information.
sharing boolean false false | true Should sharing be supported or not. The default is false, which is the old behavior. You can set this to true to allow updating user, publicAccess and userGroupAccesses fields (if not they are cleared out on create, and not touched on update).
mergeStrategy enum false REPLACE, MERGE Strategy for merging of objects when doing updates. REPLACE will just overwrite the propery with the new value provided, MERGE will only set the property if its not null (only if the property was provided).
async boolean false false | true Indicates wether the import should be done async or not, the default is false which means the client will wait until the import is done, this is probably what you want for small imports (as you will get the import summary directly back to you). For large imports, the client might time out, so async=true is recommended, and the client connection will be dropped when the payload is uploaded.