Skip to main content
API access library for Zotonic
==============================
by Arjan Scherpenisse <arjan@scherpenisse.net>, 2011-02-14

Uses a simple registry file at `$HOME/.zclient` to store consumer
keys, secrets and authorized access tokens.

Usage: zclient <command> [opts]
Generic zotonic API access client.

Commands:

add-app <app id> <hostname> <consumer key> <consumer secret>
- adds a new app plus its consumer details

del-app <app id>
- Remove the app and all its authorized clients

add-client <client id> <app id>
- sets up authorization for a given oauth app

request <client id> <api method> [params]
- do an authorized API request, pretty-print the result
e.g.: 'zclient request foo base/export id=1' to dump pages



Quick walkthru
--------------

### 1) Enable mod_oauth in Zotonic ###

Go to the admin, modules tab, find the OAuth module and click
"activate", if it is not already activated. Refresh the page.

### 2) Create new OAuth application ###

Go to "API access" tab and click "add new application". In the
dialog, enter the application details, such as title, home page,
etc. callback can be left empty. On the second tab, check the boxes
with the API methods that this app may access. Click the "add
application" button.

### 3. Write down / copy-paste the consumer key and consumer secret ###

This token/secret pair uniquely identifies your application.

### 4. Register the app with zclient ###

zclient add-app someappid 127.0.0.1:8000 <yourconsumerkey> <yourconsumersecret>

"*someappid*" is some identifier that you come up with to identify
this app on the zclient side. For example: `my-mobile-app`.
Copy-paste the consumer key and secret from the previous step onto
the command line.

### 5. Add a client for the app ###

In zclient terminology, a *client* is an authorized token/secret pair
which authorizes a user to use one of the zclient apps.

zclient add-client yourclientid someappid

The "*yourclientid*" is some identifier to identify the authorized
token for this app on the zclient side.

You will be prompted to click on an URL. Do that. Log on to zotonic
and click the "authorize" button on the authorization screen. Return
to the terminal and press "Enter". Now you should be ready to go!

### 6. Do an authorized request ###

zclient request yourclientid <api method> [arg [arg..]]

For example:

zclient request yourclientid search cat=keyword

Maps to the API request `http://yourclienthost/api/search?cat=keyword`
POST requests are currently not (yet) supported.

Example API request to search for all persons:

arjan@localhost:~$ zclient request test search cat=person
[
327,
1
]


**NOTE: On release 0.6.0, the API access has been accidentally
broken. Please use mercurial default or release-0.6.x branch if you
want to use the API methods.**

Release files for ZotonicClient 1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for ZotonicClient 1.0
File Interpreter ABI Platform
ZotonicClient-1.0-py2.6.egg Legacy Egg format - - Details

Release files / ZotonicClient-1.0-py2.6.egg

Download URL ZotonicClient-1.0-py2.6.egg
Size 11.5 kB
Tags Egg
SHA-256 checksum
How to use checksums
15f0b7a4eed2f4058ad384620ce8e38cf4cfb49101fe19e1714a60e7eb8c0137
BLAKE2b-256 checksum
How to use checksums
10cb951bb2069c359b6f42238f0d98fa708a679898407419d507bc494f793d81
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page