ProSonata API

Kontakte: Adressen

Folgende HTTP-Methoden stehen für Adressen zur Verfügung:

Zugriff ab Benutzergruppe Verwaltung.

alle Adressen auflisten

GET /api/v1/addresses

Antwort:

{
  "meta": {
    "status": 200,
    "perPage": 100,
    "page": 1,
    "totalCount": 85,
    "requestUserID": 1,
    "requestUsername": "Admin1",
    "usergroupName": "Administrator",
    "apiLimitRemaining": 443,
    "apiLimitReset": 812
  },
  "data": [
    {
      "addressID": 33,
      "customerID": 0,
      "customerName": "Intern",
      "companyStatus": 0,
      "name1": "Testcompany",
      "name2": "",
      "name3": "",
      "addressName": "",
      "street": "Teststraße",
      "streetNo": 12,
      "postalCode": 60123,
      "city": "Frankfurt",
      ...
    },
    ...
  ]
}

Filterung/Suche

Über Parameter kann gefiltert werden:

GET /api/v1/addresses?name1=Testcompany
Parameter Beschreibung
customerID ID der Firma/Gruppe
customerName Bezeichnung der Firma/Gruppe
companyStatus Status der Firma:
0 = Kunde
1 = Lieferant
2 = Interessent
3 = Akquise
4 = PR/Presse
5 = inaktiv/gekündigt
6 = Sonstige
name1 Zeile 1 der Firmierung
name2 Zeile 2 der Firmierung
name3 Zeile 3 der Firmierung
addressName interne Bezeichnung der Adresse
postalCode Postleitzahl
city Stadt
country Land
comments Anmerkungen zur Adresse
addressTags Tags der Adresse
taxID Steuer ID der Firma
fibuAccountNo FiBu-Konto der Firma
addressActive Adresse aktiv:
0 = nein
1 = ja (Standard)

Sortierung

Nach folgenden Parametern kann sortiert werden (Sortierrichtung ggf. mit ASC bzw. DESC ergänzen):

addressID, customerID, name1, addressName, postalCode, city, country

eine Adresse aufrufen

GET /api/v1/addresses/{id}

Antwort:

{
  "meta": {
    "status": 200,
    "requestUserID": 1,
    "requestUsername": "Admin1",
    "usergroupName": "Administrator",
    "apiLimitRemaining": 496,
    "apiLimitReset": 693
  },
  "data": {
    "addressID": 36,
    "customerID": 10,
    "customerName": "ABC Versicherung",
    "companyStatus": 0,
    "name1": "ABC Versicherung AG",
    "name2": "",
    "name3": "",
    "addressName": "",
    "street": "Unfallstraße",
    "streetNo": 23,
    "postalCode": 12345,
    "city": "Hamburg",
    "country": "",
    "companyEmail": "",
    "companyTelephone": "",
    "comments": "",
    "addressTags": "",
    "taxID": "DE12314123",
    "DUNS": "",
    "GLN": "",
    "supplierNo": "",
    "fibuAccountNo": 10028,
    "invoiceEmail": "buchhaltung@versicherung.de",
    "noInvoiceEmail": 0,
    "mandateReference": "MR0051535",
    "mandateDate": "2015-10-13",
    "IBAN": "DE123456789123456789",
    "BIC": "POSTEJFXXX",
    "bankName": "",
    "accountOwner": "ABC Versicherung AG",
    "invReverseCharge": 0,
    "invThirdCountry": 0,
    "invTextTemplate": null,
    "addressCreatedByUserID": 1,
    "addressEditedByUserID": 3,
    "addressActive": 1,
    "addressViaApi": 0,
    "contactsAssigned": [
      {
        "contactID": 48,
        "firstName": "Karl",
        "LastName": "Schmidt",
        "position": "",
        "department": "",
        "email": "karl.schmidt@versicherung.de",
        "email2": "",
        "telephone": "01234 5678945",
        "mobile": ""
      },
      ...
    ]
  }
}

eine Adresse erstellen

POST /api/v1/addresses

Das FiBu-Konto (fibuAccountNo) wird beim Anlegen automatisch generiert!

Notwendige und mögliche Parameter im Body:

Parameter Beschreibung Typ Default-Wert Pflichtfeld
customerID ID der Firma/Gruppe
die Firma/Gruppe muss vorhanden sein,
ansonsten wird ein 409-Fehler zurückgegeben
Int   ja
name1 Firmierung Zeile 1
handelt es sich nicht um eine Firmenadresse
sollte eine Bezeichnung (addressName)
vergeben werden
String    
name2 Firmierung Zeile 2 String    
name3 Firmierung Zeile 3 String    
addressName (intern) Bezeichnung String    
street Straße String    
streetNo Hausnummer String    
postalCode PLZ String    
city Stadt String   ja
country Land String    
companyEmail zentrale E-Mail-Adresse der Firma String    
companyTelephone zentrale Telefonnummer der Firma String    
comments Anmerkungen zur Firma bzw. Adresse String    
taxID Steuernummer String    
DUNS DUNS-Nummer String    
GLN GLN-Nummer String    
supplierNo Lieferantennummer bei dieser Firma String    
fibuAccountNo FiBu-Konto Int 0  
invoiceEmail Standard Rechnungs-E-Mail-Adresse String    
noInvoiceEmail keine Rechnungen per E-Mail gewünscht
0 = nein
1 = ja
Int 0  
mandateReference SEPA-Lastschrift Mandatsreferenz String    
mandateDate Mandatsdatum Date null  
IBAN IBAN der Bankverbindung String    
BIC BIC der Bankverbindung String    
bankName Bankname String    
accountOwner Kontoinhaber String    
invReverseCharge Reverse-Charge, EU-Ausland
0 = nein
1 = ja
Int 0  
invThirdCountry Drittland
0 = nein
1 = ja
Int 0  
invTextTemplate Standard Rechnungsabbinder
null = keine Vorauswahl
0 bis 5 = Rechnungsabbinder 1 bis 6
Int null  
addressActive Adresse aktiv
0 = nein
1 = ja
Int 1  

Beispiel:

{
    "customerID": 10,
    "name1": "ABC Versicherung AG",
    "street": "Unfallstraße",
    "streetNo": 23,
    "postalCode": 12345,
    "city": "Hamburg"
}

eine Adresse bearbeiten

PUT /api/v1/addresses/{id}

Es müssen nicht alle Parameter für eine Bearbeitung übergeben werden.

Es stehen die Parameter zum Erstellen der Ressource zur Verfügung (s.o.).