StudioTraining / StudioTrainingPlanDay
Liefert eine Liste der StudioTrainingPlanDay-Objekte.
GET/api/crm/studio_training/plan_day
Query-Parameter
idstring | |
deletedboolean | Diese Eigenschaft markiert eine Entität als gelöscht / archiviert | Benötigtes Zugriffsrecht: SCOPE | Standardwert: false |
planstring | |
namestring | |
dayOfWeekstring | Optionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist |
searchStringstring | Text, nach dem in der Liste gesucht wird |
orderFieldNamestring | Name des Bestellfelds |
orderFieldSortstring | SortiermodusErlaubt: DESCASC |
pageinteger | Seite der Liste |
pageSizeinteger | Anzahl der Einträge je Seite |
withMaxPageNumberstring | gibt die Anzahl verfügbarer Seiten als Header zurück, wenn dies gesetzt ist |
Antworten
200Liefert eine Liste der StudioTrainingPlanDay-Objekte.array<StudioTrainingPlanDay>
Felder anzeigen (11)
idintegerPrimärschlüssel des Plantags. Interne ID.
planStudioTrainingPlanPlan, zu dem der Tag gehört.
Felder anzeigen (17)
idintegerPrimärschlüssel des Trainingsplans. Interne ID.
training_person_dataStudioTrainingPersonData2Trainingsdaten der Person, für die der Plan gilt.
namestringName des Trainingsplans.
descriptionstringBeschreibung des Trainingsplans.
times_per_weekintegerGeplante Anzahl der Trainingseinheiten pro Woche.
statusstringEine der STATUS_*-Konstanten
is_templatebooleanWahr für wiederverwendbare Vorlagen, die keiner Trainingsperson zugeordnet sind
valid_fromstring (date-time)Beginn des Plans.
valid_untilstring (date-time)Ende des Plans.
review_datestring (date-time)Datum, an dem der Plan mit dem Mitglied überprüft werden sollte (Wiedervorlage)
training_goalstringTrainingsziel des Plans, z. B. Muskelaufbau, Gewichtsabnahme, Reha
created_by_personCRMPerson10Trainer, der den Plan angelegt hat; wird für die Trainingsdokumentation gespeichert
source_templateStudioTrainingPlanVorlage, aus der dieser Plan erstellt wurde, falls er aus einer Vorlage zugewiesen wurde
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
namestringName des Plantags.
descriptionstringBeschreibung des Plantags.
day_of_weekintegerOptionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist
roundsintegerAnzahl der Runden, wenn der Tag als Zirkel (Zirkeltraining) ausgeführt wird
round_rest_secondsintegerPause zwischen den Zirkelrunden in Sekunden
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
curl --request GET \
--url https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day"
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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day', [
'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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day"),
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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day")
.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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day"
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 mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/studio_training_plan_day_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await StudioTrainingPlanDayController.getAll();
if (result.success) {
print(result.data);
}[
{
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": true,
"valid_from": "2026-10-15T09:30:00+02:00",
"valid_until": "2026-10-15T09:30:00+02:00",
"review_date": "2026-10-15T09:30:00+02:00",
"training_goal": "string"
},
"day_of_week": 1,
"rounds": 1,
"round_rest_seconds": 1,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
}
]Einzelnen StudioTrainingPlanDay anlegen
POST/api/crm/studio_training/plan_day
Request-Body application/json
dataStudioTrainingPlanDayFelder anzeigen (11)
idintegerPrimärschlüssel des Plantags. Interne ID.
planStudioTrainingPlanPlan, zu dem der Tag gehört.
namestringName des Plantags.
descriptionstringBeschreibung des Plantags.
day_of_weekintegerOptionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist
roundsintegerAnzahl der Runden, wenn der Tag als Zirkel (Zirkeltraining) ausgeführt wird
round_rest_secondsintegerPause zwischen den Zirkelrunden in Sekunden
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
Antworten
200Einzelnen StudioTrainingPlanDay anlegenStudioTrainingPlanDay
Felder anzeigen (11)
idintegerPrimärschlüssel des Plantags. Interne ID.
planStudioTrainingPlanPlan, zu dem der Tag gehört.
Felder anzeigen (17)
idintegerPrimärschlüssel des Trainingsplans. Interne ID.
training_person_dataStudioTrainingPersonData2Trainingsdaten der Person, für die der Plan gilt.
namestringName des Trainingsplans.
descriptionstringBeschreibung des Trainingsplans.
times_per_weekintegerGeplante Anzahl der Trainingseinheiten pro Woche.
statusstringEine der STATUS_*-Konstanten
is_templatebooleanWahr für wiederverwendbare Vorlagen, die keiner Trainingsperson zugeordnet sind
valid_fromstring (date-time)Beginn des Plans.
valid_untilstring (date-time)Ende des Plans.
review_datestring (date-time)Datum, an dem der Plan mit dem Mitglied überprüft werden sollte (Wiedervorlage)
training_goalstringTrainingsziel des Plans, z. B. Muskelaufbau, Gewichtsabnahme, Reha
created_by_personCRMPerson10Trainer, der den Plan angelegt hat; wird für die Trainingsdokumentation gespeichert
source_templateStudioTrainingPlanVorlage, aus der dieser Plan erstellt wurde, falls er aus einer Vorlage zugewiesen wurde
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
namestringName des Plantags.
descriptionstringBeschreibung des Plantags.
day_of_weekintegerOptionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist
roundsintegerAnzahl der Runden, wenn der Tag als Zirkel (Zirkeltraining) ausgeführt wird
round_rest_secondsintegerPause zwischen den Zirkelrunden in Sekunden
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
curl --request POST \
--url https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": true
},
"day_of_week": 1,
"rounds": 1
}
}
'const options = {
method: 'POST',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
id: 42,
name: 'Beispiel',
description: 'Text',
plan: {
id: 42,
name: 'Beispiel',
description: 'Text',
times_per_week: 1,
status: 'string',
is_template: true
},
day_of_week: 1,
rounds: 1
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day"
payload = { "data": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": True
},
"day_of_week": 1,
"rounds": 1
} }
headers = {
"x-iw-jwt-token": "<TOKEN>",
"content-type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day', [
'body' => '{"data":{"id":42,"name":"Beispiel","description":"Text","plan":{"id":42,"name":"Beispiel","description":"Text","times_per_week":1,"status":"string","is_template":true},"day_of_week":1,"rounds":1}}',
'headers' => [
'content-type' => 'application/json',
'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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"plan\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"times_per_week\":1,\"status\":\"string\",\"is_template\":true},\"day_of_week\":1,\"rounds\":1}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"plan\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"times_per_week\":1,\"status\":\"string\",\"is_template\":true},\"day_of_week\":1,\"rounds\":1}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day")
.post(body)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day"
payload := strings.NewReader("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"plan\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"times_per_week\":1,\"status\":\"string\",\"is_template\":true},\"day_of_week\":1,\"rounds\":1}}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/studio_training_plan_day_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
import 'package:iw_erp_api/model/studio_training_plan_day.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await StudioTrainingPlanDayController.post(StudioTrainingPlanDay.fromJson({
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": true
},
"day_of_week": 1,
"rounds": 1
}));
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"training_person_data": {
"id": 42,
"weight": 1.5,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
},
"times_per_week": 1,
"status": "string",
"is_template": true,
"valid_from": "2026-10-15T09:30:00+02:00",
"valid_until": "2026-10-15T09:30:00+02:00",
"review_date": "2026-10-15T09:30:00+02:00"
},
"day_of_week": 1,
"rounds": 1,
"round_rest_seconds": 1,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
}Liefert ein einzelnes StudioTrainingPlanDay-Objekt.
GET/api/crm/studio_training/plan_day/{identifier}
Pfad-Parameter
identifierPflichtstring |
Antworten
200Liefert ein einzelnes StudioTrainingPlanDay-Objekt.StudioTrainingPlanDay
Felder anzeigen (11)
idintegerPrimärschlüssel des Plantags. Interne ID.
planStudioTrainingPlanPlan, zu dem der Tag gehört.
Felder anzeigen (17)
idintegerPrimärschlüssel des Trainingsplans. Interne ID.
training_person_dataStudioTrainingPersonData2Trainingsdaten der Person, für die der Plan gilt.
namestringName des Trainingsplans.
descriptionstringBeschreibung des Trainingsplans.
times_per_weekintegerGeplante Anzahl der Trainingseinheiten pro Woche.
statusstringEine der STATUS_*-Konstanten
is_templatebooleanWahr für wiederverwendbare Vorlagen, die keiner Trainingsperson zugeordnet sind
valid_fromstring (date-time)Beginn des Plans.
valid_untilstring (date-time)Ende des Plans.
review_datestring (date-time)Datum, an dem der Plan mit dem Mitglied überprüft werden sollte (Wiedervorlage)
training_goalstringTrainingsziel des Plans, z. B. Muskelaufbau, Gewichtsabnahme, Reha
created_by_personCRMPerson10Trainer, der den Plan angelegt hat; wird für die Trainingsdokumentation gespeichert
source_templateStudioTrainingPlanVorlage, aus der dieser Plan erstellt wurde, falls er aus einer Vorlage zugewiesen wurde
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
namestringName des Plantags.
descriptionstringBeschreibung des Plantags.
day_of_weekintegerOptionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist
roundsintegerAnzahl der Runden, wenn der Tag als Zirkel (Zirkeltraining) ausgeführt wird
round_rest_secondsintegerPause zwischen den Zirkelrunden in Sekunden
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
curl --request GET \
--url https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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 mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/studio_training_plan_day_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await StudioTrainingPlanDayController.get('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"training_person_data": {
"id": 42,
"weight": 1.5,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
},
"times_per_week": 1,
"status": "string",
"is_template": true,
"valid_from": "2026-10-15T09:30:00+02:00",
"valid_until": "2026-10-15T09:30:00+02:00",
"review_date": "2026-10-15T09:30:00+02:00"
},
"day_of_week": 1,
"rounds": 1,
"round_rest_seconds": 1,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
}StudioTrainingPlanDay einzeln aktualisieren
PUT/api/crm/studio_training/plan_day/{identifier}
Pfad-Parameter
identifierPflichtstring |
Request-Body application/json
dataStudioTrainingPlanDayFelder anzeigen (11)
idintegerPrimärschlüssel des Plantags. Interne ID.
planStudioTrainingPlanPlan, zu dem der Tag gehört.
namestringName des Plantags.
descriptionstringBeschreibung des Plantags.
day_of_weekintegerOptionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist
roundsintegerAnzahl der Runden, wenn der Tag als Zirkel (Zirkeltraining) ausgeführt wird
round_rest_secondsintegerPause zwischen den Zirkelrunden in Sekunden
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
Antworten
200StudioTrainingPlanDay einzeln aktualisierenStudioTrainingPlanDay
Felder anzeigen (11)
idintegerPrimärschlüssel des Plantags. Interne ID.
planStudioTrainingPlanPlan, zu dem der Tag gehört.
Felder anzeigen (17)
idintegerPrimärschlüssel des Trainingsplans. Interne ID.
training_person_dataStudioTrainingPersonData2Trainingsdaten der Person, für die der Plan gilt.
namestringName des Trainingsplans.
descriptionstringBeschreibung des Trainingsplans.
times_per_weekintegerGeplante Anzahl der Trainingseinheiten pro Woche.
statusstringEine der STATUS_*-Konstanten
is_templatebooleanWahr für wiederverwendbare Vorlagen, die keiner Trainingsperson zugeordnet sind
valid_fromstring (date-time)Beginn des Plans.
valid_untilstring (date-time)Ende des Plans.
review_datestring (date-time)Datum, an dem der Plan mit dem Mitglied überprüft werden sollte (Wiedervorlage)
training_goalstringTrainingsziel des Plans, z. B. Muskelaufbau, Gewichtsabnahme, Reha
created_by_personCRMPerson10Trainer, der den Plan angelegt hat; wird für die Trainingsdokumentation gespeichert
source_templateStudioTrainingPlanVorlage, aus der dieser Plan erstellt wurde, falls er aus einer Vorlage zugewiesen wurde
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
namestringName des Plantags.
descriptionstringBeschreibung des Plantags.
day_of_weekintegerOptionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist
roundsintegerAnzahl der Runden, wenn der Tag als Zirkel (Zirkeltraining) ausgeführt wird
round_rest_secondsintegerPause zwischen den Zirkelrunden in Sekunden
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
curl --request PUT \
--url https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42 \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": true
},
"day_of_week": 1,
"rounds": 1
}
}
'const options = {
method: 'PUT',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
id: 42,
name: 'Beispiel',
description: 'Text',
plan: {
id: 42,
name: 'Beispiel',
description: 'Text',
times_per_week: 1,
status: 'string',
is_template: true
},
day_of_week: 1,
rounds: 1
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42"
payload = { "data": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": True
},
"day_of_week": 1,
"rounds": 1
} }
headers = {
"x-iw-jwt-token": "<TOKEN>",
"content-type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('PUT', 'https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42', [
'body' => '{"data":{"id":42,"name":"Beispiel","description":"Text","plan":{"id":42,"name":"Beispiel","description":"Text","times_per_week":1,"status":"string","is_template":true},"day_of_week":1,"rounds":1}}',
'headers' => [
'content-type' => 'application/json',
'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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"plan\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"times_per_week\":1,\"status\":\"string\",\"is_template\":true},\"day_of_week\":1,\"rounds\":1}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"plan\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"times_per_week\":1,\"status\":\"string\",\"is_template\":true},\"day_of_week\":1,\"rounds\":1}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42")
.put(body)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42"
payload := strings.NewReader("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"plan\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"times_per_week\":1,\"status\":\"string\",\"is_template\":true},\"day_of_week\":1,\"rounds\":1}}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit package:http (kein Controller im Package iw_erp_api)
import 'dart:convert';
import 'package:http/http.dart' as http;
final response = await http.put(
Uri.parse('https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42'),
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: jsonEncode({
"data": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": true
},
"day_of_week": 1,
"rounds": 1
}
}),
);
print(response.body);{
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"training_person_data": {
"id": 42,
"weight": 1.5,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
},
"times_per_week": 1,
"status": "string",
"is_template": true,
"valid_from": "2026-10-15T09:30:00+02:00",
"valid_until": "2026-10-15T09:30:00+02:00",
"review_date": "2026-10-15T09:30:00+02:00"
},
"day_of_week": 1,
"rounds": 1,
"round_rest_seconds": 1,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
}StudioTrainingPlanDay einzeln aktualisieren
PATCH/api/crm/studio_training/plan_day/{identifier}
Pfad-Parameter
identifierPflichtstring |
Request-Body application/json
dataStudioTrainingPlanDayFelder anzeigen (11)
idintegerPrimärschlüssel des Plantags. Interne ID.
planStudioTrainingPlanPlan, zu dem der Tag gehört.
namestringName des Plantags.
descriptionstringBeschreibung des Plantags.
day_of_weekintegerOptionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist
roundsintegerAnzahl der Runden, wenn der Tag als Zirkel (Zirkeltraining) ausgeführt wird
round_rest_secondsintegerPause zwischen den Zirkelrunden in Sekunden
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
Antworten
200StudioTrainingPlanDay einzeln aktualisierenStudioTrainingPlanDay
Felder anzeigen (11)
idintegerPrimärschlüssel des Plantags. Interne ID.
planStudioTrainingPlanPlan, zu dem der Tag gehört.
Felder anzeigen (17)
idintegerPrimärschlüssel des Trainingsplans. Interne ID.
training_person_dataStudioTrainingPersonData2Trainingsdaten der Person, für die der Plan gilt.
namestringName des Trainingsplans.
descriptionstringBeschreibung des Trainingsplans.
times_per_weekintegerGeplante Anzahl der Trainingseinheiten pro Woche.
statusstringEine der STATUS_*-Konstanten
is_templatebooleanWahr für wiederverwendbare Vorlagen, die keiner Trainingsperson zugeordnet sind
valid_fromstring (date-time)Beginn des Plans.
valid_untilstring (date-time)Ende des Plans.
review_datestring (date-time)Datum, an dem der Plan mit dem Mitglied überprüft werden sollte (Wiedervorlage)
training_goalstringTrainingsziel des Plans, z. B. Muskelaufbau, Gewichtsabnahme, Reha
created_by_personCRMPerson10Trainer, der den Plan angelegt hat; wird für die Trainingsdokumentation gespeichert
source_templateStudioTrainingPlanVorlage, aus der dieser Plan erstellt wurde, falls er aus einer Vorlage zugewiesen wurde
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
namestringName des Plantags.
descriptionstringBeschreibung des Plantags.
day_of_weekintegerOptionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist
roundsintegerAnzahl der Runden, wenn der Tag als Zirkel (Zirkeltraining) ausgeführt wird
round_rest_secondsintegerPause zwischen den Zirkelrunden in Sekunden
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
curl --request PATCH \
--url https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42 \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": true
},
"day_of_week": 1,
"rounds": 1
}
}
'const options = {
method: 'PATCH',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
id: 42,
name: 'Beispiel',
description: 'Text',
plan: {
id: 42,
name: 'Beispiel',
description: 'Text',
times_per_week: 1,
status: 'string',
is_template: true
},
day_of_week: 1,
rounds: 1
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42"
payload = { "data": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": True
},
"day_of_week": 1,
"rounds": 1
} }
headers = {
"x-iw-jwt-token": "<TOKEN>",
"content-type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('PATCH', 'https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42', [
'body' => '{"data":{"id":42,"name":"Beispiel","description":"Text","plan":{"id":42,"name":"Beispiel","description":"Text","times_per_week":1,"status":"string","is_template":true},"day_of_week":1,"rounds":1}}',
'headers' => [
'content-type' => 'application/json',
'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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"plan\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"times_per_week\":1,\"status\":\"string\",\"is_template\":true},\"day_of_week\":1,\"rounds\":1}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"plan\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"times_per_week\":1,\"status\":\"string\",\"is_template\":true},\"day_of_week\":1,\"rounds\":1}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42")
.patch(body)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42"
payload := strings.NewReader("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"plan\":{\"id\":42,\"name\":\"Beispiel\",\"description\":\"Text\",\"times_per_week\":1,\"status\":\"string\",\"is_template\":true},\"day_of_week\":1,\"rounds\":1}}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit package:http (kein Controller im Package iw_erp_api)
import 'dart:convert';
import 'package:http/http.dart' as http;
final response = await http.patch(
Uri.parse('https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42'),
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: jsonEncode({
"data": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"times_per_week": 1,
"status": "string",
"is_template": true
},
"day_of_week": 1,
"rounds": 1
}
}),
);
print(response.body);{
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"training_person_data": {
"id": 42,
"weight": 1.5,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
},
"times_per_week": 1,
"status": "string",
"is_template": true,
"valid_from": "2026-10-15T09:30:00+02:00",
"valid_until": "2026-10-15T09:30:00+02:00",
"review_date": "2026-10-15T09:30:00+02:00"
},
"day_of_week": 1,
"rounds": 1,
"round_rest_seconds": 1,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
}Einen einzelnen StudioTrainingPlanDay löschen (Soft Delete)
DELETE/api/crm/studio_training/plan_day/{identifier}
Pfad-Parameter
identifierPflichtstring |
Antworten
200Einen einzelnen StudioTrainingPlanDay löschenStudioTrainingPlanDay
Felder anzeigen (11)
idintegerPrimärschlüssel des Plantags. Interne ID.
planStudioTrainingPlanPlan, zu dem der Tag gehört.
Felder anzeigen (17)
idintegerPrimärschlüssel des Trainingsplans. Interne ID.
training_person_dataStudioTrainingPersonData2Trainingsdaten der Person, für die der Plan gilt.
namestringName des Trainingsplans.
descriptionstringBeschreibung des Trainingsplans.
times_per_weekintegerGeplante Anzahl der Trainingseinheiten pro Woche.
statusstringEine der STATUS_*-Konstanten
is_templatebooleanWahr für wiederverwendbare Vorlagen, die keiner Trainingsperson zugeordnet sind
valid_fromstring (date-time)Beginn des Plans.
valid_untilstring (date-time)Ende des Plans.
review_datestring (date-time)Datum, an dem der Plan mit dem Mitglied überprüft werden sollte (Wiedervorlage)
training_goalstringTrainingsziel des Plans, z. B. Muskelaufbau, Gewichtsabnahme, Reha
created_by_personCRMPerson10Trainer, der den Plan angelegt hat; wird für die Trainingsdokumentation gespeichert
source_templateStudioTrainingPlanVorlage, aus der dieser Plan erstellt wurde, falls er aus einer Vorlage zugewiesen wurde
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
namestringName des Plantags.
descriptionstringBeschreibung des Plantags.
day_of_weekintegerOptionaler fester Wochentag (1 = Montag ... 7 = Sonntag), wenn der Plan an Wochentage gebunden ist
roundsintegerAnzahl der Runden, wenn der Tag als Zirkel (Zirkeltraining) ausgeführt wird
round_rest_secondsintegerPause zwischen den Zirkelrunden in Sekunden
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
orderintegerPosition des Datensatzes in der Reihenfolge.
curl --request DELETE \
--url https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'DELETE', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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://eure-instanz.iw-erp.de/api/crm/studio_training/plan_day/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 mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/studio_training_plan_day_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await StudioTrainingPlanDayController.delete('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"description": "Text",
"plan": {
"id": 42,
"name": "Beispiel",
"description": "Text",
"training_person_data": {
"id": 42,
"weight": 1.5,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
},
"times_per_week": 1,
"status": "string",
"is_template": true,
"valid_from": "2026-10-15T09:30:00+02:00",
"valid_until": "2026-10-15T09:30:00+02:00",
"review_date": "2026-10-15T09:30:00+02:00"
},
"day_of_week": 1,
"rounds": 1,
"round_rest_seconds": 1,
"created": "2026-10-15T09:30:00+02:00",
"updated": "2026-10-15T09:30:00+02:00",
"deleted": true
}