Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

openapi: add share_workflow endpoint #418

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion AUTHORS.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ The list of contributors in alphabetical order:
- `Adelina Lintuluoto <https://orcid.org/0000-0002-0726-1452>`_
- `Agisilaos Kounelis <https://orcid.org/0000-0001-9312-3189>`_
- `Audrius Mecionis <https://orcid.org/0000-0002-3759-1663>`_
- `Camila Diaz <https://orcid.org/0000-0001-5543-797X>`_
- `Burt Holzman <https://orcid.org/0000-0001-5235-6314>`_
- `Camila Diaz <https://orcid.org/0000-0001-5543-797X>`_
- `Daan Rosendal <https://orcid.org/0000-0002-3447-9000>`_
- `Daniel Prelipcean <https://orcid.org/0000-0002-4855-194X>`_
- `Diego Rodriguez <https://orcid.org/0000-0003-0649-2002>`_
- `Dinos Kousidis <https://orcid.org/0000-0002-4914-4289>`_
Expand Down
191 changes: 191 additions & 0 deletions reana_commons/openapi_specifications/reana_server.json
Original file line number Diff line number Diff line change
Expand Up @@ -2972,6 +2972,197 @@
"summary": "Get the retention rules of a workflow."
}
},
"/api/workflows/{workflow_id_or_name}/share": {
"post": {
"description": "This resource shares a workflow with another user. This resource is expecting a workflow UUID and some parameters.",
"operationId": "share_workflow",
"parameters": [
{
"description": "The API access_token of workflow owner.",
"in": "query",
"name": "access_token",
"required": false,
"type": "string"
},
{
"description": "Required. Workflow UUID or name.",
"in": "path",
"name": "workflow_id_or_name",
"required": true,
"type": "string"
},
{
"description": "Required. User to share the workflow with.",
"in": "query",
"name": "user_email_to_share_with",
"required": true,
"type": "string"
},
{
"description": "Optional. Message to include when sharing the workflow.",
"in": "query",
"name": "message",
"required": false,
"type": "string"
},
{
"description": "Optional. Date when access to the workflow will expire (format YYYY-MM-DD).",
"in": "query",
"name": "valid_until",
"required": false,
"type": "string"
}
],
"produces": [
"application/json"
],
"responses": {
"200": {
"description": "Request succeeded. The workflow has been shared with the user.",
"examples": {
"application/json": {
"message": "The workflow has been shared with the user.",
"workflow_id": "cdcf48b1-c2f3-4693-8230-b066e088c6ac",
"workflow_name": "mytest.1"
}
},
"schema": {
"properties": {
"message": {
"type": "string"
},
"workflow_id": {
"type": "string"
},
"workflow_name": {
"type": "string"
}
},
"type": "object"
}
},
"400": {
"description": "Request failed. The incoming data specification seems malformed.",
"examples": {
"application/json": {
"errors": [
"Missing data for required field."
],
"message": "Malformed request."
}
},
"schema": {
"properties": {
"errors": {
"items": {
"type": "string"
},
"type": "array"
},
"message": {
"type": "string"
}
},
"type": "object"
}
},
"403": {
"description": "Request failed. User is not allowed to share the workflow.",
"examples": {
"application/json": {
"errors": [
"User is not allowed to share the workflow."
]
}
},
"schema": {
"properties": {
"message": {
"type": "string"
}
},
"type": "object"
}
},
"404": {
"description": "Request failed. Workflow does not exist or user does not exist.",
"examples": {
"application/json": {
"errors": [
"Workflow cdcf48b1-c2f3-4693-8230-b066e088c6ac does not exist"
],
"message": "Workflow cdcf48b1-c2f3-4693-8230-b066e088c6ac does not exist"
}
},
"schema": {
"properties": {
"errors": {
"items": {
"type": "string"
},
"type": "array"
},
"message": {
"type": "string"
}
},
"type": "object"
}
},
"409": {
"description": "Request failed. The workflow is already shared with the user.",
"examples": {
"application/json": {
"errors": [
"The workflow is already shared with the user."
],
"message": "The workflow is already shared with the user."
}
},
"schema": {
"properties": {
"errors": {
"items": {
"type": "string"
},
"type": "array"
},
"message": {
"type": "string"
}
},
"type": "object"
}
},
"500": {
"description": "Request failed. Internal controller error.",
"examples": {
"application/json": {
"errors": [
"Internal controller error."
],
"message": "Internal controller error."
}
},
"schema": {
"properties": {
"errors": {
"items": {
"type": "string"
},
"type": "array"
},
"message": {
"type": "string"
}
},
"type": "object"
}
}
},
"summary": "Share a workflow with another user."
}
},
"/api/workflows/{workflow_id_or_name}/specification": {
"get": {
"description": "This resource returns the REANA workflow specification used to start the workflow run. Resource is expecting a workflow UUID.",
Expand Down
Loading