Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

JSON endpoints for apps

The landing page of the JSON endpoint pages for app developers - the ezjscore call interface, the expservices remote services an app is most likely to use, and when to ask for a server function of your own.

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/mobile-app-developers/json-endpoints/README.md

On this page

JSON endpoints for apps

This folder is for app developers who need more than the REST content API: search, image sizes, URL lookups, languages, updates. Those come from the remote services (expservices), served through ezjscore's call interface below /ezjscore/call/. A screen that needs something no service gives can get a server function of its own.

Contents

  1. The call interface
  2. Services an app is likely to use
  3. Pages in this folder

The call interface

GET|POST https://example.com/ezjscore/call/<name>::<function>[::<argument>...]?ContentType=json

ezjscore's router (ezjscServerRouter) refuses any name without an [ezjscServer_<name>] block in ezjscore.ini, calls the registered PHP function and wraps the result as {"error_text":"","content":<result>} (JSON endpoints with ezjscore). expservices registers over a thousand services this way, named exp<domain>::<method>.

A quick check that the services are active, anonymously:

curl -s 'https://example.com/ezjscore/call/expsession::whoami?ContentType=json'

An envelope that says you are anonymous means they are; Not a valid ezjscServerRouter argument in error_text means expservices is not active on that installation.

Services an app is likely to use

NeedServiceAccess
Searchexpsearch::searchcontent/read
URL of an image in a named sizeexpimage::url, expimage::urlscontent/read
The configured image sizesexpimage::aliasespublic
A node by its URL path (deep links)expnode::getByPathcontent/read
Descendants published since a dateexpnode::modifiedSincecontent/read
The site's languages in priority orderexplanguage::prioritizedpublic
Update an itemexpnode::updatecontent/edit
Who am I, making and revoking tokensexpsession::whoami, tokenCreate, tokenRevokesigned in

The access column is the service's own declaration in extension/expservices/classes/.

Pages in this folder

PageAnswers
Calling expservices from an appURLs, arguments, the envelope, paging, discovery, errors
Searching contentexpsearch::search with text, paging and filters
Writing through expservicescreate, update, remove; POST and tokens
ezjscore server functions for your appasking for an endpoint of your own, and calling it

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x