Workgroups
Overview
The Workgroup API provides tools for managing the organizations and resources included in a baseline ecosystem. A Workgroup
represents a logical collection of resources provisioned within Provide's containerized microservices architecture and designed to facilitate shared business processes amongst a group of known participants. A Workgroup
is immutably configured upon initialization with support for a primary Network
.
Access to programmatically manage resources associated with a Workgroup
is provided via REST API, to which ACL-based authorization is managed using generic permissions.
Application
Workgroups are used to establish rulesets and define resources for use by participants in a shared baseline process. Typically, Workgroup
variables are stored in a configurable Vault
, defaulting to the organizational Vault
as defined by the ecosystem operator
Fundamentals
Ecosystem
A Workgroup
exists within a broader environment that includes all external resources needed to complete an end-to-end baselined process. In Provide Baseline, this environment is known as the Ecosystem or Baseline Ecosystem. An ecosystem can encompass systems of record, participants, external workgroups, networks, infrastructure or hosting environments.
An ecosystem is provisioned, curated and managed by an Ecosystem Operator.
Ecosystem Operator
An Ecosystem Operator is responsible for Workgroup
creation, ecosystem management, Workflow
design, and infrastructure architecture. Upon Workgroup
initialization, the ecosystem operator defaults to the creating User
. The ecosystem operator can be changed via an Update Workgroup request within an authorized scope.
Participants
Organizations or other entities included in a Workgroup
are referred to as participants. Organizations are invited to become a participant in a Workgroup
by way of an Invitation
.
Using Workgroups
Prerequisites
The Workgroup API is intended to function within the context of an Organization
Within this context, it is assumed that:
an
Organization
scoped JWT is available for useid
of hostNetwork
is known
Workgroup Schema
Field | Type | Description |
---|---|---|
| object | arbitrary data pertaining to |
| date/time | timestamp of |
| boolean | when |
| uuid |
|
| string |
|
| string |
|
| array | list of workgroup participants |
| string | arbitrary privacy policy encompassing the |
| string | arbitrary security policy encompassing the |
| object | object that defines the tokenization policies made available to workgroup participants |
| uuid | type of workgroup; defaults to |
| string |
|
API Requests
List Workgroups
Returns a list of workgroups within the authorized scope
List Workgroups
GET
https://baseline.provide.services/api/v1/workgroups
Returns a list of workgroups within an authorized scope
Headers
Name | Type | Description |
---|---|---|
authorization* | string | bearer <JWT> scoped for |
Get Workgroup Details
Get Workgroup Details
GET
https://baseline.provide.services/api/v1/workgroups/:id
Retrieves detailed information for a specified Wor
kgroup
Path Parameters
Name | Type | Description |
---|---|---|
id* | uuid |
|
Headers
Name | Type | Description |
---|---|---|
authorization* | string | bearer <JWT> scoped for |
Create Workgroup
Creates a Workgroup
per the provided parameters
Create Workgroup
POST
https://baseline.provide.services/api/v1/workgroups
Creates a Workgroup
per the provided parameters
Headers
Name | Type | Description |
---|---|---|
authorization* | string | bearer <JWT> scoped for |
Request Body
Name | Type | Description |
---|---|---|
name* | string | name of workgroup |
description | string | brief descriptor of workgroup |
type* | string | classification of workgroup; should be equal to |
privacy_policy | string | arbitrary privacy policy encompassing the |
security_policy | string | arbitrary security policy encompassing the |
tokenization_policy | object | object that defines the tokenization policies made available to workgroup participants |
network_id* | uuid |
|
Update Workgroup
Updates a specified Workgroup
Update Workgroup
POST
https://baseline.provide.services/api/v1/workgroups
Updates a Workgroup
per the request parameters
Headers
Name | Type | Description |
---|---|---|
authorization* | string | bearer <JWT> scoped for |
Request Body
Name | Type | Description |
---|---|---|
name* | string | name of |
description | string | brief descriptor of |
type | string | classification of |
privacy_policy | string | arbitrary privacy policy encompassing the |
security_policy | string | arbitrary security policy encompassing the |
tokenization_policy | object | object that defines the tokenization policies made available to workgroup participants |
List Workgroup Participants
Returns a list of participants in a specified Workgroup
List Workgroup Participants
GET
https://baseline.provide.services/api/v1/workgroups/:id/participants
Returns a list of participants in a specified Workgroup
within the authorized scope
Headers
Name | Type | Description |
---|---|---|
authorization* | string | bearer <JWT> scope to |
Last updated