Skip to content

jacob-elektronik/joe-api-documentation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JOE API Documentation

JOE stands for JACOB Order Engine and describes a standardized interface to handle orders. The JOE API allows placing orders, retrieving order-related documents like invoices, and subscribing to order-related events. The main goal of JOE is to avoid long integration phases by keeping things simple.

Feel free to contact us with any issues regarding this API.

Authentication

Using the JOE API requires an API key which must be appended to each request as a query parameter:

https://api.jacob.services/1.0/joe?apikey=123

Keep in mind that API keys are customer-specific and should be kept confidential.

Orders

All documents, i.e. orders, order responses, invoices and dispatch notifications, are represented as JSON or XML. The XML representations loosely follow the OpenTRANS 2.1 specification, the corresponding JSON ones are equivalent. There are examples for both formats.

The default input and output format for documents is XML. This can be changed to JSON by setting the request's Content-Type or Accept header to application/json.

Placing Orders

Method URL Description Details
POST https://api.jacob.services/1.0/joe Place an order Link

Order Information

Method URL Description Details
GET https://api.jacob.services/1.0/joe List all orders Link
GET https://api.jacob.services/1.0/joe/{orderId} Get document status Link

Order-related Documents

Method URL Description Details
GET https://api.jacob.services/1.0/joe/{orderId}/order Download an order Link
GET https://api.jacob.services/1.0/joe/{orderId}/response Download an order response Link
GET https://api.jacob.services/1.0/joe/{orderId}/invoice Download an invoice Link
GET https://api.jacob.services/1.0/joe/{orderId}/dispatch Download a dispatch notification Link

Events

JOE generates events whenever new order response, invoice or dispatch notification documents become available. The event subscription mechanism allows getting notified about such events.

The alternative to getting notified about events is polling, i.e. checking the document status at regular intervals.

Technical Details

Getting notified requires an HTTP endpoint. Subscribing means specifying the desired event type and the HTTP endpoint. Once subscribed, every time an event of the desired type occurs JOE will POST the JSON representation of the event to the user's endpoint.

Endpoints may be access restricted by one of the following mechanisms:

  • 'Basic' HTTP Authentication
  • Authorization via custom HTTP header, e.g. x-access-token: 3858f622
  • Authorization via query parameter, e.g. http://example.com/webhook?token=3858f622

See the description of the subscription object for details.

Subscribing and Unsubscribing

Method URL Description Details
POST https://api.jacob.services/1.0/joe/events/subscriptions Subscribe to an event Link
DELETE https://api.jacob.services/1.0/joe/events/subscriptions/{subId} Unsubscribe from an event Link

Managing Subscriptions

Method URL Description Details
GET https://api.jacob.services/1.0/joe/events/subscriptions/{subId} Fetch a subscription Link
PATCH https://api.jacob.services/1.0/joe/events/subscriptions/{subId} Change a subscription Link
PUT https://api.jacob.services/1.0/joe/events/subscriptions/{subId} Replace a subscription Link

Product API Documentation

Product information, like product descriptions, available stock and prices, can be queried by using the Product API.

Authentication

Unless otherwise noted using the Product API requires an API key which must be appended to each request as a query parameter:

https://api.jacob.services/1.0/products/...?apikey=123

Keep in mind that API keys are customer-specific and should be kept confidential.

Product Information

Method URL Description Details
GET https://api.jacob.services/1.0/products/{sku} Get general product information Link
GET https://api.jacob.services/1.0/products/{sku}/price Get price and available stock for a product Link

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published