Package: plone.jsonapi.routes
Plone JSON API RoutesAuthor:Ramon Bartl (RIDING BYTES -http://ridingbytes.com)Version:0.9.3Table of ContentsPlone JSON API RoutesLastest Build StatusIntroductionMotivationCompatibilityDocumentationSee it in actionLicenseChangelog0.9.4 - 2017-10-170.9.3 - 2017-05-140.9.2 - 2017-05-120.9.1 - 2017-04-200.9.0 - 2017-01-120.8.9 - 2017-01-110.8.8 - 2017-01-100.8.7 - 2017-01-100.8.6 - 2016-04-080.8.5 - 2016-04-080.8.4 - 2016-01-140.8.3 - 2015-09-140.8.2 - 2015-09-090.8.1 - 2015-09-060.8 - 2015-07-200.7 - 2015-07-090.6 - 2015-02-220.5 - 2015-02-200.4 - 2015-01-130.3 - 2014-10-140.2 - 2014-03-050.1 - 2014-01-23Lastest Build StatusMaster Branchhttps://github.com/collective/plone.jsonapi.routesIntroductionThis is an add-on package forplone.jsonapi.corewhich provides some basic
URLs for Plone standard contents (and more).MotivationThe routes package is built on top of theplone.jsonapi.corepackage to allow
Plone developers to build modern (JavaScript) web UIs which communicate through
aRESTfulAPI with their Plone site.CompatibilityTheplone.jsonapi.routesis compatible withPlone4 and 5.Documentationhttp://plonejsonapiroutes.readthedocs.orgSource:https://github.com/collective/plone.jsonapi.routes/tree/master/docsSee it in actionA small tec demo is available on youtube:http://www.youtube.com/watch?v=MiwgkWLMUqkLicenseMIT - do what you wantChangelog0.9.4 - 2017-10-17ChangesMerge brain data to object infoHandle Zope Datetime FieldsSupport Backbone.js REST API0.9.3 - 2017-05-14ChangesIDataManagercontain now ajson_datamethod to return a JSON suitable
return structure or delegate to theIFieldManager.json_datamethod.
Please see section “Customizing” in the documentation for more details.Added support forz3c.relationfield.interfaces.IRelationListfieldsAdded support forplone.app.textfield.interfaces.IRichTextfieldsAdded support forplone.app.blob.interfaces.IBlobFieldfieldsMore code cleanup and refactoring (coming closer to a robust 1.0.0 release!)0.9.2 - 2017-05-12ChangesAddedIFieldManageradapter togetandsetthe value on field level.Removedbuildnumber from version route JSON response.Content route improved.API refactored.Improvedusersroute.Updated documentation0.9.1 - 2017-04-20ChangesAddedICatalogandICatalogQueryadapter for full search control. See docs for usage.Removedquerymodule in favor of the new adapters.Removed multiple catalog query functionality. Please define a customICatalogadapter if you need it.Added generic route provider for allportal_types.
N.B. The old-style route providers, e.g.folders,documentsetc., are now obsolete.
Please use the lower portal type name instead, e.g.folder,docuememt…Theusersroute shows now more details of the users and results are now batched.Removed defaultgetObjPositionInParentsorting. Please specify explicitly viasort_on.UID of the plone site is now ‘0’ instead of 0.Huge code refactoring and cleanup.0.9.0 - 2017-01-12ChangesAPI mthodsget_itemsandget_batchedaccept now keyword paramters.
Keywords can be catalog indexes, e.g.id=document-1or a complete catalog
query objejt, e.g.query={‘portal_type’: ‘Document’}.Changedget_contentsmethod to use thesearchfunctionality from thequerymodule.More doctests added0.8.9 - 2017-01-11ChangesCatalog to query can now be set via thecatalogrequest parameter.Optimized search logicFixed issue with multipleportal_typeparameters in requestCode RefactoringMore tests0.8.8 - 2017-01-10ChangesHandle catalog queries for multiple contents, which might be located in
different catalogs.Fixed an issue where the batch navigation did not show more results when using
multipleportal_typerequest parameters.0.8.7 - 2017-01-10ChangesHandle Reference Fields: Reference fields containing a reference can be
updated with a dictionary, e.g.:{
  uid: <UID of a content containing a reference field>,
  ReferenceField: {
    "title": "New Title"
  }
}Added moduleunderscoreto the tests suiteValidation for the entire object addedGet the catalog to query from Archtype Tool and default toportal_catalogUse explicit namespace in route providersHandle Reference Fields (Fields containing andImplicitAcquisitionWrapperobject)Added ZCML directive to enable/disable route registrations (default enabled):<!-- Disable route registration -->
<plone:jsonapi
    register_api_routes="False"
/>Version route is now part of the standard route providersDropped AdvancedQuery handling0.8.6 - 2016-04-08Fix for broken release 0.8.50.8.5 - 2016-04-08CLOSED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/59: API URL for non standard content typeshttps://github.com/collective/plone.jsonapi.routes/issues/60: Add a namespace to the route registrationshttps://github.com/collective/plone.jsonapi.routes/issues/63: handle richtext fieldshttps://github.com/collective/plone.jsonapi.routes/issues/82: Plone 5 CSFR Protectionhttps://github.com/collective/plone.jsonapi.routes/issues/80: Tests for Plone 5https://github.com/collective/plone.jsonapi.routes/issues/77: Problem with creating fileshttps://github.com/collective/plone.jsonapi.routes/issues/62: ‘reference_catalog’ not foundhttps://github.com/collective/plone.jsonapi.routes/pull/75: Fix api invocation on the zope roothttps://github.com/collective/plone.jsonapi.routes/pull/74: Reuse and improve code to check if a parameter in the request has a True valuehttps://github.com/collective/plone.jsonapi.routes/pull/73: Using specifiers to format string (helps compatibility with Python 2.6, improves code readability)0.8.4 - 2016-01-14CLOSED ISSUEShttps://github.com/collective/plone.jsonapi.routes/pull/66: api routes: sharing (docs)https://github.com/collective/plone.jsonapi.routes/pull/65: api routes: sharing (code)https://github.com/collective/plone.jsonapi.routes/pull/61: Use IConstrainTypes adapters for dexterity contentAPI CHANGESSharing information can be displayed for objects. Use?sharing=yes0.8.3 - 2015-09-14CLOSED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/58: Unit tests: add tests for adapter modulehttps://github.com/collective/plone.jsonapi.routes/issues/57: API Change: workflow data optionalhttps://github.com/collective/plone.jsonapi.routes/issues/54: Let complete flag overrule “uid rule”https://github.com/collective/plone.jsonapi.routes/issues/53: Unit tests: add tests for api moduleAPI CHANGESFile datanotincluded by default anymore. Use?filedata=yesWorkflow datanotincluded by default anymore. Use?workflow=yesWorkflow data is now located at the keyworkflowThe complete flag can be now negated, even if the full object is displayes?complete=noThestatekey is removed – usereview_stateinsteadParent URL data included now for brain results0.8.2 - 2015-09-09CLOSED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/52: Handle field unauthorized errors in the GET APIhttps://github.com/collective/plone.jsonapi.routes/issues/51: Default Data Adapters missing0.8.1 - 2015-09-06CLOSED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/50: API route throws errorhttps://github.com/collective/plone.jsonapi.routes/pull/37:   Include custom metadata columnshttps://github.com/collective/plone.jsonapi.routes/pull/37:   Include custom metadata columnshttps://github.com/collective/plone.jsonapi.routes/issues/49: Setting the ID throws a tracebackhttps://github.com/collective/plone.jsonapi.routes/issues/48: Implement cut/copy/paste routeshttps://github.com/collective/plone.jsonapi.routes/issues/46: Route Providerportalthrows TypeErrorhttps://github.com/collective/plone.jsonapi.routes/issues/47: ZCML directive to enable AdvancedQuery if installedENHANCEMENTSAPI actions to cut/copy/paste contentsNew route providerplonesitesSupport for catalog brain schema0.8 - 2015-07-20CLOSED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/45: Add authentication routeshttps://github.com/collective/plone.jsonapi.routes/issues/44: Add the filename to the JSON datahttps://github.com/collective/plone.jsonapi.routes/issues/43: API: Intermediate Folder creationhttps://github.com/collective/plone.jsonapi.routes/issues/41: Field Type Validationhttps://github.com/collective/plone.jsonapi.routes/issues/42: ContentType for Dexterity Files CT0.7 - 2015-07-09CLOSED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/9:  Handle Dexterity Behavior fieldshttps://github.com/collective/plone.jsonapi.routes/issues/38: Filename handlinghttps://github.com/collective/plone.jsonapi.routes/issues/36: Mime Type handlingOTHER CHANGESUpdated DocumentationRequest module: Added helper functionsTravis CI integration0.6 - 2015-02-22CLOSED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/33: Image detail URL throws errorhttps://github.com/collective/plone.jsonapi.routes/issues/34: Failed POST request return HTTP 200https://github.com/collective/plone.jsonapi.routes/issues/35: DataManager does not check field permissions0.5 - 2015-02-20CLOSED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/32: Add documentation for the new ZPublisher record behaviorhttps://github.com/collective/plone.jsonapi.routes/issues/31: Change default sort order to ascendinghttps://github.com/collective/plone.jsonapi.routes/pull/30:   fix standard query ignoring sort_on and sort_orderhttps://github.com/collective/plone.jsonapi.routes/issues/27: querying does not support ZPublisher record formathttps://github.com/collective/plone.jsonapi.routes/issues/25: Add support for Plone 4.2OTHER CHANGESAdded batch adapterAdded more tests0.4 - 2015-01-13FIXED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/22: Absoulte url is missing in update/create responsehttps://github.com/collective/plone.jsonapi.routes/issues/21: Image Route throws an errorENHANCEMENTShttps://github.com/collective/plone.jsonapi.routes/issues/20: Support query for DateTime Indexeshttps://github.com/collective/plone.jsonapi.routes/issues/23: Support query for created/modified DateTime rangesOTHER CHANGESaddedIDataManagerfield data manageradded/authroute to enforce a basic authadded a custom exception class to set the right response statusaddedrecent_modifiedandrecent_createdhandlingadded unittests for theapiandrequestmoduleno more request passing anymore - all handled by the request module now0.3 - 2014-10-14FIXED ISSUEShttps://github.com/collective/plone.jsonapi.routes/issues/16: Files can not be created/updated with base64 encoded datahttps://github.com/collective/plone.jsonapi.routes/issues/10: Fails on NamedBlobFile dexterity fieldshttps://github.com/collective/plone.jsonapi.routes/pull/11: Typo in brain adapterhttps://github.com/collective/plone.jsonapi.routes/issues/14: Missing UIDs for complete objectsENHANCEMENTShttps://github.com/collective/plone.jsonapi.routes/issues/12: Add batchinghttps://github.com/collective/plone.jsonapi.routes/issues/13: Add a flag to return the full fledged object results immediatelyhttps://github.com/collective/plone.jsonapi.routes/issues/19: Need to do a GET on a file using file path without using uidhttps://github.com/collective/plone.jsonapi.routes/issues/18: destination handlinghttps://github.com/collective/plone.jsonapi.routes/issues/3: Add buildout configs inside packageDOCUMENTATIONhttps://github.com/collective/plone.jsonapi.routes/issues/2: Sphinx documentation started0.2 - 2014-03-05FIXED ISSUEShttps://github.com/ramonski/plone.jsonapi.routes/issues/5: Dexterity supporthttps://github.com/ramonski/plone.jsonapi.routes/issues/4: Update on UID Urls not workinghttps://github.com/ramonski/plone.jsonapi.routes/issues/1: Started with some basic browsertestsAPI CHANGESAPI root url provided.Image and file fields are now rendered as a nested structure, e.g:{
  data: b64,
  size: 42,
  content_type: "image/png"
}Workflow info is provided where possible, e.g:{
  status: "Private",
  review_state: "private",
  transitions: [
    {
      url: ".../content_status_modify?workflow_action=submit",
      display: "Puts your item in a review queue, so it can be published on the site.",
      value: "submit"
    },
  ],
  workflow: "simple_publication_workflow"
}0.1 - 2014-01-23first public release