Moments
List event moments (filterable by event, type and moderation status).
GET/api/event/moment
Query parameters
idinteger | |
deletedboolean | This property is used to mark an entity as deleted / archived |
momentTypestring | |
moderationStatusstring | |
baseEventstring | |
signUpstring | Optional participant reference; null for anonymous contributions via the anonymous event moments token. |
createdstring | |
searchStringstring | text to search for in the list |
orderFieldNamestring | name of the order field |
orderFieldSortstring | sorting modeAllowed: DESCASC |
pageinteger | page of the list |
pageSizeinteger | number of entries for each page |
withMaxPageNumberstring | returns the number of pages available as a header if this is set |
Responses
200Returns a list of EventMoment objectsarray<EventMoment>
Show fields (13)
has_filebooleanVirtual serializer property: does this moment have a downloadable file?
file_virus_checkedbooleanVirtual serializer property for the organizer: has the file passed the background virus scan? Null without a file. The organizer list uses this to say "still being checked" instead of showing a preview that answers 404. Not part of the guest groups on purpose - a guest sees only own files, and those are handed out regardless of the scan state.
idintegerPrimary key of the event moment. Internal ID.
tokenstringHard-to-guess identifier; used as the public identifier of the moment so numeric ids are never exposed to guests.
moment_typestringType of the moment, for example photo or video.
moderation_statusstringModeration status of the moment, for example pending or approved.
sign_upBaseEventSignUp17Optional participant reference; null for anonymous contributions via the anonymous event moments token.
Show fields (56)
bib_range_idintegerage_classstringAltersklasse nach DLV, z. B. M40 - berechnet aus Geburtstag, Geschlecht und Eventdatum.
idintegerPrimary key of the sign-up. Internal ID.
first_namestringFirst name of the participant.
last_namestringLast name of the participant.
genderstringGender of the participant.
tokenstringPublic token of the sign-up. Used in links instead of the ID.
moments_tokenstringParticipant-bound moments token: allows this participant to use the event moments (digital guestbook) page; uploads via this token are linked to the participant.
waitingbooleanThe sign-up is on the waiting list.
confirmedbooleanThe sign-up is confirmed.
externalbooleanThe sign-up was made by an external party.
deletion_reasonstringReason the sign-up was cancelled.
billedbooleanThe sign-up was billed.
direct_billingbooleandirect_billing_check_datestring (date-time)direct_billing_tokenstringwait_list_confirmation_tokenstringwait_list_confirmation_sent_atstring (date-time)wait_list_confirmation_deadlinestring (date-time)wait_list_confirmed_atstring (date-time)wait_list_pending_confirmationbooleanwait_list_sort_orderintegerbirthdaystring (date-time)Birthday of the participant.
trialbooleanTrial date sign-up (Schnuppern): a date sign-up without a course place that uses up one unit of the person's trial pass (eventAccessBudget with sourceType trial)
trial_channelstringWho booked the trial date: app, trainer, office
trial_session_numberintegerNumber of this trial date within the pass (1 = first), for "Schnuppern 2/3"
trial_session_maxintegerTrial dates of the pass, for "Schnuppern 2/3"
nace_sectionstringNACE section code (letter A-U)
nace_codestringNACE code (numeric like 01.11, 62.01)
bib_numberintegerStartnummer (Zaehler). Bei PER_PREFIX nur zusammen mit dem Praefix eindeutig. Wird nur ueber BibNumberAssigner gesetzt, stornierte Anmeldungen behalten sie.
bib_labelstringAngezeigte Startnummer inkl. Praefix, z. B. W0123. Pro Event eindeutig.
bib_number_assigned_atstring (date-time)Time the bib number was assigned.
chip_codestringTransponder- oder QR-Kennung fuer die Zeitmessung. Pro Event eindeutig.
timing_tracking_consentbooleanEinwilligung in das GPS-Live-Tracking waehrend des Events.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
namestringName of the entity.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
deletedbooleanThis property is used to mark an entity as deleted / archived
orderintegerPosition of the entity in the order.
guest_namestringOptional display name entered by the guest.
duration_secondsintegerAudio/video duration in seconds (client-provided, informational).
consent_confirmedbooleanGDPR: guest confirmed the consent text before submitting.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
deletedbooleanThis property is used to mark an entity as deleted / archived
curl --request GET \
--url https://your-instance.iw-erp.de/api/event/moment \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://your-instance.iw-erp.de/api/event/moment', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/event_moment_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await EventMomentController.getAll();
if (result.success) {
print(result.data);
}[
{
"id": 42,
"guest_name": "Beispiel",
"has_file": true,
"file_virus_checked": true,
"token": "string",
"moment_type": "string",
"moderation_status": "string",
"sign_up": {
"id": 42,
"first_name": "Lena",
"last_name": "Hartmann",
"address_street": "Jakobistr. 39",
"address_city": "Hannover",
"address_zip": "30163",
"address_country": "DE",
"address_full_country": "DE",
"name": "Beispiel",
"main_phone": "+49 511 123456"
},
"duration_seconds": 1,
"consent_confirmed": true
}
]Get a single event moment.
GET/api/event/moment/{identifier}
Path parameters
identifierrequiredstring |
Responses
200Returns a single EventMomentEventMoment
Show fields (13)
has_filebooleanVirtual serializer property: does this moment have a downloadable file?
file_virus_checkedbooleanVirtual serializer property for the organizer: has the file passed the background virus scan? Null without a file. The organizer list uses this to say "still being checked" instead of showing a preview that answers 404. Not part of the guest groups on purpose - a guest sees only own files, and those are handed out regardless of the scan state.
idintegerPrimary key of the event moment. Internal ID.
tokenstringHard-to-guess identifier; used as the public identifier of the moment so numeric ids are never exposed to guests.
moment_typestringType of the moment, for example photo or video.
moderation_statusstringModeration status of the moment, for example pending or approved.
sign_upBaseEventSignUp17Optional participant reference; null for anonymous contributions via the anonymous event moments token.
Show fields (56)
bib_range_idintegerage_classstringAltersklasse nach DLV, z. B. M40 - berechnet aus Geburtstag, Geschlecht und Eventdatum.
idintegerPrimary key of the sign-up. Internal ID.
first_namestringFirst name of the participant.
last_namestringLast name of the participant.
genderstringGender of the participant.
tokenstringPublic token of the sign-up. Used in links instead of the ID.
moments_tokenstringParticipant-bound moments token: allows this participant to use the event moments (digital guestbook) page; uploads via this token are linked to the participant.
waitingbooleanThe sign-up is on the waiting list.
confirmedbooleanThe sign-up is confirmed.
externalbooleanThe sign-up was made by an external party.
deletion_reasonstringReason the sign-up was cancelled.
billedbooleanThe sign-up was billed.
direct_billingbooleandirect_billing_check_datestring (date-time)direct_billing_tokenstringwait_list_confirmation_tokenstringwait_list_confirmation_sent_atstring (date-time)wait_list_confirmation_deadlinestring (date-time)wait_list_confirmed_atstring (date-time)wait_list_pending_confirmationbooleanwait_list_sort_orderintegerbirthdaystring (date-time)Birthday of the participant.
trialbooleanTrial date sign-up (Schnuppern): a date sign-up without a course place that uses up one unit of the person's trial pass (eventAccessBudget with sourceType trial)
trial_channelstringWho booked the trial date: app, trainer, office
trial_session_numberintegerNumber of this trial date within the pass (1 = first), for "Schnuppern 2/3"
trial_session_maxintegerTrial dates of the pass, for "Schnuppern 2/3"
nace_sectionstringNACE section code (letter A-U)
nace_codestringNACE code (numeric like 01.11, 62.01)
bib_numberintegerStartnummer (Zaehler). Bei PER_PREFIX nur zusammen mit dem Praefix eindeutig. Wird nur ueber BibNumberAssigner gesetzt, stornierte Anmeldungen behalten sie.
bib_labelstringAngezeigte Startnummer inkl. Praefix, z. B. W0123. Pro Event eindeutig.
bib_number_assigned_atstring (date-time)Time the bib number was assigned.
chip_codestringTransponder- oder QR-Kennung fuer die Zeitmessung. Pro Event eindeutig.
timing_tracking_consentbooleanEinwilligung in das GPS-Live-Tracking waehrend des Events.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
namestringName of the entity.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
deletedbooleanThis property is used to mark an entity as deleted / archived
orderintegerPosition of the entity in the order.
guest_namestringOptional display name entered by the guest.
duration_secondsintegerAudio/video duration in seconds (client-provided, informational).
consent_confirmedbooleanGDPR: guest confirmed the consent text before submitting.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
deletedbooleanThis property is used to mark an entity as deleted / archived
curl --request GET \
--url https://your-instance.iw-erp.de/api/event/moment/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://your-instance.iw-erp.de/api/event/moment/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment/42")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment/42"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/event_moment_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await EventMomentController.get('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"guest_name": "Beispiel",
"has_file": true,
"file_virus_checked": true,
"token": "string",
"moment_type": "string",
"moderation_status": "string",
"sign_up": {
"id": 42,
"first_name": "Lena",
"last_name": "Hartmann",
"address_street": "Jakobistr. 39",
"address_city": "Hannover",
"address_zip": "30163",
"address_country": "DE",
"address_full_country": "DE",
"name": "Beispiel",
"main_phone": "+49 511 123456"
},
"duration_seconds": 1,
"consent_confirmed": true
}Delete a moment: soft-deletes the entity and removes the stored file (GDPR deletion concept).
DELETE/api/event/moment/{identifier}
Path parameters
identifierrequiredstring |
Responses
default
curl --request DELETE \
--url https://your-instance.iw-erp.de/api/event/moment/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'DELETE', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.delete(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('DELETE', 'https://your-instance.iw-erp.de/api/event/moment/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Delete,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment/42")
.delete(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment/42"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/event_moment_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await EventMomentController.delete('42');
if (result.success) {
print(result.data);
}Add a moment on behalf of the organizer: a voice message, photo, drawing or video collected outside the guest page (a recording from the party, the photographer's pictures), or a text entry.
POST/api/event/moment/upload/{eventIdentifier}
Same form fields as the guest upload (multipart, prefix event_moment), minus
the consent: the organizer collects the guestbook, so the moment is stored as
consented and already approved. The file limits and formats are the guest
ones (event_moments_max_file_size_mb, event_moments_max_video_file_size_mb,
event_moments_allowed_*_mime_types), the virus scan runs in the background
as for every upload.
Path parameters
eventIdentifierrequiredstring |
Responses
200Creates an EventMoment from an organizer uploadEventMoment
Show fields (13)
has_filebooleanVirtual serializer property: does this moment have a downloadable file?
file_virus_checkedbooleanVirtual serializer property for the organizer: has the file passed the background virus scan? Null without a file. The organizer list uses this to say "still being checked" instead of showing a preview that answers 404. Not part of the guest groups on purpose - a guest sees only own files, and those are handed out regardless of the scan state.
idintegerPrimary key of the event moment. Internal ID.
tokenstringHard-to-guess identifier; used as the public identifier of the moment so numeric ids are never exposed to guests.
moment_typestringType of the moment, for example photo or video.
moderation_statusstringModeration status of the moment, for example pending or approved.
sign_upBaseEventSignUp17Optional participant reference; null for anonymous contributions via the anonymous event moments token.
Show fields (56)
bib_range_idintegerage_classstringAltersklasse nach DLV, z. B. M40 - berechnet aus Geburtstag, Geschlecht und Eventdatum.
idintegerPrimary key of the sign-up. Internal ID.
first_namestringFirst name of the participant.
last_namestringLast name of the participant.
genderstringGender of the participant.
tokenstringPublic token of the sign-up. Used in links instead of the ID.
moments_tokenstringParticipant-bound moments token: allows this participant to use the event moments (digital guestbook) page; uploads via this token are linked to the participant.
waitingbooleanThe sign-up is on the waiting list.
confirmedbooleanThe sign-up is confirmed.
externalbooleanThe sign-up was made by an external party.
deletion_reasonstringReason the sign-up was cancelled.
billedbooleanThe sign-up was billed.
direct_billingbooleandirect_billing_check_datestring (date-time)direct_billing_tokenstringwait_list_confirmation_tokenstringwait_list_confirmation_sent_atstring (date-time)wait_list_confirmation_deadlinestring (date-time)wait_list_confirmed_atstring (date-time)wait_list_pending_confirmationbooleanwait_list_sort_orderintegerbirthdaystring (date-time)Birthday of the participant.
trialbooleanTrial date sign-up (Schnuppern): a date sign-up without a course place that uses up one unit of the person's trial pass (eventAccessBudget with sourceType trial)
trial_channelstringWho booked the trial date: app, trainer, office
trial_session_numberintegerNumber of this trial date within the pass (1 = first), for "Schnuppern 2/3"
trial_session_maxintegerTrial dates of the pass, for "Schnuppern 2/3"
nace_sectionstringNACE section code (letter A-U)
nace_codestringNACE code (numeric like 01.11, 62.01)
bib_numberintegerStartnummer (Zaehler). Bei PER_PREFIX nur zusammen mit dem Praefix eindeutig. Wird nur ueber BibNumberAssigner gesetzt, stornierte Anmeldungen behalten sie.
bib_labelstringAngezeigte Startnummer inkl. Praefix, z. B. W0123. Pro Event eindeutig.
bib_number_assigned_atstring (date-time)Time the bib number was assigned.
chip_codestringTransponder- oder QR-Kennung fuer die Zeitmessung. Pro Event eindeutig.
timing_tracking_consentbooleanEinwilligung in das GPS-Live-Tracking waehrend des Events.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
namestringName of the entity.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
deletedbooleanThis property is used to mark an entity as deleted / archived
orderintegerPosition of the entity in the order.
guest_namestringOptional display name entered by the guest.
duration_secondsintegerAudio/video duration in seconds (client-provided, informational).
consent_confirmedbooleanGDPR: guest confirmed the consent text before submitting.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
deletedbooleanThis property is used to mark an entity as deleted / archived
curl --request POST \
--url https://your-instance.iw-erp.de/api/event/moment/upload/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'POST', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment/upload/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment/upload/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.post(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://your-instance.iw-erp.de/api/event/moment/upload/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment/upload/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment/upload/42")
.post(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment/upload/42"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/event_moment_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await EventMomentController.postUpload('42', momentType: '…');
if (result.success) {
print(result.data);
}{
"id": 42,
"guest_name": "Beispiel",
"has_file": true,
"file_virus_checked": true,
"token": "string",
"moment_type": "string",
"moderation_status": "string",
"sign_up": {
"id": 42,
"first_name": "Lena",
"last_name": "Hartmann",
"address_street": "Jakobistr. 39",
"address_city": "Hannover",
"address_zip": "30163",
"address_country": "DE",
"address_full_country": "DE",
"name": "Beispiel",
"main_phone": "+49 511 123456"
},
"duration_seconds": 1,
"consent_confirmed": true
}Update the moderation status of a moment (PENDING / APPROVED / HIDDEN).
PUT/api/event/moment/{identifier}/moderation
Path parameters
identifierrequiredstring |
Responses
200Updates the moderation status of an EventMomentEventMoment
Show fields (13)
has_filebooleanVirtual serializer property: does this moment have a downloadable file?
file_virus_checkedbooleanVirtual serializer property for the organizer: has the file passed the background virus scan? Null without a file. The organizer list uses this to say "still being checked" instead of showing a preview that answers 404. Not part of the guest groups on purpose - a guest sees only own files, and those are handed out regardless of the scan state.
idintegerPrimary key of the event moment. Internal ID.
tokenstringHard-to-guess identifier; used as the public identifier of the moment so numeric ids are never exposed to guests.
moment_typestringType of the moment, for example photo or video.
moderation_statusstringModeration status of the moment, for example pending or approved.
sign_upBaseEventSignUp17Optional participant reference; null for anonymous contributions via the anonymous event moments token.
Show fields (56)
bib_range_idintegerage_classstringAltersklasse nach DLV, z. B. M40 - berechnet aus Geburtstag, Geschlecht und Eventdatum.
idintegerPrimary key of the sign-up. Internal ID.
first_namestringFirst name of the participant.
last_namestringLast name of the participant.
genderstringGender of the participant.
tokenstringPublic token of the sign-up. Used in links instead of the ID.
moments_tokenstringParticipant-bound moments token: allows this participant to use the event moments (digital guestbook) page; uploads via this token are linked to the participant.
waitingbooleanThe sign-up is on the waiting list.
confirmedbooleanThe sign-up is confirmed.
externalbooleanThe sign-up was made by an external party.
deletion_reasonstringReason the sign-up was cancelled.
billedbooleanThe sign-up was billed.
direct_billingbooleandirect_billing_check_datestring (date-time)direct_billing_tokenstringwait_list_confirmation_tokenstringwait_list_confirmation_sent_atstring (date-time)wait_list_confirmation_deadlinestring (date-time)wait_list_confirmed_atstring (date-time)wait_list_pending_confirmationbooleanwait_list_sort_orderintegerbirthdaystring (date-time)Birthday of the participant.
trialbooleanTrial date sign-up (Schnuppern): a date sign-up without a course place that uses up one unit of the person's trial pass (eventAccessBudget with sourceType trial)
trial_channelstringWho booked the trial date: app, trainer, office
trial_session_numberintegerNumber of this trial date within the pass (1 = first), for "Schnuppern 2/3"
trial_session_maxintegerTrial dates of the pass, for "Schnuppern 2/3"
nace_sectionstringNACE section code (letter A-U)
nace_codestringNACE code (numeric like 01.11, 62.01)
bib_numberintegerStartnummer (Zaehler). Bei PER_PREFIX nur zusammen mit dem Praefix eindeutig. Wird nur ueber BibNumberAssigner gesetzt, stornierte Anmeldungen behalten sie.
bib_labelstringAngezeigte Startnummer inkl. Praefix, z. B. W0123. Pro Event eindeutig.
bib_number_assigned_atstring (date-time)Time the bib number was assigned.
chip_codestringTransponder- oder QR-Kennung fuer die Zeitmessung. Pro Event eindeutig.
timing_tracking_consentbooleanEinwilligung in das GPS-Live-Tracking waehrend des Events.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
namestringName of the entity.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
deletedbooleanThis property is used to mark an entity as deleted / archived
orderintegerPosition of the entity in the order.
guest_namestringOptional display name entered by the guest.
duration_secondsintegerAudio/video duration in seconds (client-provided, informational).
consent_confirmedbooleanGDPR: guest confirmed the consent text before submitting.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
deletedbooleanThis property is used to mark an entity as deleted / archived
curl --request PUT \
--url https://your-instance.iw-erp.de/api/event/moment/42/moderation \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'PUT', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment/42/moderation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment/42/moderation"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.put(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('PUT', 'https://your-instance.iw-erp.de/api/event/moment/42/moderation', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Put,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment/42/moderation"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment/42/moderation")
.put(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment/42/moderation"
req, _ := http.NewRequest("PUT", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/event_moment_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await EventMomentController.putModeration('42', '…');
if (result.success) {
print(result.data);
}{
"id": 42,
"guest_name": "Beispiel",
"has_file": true,
"file_virus_checked": true,
"token": "string",
"moment_type": "string",
"moderation_status": "string",
"sign_up": {
"id": 42,
"first_name": "Lena",
"last_name": "Hartmann",
"address_street": "Jakobistr. 39",
"address_city": "Hannover",
"address_zip": "30163",
"address_country": "DE",
"address_full_country": "DE",
"name": "Beispiel",
"main_phone": "+49 511 123456"
},
"duration_seconds": 1,
"consent_confirmed": true
}Update the moderation status of a moment (PENDING / APPROVED / HIDDEN).
PATCH/api/event/moment/{identifier}/moderation
Path parameters
identifierrequiredstring |
Responses
200Updates the moderation status of an EventMomentEventMoment
Show fields (13)
has_filebooleanVirtual serializer property: does this moment have a downloadable file?
file_virus_checkedbooleanVirtual serializer property for the organizer: has the file passed the background virus scan? Null without a file. The organizer list uses this to say "still being checked" instead of showing a preview that answers 404. Not part of the guest groups on purpose - a guest sees only own files, and those are handed out regardless of the scan state.
idintegerPrimary key of the event moment. Internal ID.
tokenstringHard-to-guess identifier; used as the public identifier of the moment so numeric ids are never exposed to guests.
moment_typestringType of the moment, for example photo or video.
moderation_statusstringModeration status of the moment, for example pending or approved.
sign_upBaseEventSignUp17Optional participant reference; null for anonymous contributions via the anonymous event moments token.
Show fields (56)
bib_range_idintegerage_classstringAltersklasse nach DLV, z. B. M40 - berechnet aus Geburtstag, Geschlecht und Eventdatum.
idintegerPrimary key of the sign-up. Internal ID.
first_namestringFirst name of the participant.
last_namestringLast name of the participant.
genderstringGender of the participant.
tokenstringPublic token of the sign-up. Used in links instead of the ID.
moments_tokenstringParticipant-bound moments token: allows this participant to use the event moments (digital guestbook) page; uploads via this token are linked to the participant.
waitingbooleanThe sign-up is on the waiting list.
confirmedbooleanThe sign-up is confirmed.
externalbooleanThe sign-up was made by an external party.
deletion_reasonstringReason the sign-up was cancelled.
billedbooleanThe sign-up was billed.
direct_billingbooleandirect_billing_check_datestring (date-time)direct_billing_tokenstringwait_list_confirmation_tokenstringwait_list_confirmation_sent_atstring (date-time)wait_list_confirmation_deadlinestring (date-time)wait_list_confirmed_atstring (date-time)wait_list_pending_confirmationbooleanwait_list_sort_orderintegerbirthdaystring (date-time)Birthday of the participant.
trialbooleanTrial date sign-up (Schnuppern): a date sign-up without a course place that uses up one unit of the person's trial pass (eventAccessBudget with sourceType trial)
trial_channelstringWho booked the trial date: app, trainer, office
trial_session_numberintegerNumber of this trial date within the pass (1 = first), for "Schnuppern 2/3"
trial_session_maxintegerTrial dates of the pass, for "Schnuppern 2/3"
nace_sectionstringNACE section code (letter A-U)
nace_codestringNACE code (numeric like 01.11, 62.01)
bib_numberintegerStartnummer (Zaehler). Bei PER_PREFIX nur zusammen mit dem Praefix eindeutig. Wird nur ueber BibNumberAssigner gesetzt, stornierte Anmeldungen behalten sie.
bib_labelstringAngezeigte Startnummer inkl. Praefix, z. B. W0123. Pro Event eindeutig.
bib_number_assigned_atstring (date-time)Time the bib number was assigned.
chip_codestringTransponder- oder QR-Kennung fuer die Zeitmessung. Pro Event eindeutig.
timing_tracking_consentbooleanEinwilligung in das GPS-Live-Tracking waehrend des Events.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
addressstringAddress as text.
address_streetstringStreet of the address.
address_house_numberstringHouse number of the address.
address_street_levelstringStreet and house number of the address.
address_costringCare-of line of the address.
address_citystringCity of the address.
address_zipstringPostal code of the address.
address_admin_level1stringFirst administrative level of the address, e.g. the federal state.
address_countrystringCountry code of the address.
address_full_countrystringFull name of the country of the address.
address_geo_latstringLatitude of the address.
address_geo_lngstringLongitude of the address.
address_external_provider_idstringfield to store the external provider id of the address. e.g. Google Maps PlaceID like google:ChIJVcKw5r90sEcRhdjNq6NItqE
namestringName of the entity.
main_phonestringMain phone number.
main_faxstringMain fax number.
main_emailstringMain e-mail address.
websitestringWebsite address.
deletedbooleanThis property is used to mark an entity as deleted / archived
orderintegerPosition of the entity in the order.
guest_namestringOptional display name entered by the guest.
duration_secondsintegerAudio/video duration in seconds (client-provided, informational).
consent_confirmedbooleanGDPR: guest confirmed the consent text before submitting.
createdstring (date-time)Point in time the entity was created.
updatedstring (date-time)Point in time the entity was last updated.
deletedbooleanThis property is used to mark an entity as deleted / archived
curl --request PATCH \
--url https://your-instance.iw-erp.de/api/event/moment/42/moderation \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'PATCH', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment/42/moderation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment/42/moderation"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.patch(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('PATCH', 'https://your-instance.iw-erp.de/api/event/moment/42/moderation', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Patch,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment/42/moderation"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment/42/moderation")
.patch(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment/42/moderation"
req, _ := http.NewRequest("PATCH", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with package:http (no controller in the iw_erp_api package)
import 'package:http/http.dart' as http;
final response = await http.patch(
Uri.parse('https://your-instance.iw-erp.de/api/event/moment/42/moderation'),
headers: {'x-iw-jwt-token': '<TOKEN>'},
);
print(response.body);{
"id": 42,
"guest_name": "Beispiel",
"has_file": true,
"file_virus_checked": true,
"token": "string",
"moment_type": "string",
"moderation_status": "string",
"sign_up": {
"id": 42,
"first_name": "Lena",
"last_name": "Hartmann",
"address_street": "Jakobistr. 39",
"address_city": "Hannover",
"address_zip": "30163",
"address_country": "DE",
"address_full_country": "DE",
"name": "Beispiel",
"main_phone": "+49 511 123456"
},
"duration_seconds": 1,
"consent_confirmed": true
}Stream the file (audio recording / drawing) of a moment for the organizer.
GET/api/event/moment/{identifier}/file
Path parameters
identifierrequiredstring |
Responses
default
curl --request GET \
--url https://your-instance.iw-erp.de/api/event/moment/42/file \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment/42/file', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment/42/file"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://your-instance.iw-erp.de/api/event/moment/42/file', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment/42/file"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment/42/file")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment/42/file"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with package:http (no controller in the iw_erp_api package)
import 'package:http/http.dart' as http;
final response = await http.get(
Uri.parse('https://your-instance.iw-erp.de/api/event/moment/42/file'),
headers: {'x-iw-jwt-token': '<TOKEN>'},
);
print(response.body);State of the temporary ZIP download link of one event.
GET/api/event/moment/download/{eventIdentifier}
Path parameters
eventIdentifierrequiredstring |
Responses
default
curl --request GET \
--url https://your-instance.iw-erp.de/api/event/moment/download/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment/download/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment/download/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://your-instance.iw-erp.de/api/event/moment/download/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment/download/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment/download/42")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment/download/42"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/event_moment_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await EventMomentController.getDownload('42');
if (result.success) {
print(result.data);
}Request a fresh download link. The ZIP is streamed on every download, so the link is READY right away and always delivers the current guestbook.
POST/api/event/moment/download/{eventIdentifier}
Always mints a new token: the previously shared link stops working, which is the only way to take back a link that is already out there.
Path parameters
eventIdentifierrequiredstring |
Responses
default
curl --request POST \
--url https://your-instance.iw-erp.de/api/event/moment/download/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'POST', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment/download/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment/download/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.post(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://your-instance.iw-erp.de/api/event/moment/download/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment/download/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment/download/42")
.post(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment/download/42"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/event_moment_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await EventMomentController.postDownload('42');
if (result.success) {
print(result.data);
}Revoke the download link right away.
DELETE/api/event/moment/download/{eventIdentifier}
Path parameters
eventIdentifierrequiredstring |
Responses
default
curl --request DELETE \
--url https://your-instance.iw-erp.de/api/event/moment/download/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'DELETE', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://your-instance.iw-erp.de/api/event/moment/download/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://your-instance.iw-erp.de/api/event/moment/download/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.delete(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('DELETE', 'https://your-instance.iw-erp.de/api/event/moment/download/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Delete,
RequestUri = new Uri("https://your-instance.iw-erp.de/api/event/moment/download/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://your-instance.iw-erp.de/api/event/moment/download/42")
.delete(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.iw-erp.de/api/event/moment/download/42"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart with the iw_erp_api package
import 'package:iw_erp_api/clients/event_moment_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'your-instance.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await EventMomentController.deleteDownload('42');
if (result.success) {
print(result.data);
}