dart_proffix_rest 0.0.3 dart_proffix_rest: ^0.0.3 copied to clipboard
A Dart wrapper for Proffix Rest API
Dart Wrapper für PROFFIX REST-API #
Übersicht #
Installation #
dart pub add dart_proffix_rest
Konfiguration #
Die Konfiguration wird dem Client mitgegeben:
Konfiguration | Beispiel | Type | Bemerkung |
---|---|---|---|
restURL | https://myserver.ch:12299 | string |
URL der REST-API ohne pxapi/v4/ |
database | DEMO | string |
Name der Datenbank |
username | USR | string |
Names des Benutzers |
password | b62cce2fe18f7a156a9c... | string |
SHA256-Hash des Benutzerpasswortes |
modules | ["ADR", "FIB"] | List<String>? |
Benötigte Module (mit Komma getrennt) |
options | &px.Options{Timeout: 30} | ProffixRestOptions |
Optionen (Details unter Optionen) |
Beispiel:
import 'package:dart_proffix_rest/dart_proffix_rest.dart';
var pxClient = ProffixClient(
database: 'DEMODBPX5',
restURL: 'https://myserver.ch:12299',
username: 'USR',
password: 'b62cce2fe18f7a156a9c719c57bebf0478a3d50f0d7bd18d9e8a40be2e663017',
modules: ["VOL"],
options: null);;
var request =
await pxClient.get(endpoint: "ADR/Adresse", params: {"Limit": "1"});
Optionen #
Optionen sind fakultativ und werden in der Regel nicht benötigt:
Option | Beispiel | Bemerkung |
---|---|---|
key | 112a5a90fe28b...242b10141254b4de59028 | API-Key als SHA256 - Hash (kann auch direkt mitgegeben werden) |
version | v3 | API-Version; Standard = v3 |
loginEndpoint | /pxapi/ | Prefix für die API; Standard = /pxapi/ |
LoginEndpoint | PRO/Login | Endpunkt für Login; Standard = PRO/Login |
userAgent | DartWrapper | User Agent; Standard = DartWrapper |
timeout | 30 | Timeout in Sekunden |
verifySSL | true | SSL prüfen |
batchsize | 200 | Batchgrösse für Batchrequests; Standard = 200 |
log | true | Aktiviert den Log für Debugging; Standard = false |
volumeLicence | false | Nutzt PROFFIX Volumenlizenzierung |
Methoden
Parameter | Typ | Bemerkung |
---|---|---|
endpoint | string |
Endpunkt der PROFFIX REST-API; z.B. ADR/Adresse,STU/Rapporte... |
data | string |
Daten (werden automatisch in JSON konvertiert) |
parameters | Map<String, dynamic>? |
Parameter gemäss PROFFIX REST API Docs |
Folgende unterschiedlichen Methoden sind mit dem Wrapper möglich:
Get / Query
var request =
await pxClient.get(endpoint: "ADR/Adresse/1", params: {"Fields": "AdressNr"});
Put / Update
var request =
await pxClient.put(endpoint: "ADR/Adresse/1", jsonEncode({
"Name": "Muster GmbH",
"Ort": "Zürich",
"Zürich": "8000",
}));
Patch / Update
var request =
await pxClient.patch(endpoint: "ADR/Adresse/1", jsonEncode({
"Name": "Muster GmbH",
"Ort": "Zürich",
"Zürich": "8000",
}));
Post / Create
var request =
await pxClient.post(endpoint: "ADR/Adresse/1", jsonEncode({
"Name": "Muster GmbH",
"Ort": "Zürich",
"Zürich": "8000",
}));
Delete / Delete
var request =
await pxClient.delete(endpoint: "ADR/Adresse/1");