---
# System prepended metadata

title: Untitled

---

**/session/create/**

https://redaktion.jacobin.de/wp-json/jacobin/v1/session/create/

erstellt eine session für einen user.

es laufen maximal 4 sessions parallel.

sobald mehr als 4 sessions angemeldet werden, wird die älteste automatisch beendet.

request
```
{
    username: "...",
    password: "...",
}
```
response
```
bei erfolg

{
    sessionId: "..."
}

bei fehler

{
    error: true
}

```

**/session/list/**

https://redaktion.jacobin.de/wp-json/jacobin/v1/session/list/


listet dir alle laufenden sessions zum username

request
```
{
    username: "...",
}
```

response
```
[
    {
        "username": "afaust",
        "userid": 1,
        "mtime": 1587767126,
        "ctime": 1587767126,
        "sessionId": "0efl7nj0cgd04vigk5hnkxz8xju4zvnu",
        "ctime-str": "Fri, 24 Apr 2020 22:25:26 +0000"
    }
]
```

**/session/logout/**

https://redaktion.jacobin.de/wp-json/jacobin/v1/session/logout/


beendet die session

request
```
{
    username: "...",
}
```

response
```
{success: true}

oder

{error: true}

```

**Abruf eines Artikel-Objekts**

***PAYWALL TEST ARTIKEL***

https://dev.jacobin.de/artikel/test/?preview=NDE1NGVkMjc0MTg0ZDc3MzNhOTU2MWU1NmQ5NWRhMWY%3D

die session-id musst du beim abruf des artikels mitgeben

?json=1&sessionId=...

wenn der user sich authentifizieren muss oder die session abgelaufen ist, dann bekommst im Artikel-Objekt den wert 

```
showPaywall: true
```

mit zurück.

**Sonstiges**

json datenobjekt kommt ins body des http-requests

und response kommt als json-objekt wieder zurück


username: afaust
password: comrade

**Development NextJs-Instanz**

$HOME/dev.jacobin

ssh ... run.jacobin.dev.sh




## Issue-Page Sections: 

Array aus Objekten:
```json
[
    "section-1",
    "section-2",
    "section-3",
    "...usw",
]
```

Felder aller Typen:
```json
{
    "type": "header",
    "title": "Text-Editor",
    "description": "Text-Editor",
    "color": "Color-Picker",
    "background": "Color-Picker",
    "image": "Image-Objekt wie im Startseiten-Teaser"
}
```
Spezialfelder:
```json
{
    "type": "short-teasers",
    "teasers": [
        Teaser-Objekte wie auf der Startseite
    ]
},
{
    "type": "gallery",
    "items": [
        {
            "image": "Image-Objekt wie Startseite",
            "headline": "Textfeld",
            "text": "Textfeld",
        }
    ]
}
```

## Types: 
- header
- circle
- image-landscape
- image-portrait-left
- image-portrait-right
- gallery
- short-teasers

Vorschlag

Array aus Objekten:
```json
{
title: "Jenseits der Sozialdemokratie",
issue: "1",
year: "2020",
orderable: true|false,
sections: [
    "section-1",
    "section-2",
    "section-3",
    "...usw",
]
}