- Introduction
- GEi overall description
- Build and Install
- API Overview
- API Reference
- Testing
- Advanced Topics
This is the code repository for WMarket, the reference implementation of the Marketplace.
This project is part of FIWARE. Check also the FIWARE Catalogue entry for WMarket!
Any feedback is highly welcome, including bugs, typos or things you think should be included but aren't. You can use GitHub Issues to provide feedback.
You can find the User & Programmer's Manual and the Administration Guide on readthedocs.org
WMarket provides functionality necessary for bringing together offering and demand for making business. These functions include basic services for registering business entities, publishing and retrieving offerings and demands, search and discover offerings according to specific consumer requirements as well as lateral functions like review, rating and recommendation. Besides the core functions, the Marketplace may offer value because of its "knowledge" about the market in terms of market intelligence services, pricing support, advertising, information subscription and more.
The instructions to install WMarket can be found at the Installation Guide. You can install the software in three different ways:
- With the provided script (included in the
utils
folder) - With a Docker Container
- Manually
If you opt for building WMarket, you can refer to the Building from Sources Guide
WMarket API is very easy. The API is available under the /api/v2/
path and the available resources are:
- Users:
/api/v2/user
- Stores:
/api/v2/store
- Descriptions:
/api/v2/store/STORE_NAME/description
- Offerings:
/api/v2/store/STORE_NAME/description/DESCRIPTION_NAME/offering
The API is fully RESTful so:
- You can use
POST
requests to create resources. - Create a user making a
POST
request to/api/v2/user
- Create a store making a
POST
request to/api/v2/store
- Create a description making a
POST
request to/api/v2/store/STORE_NAME/description
- You can use
POST
requests to update resources partially. - Update a user making a
POST
request to/api/v2/user/USER_NAME
- Update a store making a
POST
request to/api/v2/store/STORE_NAME
- Update a description making a
POST
request to/api/v2/store/STORE_NAME/description/DESCRIPTION_NAME
- You can use
GET
requests to retrieve an entity. - Retrieve a user making a
GET
request to/api/v2/user/USER_NAME
- Retrieve a store making a
GET
request to/api/v2/store/STORE_NAME
- Retrieve a description making a
GET
request to/api/v2/store/STORE_NAME/description/DESCRIPTION_NAME
- Retrieve an offering making a
GET
request to/api/v2/store/STORE_NAME/description/DESCRIPTION_NAME/offering/OFFERING_NAME
- You can use
DELETE
requests to delete an entity. - Delete a user marking a
DELETE
request to/api/v2/user/USER_NAME
- Delete a store making a
DELETE
request to/api/v2/store/STORE_NAME
- Delete a description making a
DELETE
request to/api/v2/store/STORE_NAME/description/DESCRIPTION_NAME
For further documentation, you can check the API Reference available at:
End-to-End tests are described in the Installation Guide
To execute the unit tests, just run:
mvn test
To execute the integration tests, just run:
mvn integration-test
You can also find this documentation on ReadTheDocs