Standard-Bibliothek / BrickLink-Beispiele

BrickLink-Beispiele

Für die nachfolgenden Beispiele wird davon ausgegangen, dass der Zugang zur API bereits eingerichtet ist.

Zum Ausführen der Beispiele wird entweder JayMo-Edit oder eine selbst erstellte Skript-Datei benötigt. Darin muss zuerst die Konstante BRICKLINK wie hier beschrieben eingerichtet wurde. Anschließend können dann nachfolgende Beispiele eingefügt werde.

Der Umgang mit Listen, Map's und Tabellen sollte bekannt sein.

Tipp:
Mit "Describe" bzw. der Funktion ".describe" lassen sich die von der API zurückgegebenen Daten relativ klar ausgeben.

Weiterführende Informationen zur API, zu Schlüsselnamen und Feldern: https://www.bricklink.com/v3/api.page

Die Beispiele beziehen sich auf die BrickLink-API mit dem Stand vom 10.04.2022.

Bestellungen / Orders

Eingehende Bestellungen

Mit "getOrdersIn" wird eine Liste aller eingegangenen Bestellungen abgerufen.

BRICKLINK.fetchOrdersIn

Es können ein oder zwei Argumente übergeben werden. Der Erste legt fest, ob nur archivierte oder nur nicht archivierte abgerufen werden sollen. Als zweites Argument kann ein einzelner String oder eine Liste mit mehreren Status-Strings übergeben werden.

Mögliche Werte sind hier z.B.: pending, processing, ready, paid, packed, shipped, recieved, completed

Nur bezahlte und noch nicht bearbeitete Bestellungen abrufen:

BRICKLINK.fetchOrdersIn( false, "paid" )

Einzelne Felder der Bestellungen auslesen und in Spalten ausgeben:

BRICKLINK.fetchOrdersIn.each
	data = it.select("order_id", "status", "buyer_name")
	"Order: {8},  Status: {9},  Buyer: {}".fill( :data ).print

Ausgehende Bestellungen

BRICKLINK.fetchOrdersOut

Der Rückgabewert ist eine Liste mit einer Map zu jeder eigenen Bestellung.

Order abrufen

BRICKLINK.fetchOrder( 12345678 )

Die Informationen zur angegebenen Order sind in Map gespeichert, welche teils weitere Maps enthält.

Order-Artikel

Eine Liste mit allen bestellten Artikel abrufen:

BRICKLINK.fetchOrderItems( 12345678 )

fetchOrderMessages

BRICKLINK.fetchOrderMessages( 12345678 )

Hier erhält man eine Liste mit einer Map je Nachricht.

Die Feedback's zu einer Order abrufen

BRICKLINK.fetchOrderFeedback( 12345678 )

Hier erhält man eine Liste mit einer Map je Feedback. Enthalten sind gesendete sowie erhaltene Feedbacks.

updateOrder

updateOrderStatus

updateOrderPayment

orderSendDriveThru

Artikel / Inventories

Alle eingestellten Artikel

BRICKLINK.fetchInventories

fetchInventory

createInventory

updateInventory

Artikel(Inventory) löschen

  1. BRICKLINK.deleteInventory()

Teile-Info's / Items

Informationen zu einem einzelnen Teil

BRICKLINK.fetchItem( "PART", "32138" )

Der Rückgabewert ist eine "Map" mit verschiedenen Informationen zu diesem Teil:

"no" -> "32138"
"image_url" -> "//img.bricklink.com/PL/32138.jpg"
"weight" -> "0.96"
"description" -> ""
"type" -> "PART"
"thumbnail_url" -> "//img.bricklink.com/P/9/32138.jpg"
"is_obsolete" -> false
"dim_y" -> "0.00"
"dim_z" -> "0.00"
"dim_x" -> "0.00"
"category_id" -> 139l
"year_released" -> 1999l
"name" -> "Technic, Pin Double with Axle Hole"
"alternate_no" -> ""

fetchItemImage

fetchSuperSets

fetchSubSets

fetchPriceGuide

Bekannte Farben

colors = BRICKLINK.fetchKnownColors( "PART", "32138" )
Describe colors

Rückgabewert ist eine Liste mit allen zu diesem Item bekannten Farb-Codes.

fetchKnownColors

fetchKnownColorValues

fetchThumbnailURL

fetchThumbnail

Feedbacks

fetchFeedbacksIn

fetchFeedbacksOut

fetchFeedback

postFeedback

replyFeedback

Farben / Colors

fetchColors

fetchColorList

fetchColor

Kategorien / Categories

Alle verfügbaren Kategorien abfragen

BRICKLINK.fetchCategories

Der Rückgabewert ist eine Tabelle mit 3 Spalten.

  • Spalte 1 = ID der Kategorie
  • Spalte 2 = ID der übergeordneten Kategorie
  • Spalte 3 = Titel der Kategorie

Informationen zu einer einzelnen Kategorie

BRICKLINK.fetchCategory( 37 )

Die zurückgegebene Map sieht z.B. so aus:

"category_name" -> "Tile"
"category_id" -> 37l
"parent_id" -> 0l

Gutscheine / Coupons

fetchCouponsIn

fetchCouponsOut

fetchCoupon

createCoupon

deleteCoupon

Einstellungen / Settings

fetchShippingMethods

fetchShippingMethodList

fetchShippingMethod

BrickLink-Member-Informationen

fetchMemberRating


Zugriffe abfragen

Mit folgendem Befehl lässt sich die aktuelle Anzahl der Abfragen an Bricklink abfragen:

BRICKLINK.calls

Allerdings beginnt der Zähler mit jedem neuen Start des Skripts wieder bei 0. BrickLink erlaubt nur 5000 Zugriffe pro Tag!!!

Verändern

Artikel anlegen

map = Map
map.add( "item.no", "3001" )
map.add( "item.type", "PART" )
map.add( "color_id", 7 )
map.add( "quantity", 5 )
map.add( "unit_price", 0.10 )
map.add( "new_or_used", 'U' )
map.add( "is_retain", true )
map.add( "is_stock_room", false )
map.add( "sale_rate", 0 )

result? = BRICKLINK.createInventory( map )
ok = result.isNotNil
ok.print

Zum Anlegen eines "Inventory" muss zuerst eine Map mit den gewünschten Daten gefüllt werden. Die Schlüssel sind teils selbsterklärend, hier aber eine kurze Erklärung:

Schlüssel Typ Beschreibung
item.no Str Die Teile-Nummer
item.type Str Der Teile-Typ in Großbuchstaben
color_id Int Der gewünschte Farbcode
quantity Int Die gewünschte Menge
unit_price Dec Der Einzelpreis
new_or_used Char 'N' = Neu, 'U' = Used
is_retain Bool Eintrag nach Abverkauf bestehen lassen?
is_stock_room Bool Eintrag als StockRoom und somit nur privat anlegen?
sale_rate Int Der gewünschte Rabatt

In diesem Beispiel wird somit ein Inventory mit 5 Stück "Brick 2x4" in blau zu einem Preis von je 0.10 angelegt.

Weitere Möglichkeiten

Alle integrierten Funktionen sind in der Referenz aufgeführt: Referenz - BrickLinkAPI

- Powered by OghsWiki -

 

 

Unterstützen

Die Entwicklung von "JayMo" wird derzeit nur durch Eigeninitiative ermöglicht.

Erhalten:  0 €