PORTAL und PPS Knowledge Base

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

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.

Die API des Kleinanzeigen-Moduls kann zum Erstellen, Editieren und Abrufen von Kleinanzeigen verwendet werden.

Funktionalitäten der Kleinanzeigen API

  • Erstellen von Kleinanzeigen

  • Editieren von Kleinanzeigen

  • Abrufen von Kleinanzeigen

Inhaltsverzeichnis

 Inhaltsverzeichnis anzeigen

Detaillierte Beschreibung

Grundlegendes zur Kleinanzeigen API

Die Kleinanzeigenmarkt API ist die API zum Erstellen, Editieren und Abrufen von Kleinanzeigen. Ein Kleinanzeigenmarkt kann im Modus mit Print oder “online-only” aufgesetzt werden, daher gibt es zwei descriptions getrennt für print und online. Zudem hat der Markt ein integriertes Modul zur Abbildung verschiedener Preismodelle (PaidServicesBundle) im Kleinanzeigenmarkt die über den API Endpunkt definiert werden können bzw beim Anlegen von Kleinanzeigen auch definiert werden müssen.

Verfügbare Endpunkte für Classified Ads

GET

  • Get All Classified Ad by Filters

    • approval_status (Available values : none, verified, pending, approved, resubmitted)

    • payment_status (Available values : free, notpaid, paid)

    • date_filter_type (Available values : created, updated ; Default value : created)

    • date_start

    • date_end

  • Get Classified Ad by advert_id

    • advert_id

Response

{
  "total_results": 234,
  "total_pages": 12,
  "page": 1,
  "page_size": 20,
  "data": [
    {
      "id": 1,
      "title": "Advert1",
      "approval_status": "pending",
      "payment_status": "free",
      "service_fee": 12.99,
      "description_online": "Lorem ipsum dolor sit amet, consectetur adipisicing elit. In, consectetur, animi, culpa beatae optio quod ea rerum impedit magni modi vel totam consequuntur porro voluptate unde.",
      "description_print": "coming soon...",
      "pricemode": "pm_free",
      "price": 85.99,
      "contact": {
        "phone": "+49 821 312312",
        "email": "max@mustermann.de"
      },
      "hide_phone": true,
      "url": "https://www.example.com/cad/augsburg/c-sachbuch/advert1_c4",
      "billing_information": {
        "firstname": "Max",
        "lastname": "Mustermann",
        "street": "Example Street",
        "street_number": "32",
        "city": "Augsburg",
        "zipcode": "86159",
        "phone": "+49 821 3125123",
        "email": "max@mustermann.de"
      },
      "created": "2019-03-07T00:00:00+00:00",
      "updated": "2019-03-09T02:00:00+00:00",
      "expires": "2019-03-27T00:00:00+00:00",
      "category_id": 8,
      "zipcode": "86150",
      "city": "Augsburg",
      "street": "Maximilianstraße",
      "street_number": "23",
      "cs_print_consecutive": 1,
      "cs_print_disabled": false,
      "meta": [
        {
          "k": "test-key",
          "v": "test-value"
        }
      ],
      "location_id": 1,
      "product_ids": [
        1,
        2,
        3
      ],
      "images": [
        {
          "url": "www.example.com/path/to/image/1"
        }
      ],
      "print_options": [
        "option1",
        "option2"
      ]
    }
  ]
}

POST

  • Create Classified Ad

PUT

  • Update Classified Ad by advert_id

    • advert_id

DELETE

  • Delete Classified Ad by advert_id

    • advert_id

Request Body

{
  "title": "Advert1",
  "approval_status": "pending",
  "description_online": "Lorem ipsum dolor sit amet, consectetur adipisicing elit. In, consectetur, animi, culpa beatae optio quod ea rerum impedit magni modi vel totam consequuntur porro voluptate unde.",
  "description_print": "coming soon...",
  "pricemode": "pm_free",
  "price": 85.99,
  "contact": {
    "phone": "+49 821 312312",
    "email": "max@mustermann.de"
  },
  "hide_phone": true,
  "billing_information": {
    "firstname": "Max",
    "lastname": "Mustermann",
    "street": "Example Street",
    "street_number": "32",
    "city": "Augsburg",
    "zipcode": "86159",
    "phone": "+49 821 3125123",
    "email": "max@mustermann.de"
  },
  "category_id": 8,
  "zipcode": "86150",
  "city": "Augsburg",
  "street": "Maximilianstraße",
  "street_number": "23",
  "meta_form_data": [
    {
      "k": "test-key",
      "v": "test-value"
    }
  ],
  "location_id": 1,
  "product_ids": [
    1,
    2,
    3
  ],
  "images": [
    {
      "url": "www.example.com/path/to/image/1"
    }
  ],
  "print_options": [
    "option1",
    "option2"
  ]
}

HTTP Status Codes

200 - Success                    Alles hat wie erwartet funktioniert
201 - Classified Ad Successfully created / deleted
204 - Classified Ad 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 - Classified Ad Not Found    Die Anzeige mit der angegebenen ID scheint nicht zu existieren

Verfügbare Endpunkte für Classified Ad Categories

Im Gegensatz zu anderen Modulen aus der PEIQ Portalreihe hat der Kleinanzeigenmarkt keine flach nebeneinander liegenden Kategorien sondern ein Baummodell. Ob eine Kategorie einer anderen untergeordnet ist lässt sich über die Markierung “is_leaf” steuern.

GET

  • Get All Classified Ad Categories

  • Get Classified Ad Category by category_id

    • category_id

Response

{
  "id": "1",
  "name": "Leaf-Category-Test",
  "name_norm": "leaf-category-test",
  "form_fields": [
    {
      "name": "root-testfield",
      "type": "Symfony\\Component\\Form\\Extension\\Core\\Type\\TextType",
      "options": {
        "required": true,
        "choices": "{}"
      }
    }
  ],
  "is_leaf": true
}

HTTP Status Codes

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

Berechtigte Nutzer

Die Kleinanzeigenmarkt API ist eine Adminfunktion, welche Nutzer mit der Berechtigung “Zugang zur API-Dokumentation“abrufen dürfen.

Die Interaktive Bedienung - Try it out

Die API 2.0 BETA Dokumentation kann bereits ohne große Programmierkenntnisse oder ein darauf ausgerichtetes Programm bedient werden. Hierfür gibt es die “Try-it-out” - Funktion.

Jeder Lesende (GET) Endpunkt der Dokumentation hat einen “Try it out” Button. Hierüber können Daten nach den im Front-End vorliegenden Filtern aus dem Live-System abgerufen werden. Bedingung für das Benutzen der Funktion ist ein gültiger API key .

 Der 'Try it out' Button

Um ein versehentliches Manipulieren der Daten zu verhindern, ist die Benutzung auf die Lesenden Endpunkte (GET) beschränkt.

 

Verwandte Themen

  • No labels