Guide: ERP-API: Difference between revisions

From bwCloud-OS
Jump to navigation Jump to search
As1844 (talk | contribs)
Created page with "The bwCloud-OS provides an ERP with a RESTful API that allows our customers to overview and manage the accounting data and resources of their members. Mainly, this means to manage entitlements and eligibilities. __TOC__ == Entitlement == === Entitlement validation === {| class="mw-message-box mw-message-box-warning" | style="vertical-align:middle;" |'''⚠️ Please Note:''' This endpoint is in a late testing phase and will be available soon. |}This endpoint can be us..."
 
As1844 (talk | contribs)
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
➡️ '''To the [[Guide: Enterprise Resource Planning|Enterprise Resource Planning]].'''
The bwCloud-OS provides an ERP with a RESTful API that allows our customers to overview and manage the accounting data and resources of their members. Mainly, this means to manage entitlements and eligibilities.
The bwCloud-OS provides an ERP with a RESTful API that allows our customers to overview and manage the accounting data and resources of their members. Mainly, this means to manage entitlements and eligibilities.


__TOC__
__TOC__


== Entitlement ==
== Entitlement ==

Latest revision as of 15:21, 27 February 2026

➡️ To the Enterprise Resource Planning.

The bwCloud-OS provides an ERP with a RESTful API that allows our customers to overview and manage the accounting data and resources of their members. Mainly, this means to manage entitlements and eligibilities.


Entitlement

Entitlement validation

⚠️ Please Note: This endpoint is in a late testing phase and will be available soon.

This endpoint can be used for validating syntax and checking the interpretation of an entitlement string.

Entitlement validation example 2

JSON Data: {"entitlement": "urn:geant:dfn.de:bwidm:bwcloud-os:group:xtiny_1:hfu_netze2"}

Return: {'quota_flavor': 'xtiny_1', 'cost_center_id': 'hfu_netze2', 'first_day_of_validation': '2025-12-19', 'last_day_of_validation': 'inf', 'max_number_of_booking_units': 'inf'}

Entitlement validation example 2

JSON Data: {"entitlement": "urn:geant:dfn.de:bwidm:bwcloud-os:group:xtiny_1:hfu_netze2"}

Return: {'quota_flavor': 'xtiny_1', 'cost_center_id': 'hfu_netze2', 'first_day_of_validation': '2026-02-01', 'last_day_of_validation': '2027-01-31', 'max_number_of_booking_units': 'inf'}

Entitlement validation example 3

JSON Data: {"entitlement": "urn:geant:dfn.de:bwidm:bwcloud-os:group:xtiny_1:hfu_netze2:null:2027-01-32:null"}

Return: Error parsing eligibility. Invalid last day of validation format: 2027-01-32.

Eligibility

Eligibility rules

⚠️ Please Note: Providing this functionalities is optional and still to plan.

This endpoint may be extended to allow customers to manage eligibility. By defining rules that can be applied to bwCloud-OS users when matching certain criteria. E.g. If the user is a member of the medicine faculty, grant the small quota flavor. However, the use cases and requirements for this are yet not cleare.

  • As a customer, I want a service where my local support can define rules for rolling out eligibility, such that new users from my organization gain automatic quotas.
  • As a customer, I want to control who is allowed to manage and see cost centers, user groups, and personal information, such that only privileged people can grant quotas.
  • As a customer, I forward (all?) information of my stuff to this external service, such that I can define precise rules.(?)
  • As a user, I want to see the eligibilities I am owning, such that I can plan how to debit these.

There are plenty of questions the bwCloud-OS needs to address to their customers before it gets clear what kind of centralized service actually is needed and weather it will be accepted.

Eligibility validation

⚠️ Please Note: This endpoint is in a late testing phase and will be available soon.

This endpoint can be used for validating syntax and checking the interpretation of eligibility data.

Eligibility validation example 1

JSON Data: {"quota_flavor": "large_1", "cost_center_id": "student", "first_day": "2026-01-01", "last_day": "2026-12-31", "max_booking_units": 5000}

Return: {'quota_flavor': 'large_1', 'cost_center_id': 'student', 'first_day_of_validation': '2026-01-01', 'last_day_of_validation': '2026-12-31', 'max_number_of_booking_units': 5000}

Eligibility validation example 2

JSON Data: {"quota_flavor": "large_1", "cost_center_id": "student", "first_day": "2026-01-01", "last_day": "2027-12-32", "max_booking_units": 5000}

Return: Error parsing eligibility. Invalid last day of validation format: 2027-01-32.