|
427 | 427 | }, |
428 | 428 | "type": "array" |
429 | 429 | }, |
| 430 | + "admin_login": { |
| 431 | + "default": false, |
| 432 | + "description": "Enable or disable Admin Idp", |
| 433 | + "type": "boolean" |
| 434 | + }, |
430 | 435 | "consumed_disk": { |
431 | 436 | "description": "How many bytes of disk space is consumed. Read Only.", |
432 | 437 | "type": "string" |
|
454 | 459 | "maxLength": 36, |
455 | 460 | "type": "string" |
456 | 461 | }, |
| 462 | + "labels": { |
| 463 | + "$ref": "#/components/schemas/labels" |
| 464 | + }, |
457 | 465 | "name": { |
458 | 466 | "description": "A user chosen name to distinguish multiple STACKIT Git instances.", |
459 | 467 | "maxLength": 32, |
|
494 | 502 | "consumed_object_storage", |
495 | 503 | "flavor", |
496 | 504 | "acl", |
497 | | - "feature_toggle" |
| 505 | + "feature_toggle", |
| 506 | + "admin_login" |
498 | 507 | ] |
499 | 508 | }, |
500 | 509 | "InternalServerErrorResponse": { |
|
541 | 550 | ] |
542 | 551 | }, |
543 | 552 | "ListUsers": { |
544 | | - "description": "A list of STACKIT Git instance Users.", |
| 553 | + "description": "A paginated list of STACKIT Git instance Users.", |
545 | 554 | "properties": { |
| 555 | + "itemsCount": { |
| 556 | + "description": "Number of users returned in this page.", |
| 557 | + "type": "integer" |
| 558 | + }, |
| 559 | + "offset": { |
| 560 | + "description": "Zero-based index of the first item in this page.", |
| 561 | + "type": "integer" |
| 562 | + }, |
| 563 | + "totalPages": { |
| 564 | + "description": "Total number of pages available based on the fixed page size of 50.", |
| 565 | + "type": "integer" |
| 566 | + }, |
546 | 567 | "users": { |
547 | 568 | "items": { |
548 | 569 | "$ref": "#/components/schemas/User" |
549 | 570 | }, |
550 | | - "maxItems": 50, |
551 | 571 | "type": "array" |
552 | 572 | } |
553 | 573 | }, |
554 | 574 | "required": [ |
555 | | - "users" |
| 575 | + "users", |
| 576 | + "itemsCount", |
| 577 | + "offset", |
| 578 | + "totalPages" |
556 | 579 | ] |
557 | 580 | }, |
558 | 581 | "NotFoundErrorResponse": { |
|
621 | 644 | ], |
622 | 645 | "nullable": true |
623 | 646 | }, |
| 647 | + "admin_login": { |
| 648 | + "description": "Enable Admin IdP", |
| 649 | + "type": "boolean" |
| 650 | + }, |
624 | 651 | "feature_toggle": { |
625 | 652 | "$ref": "#/components/schemas/FeatureToggle" |
| 653 | + }, |
| 654 | + "labels": { |
| 655 | + "$ref": "#/components/schemas/labels" |
626 | 656 | } |
627 | 657 | }, |
628 | 658 | "type": "object" |
|
655 | 685 | ], |
656 | 686 | "type": "object" |
657 | 687 | }, |
658 | | - "PatchUserPayload": { |
659 | | - "description": "Properties to patch a Instance User. All fields are optional.", |
660 | | - "properties": { |
661 | | - "email": { |
662 | | - "description": "A user chosen email to distinguish multiple STACKIT Git instance Users.", |
663 | | - "format": "email", |
664 | | - "maxLength": 254, |
665 | | - "type": "string" |
666 | | - }, |
667 | | - "name": { |
668 | | - "description": "Name of the user.", |
669 | | - "maxLength": 32, |
670 | | - "type": "string" |
671 | | - }, |
672 | | - "password": { |
673 | | - "description": "A user password to allow user/pass instance login.", |
674 | | - "format": "password", |
675 | | - "maxLength": 64, |
676 | | - "type": "string" |
677 | | - } |
678 | | - }, |
679 | | - "type": "object" |
680 | | - }, |
681 | 688 | "Pipelines": { |
682 | 689 | "description": "Feature toggles for instance pipelines", |
683 | 690 | "properties": { |
|
736 | 743 | "type": "string" |
737 | 744 | }, |
738 | 745 | "description": { |
739 | | - "description": "Human-friendly description of the runtime and it's capabilities.", |
| 746 | + "description": "Human-friendly description of the runtime and its capabilities.", |
740 | 747 | "example": "A runner capable of building Docker images and runner Docker containers.", |
741 | 748 | "type": "string" |
742 | 749 | }, |
|
817 | 824 | ], |
818 | 825 | "type": "object" |
819 | 826 | }, |
| 827 | + "UpdateUserPayload": { |
| 828 | + "description": "Properties to update a Instance User. All fields are optional.", |
| 829 | + "properties": { |
| 830 | + "email": { |
| 831 | + "description": "A user chosen email to distinguish multiple STACKIT Git instance Users.", |
| 832 | + "format": "email", |
| 833 | + "maxLength": 254, |
| 834 | + "type": "string" |
| 835 | + }, |
| 836 | + "name": { |
| 837 | + "description": "Name of the user.", |
| 838 | + "maxLength": 32, |
| 839 | + "type": "string" |
| 840 | + }, |
| 841 | + "password": { |
| 842 | + "description": "A user password to allow user/pass instance login.", |
| 843 | + "format": "password", |
| 844 | + "maxLength": 64, |
| 845 | + "type": "string" |
| 846 | + } |
| 847 | + }, |
| 848 | + "type": "object" |
| 849 | + }, |
820 | 850 | "User": { |
821 | 851 | "description": "Describes a STACKIT Git instance User.", |
822 | 852 | "properties": { |
|
848 | 878 | "name" |
849 | 879 | ], |
850 | 880 | "type": "object" |
| 881 | + }, |
| 882 | + "labels": { |
| 883 | + "additionalProperties": { |
| 884 | + "maxLength": 63, |
| 885 | + "pattern": "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])*$", |
| 886 | + "type": "string" |
| 887 | + }, |
| 888 | + "description": "Object that represents the labels of an object. Regex for keys: `^(?=.{1,63}$)([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]$`. Regex for values: `^(?=.{0,63}$)(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])*$`. The `stackit-` prefix is reserved and cannot be used for Keys.", |
| 889 | + "example": { |
| 890 | + "my-stage": "qa", |
| 891 | + "responsible": "team-red" |
| 892 | + }, |
| 893 | + "maxProperties": 64, |
| 894 | + "type": "object" |
851 | 895 | } |
852 | 896 | } |
853 | 897 | }, |
|
1805 | 1849 | }, |
1806 | 1850 | "/v1beta/projects/{projectId}/instances/{instanceId}/users": { |
1807 | 1851 | "get": { |
1808 | | - "description": "Lists all STACKIT Git Users within an instances.\n", |
| 1852 | + "description": "Lists STACKIT Git Users within an instance. Supports pagination via the\noptional `page` query parameter. Each page returns up to 50 users.\n", |
1809 | 1853 | "operationId": "GetUsers", |
| 1854 | + "parameters": [ |
| 1855 | + { |
| 1856 | + "description": "Page number for pagination (1-indexed). Each page contains up to 50 users.", |
| 1857 | + "in": "query", |
| 1858 | + "name": "page", |
| 1859 | + "schema": { |
| 1860 | + "default": 1, |
| 1861 | + "minimum": 1, |
| 1862 | + "type": "integer" |
| 1863 | + } |
| 1864 | + } |
| 1865 | + ], |
1810 | 1866 | "responses": { |
1811 | 1867 | "200": { |
1812 | 1868 | "content": { |
|
2041 | 2097 | } |
2042 | 2098 | ], |
2043 | 2099 | "patch": { |
2044 | | - "description": "Patches the Instance User.\n", |
2045 | | - "operationId": "PatchUser", |
| 2100 | + "description": "Updates the Instance User.\n", |
| 2101 | + "operationId": "UpdateUser", |
2046 | 2102 | "requestBody": { |
2047 | 2103 | "content": { |
2048 | 2104 | "application/json": { |
|
2052 | 2108 | "password": "my-new-password" |
2053 | 2109 | }, |
2054 | 2110 | "schema": { |
2055 | | - "$ref": "#/components/schemas/PatchUserPayload" |
| 2111 | + "$ref": "#/components/schemas/UpdateUserPayload" |
2056 | 2112 | } |
2057 | 2113 | } |
2058 | 2114 | }, |
|
2099 | 2155 | "description": "Internal server error." |
2100 | 2156 | } |
2101 | 2157 | }, |
2102 | | - "summary": "Patch Instance User.", |
| 2158 | + "summary": "Update Instance User.", |
2103 | 2159 | "x-stackit-authorization": { |
2104 | 2160 | "actions": [ |
2105 | 2161 | "git.instance.update" |
|
0 commit comments