Info |
---|
Mithilfe der PEIQ Cloud-Connect APIs(engl. Application Programming Interfaces, Programmierschnittstellen) können Verlage Teile ihrer bestehenden Systeme und Produkte mit dem PEIQ PORTAL verbinden. Alle Cloud-Connect APIs sind nach der REST-Architektur aufgebaut. Der Zugriff wird dabei über die Standard HTTP-Methoden GET, POST, PUT und DELETE gesteuert. Die Zugriffskontrolle erfolgt hierbei über eine Implementierung nach OAuth V2 Standard. Über die Endpunkte der Beitrags API können die im Portal vorliegenden Beiträge und Schnappschüsse nach verschiedenen Filtern abgerufen Die API des Article Moduls kann zum Abrufen, Erstellen, Editieren und Löschen von Beiträgen, von Schnappschüssen sowie von Kommentaren zu Beiträgen oder Schnappschüssen verwendet werden. Zudem können mithilfe der API Medienstreams mit Beiträgen verknüpft und als Hero-Image gesetzt werden. Bilder werden asynchron importiert. |
Funktionalitäten der Beitrags API
Abrufen, Erstellen, Editieren und Löschen von Beiträgen nach verschiedenen Filtern
Abrufen, Erstellen, Editieren und Löschen von Schnappschüssen nach verschiedenen Filtern
Inhaltsverzeichnis
Expand | ||||
---|---|---|---|---|
| ||||
|
Allgemeine Beschreibung
Die
API
Verfügbare Endpunkte für Articles
Der untenstehende Response-Body zeigt die Struktur eines kompletten Beitrags. Neben dem Inhalt finden sich an diesem Objekt verschiedene Informationen zum Erstellungszeitpunkt, dem Autor und der Einordnung in Portal nach Ortsstruktur.
Mit static_tags lässt sich ein Beitrag oder auch ein Schnappschuss als Kommerzieller oder als Premium-Inhalt markieren. Mit den Countern fürKommentare & Likes
Mit Kommentare & Likes kann das Engagement der User für jeden Artikel herausgelesen und analysiert werden.
Status | ||||
---|---|---|---|---|
|
Get All Articles by Filters
status (Available values : draft, published, rejected, scheduled, deleted)
date_filter_type (Available values : published, created, updated ; Default value : published)
date_start
date_end
location_ids
user_id
user_segment
category_ids
tags
static_tags (Available values: commercial, premium_content)
Get Article by ID
article_id
Response
-Dokumentation ist als interaktive Dokumentation für berechtigte Admins direkt im jeweiligen PORTAL unter /admin/api/v2/doc?module=article
erreichbar.
Das swagger-File kann auch hier heruntergeladen werden (Stand: ):
View file | ||
---|---|---|
|
Verfügbare Endpunkte
Article
/articles: Gibt eine paginierte Liste an Beiträgen nach den gesetzten Filtern aus.Status colour Blue title GET
/articles/{article_id}: Gibt den durch die ID spezifizierten Beitrag zurück.Status colour Blue title GET Status colour Green title
/articles: Erstellt einen neuen Beitrag.POST Status colour Yellow title
Update Article by Id
HTTP Status Codes
Code Block |
---|
200 - Success Alles hat wie erwartet funktioniert
201 - Article Successfully created / deleted
204 - Article Successfully updated
400 - Bad Reqest Der Request war nicht akzeptabel. Das liegt oft an einem fehlenden Parameter. Checken Sie hierfür den gesendeten Request Body.
404 - Article Not Found Der Beitrag mit der angegebenen ID scheint nicht zu existieren. |
Verfügbare Endpunkte für Article Categories
Code Block |
---|
https://yourdomain.com/api/v2/articles/categories/{category_id} |
Zusätzlich kann man mehrere Kategorien als array, über category_ids, abrufen
/articles/{article_id}: Aktualisiert die im Request Body angegebenen Informationen des durch die ID spezifizierten Beitrags.PUT Status colour Red title
Delete Article by Id
article_id
Request Body
Code Block |
---|
{
"comments_enabled": true,
"news_sitemap": true,
"publish_schedule": {
"start": "2019-03-07T00:00:00+00:00",
"end": "2019-03-27T00:00:00+00:00"
},
"remote_id": 1234,
"status": "published",
"created": "2019-03-07T00:00:00+00:00",
"published": "2019-03-07T00:00:00+00:00",
"updated": "2019-03-07T00:00:00+00:00",
"display_locations": [
[
17
]
],
"title": "Test Article #1",
"static_tags": [
"commercial",
"premium_content"
],
"text_elements": {
"subline": "Test Subline Subline Subline Test",
"text": "Test Text Text Test Text Test"
},
"user_id": 1,
"category_id": 1,
"location_id": 17,
"tags": [
"Tagger",
"I'm a Tag"
]
} |
/articles/{article_id}: Löscht den durch die ID spezifizierten Beitrag unwiderruflich.DELETE
Article Category
HTTP Status Codes
Code Block |
---|
200 - Success Alles hat wie erwartet funktioniert
400 - Bad Reqest Der Request war nicht akzeptabel. Das liegt oft an einem fehlenden Parameter. Checken Sie hierfür den gesendeten Request Body.
404 - Category Not Found Die Kategorie mit der angegebenen ID scheint nicht zu existieren. |
Verfügbare Endpunkte für Article Comments
/articles/categories: Gibt eine Liste der im PORTAL hinterlegten Kategorien für Beiträge zurück (Informationen:Status colour Blue title GET id
,name
,name_norm
).Status colour Blue title
Get All Article Categories
Get Article Category by Id
category_id
Response
Code Block |
---|
[
{
"id": "1",
"name": "Sport",
"name_norm": "sport"
}
] |
/articles/categories/{category_id}: Gibt die durch die ID spezifizierten Kategorie für Beiträge zurück (Informationen:GET id
,name
,name_norm
).
Article Comment
/articles/{article_id}/commentsStatus colour Blue title GET
: Gibt die Kommentare des durch die ID spezifizierten Beitrags zurück.
Status colour
Green title
Get Article Comments
/articles/{article_idPOST
Response
Code Block |
---|
{
"total_results": 234,
"total_pages": 12,
"page": 1,
"page_size": 20,
"data": [
{
"id": "1",
"author_id": 1,
"text": "This is a test comment!",
"status": "published",
"position": "1",
"created": "2019-03-07T00:00:00+00:00",
"updated": "2019-03-07T00:00:00+00:00"
}
]
} |
Status | ||||
---|---|---|---|---|
|
Create Article Comments
article_id
Status | ||||
---|---|---|---|---|
|
Update Article Comment
comment_id
Status | ||||
---|---|---|---|---|
|
Delete Article Comment
comment_id
Request Body
Code Block |
---|
[
{
"author_id": 1,
"text": "This is a test comment!",
"created": "2019-03-07T00:00:00+00:00"
}
] |
HTTP Status Codes
Code Block |
---|
200 - Success Alles hat wie erwartet funktioniert
201 - Comment Successfully created / deleted
204 - Comment Successfully updated
400 - Bad Reqest Der Request war nicht akzeptabel. Das liegt oft an einem fehlenden Parameter. Checken Sie hierfür den gesendeten Request Body.
404 - Comment / Article Not Found Der Kommentar / Beitrag mit der angegebenen ID scheint nicht zu existieren. |
Verfügbare Endpunkte für Article Images
}/comments: Erstellt einen Kommentar am durch die ID spezifizierten Beitrag.
/articles/comments/{comment_id}: Aktualisiert die im Request Body angegebenen Informationen des durch die ID spezifizierten Kommentars.Status colour Yellow title PUT
/articles/comments/{comment_id}: Löscht den durch die ID spezifizierten KommentarStatus colour Red title DELETE
Article Image
/articles/{article_id}/images: Gibt alle Bilder des durch die ID spezifizierten Beitrags zurückStatus colour Blue title GET
/articles/images/{image_id}: Gibt das durch die ID spezifizierte Bild eines Beitrags zurückStatus colour Blue title GET
/articles/{article_id}/imagesStatus colour Green title POST
: Fügt ein oder mehrere Bilder (
array
) einem durch die ID spezifizierten Beitrag hinzuStatus colour
Status | ||||
---|---|---|---|---|
|
Upload Article Images for a specific Article
article_id
Status | ||||
---|---|---|---|---|
|
Update Article Image by Image Id
image_id
Status | ||||
---|---|---|---|---|
|
Delete Article Image by Image Id
image_id
Request Body
Code Block |
---|
[
{
"url": "https://www.example.com/resources/mediadb/article/2019/03/04/1/1_XL.jpg",
"user_id": 1,
"creation_date": "2019-03-07T00:00:00+00:00",
"caption": "Test Image Caption",
"copyright": "Test Image Copyright",
"focus_x": "2",
"focus_y": "3"
}
] |
HTTP Status Codes
Code Block |
---|
200 - Success Alles hat wie erwartet funktioniert
201 - Image Successfully uploaded / deleted
204 - Image Successfully updated
400 - Bad Reqest Der Request war nicht akzeptabel. Das liegt oft an einem fehlenden Parameter. Checken Sie hierfür den gesendeten Request Body.
404 - Article Images Not Found Der Kommentar / Beitrag mit der angegebenen ID scheint nicht zu existieren. |
Verfügbare Endpunkte für Imageposts
Code Block |
---|
https://yourdomain.com/api/v2/imageposts/{imagepost_id} |
Yellow title
Get all Article Images for a specific Article
article_id
Get Article Image by image_id
image_id
Response
Code Block |
---|
[
{
"id": "1",
"url_set": {
"NATIVE": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_NATIVE.jpg",
"T": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_T.jpg",
"XS": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_XS.jpg",
"S": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_S.jpg",
"M": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_M.jpg",
"L": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_L.jpg",
"XL": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_XL.jpg",
"XXL": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_XXL.jpg"
},
"user_id": 1,
"created": "2019-03-07T00:00:00+00:00",
"modified": "2019-03-07T00:00:00+00:00",
"caption": "Test Image Caption",
"copyright": "Test Image Copyright",
"focus_x": "2",
"focus_y": "3"
}
] |
/articles/images/{image_id}: Aktualisiert die Meta-Informationen (hochgeladen von, Copyright, Bildunterschrift, Bildfokus) des durch die ID spezifizierten Bildes.PUT
/articles/images/{image_id}: Löscht das durch durch die ID spezifizierte Bild eines Beitrags unwiderruflich.Status colour Red title DELETE
Note |
---|
Bilder werden asynchron importiert. |
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
Beachte auch die Hinweise hier: https://peiq.atlassian.net/wiki/spaces/CORE/pages/44400763/API+Cloud-Connect#Fragen-zu-Bilder-Workflows-%C3%BCber-die-APIs |
Imagepost
/imageposts: Gibt eine paginierte Liste an Schnappschüssen nach den gesetzten Filtern ausStatus colour Blue title GET
/imageposts/{imagepost_id}: Gibt den durch die ID spezifizierten Schnappschuss zurückStatus colour Blue title GET
/imageposts: Erstellt einen neuen SchnappschussStatus colour Green title POST
/imageposts/{imagepost_id}: Aktualisiert die im Request Body angegebenen Informationen des durch die ID spezifizierten Schnappschusses.Status colour Yellow title PUT
/imageposts/{imagepost_id}: Löscht den durch die ID spezifizierten Schnappschuss unwiderruflich.Status colour Red title DELETE
Imagepost Comment
Status colour Blue title
Get All Imageposts by Filters
status (Available values : draft, published, rejected, scheduled, deleted)
date_filter_type (Available values : published, created, updated ; Default value : published)
date_start
date_end
location_ids
user_id
user_segment
category_id
category_ids (als array)
tags
static_tags (Available values: commercial, premium_content)
Get Imagepost by Id
imagepost_id
Response
/imageposts/{imagepost_id}/comments: Gibt die Kommentare des durch die ID spezifizierten Schnapsschusses zurückGET Status colour Green title
Create Imagepost
Status | ||||
---|---|---|---|---|
|
Update Imagepost by Id
imagepost_id
/imageposts/{imagepost_id}/comments: Erstellt einen Kommentar am durch die ID spezifizierten SchnappschussPOST Status colour
HTTP Status Codes
Code Block |
---|
200 - Success Alles hat wie erwartet funktioniert
201 - Imagepost Successfully uploaded / deleted
204 - Imagepost Successfully updated
400 - Bad Reqest Der Request war nicht akzeptabel. Das liegt oft an einem fehlenden Parameter. Checken Sie hierfür den gesendeten Request Body.
404 - Imageposts Not Found Der Schnappschuss mit der angegebenen ID scheint nicht zu existieren. |
Verfügbare Endpunkte für Imagepost Comments
Code Block |
---|
https://yourdomain.com/api/v2/imageposts/{imagepost_id}/comments |
Schnappschüsse können kommentiert werden. Dieser Endpunkt ermöglicht es, die vorliegenden Kommentare für einzelne Schnappschüsse zu lesen oder auch Kommentare zu posten/ zu updaten/ zu löschen.
Status | ||||
---|---|---|---|---|
|
Get Imagepost Comments
imagepost_id
Response
Code Block |
---|
{
"total_results": 234,
"total_pages": 12,
"page": 1,
"page_size": 20,
"data": [
{
"id": "1",
"author_id": 1,
"text": "This is a test comment!",
"status": "published",
"position": "1",
"created": "2019-03-07T00:00:00+00:00",
"updated": "2019-03-07T00:00:00+00:00"
}
]
} |
Status | ||||
---|---|---|---|---|
|
Post Imagepost Comments
imagepost_id
Status | ||||
---|---|---|---|---|
|
Update Imagepost Comment
comment_id
Status | ||||
---|---|---|---|---|
|
Delete Imagepost Comment
comment_id
Request Body
Code Block |
---|
[
{
"author_id": 1,
"text": "This is a test comment!",
"created": "2019-03-07T00:00:00+00:00"
}
] |
HTTP Status Codes
language | text |
---|
Yellow title
Delete Imagepost by Id
imagepost_id
Request Body
Code Block |
---|
{
"comments_enabled": true,
"remote_id": 1234,
"status": "published",
"created": "2019-03-07T00:00:00+00:00",
"published": "2019-03-07T00:00:00+00:00",
"updated": "2019-03-07T00:00:00+00:00",
"display_locations": [
[
17
]
],
"title": "Test Imagepost #1",
"static_tags": [
"commercial",
"premium"
],
"user_id": 1,
"location_id": 17,
"image": [
{
"url": "https://www.example.com/resources/mediadb/article/2019/03/04/1/1_XL.jpg",
"user_id": 1,
"creation_date": "2019-03-07T00:00:00+00:00",
"caption": "Test Image Caption",
"copyright": "Test Image Copyright",
"focus_x": "2",
"focus_y": "3"
}
]
} |
/imageposts/comments/{comment_id}: Aktualisiert die im Request Body angegebenen Informationen des durch die ID spezifizierten Kommentars.PUT
/imageposts/comments/{comment_id}: Löscht den durch die ID spezifizierten KommentarStatus colour Red title DELETE
Wichtige Hinweise zum Setzen des Hero-Images
Mit der Beitrags API gibt es die Möglichkeit, auch Medienstreams mit Beiträgen zu verknüpfen sowie als Hero-Image zu setzen.
In diesem Zuge wurde das bisherige thumbnail
als
Status | ||||
---|---|---|---|---|
|
hero_image
eingeführt, welches sowohl das erste Bild des Beitrags als Vorschaubild, als auch das Vorschaubild des Medienstreams (sofern entsprechend angegeben) als Hero-Image abbilden kann. thumbnail
wird von zukünftigen Versionen nicht mehr unterstützt werden.Wichtige Hinweise zu Embeds, HTML- & BBCode-Tags im Text bei Importen
Siehe die entsprechende Dokumentation:
Wichtige Hinweise zu search_string
-Filter bei
Status | ||||
---|---|---|---|---|
|
Der Filter search_string
bei
Status | ||||
---|---|---|---|---|
|
search_string
gefiltert, gibt die API zusätzlich die search_highlights
aus. Damit können die Snippets und die Highlight-Markierung, die aus der Suche in der Beitragsverwaltung bekannt sind, auch externen Systemen zur Verarbeitung zur Verfügung gestellt werden.Trouble Shooting bei HTTP Status Codes
Verwandte Seiten
Filter by label (Content by label) | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Include Page | ||||
---|---|---|---|---|
|
Nur für PEIQ-Mitarbeiter:innen
https://peiq.atlassian.net/wiki/x/XAHRAg