A client for the Jama Connect REST API
Project description
Jama Software
Jama Software is the definitive system of record and action for product development. The company’s modern requirements and test management solution helps enterprises accelerate development time, mitigate risk, slash complexity and verify regulatory compliance. More than 600 product-centric organizations, including NASA, Boeing and Caterpillar use Jama to modernize their process for bringing complex products to market. The venture-backed company is headquartered in Portland, Oregon. For more information, visit jamasoftware.com.
Please visit dev.jamasoftware.com for additional resources and join the discussion in our community community.jamasoftware.com.
py-jama-rest-client
py-jama-rest-client by Jama Software is a Python REST API client for Jama Connect™. The client will allow customers to easily access the REST API to retrieve, and modify data within their Jama Instance.
Please note that this client is distributed as-is as an example and will likely require modification to work for your specific use-case.
Requirements
Setup
Create a new directory and install py-jama-rest-client using pipenv.
mkdir example_project
cd example_project
pipenv --python 3.7
pipenv install py-jama-rest-client
REST Calls Supported in the Client
API information
GETavailable endpoints
Abstract Items
GET abstract items by document key(Deprecated)GETabstract items(second method added to support all parameter options. Previous method left to preserve backwards compatibility)GETa specific abstract item by IDGETall versions of an abtract itemGETthe numbered version of an abstract itemGETan abstract item at a specified version
Attachments
PUTattachment file, uploads content to an attachment object by attachmentIDGETa specific attachment by ID
Baselines
GETBaseline Gets the baseline with the specified IDGETBaselines Gets all baselines for a specified projectGETBaselines versioneditems, Gets all of the versioned items associated with the specified baseline
Filters
GETfilter results, gets all results for the specified filter id.
Items
GETall items by projectGETa specific item by IDGETall downstream relationships for an item by item IDGETall downstream related items for an item by item IDGETall upstream relationships for an item by item IDGETall upstream related items for an item by item IDGETall children of an itemGETall synced itemsGETall tags of an itemGETsynced item sync statusGETLocked state of an itemGETall versions of an itemGETthe numbered version of an itemGETall valid workflow transitions that can be made on the item by item IDGETan item at a specified versionDELETEan Item by IDPATCHan ItemPOSTan item to a projectPOSTitem attachmentPOSTitem syncPOSTa tag to an itemPUTan itemPUTitem lock
Relationship Rule Sets
GETall relationship rule setsGETa specific relationship rule set by IDGETall projects for a specific relationship rule set by ID
Relationship Types
GETall relationship typesGETa specific relationship type by ID
Item Types
GETall item typesGETa specific item type by ID
Pick lists
GETall pick listsGETa specific pick list by IDGETall pick list options for a specific pick list by pick list ID
Pick list options
GETa specific pick list option by pick list option ID
Projects:
GETall projectsPOSTnew attachment item
Tags
GETall tags for a specific projectPOSTa new tag to a specific projectGETall items with tag id
Test Cycles
GETtest cycle by test cycle id
Test Plans
POSTa new test cycle to a test plan by test plan id
Test Runs
GETall test runs associated with a particular test cycle idPUTtest runs by id. Allows updating of test run fields.
Users
GETall active users visable to the current userGETa single user by idGETthe current userPOSTa new userPUTupdate an existing user with user idPUTupdate an existing user's active status with user id
Relationships
POSTrelationshipGETrelationship by idGETrelationships by project idPUTrelationship by id, from item, and to itemDELETErelationship by id
Usage Examples
Client instantiation
To instantiate a Basic authentication client:
from py_jama_rest_client.client import JamaClient
basic_auth_client = JamaClient('https://yourdomain.jamacloud.com', credentials=('username', 'password'))
To instantiate a OAuth authenticated client:
from py_jama_rest_client.client import JamaClient
oauth_client = JamaClient('https://yourdomain.jamacloud.com', credentials=('clientID', 'ClientSecret'), oauth=True)
Logging
The Py Jama Rest Client will log API messages to the logger 'py_jama_rest_client' you can get this logger for
setup / customization by calling logging.getLogger('py_jama_rest_client')
Get all projects
- Download get_all_projets.py to your example_project directory
- Enter your Jama URL, username, and password into the corrisponding variables at the top of the file.
- To execute the script execute the following form your example_project directory:
pipenv run python get_all_projects.py
Additional Documentation
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py-jama-rest-client-1.17.1.tar.gz.
File metadata
- Download URL: py-jama-rest-client-1.17.1.tar.gz
- Upload date:
- Size: 26.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ceed4e99fdc133ac595bcb76101f3d9ac4e07294b6fc80c9e2e2ab054f7bce73
|
|
| MD5 |
4e7b853ee106ea3298018229aa137bde
|
|
| BLAKE2b-256 |
fa43efe5aaecd8db28c43eeddb1680e2f9121a353263ceb57bebb9a4bffa06fc
|
File details
Details for the file py_jama_rest_client-1.17.1-py3-none-any.whl.
File metadata
- Download URL: py_jama_rest_client-1.17.1-py3-none-any.whl
- Upload date:
- Size: 14.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f3eee95c4608ff0db1be57b432bf996c6bcc298005286280a150b5a049e63638
|
|
| MD5 |
3ef6109797d73c6a26b1e0447853ed41
|
|
| BLAKE2b-256 |
a0084d5e85a4ec1c8ce7d8f21bd56ca4341e1408357df2b83982342ec7e4a5c6
|