Skip to content

feat(admin): users REST api #7314

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

Open
wants to merge 204 commits into
base: main
Choose a base branch
from
Open

feat(admin): users REST api #7314

wants to merge 204 commits into from

Conversation

mikeldking
Copy link
Contributor

@mikeldking mikeldking commented Apr 28, 2025

resolves #7313

Adds the ability to list, create, and delete users.

  • make sure the default user and system user cannot be deleted

Testing

The testing is entirely manual as tests for REST run unauthenticated.

@github-project-automation github-project-automation bot moved this to 📘 Todo in phoenix Apr 28, 2025
@dosubot dosubot bot added the size:L This PR changes 100-499 lines, ignoring generated files. label Apr 28, 2025
@mikeldking mikeldking marked this pull request as draft April 28, 2025 05:56
Copy link

pkg-pr-new bot commented Apr 29, 2025

Open in StackBlitz

npm i https://pkg.pr.new/Arize-ai/phoenix/@arizeai/phoenix-client@7314
npm i https://pkg.pr.new/Arize-ai/phoenix/@arizeai/phoenix-mcp@7314

commit: a35a2a5

@mikeldking
Copy link
Contributor Author

waiting for #7349

cleanup

add the router

openapi

cleanup

cleanup

switch to using global ids

commit openapi schema

cleanup api

add error codes

cleanup types
@mikeldking mikeldking force-pushed the mikeldking/user-api branch from eeac931 to 0650cfe Compare April 29, 2025 23:35
@mikeldking mikeldking marked this pull request as ready for review April 30, 2025 05:53
@dosubot dosubot bot added size:XL This PR changes 500-999 lines, ignoring generated files. and removed size:L This PR changes 100-499 lines, ignoring generated files. labels Apr 30, 2025
@mikeldking mikeldking changed the title feat(admin): users api feat(admin): users REST api Apr 30, 2025
…taframe` to client (#7071)

* Initial implementation of spans module for client

* Update client implementation to not use pydantic

* Ensure interface consistency

* Add more consistency tests

* Update test requirements

* Clean up typing issues

* Remove needless comments

* Some linting

* Ruff 🐶

* Add pandas stubs

* Remove needless comments

* Do not require pandas to export spans

* Ruff 🐶

* Add pandas type stubs

* Remove optional dependencies

* Use correct endpoints

* Remove from_dict

* Add separate dataframe methods for clients

* Delay pandas import

* Update sync client

* Dynamically update client classes

* Create new test client fixture

* Update spans handler

* Update imports

* Update async spans handler

* More client cleanup

* A query is optional

* Correctly put queries into a list

* Remove phoenix import

* Ensure that output is set

* xfail until spans is released

* Ruff 🐶

* Update xfail condition

* xfail correct test

* Pywright cannot resolve pandas attributes

* override unused-ignore

* Vendor datetime util

* Add helper method to process multipart response

* Ruff 🐶

* Require kwarg invocations

* Address feedback

* Simplify dictionary construction

* Attempt to import before making a request

* Remove unused type: ignores

* Tweak ignores

* Assign module to dummy var

* Ruff 🐶
mikeldking and others added 18 commits May 26, 2025 09:08
* feat(ui): add mcp, gemini, agno integrations

* add typescript
* Update chatbot_with_human_feedback.ipynb

* Bump for retrigger
* chore: Clean up tsconfig

* chore: Sort auto-completion suggestions in IDEs
* feat(ts): experiments

* add async

* feat: add concurrency support to experiment runner and update dependencies

- Introduced concurrency parameter for running experiments and evaluations in parallel.
- Removed repetitions parameter from experiment configuration.
- Added async and @types/async dependency for improved async handling.

* changeset

---------

Co-authored-by: Tony Powell <apowell@arize.com>
* feat(api): expose experiment routes

* feat(api): expose experiment runs

* feat(api): expose the right types
)

* feat: make dry run configurable

* initial scaffolding of logging experiment runs

* wire up logging

* Add annotator kind to eval def

* Remove deprecation warning

* Update asEvaluator signature

* changeset

---------

Co-authored-by: Mikyo King <mikyo@arize.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat(dashboards): rudamentary routes for dashboards

* Update app/src/pages/dashboards/DashboardsPage.tsx

Co-authored-by: Tony Powell <apowell@arize.com>

---------

Co-authored-by: Tony Powell <apowell@arize.com>
@RogerHYang RogerHYang requested review from a team as code owners May 27, 2025 16:17
@dosubot dosubot bot added size:XXL This PR changes 1000+ lines, ignoring generated files. and removed size:XL This PR changes 500-999 lines, ignoring generated files. labels May 27, 2025
Comment on lines -120 to +121
user_role=enums.UserRole.MEMBER,
user_role="ADMIN" if user.is_admin else "MEMBER",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems to be bug. On the other hand if we're not checking the db for admin status every time, we'll need to ensure that our token attribute cache is updating correctly and in robust and timely ways.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
size:XXL This PR changes 1000+ lines, ignoring generated files.
Projects
Status: 📘 Todo
Development

Successfully merging this pull request may close these issues.

[ENHANCEMENT]: add a users rest API