Skip to content

Avoid calling /v3/members/_search client-side #3387

@maxceem

Description

@maxceem

At present member team is doing some major fixes for the search of members and security aspects of the member endpoint. We need to start working on getting the connect front end free of _search api call and use _search on backend only via m2m just like we recently did for members and invites endpoints, see topcoder-platform/tc-project-service#414

Places where we call /v3/members/_search endpoint in Connect App

  1. Project Details - Messages When we show topics, we load users to show authors of topics/post with tooltip by userId:

    image

  2. Projects List On the Project List page we are showing projects and member of them with tooltips:

    image

  3. Project Details - Assets Library We are showing uploaded files and links with full name of the owner and tooltip:

    image

  4. Project Details - Team - Members and Invites - We are already making Project Service changes so we don't need to call _search anymore for this place.
    updated!
    this change is already done, and data comes from Project Service, though Project Service internally calls _search endpoint using M2M, see https://github.com/topcoder-platform/tc-project-service/blob/develop/src/util.js#L559-L579

  5. Project Details - Team - New Member Invitation When we are inviting a new member by handle we first find his userId using _search endpoint and after we send request to the Project Service using userId. We may change this and we may send handle directly to the project service while inviting a member. This would require making us a corresponding change in Project Service.
    updated!
    we don't call this endpoint anymore (not yet merged to dev branch, but almost ready), and we invite users by handle. BUT Project Service still calls _search endpoint to get user details by handle during invitation process https://github.com/topcoder-platform/tc-project-service/blob/feature/restful-invites/src/util.js#L581-L605 using M2M

@vikasrohit from the list above it's clear how to handle situations 4 and 5. But 1, 2 and 3 I'm not sure how to cover as these cases are not covered by project members and project invites endpoints.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions