Simplify license compatibility complexities
The DoWell Legalzard Package provides a seamless interface to the Dowell Open Source License Compatibility Library powered by DoWell UX Living Lab.
The Dowell Opensource License Compatibility Library provides access to a wide range of legal information and resources. It allows developers to retrieve information about software licenses, legal documents, legal entities, check license compatibility, and more. The library aims to facilitate the integration of legal information into applications, websites, or other software systems.
Use the method get_all Get all licenses submitted. The method returns a response body with two parameters, isSucsess, a boolean showing retrieval status and data, a list of licenses.
Create a license by adding all the fields required by using the create method which accepts one argument in the form of a dictionary. This argument contains all the license information to be created.
Retrieve license information using an ID by using the method retrieve and passing an Id. The response is similar to the get_all method but the list of of licenses only contains a single license.
Use the update method. This method updates the license information stored on the database. It accepts two arguments, id and license object as a dictionary similar to what the create method accepts.
Deleting a license Using the delete method pass an id and to remove license.
The API the feature of search for licenses containing a specific phrase. The method accepts a search_term argument and returns a response object similar to the get_all method with list of matching licenses.
Use the check_compatibility method to check the level of compatibility of two licenses. The method accepts a comparison_data dictionary.
Get the comparison history by user using the get_compatibility_history method that accepts two arguments, organization_id and user_id. The response object contains a list of comparison history objects.pip
pip install Opensource-License-Compatibility-from-DoWell
Usage
from doWellOpensourceLicenseCompatibility import doWellOpensourceLicenseCompatibility
Create an instance of the API. You use this instance to access all the package-API methods
license = doWellOpensourceLicenseCompatibility(api_key='YOUR-VALID-API-KEY')
__init__(api_key)
Initializes the packageget_all()
Retrieves all of the licensescreate(license: dict)
Creates a license in the databases. See examples for parametersretrieve(event_id)
Fetch license information by ID
update(event_id: str, license: dict)
Updates an already existing license by receiving its ID
and new license informationdelete(event_id: str)
Deletes a license by ID
search(search_term: str)
Find a license by passing a phrase within the licensecheck_compatibility(comparison_data: dict)
Check the compatibility of two licenses by passing a dictionary with the license information. See data exmples for parameters.get_compatibility_history(organization_id: str = None, user_id: str = None)
Retrieves compatibility check history. It receives to optional parameters organization_id
and user_id
.
from doWellOpensourceLicenseCompatibility import doWellOpensourceLicenseCompatibility license = doWellOpensourceLicenseCompatibility(api_key='') # Get licenses all = license.get_all() # Search License srch = license.search('personal info')
{
"license_name": "Test & Sample",
"license_tags": [],
"version": "No Version",
"type_of_license": "PERMISSIVE",
"short_description": "You can copy,modify and distribute this license as long as you fulfill license requirements.",
"description": "The SFL (Standard Function Library) from iMatix is a portable function library for C/C++ programs.The SFL is written in ANSI C and has been ported to MS-DOS, Windows, OS/2, Linux and other UNIX systems and Digital OpenVMS. It comes with complete sources and documentation in HTML. The SFL is free software that you may use and distribute for private or commercial purposes according to license agreement.",
"disclaimer": "Copyright © 1991-2000 iMatix Corporation.",
"risk_for_choosing_license": "This license places a lot of conditions on use and distribution of it.",
"limitation_of_liability": "In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.",
"license_url": "https://spdx.org/licenses/iMatix.html",
"logo_detail": {
"filename": "img_02c8ccb5-3ffb-4737-83db-effb3da529ed.png",
"actual_filename": "Logo.png",
"file_extension": "png",
"url": "https://100080.pythonanywhere.com/media/img/img_02c8ccb5-3ffb-4737-83db-effb3da529ed.png"
},
"recommendation": "",
"is_active": false,
"permissions": [
{
"action": "Patent Use",
"permission": "No",
"has_other_condition": false
},
{
"action": "Patent Grant",
"permission": "No",
"has_other_condition": false
}
],
"conditions": [
{
"action": "Disclose Source Code",
"permission": "No",
"has_other_condition": false
},
{
"action": "Network Use is for Distribution",
"permission": "No",
"has_other_condition": false
},
{
"action": "Release Under Same License",
"permission": "Yes",
"has_other_condition": false
},
{
"action": "State Changes",
"permission": "Yes",
"has_other_condition": false
},
{
"action": "Code can be used in closed source project",
"permission": "No",
"has_other_condition": false
},
{
"action": "Copied",
"permission": "Yes",
"has_other_condition": false
},
{
"action": "Distributed",
"permission": "Yes",
"has_other_condition": true
},
{
"action": "Reproduced",
"permission": "Yes",
"has_other_condition": false
},
{
"action": "Modified",
"permission": "Yes",
"has_other_condition": true
},
{
"action": "Commercial Used",
"permission": "Yes",
"has_other_condition": false
}
],
"limitations": [
{
"action": "Liability",
"permission": "No",
"has_other_condition": false
},
{
"action": "Warranty",
"permission": "No",
"has_other_condition": false
},
{
"action": "Trademark use",
"permission": "No",
"has_other_condition": false
},
{
"action": "Redistribution",
"permission": "Yes",
"has_other_condition": true
}
],
"references": [],
"laws": "Not Fixed",
"sources": [
{
"action": "FSF Approved",
"permission": "Yes"
},
{
"action": "OSI Approved",
"permission": "No"
}
],
"must_includes": [
{
"action": "License",
"permission": "Yes"
},
{
"action": "Copyright Notice",
"permission": "Yes"
}
]
}
{
"license_event_id_one": "FB1010000000167238702450728865",
"license_event_id_two": "FB1010000000167247184554419413",
"user_id": 609,
"organization_id": "63cf89a0dcc2a171957b290b"
}
D’Well Research validates and explores each stage of open innovation using user experience research from the field to support user-centered product design of medium and large companies globally.