taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit c357ffe63f2e4bfd53902b2790611b4968c81f94
parent 16ecd3fd2c8d38ffc34384749c625502458374ba
Author: Antoine A <>
Date:   Sat,  4 Apr 2026 11:59:10 +0200

apns: add API

Diffstat:
Acore/api-apns.rst | 118+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mcore/api-ebisync.rst | 3+++
Mcore/index.rst | 1+
3 files changed, 122 insertions(+), 0 deletions(-)

diff --git a/core/api-apns.rst b/core/api-apns.rst @@ -0,0 +1,117 @@ +.. + This file is part of GNU TALER. + + Copyright (C) 2026 Taler Systems SA + + TALER is free software; you can redistribute it and/or modify it under the + terms of the GNU Affero General Public License as published by the Free Software + Foundation; either version 2.1, or (at your option) any later version. + + TALER is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License along with + TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/> + +========================= +Taler ANPs Relay RESTful API +========================= + +.. contents:: Table of Contents + :local: + +Version History +--------------- + +The current protocol version is **v0**. + +* Nothing depends on the apns relay API at this point. + +**Version history:** + +* ``v0``: Initial version. + +**Upcoming versions:** + +* None anticipated. + +**Ideas for future version:** + +* ``vXXX``: marker for features not yet targeted for release + + +Introduction +------------ + +APNs Relay API. + + +Config +------ + +.. http:get:: /config + + Return the protocol version and configuration information about the bank. + This specification corresponds to ``current`` protocol being version **v0**. + + **Response:** + + :http:statuscode:`200 OK`: + Response is a `ApnsRelayConfig`. + + **Details:** + + .. ts:def:: ApnsRelayConfig + + interface ApnsRelayConfig { + // Name of the API. + name: "taler-apns-relay"; + + // libtool-style representation of the Bank protocol version, see + // https://www.gnu.org/software/libtool/manual/html_node/Versioning.html#Versioning + // The format is "current:revision:age". + version: string; + + // URN of the implementation (needed to interpret 'revision' in version). + implementation: string; + } + +Device Registration +------------------- + +.. http:post:: /devices + + Register an iOS device for recurrent wakeup. + + **Request:** + + .. ts:def:: DeviceRegistrationRequest + + interface DeviceRegistrationRequest { + // Device token + token: string; + } + + **Response:** + + :http:statuscode:`204 No Content`: + The device have been registered. + +.. http:delete:: /devices + + Register an iOS device. + + **Request:** + + .. ts:def:: DeviceUnregistrationRequest + + interface DeviceUnregistrationRequest { + // Device token + token: string; + } + + **Response:** + + :http:statuscode:`204 No Content`: + The device have been registered. +\ No newline at end of file diff --git a/core/api-ebisync.rst b/core/api-ebisync.rst @@ -73,6 +73,9 @@ Config // https://www.gnu.org/software/libtool/manual/html_node/Versioning.html#Versioning // The format is "current:revision:age". version: string; + + // URN of the implementation (needed to interpret 'revision' in version). + implementation: string; // SPA display version to be used in user interfaces. spa_version: string; diff --git a/core/index.rst b/core/index.rst @@ -50,6 +50,7 @@ describe the JSON objects used in our REST APIs. api-donau api-observability api-ebisync + api-apns .. toctree:: :hidden: