== List of tables for the Vendor API ==
Note: All tables in paranthesis () are suggestions, the ones without MUST be realised.
=== Table Vendor ===
Holds information about the vendor
||Name || Type || Function || Remarks ||
||VendorID || long || internal reference ID || Primary Key, autoincrement||
||AccountID || long || reference to the account id || ||
||Account Type || int || reference if personal account or organisation account || ||
||Remark || varchar || Remarks about anything of interest || ||
||created || date || || ||
||created by || long || User ID || ||
||deleted || date || || ||
||deleted by || long || User id || ||
History to be defined
=== Table !VendorApplication ===
Holds information about the vendor application
||Name || Type || Function || Remarks ||
||VendorAppID || long || internal reference ID || Primary Key, autoincrement ||
||VendorID || long || reference to the vendor || ||
||Application || varchar || Title of the application || ||
||Description || varchar || Description of the application, what it does, what is its purpose ||Information must be given by the vendor and approved of by the vendor team ||
||domain || varchar || must be given in account || how to hanlde multiple domains ||
||created || date || || ||
||created by || long || User ID || ||
||deleted || date || || ||
||deleted by || long || User id || ||
History to be defined<
>
One idea is it to make commercial users ay for the use of the VendorAPI. If that comes true the information could be placed here with commercial use and payment received.
=== Table VendorFunction ===
Defines the function that can be used through the VendorAPI
||Name || Type || Function || Remarks ||
||VendorFunctionID || long || internal reference ID || Primary Key, autoincrement ||
||Function name || varchar || || ||
||Description || varchar || || ||
||active || bit || true allows applications to use this function. || ||
=== Table VendorApplicationFunction ===
Defines what application can use which function from the Vendor API
||Name || Type || Function || Remarks ||
||VendorApplicationFunctionID || long || internal reference ID || Primary Key, autoincrement ||
||VendorApplicationID || long || reference to the vendor application || ||
||VendorFunctionID || long || reference to the function that can be used by the application || ||
||Status || int || 0 – not allowed<
>1 – waiting for approval<
>2 – allowed || ||
||created || date || || ||
||created by || long || User ID || ||
||deleted || date || || ||
||deleted by || long || User id || ||
History to be defined
=== Table UserPrivacyFunction ===
Defines the functions that the user allows to be used. If not existing, no permission to use the function is granted.
||Name || Type || Function || Remarks ||
||UserPrivacyFunctionID || long || internal reference ID || Primary Key, autoincrement ||
||VendorFunctionID || long || reference to !VendorFunction || ||
||Status || int || 0 – not allowed<
>1 – for all applications<
>2 – for single application || ||
||AccountID || int || User Account ID || ||
||created || date || || ||
||created by || long || User ID || ||
||deleted || date || || ||
||deleted by || long || User id || ||
History to be defined
=== existing table user ===
Add one field to the table users !VendorPermission as Boolean. True allows the User Privacy Settings to be used, false blocks ALL Vendor API calls.
=== Table UserPrivacyFunctionApplication ===
Is used if status of !UserPrivacyFunction is 2 and defines which application is allowed to the function
||Name || Type || Function || Remarks ||
||UserPrivacyFunctionApplicationID || long || internal reference ID || Primary Key, autoincrement ||
||UserPrivacyFunctionID || long || reference to the user's permission for one function || ||
||VendorAppID || long || || ||
||created || date || || ||
||created by || long || User ID || ||
||deleted || date || || ||
||deleted by || long || User id || ||
=== (Table CountryRestrictions) ===
This table could hold information about the country restrictions.
||Name || Type || Function || Remarks ||
||CountryRestrictionID || long || internal reference ID || Primary Key, autoincrement ||
||Country || varchar || Name of country || ||
||!CountryCode || varchar(2) || iso code 2 letters || ||
||!AdultAge || int || defines when a person is able to legally sign a contract on his own || ||
||!DrinkingAge || int || defines the age for drinking in that country || ||
||…. || || || ||
=== Entity relationship ===
possibile entity relationship
{{attachment:entity_relationship_vendor_api.png}}
----
.CategorySoftware