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

Y24-220 - Create API V2 end point for tag sets #4238

Open
11 tasks
yoldas opened this issue Jul 26, 2024 · 2 comments
Open
11 tasks

Y24-220 - Create API V2 end point for tag sets #4238

yoldas opened this issue Jul 26, 2024 · 2 comments
Labels
Dual Index Tags On Hold On hold Size: M Medium - medium effort & risk

Comments

@yoldas
Copy link
Member

yoldas commented Jul 26, 2024

User story
As PSD, we would like to design an API V2 endpoint to query tag sets. A tag set can be single index or dual index. A single index tag set has an association with one tag group. A dual index tag set has associations with two tag groups.

Who are the primary contacts for this story
Abdullah, Andrew, Katy, Neil

Who is the nominated tester for UAT
PSD

Acceptance criteria
To be considered successful the solution must allow:

  • Endpoint:
    • Listing all tag sets
    • Reading one tag set by id
    • Has a filter to return only the tag sets by their tag group adapter types. For dual index tag sets, the model has a validation that the adapter types of its tag groups are equal. Therefore, the model has a method to return the first tag group adapter type as its adapter type.
    • Includes tag groups and tags of the tag set in the response if requested, (JSON API compound document)
    • Excludes soft-deleted tag sets i.e. at least one of the tag groups is soft-deleted using visibility flag
    • See the existing tag group request/response in Additional Context. The new endpoint should attach tag groups to their parent tag sets in the response.
  • TagSet resource
    • Has a name, same as the underlying model
    • Has a uuid, same as the underlying model, because of the included concern.
    • Has one tag_group, the only group for single index tag sets and the first group for dual index tag sets
    • Has one tag2_group, null for single index tag sets and the second group for dual index tag sets
  • Client side
    • convenience methods as in the server model: visible and adapter type

Dependencies
This story is blocked by the following dependencies:

References
This story has a non-blocking relationship with:
See links in the parent research story.

Additional context
Initial aim of this story is supporting the Limber UI story for selection of i7 and i5 tag groups for Limber Tagging screen by tag set name only; instead of specifying the groups separately. There will be a Limber UI story for that. For testing the endpoint, similar/modified payloads for LCA Connect PCRXP plate in Cardinal pipeline integration suite test may be useful.


Existing tag group listing

Existing tag group API request from Limber retrieves all tag groups by an adapter filter. The same result is listed in both i7 and i5 drop-downs. The following example shows the request and response headers and Preview of a tag group that would belong to a single-index tag set and a pair of tag groups that would belong to a dual-index tag set.

Screenshot 2024-07-31 at 14 54 39 Screenshot 2024-07-31 at 14 53 48
@psd-issuer psd-issuer bot changed the title placeholder - dual index - api Y24-220 - placeholder - dual index - api Jul 26, 2024
@yoldas yoldas changed the title Y24-220 - placeholder - dual index - api Y24-220 - Create V2 API end point for tag sets Jul 26, 2024
@yoldas yoldas added Dual Index Tags Size: M Medium - medium effort & risk labels Jul 26, 2024
@yoldas yoldas changed the title Y24-220 - Create V2 API end point for tag sets Y24-220 - Create API V2 end point for tag sets Jul 26, 2024
@KatyTaylor
Copy link
Contributor

See existing API resource files for tag groups, to see what attributes are required? e.d. adapter_type is needed to filter the list on the tagging page.

@yoldas yoldas added Size: S Small - low effort & risk Size: M Medium - medium effort & risk and removed Size: M Medium - medium effort & risk Size: S Small - low effort & risk labels Jul 30, 2024
@yoldas
Copy link
Member Author

yoldas commented Jul 31, 2024

I have updated the criteria with more details and added an adapter_type filter requirement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Dual Index Tags On Hold On hold Size: M Medium - medium effort & risk
Projects
None yet
Development

No branches or pull requests

2 participants