github.com/goharbor/go-client@v0.210.0/api/v2.0/swagger.yaml (about) 1 swagger: '2.0' 2 info: 3 title: Harbor API 4 description: These APIs provide services for manipulating Harbor project. 5 version: '2.0' 6 host: localhost 7 schemes: 8 - http 9 - https 10 basePath: /api/v2.0 11 produces: 12 - application/json 13 consumes: 14 - application/json 15 securityDefinitions: 16 basic: 17 type: basic 18 security: 19 - basic: [] 20 - {} 21 paths: 22 /health: 23 get: 24 summary: Check the status of Harbor components 25 description: Check the status of Harbor components. This path does not require authentication. 26 tags: 27 - health 28 operationId: getHealth 29 parameters: 30 - $ref: '#/parameters/requestId' 31 responses: 32 '200': 33 description: The health status of Harbor components 34 schema: 35 $ref: '#/definitions/OverallHealthStatus' 36 '500': 37 $ref: '#/responses/500' 38 /search: 39 get: 40 summary: 'Search for projects and repositories' 41 description: |- 42 The Search endpoint returns information about the projects and repositories offered at public status or related to the current logged in user. The response includes the project and repository list in a proper display order. 43 parameters: 44 - $ref: '#/parameters/requestId' 45 - name: q 46 in: query 47 description: Search parameter for project and repository name. 48 required: true 49 type: string 50 tags: 51 - search 52 operationId: search 53 responses: 54 '200': 55 description: An array of search results 56 schema: 57 $ref: '#/definitions/Search' 58 '500': 59 $ref: '#/responses/500' 60 /statistics: 61 get: 62 summary: Get the statistic information about the projects and repositories 63 description: Get the statistic information about the projects and repositories 64 tags: 65 - statistic 66 operationId: getStatistic 67 parameters: 68 - $ref: '#/parameters/requestId' 69 responses: 70 '200': 71 description: The statistic information 72 schema: 73 $ref: '#/definitions/Statistic' 74 '401': 75 $ref: '#/responses/401' 76 '500': 77 $ref: '#/responses/500' 78 /ldap/ping: 79 post: 80 operationId: pingLdap 81 summary: Ping available ldap service. 82 description: | 83 This endpoint ping the available ldap service for test related configuration parameters. 84 parameters: 85 - $ref: '#/parameters/requestId' 86 - name: ldapconf 87 in: body 88 description: 'ldap configuration. support input ldap service configuration. If it is a empty request, will load current configuration from the system.' 89 required: false 90 schema: 91 $ref: '#/definitions/LdapConf' 92 tags: 93 - Ldap 94 responses: 95 '200': 96 description: Ping ldap service successfully. 97 schema: 98 $ref: '#/definitions/LdapPingResult' 99 '400': 100 $ref: '#/responses/400' 101 '401': 102 $ref: '#/responses/401' 103 '403': 104 $ref: '#/responses/403' 105 '500': 106 $ref: '#/responses/500' 107 /ldap/users/search: 108 get: 109 operationId: searchLdapUser 110 summary: Search available ldap users. 111 description: | 112 This endpoint searches the available ldap users based on related configuration parameters. Support searched by input ladp configuration, load configuration from the system and specific filter. 113 parameters: 114 - $ref: '#/parameters/requestId' 115 - name: username 116 in: query 117 type: string 118 required: false 119 description: Registered user ID 120 tags: 121 - Ldap 122 responses: 123 '200': 124 description: Search ldap users successfully. 125 schema: 126 type: array 127 items: 128 $ref: '#/definitions/LdapUser' 129 '400': 130 $ref: '#/responses/400' 131 '401': 132 $ref: '#/responses/401' 133 '403': 134 $ref: '#/responses/403' 135 '500': 136 $ref: '#/responses/500' 137 /ldap/users/import: 138 post: 139 operationId: importLdapUser 140 summary: Import selected available ldap users. 141 description: | 142 This endpoint adds the selected available ldap users to harbor based on related configuration parameters from the system. System will try to guess the user email address and realname, add to harbor user information. If have errors when import user, will return the list of importing failed uid and the failed reason. 143 parameters: 144 - $ref: '#/parameters/requestId' 145 - name: uid_list 146 in: body 147 description: The uid listed for importing. This list will check users validity of ldap service based on configuration from the system. 148 required: true 149 schema: 150 $ref: '#/definitions/LdapImportUsers' 151 tags: 152 - Ldap 153 responses: 154 '200': 155 description: Add ldap users successfully. 156 '400': 157 $ref: '#/responses/400' 158 '401': 159 $ref: '#/responses/401' 160 '403': 161 $ref: '#/responses/403' 162 '404': 163 description: Failed import some users. 164 schema: 165 type: array 166 items: 167 $ref: '#/definitions/LdapFailedImportUser' 168 '500': 169 $ref: '#/responses/500' 170 /ldap/groups/search: 171 get: 172 summary: Search available ldap groups. 173 operationId: searchLdapGroup 174 description: | 175 This endpoint searches the available ldap groups based on related configuration parameters. support to search by groupname or groupdn. 176 parameters: 177 - $ref: '#/parameters/requestId' 178 - name: groupname 179 in: query 180 type: string 181 required: false 182 description: Ldap group name 183 - name: groupdn 184 in: query 185 type: string 186 required: false 187 description: The LDAP group DN 188 tags: 189 - Ldap 190 responses: 191 '200': 192 description: Search ldap group successfully. 193 schema: 194 type: array 195 items: 196 $ref: '#/definitions/UserGroup' 197 '400': 198 $ref: '#/responses/400' 199 '401': 200 $ref: '#/responses/401' 201 '403': 202 $ref: '#/responses/403' 203 '500': 204 $ref: '#/responses/500' 205 /internalconfig: 206 get: 207 summary: Get internal configurations. 208 operationId: getInternalconfig 209 description: | 210 This endpoint is for retrieving system configurations that only provides for internal api call. 211 tags: 212 - configure 213 parameters: 214 - $ref: '#/parameters/requestId' 215 responses: 216 '200': 217 description: Get system configurations successfully. The response body is a map. 218 schema: 219 $ref: '#/definitions/InternalConfigurationsResponse' 220 '401': 221 description: User need to log in first. 222 '403': 223 description: User does not have permission of admin role. 224 '500': 225 description: Unexpected internal errors. 226 /configurations: 227 get: 228 summary: Get system configurations. 229 operationId: getConfigurations 230 description: | 231 This endpoint is for retrieving system configurations that only provides for admin user. 232 tags: 233 - configure 234 parameters: 235 - $ref: '#/parameters/requestId' 236 responses: 237 '200': 238 description: Get system configurations successfully. The response body is a map. 239 schema: 240 $ref: '#/definitions/ConfigurationsResponse' 241 '401': 242 description: User need to log in first. 243 '403': 244 description: User does not have permission of admin role. 245 '500': 246 description: Unexpected internal errors. 247 put: 248 summary: Modify system configurations. 249 operationId: updateConfigurations 250 description: | 251 This endpoint is for modifying system configurations that only provides for admin user. 252 tags: 253 - configure 254 parameters: 255 - $ref: '#/parameters/requestId' 256 - name: configurations 257 in: body 258 required: true 259 schema: 260 $ref: '#/definitions/Configurations' 261 description: 'The configuration map can contain a subset of the attributes of the schema, which are to be updated.' 262 responses: 263 '200': 264 description: Modify system configurations successfully. 265 '401': 266 description: User need to log in first. 267 '403': 268 description: User does not have permission of admin role. 269 '500': 270 description: Unexpected internal errors. 271 /projects: 272 get: 273 summary: List projects 274 description: This endpoint returns projects created by Harbor. 275 tags: 276 - project 277 operationId: listProjects 278 parameters: 279 - $ref: '#/parameters/requestId' 280 - $ref: '#/parameters/query' 281 - $ref: '#/parameters/page' 282 - $ref: '#/parameters/pageSize' 283 - $ref: '#/parameters/sort' 284 - name: name 285 in: query 286 description: The name of project. 287 required: false 288 type: string 289 - name: public 290 in: query 291 description: The project is public or private. 292 required: false 293 type: boolean 294 - name: owner 295 in: query 296 description: The name of project owner. 297 required: false 298 type: string 299 - name: with_detail 300 in: query 301 description: Bool value indicating whether return detailed information of the project 302 type: boolean 303 required: false 304 default: true 305 responses: 306 '200': 307 description: Return all matched projects. 308 schema: 309 type: array 310 items: 311 $ref: '#/definitions/Project' 312 headers: 313 X-Total-Count: 314 description: The total count of projects 315 type: integer 316 Link: 317 description: Link refers to the previous page and next page 318 type: string 319 '401': 320 $ref: '#/responses/401' 321 '500': 322 $ref: '#/responses/500' 323 head: 324 summary: Check if the project name user provided already exists. 325 description: This endpoint is used to check if the project name provided already exist. 326 tags: 327 - project 328 operationId: headProject 329 parameters: 330 - $ref: '#/parameters/requestId' 331 - name: project_name 332 in: query 333 description: Project name for checking exists. 334 required: true 335 type: string 336 responses: 337 '200': 338 $ref: '#/responses/200' 339 '404': 340 $ref: '#/responses/404' 341 '500': 342 $ref: '#/responses/500' 343 post: 344 summary: Create a new project. 345 description: This endpoint is for user to create a new project. 346 tags: 347 - project 348 operationId: createProject 349 parameters: 350 - $ref: '#/parameters/requestId' 351 - $ref: '#/parameters/resourceNameInLocation' 352 - name: project 353 in: body 354 description: New created project. 355 required: true 356 schema: 357 $ref: '#/definitions/ProjectReq' 358 responses: 359 '201': 360 $ref: '#/responses/201' 361 '400': 362 $ref: '#/responses/400' 363 '401': 364 $ref: '#/responses/401' 365 '409': 366 $ref: '#/responses/409' 367 '500': 368 $ref: '#/responses/500' 369 '/projects/{project_name_or_id}': 370 get: 371 summary: Return specific project detail information 372 description: This endpoint returns specific project information by project ID. 373 tags: 374 - project 375 operationId: getProject 376 parameters: 377 - $ref: '#/parameters/requestId' 378 - $ref: '#/parameters/isResourceName' 379 - $ref: '#/parameters/projectNameOrId' 380 responses: 381 '200': 382 description: Return matched project information. 383 schema: 384 $ref: '#/definitions/Project' 385 '401': 386 $ref: '#/responses/401' 387 '500': 388 $ref: '#/responses/500' 389 put: 390 summary: Update properties for a selected project. 391 description: This endpoint is aimed to update the properties of a project. 392 tags: 393 - project 394 operationId: updateProject 395 parameters: 396 - $ref: '#/parameters/requestId' 397 - $ref: '#/parameters/isResourceName' 398 - $ref: '#/parameters/projectNameOrId' 399 - name: project 400 in: body 401 required: true 402 schema: 403 $ref: '#/definitions/ProjectReq' 404 description: Updates of project. 405 responses: 406 '200': 407 $ref: '#/responses/200' 408 '400': 409 $ref: '#/responses/400' 410 '401': 411 $ref: '#/responses/401' 412 '403': 413 $ref: '#/responses/403' 414 '404': 415 $ref: '#/responses/404' 416 '500': 417 $ref: '#/responses/500' 418 delete: 419 summary: Delete project by projectID 420 description: This endpoint is aimed to delete project by project ID. 421 tags: 422 - project 423 operationId: deleteProject 424 parameters: 425 - $ref: '#/parameters/requestId' 426 - $ref: '#/parameters/isResourceName' 427 - $ref: '#/parameters/projectNameOrId' 428 responses: 429 '200': 430 $ref: '#/responses/200' 431 '400': 432 $ref: '#/responses/400' 433 '403': 434 $ref: '#/responses/403' 435 '404': 436 $ref: '#/responses/404' 437 '412': 438 $ref: '#/responses/412' 439 '500': 440 $ref: '#/responses/500' 441 /projects/{project_name_or_id}/_deletable: 442 get: 443 summary: Get the deletable status of the project 444 description: Get the deletable status of the project 445 tags: 446 - project 447 operationId: getProjectDeletable 448 parameters: 449 - $ref: '#/parameters/requestId' 450 - $ref: '#/parameters/isResourceName' 451 - $ref: '#/parameters/projectNameOrId' 452 responses: 453 '200': 454 description: Return deletable status of the project. 455 schema: 456 $ref: '#/definitions/ProjectDeletable' 457 '401': 458 $ref: '#/responses/401' 459 '403': 460 $ref: '#/responses/403' 461 '404': 462 $ref: '#/responses/404' 463 '500': 464 $ref: '#/responses/500' 465 '/projects/{project_name_or_id}/summary': 466 get: 467 summary: Get summary of the project. 468 description: Get summary of the project. 469 tags: 470 - project 471 operationId: getProjectSummary 472 parameters: 473 - $ref: '#/parameters/requestId' 474 - $ref: '#/parameters/isResourceName' 475 - $ref: '#/parameters/projectNameOrId' 476 responses: 477 '200': 478 description: Get summary of the project successfully. 479 schema: 480 $ref: '#/definitions/ProjectSummary' 481 '400': 482 $ref: '#/responses/400' 483 '401': 484 $ref: '#/responses/401' 485 '403': 486 $ref: '#/responses/403' 487 '404': 488 $ref: '#/responses/404' 489 '500': 490 $ref: '#/responses/500' 491 '/projects/{project_name_or_id}/members': 492 get: 493 summary: Get all project member information 494 description: Get all project member information 495 operationId: listProjectMembers 496 parameters: 497 - $ref: '#/parameters/requestId' 498 - $ref: '#/parameters/isResourceName' 499 - $ref: '#/parameters/projectNameOrId' 500 - $ref: '#/parameters/page' 501 - $ref: '#/parameters/pageSize' 502 - name: entityname 503 in: query 504 type: string 505 description: The entity name to search. 506 tags: 507 - member 508 responses: 509 '200': 510 description: Get project members successfully. 511 headers: 512 X-Total-Count: 513 description: The total count of members 514 type: integer 515 Link: 516 description: Link refers to the previous page and next page 517 type: string 518 schema: 519 type: array 520 items: 521 $ref: '#/definitions/ProjectMemberEntity' 522 523 '400': 524 $ref: '#/responses/400' 525 '401': 526 $ref: '#/responses/401' 527 '403': 528 $ref: '#/responses/403' 529 '404': 530 $ref: '#/responses/404' 531 '500': 532 $ref: '#/responses/500' 533 post: 534 summary: Create project member 535 operationId: createProjectMember 536 description: 'Create project member relationship, the member can be one of the user_member and group_member, The user_member need to specify user_id or username. If the user already exist in harbor DB, specify the user_id, If does not exist in harbor DB, it will SearchAndOnBoard the user. The group_member need to specify id or ldap_group_dn. If the group already exist in harbor DB. specify the user group''s id, If does not exist, it will SearchAndOnBoard the group. ' 537 tags: 538 - member 539 parameters: 540 - $ref: '#/parameters/requestId' 541 - $ref: '#/parameters/isResourceName' 542 - $ref: '#/parameters/projectNameOrId' 543 - name: project_member 544 in: body 545 schema: 546 $ref: '#/definitions/ProjectMember' 547 responses: 548 '201': 549 description: Project member created successfully. 550 headers: 551 Location: 552 type: string 553 description: The URL of the created resource 554 '400': 555 $ref: '#/responses/400' 556 '401': 557 $ref: '#/responses/401' 558 '403': 559 $ref: '#/responses/403' 560 '409': 561 $ref: '#/responses/409' 562 '500': 563 $ref: '#/responses/500' 564 '/projects/{project_name_or_id}/members/{mid}': 565 get: 566 summary: Get the project member information 567 description: Get the project member information 568 operationId: getProjectMember 569 tags: 570 - member 571 parameters: 572 - $ref: '#/parameters/requestId' 573 - $ref: '#/parameters/isResourceName' 574 - $ref: '#/parameters/projectNameOrId' 575 - name: mid 576 in: path 577 type: integer 578 format: int64 579 required: true 580 description: The member ID 581 responses: 582 '200': 583 description: Project member retrieved successfully. 584 schema: 585 $ref: '#/definitions/ProjectMemberEntity' 586 '400': 587 $ref: '#/responses/400' 588 '401': 589 $ref: '#/responses/401' 590 '403': 591 $ref: '#/responses/403' 592 '404': 593 $ref: '#/responses/404' 594 '500': 595 $ref: '#/responses/500' 596 put: 597 summary: Update project member 598 description: Update project member relationship 599 operationId: updateProjectMember 600 tags: 601 - member 602 parameters: 603 - $ref: '#/parameters/requestId' 604 - $ref: '#/parameters/isResourceName' 605 - $ref: '#/parameters/projectNameOrId' 606 - name: mid 607 in: path 608 type: integer 609 format: int64 610 required: true 611 description: Member ID. 612 - name: role 613 in: body 614 schema: 615 $ref: '#/definitions/RoleRequest' 616 responses: 617 '200': 618 $ref: '#/responses/200' 619 '400': 620 $ref: '#/responses/400' 621 '401': 622 $ref: '#/responses/401' 623 '403': 624 $ref: '#/responses/403' 625 '404': 626 $ref: '#/responses/404' 627 '500': 628 $ref: '#/responses/500' 629 delete: 630 summary: Delete project member 631 operationId: deleteProjectMember 632 tags: 633 - member 634 parameters: 635 - $ref: '#/parameters/requestId' 636 - $ref: '#/parameters/isResourceName' 637 - $ref: '#/parameters/projectNameOrId' 638 - name: mid 639 in: path 640 type: integer 641 format: int64 642 required: true 643 description: Member ID. 644 responses: 645 '200': 646 $ref: '#/responses/200' 647 '400': 648 $ref: '#/responses/400' 649 '401': 650 $ref: '#/responses/401' 651 '403': 652 $ref: '#/responses/403' 653 '500': 654 $ref: '#/responses/500' 655 '/projects/{project_name_or_id}/metadatas/': 656 get: 657 summary: Get the metadata of the specific project 658 description: Get the metadata of the specific project 659 operationId: listProjectMetadatas 660 parameters: 661 - $ref: '#/parameters/requestId' 662 - $ref: '#/parameters/isResourceName' 663 - $ref: '#/parameters/projectNameOrId' 664 tags: 665 - projectMetadata 666 responses: 667 '200': 668 description: Success 669 schema: 670 type: object 671 additionalProperties: 672 type: string 673 '400': 674 $ref: '#/responses/400' 675 '401': 676 $ref: '#/responses/401' 677 '403': 678 $ref: '#/responses/403' 679 '404': 680 $ref: '#/responses/404' 681 '500': 682 $ref: '#/responses/500' 683 post: 684 summary: Add metadata for the specific project 685 operationId: addProjectMetadatas 686 description: Add metadata for the specific project 687 tags: 688 - projectMetadata 689 parameters: 690 - $ref: '#/parameters/requestId' 691 - $ref: '#/parameters/isResourceName' 692 - $ref: '#/parameters/projectNameOrId' 693 - name: metadata 694 in: body 695 schema: 696 type: object 697 additionalProperties: 698 type: string 699 responses: 700 '200': 701 $ref: '#/responses/200' 702 '400': 703 $ref: '#/responses/400' 704 '401': 705 $ref: '#/responses/401' 706 '403': 707 $ref: '#/responses/403' 708 '404': 709 $ref: '#/responses/404' 710 '409': 711 $ref: '#/responses/409' 712 '500': 713 $ref: '#/responses/500' 714 '/projects/{project_name_or_id}/metadatas/{meta_name}': 715 get: 716 summary: Get the specific metadata of the specific project 717 description: Get the specific metadata of the specific project 718 operationId: getProjectMetadata 719 parameters: 720 - $ref: '#/parameters/requestId' 721 - $ref: '#/parameters/isResourceName' 722 - $ref: '#/parameters/projectNameOrId' 723 - name: meta_name 724 in: path 725 description: The name of metadata. 726 required: true 727 type: string 728 tags: 729 - projectMetadata 730 responses: 731 '200': 732 description: Success 733 schema: 734 type: object 735 additionalProperties: 736 type: string 737 '400': 738 $ref: '#/responses/400' 739 '401': 740 $ref: '#/responses/401' 741 '403': 742 $ref: '#/responses/403' 743 '404': 744 $ref: '#/responses/404' 745 '500': 746 $ref: '#/responses/500' 747 put: 748 summary: Update the specific metadata for the specific project 749 description: Update the specific metadata for the specific project 750 operationId: updateProjectMetadata 751 tags: 752 - projectMetadata 753 parameters: 754 - $ref: '#/parameters/requestId' 755 - $ref: '#/parameters/isResourceName' 756 - $ref: '#/parameters/projectNameOrId' 757 - name: meta_name 758 in: path 759 description: The name of metadata. 760 required: true 761 type: string 762 - name: metadata 763 in: body 764 schema: 765 type: object 766 additionalProperties: 767 type: string 768 responses: 769 '200': 770 $ref: '#/responses/200' 771 '400': 772 $ref: '#/responses/400' 773 '401': 774 $ref: '#/responses/401' 775 '403': 776 $ref: '#/responses/403' 777 '404': 778 $ref: '#/responses/404' 779 '409': 780 $ref: '#/responses/409' 781 '500': 782 $ref: '#/responses/500' 783 delete: 784 summary: Delete the specific metadata for the specific project 785 description: Delete the specific metadata for the specific project 786 operationId: deleteProjectMetadata 787 tags: 788 - projectMetadata 789 parameters: 790 - $ref: '#/parameters/requestId' 791 - $ref: '#/parameters/isResourceName' 792 - $ref: '#/parameters/projectNameOrId' 793 - name: meta_name 794 in: path 795 description: The name of metadata. 796 required: true 797 type: string 798 responses: 799 '200': 800 $ref: '#/responses/200' 801 '400': 802 $ref: '#/responses/400' 803 '401': 804 $ref: '#/responses/401' 805 '403': 806 $ref: '#/responses/403' 807 '404': 808 $ref: '#/responses/404' 809 '409': 810 $ref: '#/responses/409' 811 '500': 812 $ref: '#/responses/500' 813 /repositories: 814 get: 815 summary: List all authorized repositories 816 description: List all authorized repositories 817 tags: 818 - repository 819 operationId: listAllRepositories 820 parameters: 821 - $ref: '#/parameters/requestId' 822 - $ref: '#/parameters/query' 823 - $ref: '#/parameters/sort' 824 - $ref: '#/parameters/page' 825 - $ref: '#/parameters/pageSize' 826 responses: 827 '200': 828 description: Success 829 headers: 830 X-Total-Count: 831 description: The total count of repositories 832 type: integer 833 Link: 834 description: Link refers to the previous page and next page 835 type: string 836 schema: 837 type: array 838 items: 839 $ref: '#/definitions/Repository' 840 '400': 841 $ref: '#/responses/400' 842 '500': 843 $ref: '#/responses/500' 844 /projects/{project_name}/repositories: 845 get: 846 summary: List repositories 847 description: List repositories of the specified project 848 tags: 849 - repository 850 operationId: listRepositories 851 parameters: 852 - $ref: '#/parameters/requestId' 853 - $ref: '#/parameters/projectName' 854 - $ref: '#/parameters/query' 855 - $ref: '#/parameters/sort' 856 - $ref: '#/parameters/page' 857 - $ref: '#/parameters/pageSize' 858 responses: 859 '200': 860 description: Success 861 headers: 862 X-Total-Count: 863 description: The total count of repositories 864 type: integer 865 Link: 866 description: Link refers to the previous page and next page 867 type: string 868 schema: 869 type: array 870 items: 871 $ref: '#/definitions/Repository' 872 '400': 873 $ref: '#/responses/400' 874 '401': 875 $ref: '#/responses/401' 876 '403': 877 $ref: '#/responses/403' 878 '404': 879 $ref: '#/responses/404' 880 '500': 881 $ref: '#/responses/500' 882 /projects/{project_name}/repositories/{repository_name}: 883 get: 884 summary: Get repository 885 description: Get the repository specified by name 886 tags: 887 - repository 888 operationId: getRepository 889 parameters: 890 - $ref: '#/parameters/requestId' 891 - $ref: '#/parameters/projectName' 892 - $ref: '#/parameters/repositoryName' 893 responses: 894 '200': 895 description: Success 896 schema: 897 $ref: '#/definitions/Repository' 898 '400': 899 $ref: '#/responses/400' 900 '401': 901 $ref: '#/responses/401' 902 '403': 903 $ref: '#/responses/403' 904 '404': 905 $ref: '#/responses/404' 906 '500': 907 $ref: '#/responses/500' 908 put: 909 summary: Update repository 910 description: Update the repository specified by name 911 tags: 912 - repository 913 operationId: updateRepository 914 parameters: 915 - $ref: '#/parameters/requestId' 916 - $ref: '#/parameters/projectName' 917 - $ref: '#/parameters/repositoryName' 918 - name: repository 919 in: body 920 description: The JSON object of repository. 921 required: true 922 schema: 923 $ref: '#/definitions/Repository' 924 responses: 925 '200': 926 $ref: '#/responses/200' 927 '400': 928 $ref: '#/responses/400' 929 '401': 930 $ref: '#/responses/401' 931 '403': 932 $ref: '#/responses/403' 933 '404': 934 $ref: '#/responses/404' 935 '500': 936 $ref: '#/responses/500' 937 delete: 938 summary: Delete repository 939 description: Delete the repository specified by name 940 tags: 941 - repository 942 operationId: deleteRepository 943 parameters: 944 - $ref: '#/parameters/requestId' 945 - $ref: '#/parameters/projectName' 946 - $ref: '#/parameters/repositoryName' 947 responses: 948 '200': 949 $ref: '#/responses/200' 950 '400': 951 $ref: '#/responses/400' 952 '401': 953 $ref: '#/responses/401' 954 '403': 955 $ref: '#/responses/403' 956 '404': 957 $ref: '#/responses/404' 958 '500': 959 $ref: '#/responses/500' 960 /projects/{project_name}/repositories/{repository_name}/artifacts: 961 get: 962 summary: List artifacts 963 description: List artifacts under the specific project and repository. Except the basic properties, the other supported queries in "q" includes "tags=*" to list only tagged artifacts, "tags=nil" to list only untagged artifacts, "tags=~v" to list artifacts whose tag fuzzy matches "v", "tags=v" to list artifact whose tag exactly matches "v", "labels=(id1, id2)" to list artifacts that both labels with id1 and id2 are added to 964 tags: 965 - artifact 966 operationId: listArtifacts 967 parameters: 968 - $ref: '#/parameters/requestId' 969 - $ref: '#/parameters/projectName' 970 - $ref: '#/parameters/repositoryName' 971 - $ref: '#/parameters/query' 972 - $ref: '#/parameters/sort' 973 - $ref: '#/parameters/page' 974 - $ref: '#/parameters/pageSize' 975 - $ref: '#/parameters/acceptVulnerabilities' 976 - name: with_tag 977 in: query 978 description: Specify whether the tags are included inside the returning artifacts 979 type: boolean 980 required: false 981 default: true 982 - name: with_label 983 in: query 984 description: Specify whether the labels are included inside the returning artifacts 985 type: boolean 986 required: false 987 default: false 988 - name: with_scan_overview 989 in: query 990 description: Specify whether the scan overview is included inside the returning artifacts 991 type: boolean 992 required: false 993 default: false 994 - name: with_signature 995 in: query 996 description: Specify whether the signature is included inside the tags of the returning artifacts. Only works when setting "with_tag=true" 997 type: boolean 998 required: false 999 default: false 1000 - name: with_immutable_status 1001 in: query 1002 description: Specify whether the immutable status is included inside the tags of the returning artifacts. Only works when setting "with_immutable_status=true" 1003 type: boolean 1004 required: false 1005 default: false 1006 - name: with_accessory 1007 in: query 1008 description: Specify whether the accessories are included of the returning artifacts. Only works when setting "with_accessory=true" 1009 type: boolean 1010 required: false 1011 default: false 1012 responses: 1013 '200': 1014 description: Success 1015 headers: 1016 X-Total-Count: 1017 description: The total count of artifacts 1018 type: integer 1019 Link: 1020 description: Link refers to the previous page and next page 1021 type: string 1022 schema: 1023 type: array 1024 items: 1025 $ref: '#/definitions/Artifact' 1026 '400': 1027 $ref: '#/responses/400' 1028 '401': 1029 $ref: '#/responses/401' 1030 '403': 1031 $ref: '#/responses/403' 1032 '404': 1033 $ref: '#/responses/404' 1034 '500': 1035 $ref: '#/responses/500' 1036 post: 1037 summary: Copy artifact 1038 description: Copy the artifact specified in the "from" parameter to the repository. 1039 tags: 1040 - artifact 1041 operationId: CopyArtifact 1042 parameters: 1043 - $ref: '#/parameters/requestId' 1044 - $ref: '#/parameters/projectName' 1045 - $ref: '#/parameters/repositoryName' 1046 - name: from 1047 in: query 1048 description: The artifact from which the new artifact is copied from, the format should be "project/repository:tag" or "project/repository@digest". 1049 type: string 1050 required: true 1051 responses: 1052 '201': 1053 $ref: '#/responses/201' 1054 '400': 1055 $ref: '#/responses/400' 1056 '401': 1057 $ref: '#/responses/401' 1058 '403': 1059 $ref: '#/responses/403' 1060 '404': 1061 $ref: '#/responses/404' 1062 '405': 1063 $ref: '#/responses/405' 1064 '500': 1065 $ref: '#/responses/500' 1066 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}: 1067 get: 1068 summary: Get the specific artifact 1069 description: Get the artifact specified by the reference under the project and repository. The reference can be digest or tag. 1070 tags: 1071 - artifact 1072 operationId: getArtifact 1073 parameters: 1074 - $ref: '#/parameters/requestId' 1075 - $ref: '#/parameters/projectName' 1076 - $ref: '#/parameters/repositoryName' 1077 - $ref: '#/parameters/reference' 1078 - $ref: '#/parameters/page' 1079 - $ref: '#/parameters/pageSize' 1080 - $ref: '#/parameters/acceptVulnerabilities' 1081 - name: with_tag 1082 in: query 1083 description: Specify whether the tags are inclued inside the returning artifacts 1084 type: boolean 1085 required: false 1086 default: true 1087 - name: with_label 1088 in: query 1089 description: Specify whether the labels are inclued inside the returning artifacts 1090 type: boolean 1091 required: false 1092 default: false 1093 - name: with_scan_overview 1094 in: query 1095 description: Specify whether the scan overview is inclued inside the returning artifacts 1096 type: boolean 1097 required: false 1098 default: false 1099 - name: with_accessory 1100 in: query 1101 description: Specify whether the accessories are included of the returning artifacts. 1102 type: boolean 1103 required: false 1104 default: false 1105 # should be in tag level 1106 - name: with_signature 1107 in: query 1108 description: Specify whether the signature is inclued inside the returning artifacts 1109 type: boolean 1110 required: false 1111 default: false 1112 - name: with_immutable_status 1113 in: query 1114 description: Specify whether the immutable status is inclued inside the tags of the returning artifacts. 1115 type: boolean 1116 required: false 1117 default: false 1118 responses: 1119 '200': 1120 description: Success 1121 schema: 1122 $ref: '#/definitions/Artifact' 1123 '400': 1124 $ref: '#/responses/400' 1125 '401': 1126 $ref: '#/responses/401' 1127 '403': 1128 $ref: '#/responses/403' 1129 '404': 1130 $ref: '#/responses/404' 1131 '500': 1132 $ref: '#/responses/500' 1133 delete: 1134 summary: Delete the specific artifact 1135 description: Delete the artifact specified by the reference under the project and repository. The reference can be digest or tag 1136 tags: 1137 - artifact 1138 operationId: deleteArtifact 1139 parameters: 1140 - $ref: '#/parameters/requestId' 1141 - $ref: '#/parameters/projectName' 1142 - $ref: '#/parameters/repositoryName' 1143 - $ref: '#/parameters/reference' 1144 responses: 1145 '200': 1146 $ref: '#/responses/200' 1147 '401': 1148 $ref: '#/responses/401' 1149 '403': 1150 $ref: '#/responses/403' 1151 '404': 1152 $ref: '#/responses/404' 1153 '500': 1154 $ref: '#/responses/500' 1155 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/scan: 1156 post: 1157 summary: Scan the artifact 1158 description: Scan the specified artifact 1159 tags: 1160 - scan 1161 operationId: scanArtifact 1162 parameters: 1163 - $ref: '#/parameters/requestId' 1164 - $ref: '#/parameters/projectName' 1165 - $ref: '#/parameters/repositoryName' 1166 - $ref: '#/parameters/reference' 1167 responses: 1168 '202': 1169 $ref: '#/responses/202' 1170 '400': 1171 $ref: '#/responses/400' 1172 '401': 1173 $ref: '#/responses/401' 1174 '403': 1175 $ref: '#/responses/403' 1176 '404': 1177 $ref: '#/responses/404' 1178 '500': 1179 $ref: '#/responses/500' 1180 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/scan/stop: 1181 post: 1182 summary: Cancelling a scan job for a particular artifact 1183 description: Cancelling a scan job for a particular artifact 1184 tags: 1185 - scan 1186 operationId: stopScanArtifact 1187 parameters: 1188 - $ref: '#/parameters/requestId' 1189 - $ref: '#/parameters/projectName' 1190 - $ref: '#/parameters/repositoryName' 1191 - $ref: '#/parameters/reference' 1192 responses: 1193 '202': 1194 $ref: '#/responses/202' 1195 '400': 1196 $ref: '#/responses/400' 1197 '401': 1198 $ref: '#/responses/401' 1199 '403': 1200 $ref: '#/responses/403' 1201 '404': 1202 $ref: '#/responses/404' 1203 '500': 1204 $ref: '#/responses/500' 1205 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/scan/{report_id}/log: 1206 get: 1207 summary: Get the log of the scan report 1208 description: Get the log of the scan report 1209 tags: 1210 - scan 1211 operationId: getReportLog 1212 produces: 1213 - text/plain 1214 parameters: 1215 - $ref: '#/parameters/requestId' 1216 - $ref: '#/parameters/projectName' 1217 - $ref: '#/parameters/repositoryName' 1218 - $ref: '#/parameters/reference' 1219 - name: report_id 1220 type: string 1221 in: path 1222 required: true 1223 description: The report id to get the log 1224 responses: 1225 '200': 1226 description: Successfully get scan log file 1227 schema: 1228 type: string 1229 '401': 1230 $ref: '#/responses/401' 1231 '403': 1232 $ref: '#/responses/403' 1233 '404': 1234 $ref: '#/responses/404' 1235 '500': 1236 $ref: '#/responses/500' 1237 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/tags: 1238 post: 1239 summary: Create tag 1240 description: Create a tag for the specified artifact 1241 tags: 1242 - artifact 1243 operationId: createTag 1244 parameters: 1245 - $ref: '#/parameters/requestId' 1246 - $ref: '#/parameters/projectName' 1247 - $ref: '#/parameters/repositoryName' 1248 - $ref: '#/parameters/reference' 1249 - name: tag 1250 in: body 1251 description: The JSON object of tag. 1252 required: true 1253 schema: 1254 $ref: '#/definitions/Tag' 1255 responses: 1256 '201': 1257 $ref: '#/responses/201' 1258 '400': 1259 $ref: '#/responses/400' 1260 '401': 1261 $ref: '#/responses/401' 1262 '403': 1263 $ref: '#/responses/403' 1264 '404': 1265 $ref: '#/responses/404' 1266 '405': 1267 $ref: '#/responses/405' 1268 '409': 1269 $ref: '#/responses/409' 1270 '500': 1271 $ref: '#/responses/500' 1272 get: 1273 summary: List tags 1274 description: List tags of the specific artifact 1275 tags: 1276 - artifact 1277 operationId: listTags 1278 parameters: 1279 - $ref: '#/parameters/requestId' 1280 - $ref: '#/parameters/projectName' 1281 - $ref: '#/parameters/repositoryName' 1282 - $ref: '#/parameters/reference' 1283 - $ref: '#/parameters/query' 1284 - $ref: '#/parameters/sort' 1285 - $ref: '#/parameters/page' 1286 - $ref: '#/parameters/pageSize' 1287 - name: with_signature 1288 in: query 1289 description: Specify whether the signature is included inside the returning tags 1290 type: boolean 1291 required: false 1292 default: false 1293 - name: with_immutable_status 1294 in: query 1295 description: Specify whether the immutable status is included inside the returning tags 1296 type: boolean 1297 required: false 1298 default: false 1299 responses: 1300 '200': 1301 description: Success 1302 headers: 1303 X-Total-Count: 1304 description: The total count of tags 1305 type: integer 1306 Link: 1307 description: Link refers to the previous page and next page 1308 type: string 1309 schema: 1310 type: array 1311 items: 1312 $ref: '#/definitions/Tag' 1313 '400': 1314 $ref: '#/responses/400' 1315 '401': 1316 $ref: '#/responses/401' 1317 '403': 1318 $ref: '#/responses/403' 1319 '404': 1320 $ref: '#/responses/404' 1321 '500': 1322 $ref: '#/responses/500' 1323 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/tags/{tag_name}: 1324 delete: 1325 summary: Delete tag 1326 description: Delete the tag of the specified artifact 1327 tags: 1328 - artifact 1329 operationId: deleteTag 1330 parameters: 1331 - $ref: '#/parameters/requestId' 1332 - $ref: '#/parameters/projectName' 1333 - $ref: '#/parameters/repositoryName' 1334 - $ref: '#/parameters/reference' 1335 - $ref: '#/parameters/tagName' 1336 responses: 1337 '200': 1338 $ref: '#/responses/200' 1339 '401': 1340 $ref: '#/responses/401' 1341 '403': 1342 $ref: '#/responses/403' 1343 '404': 1344 $ref: '#/responses/404' 1345 '500': 1346 $ref: '#/responses/500' 1347 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/accessories: 1348 get: 1349 summary: List accessories 1350 description: List accessories of the specific artifact 1351 tags: 1352 - artifact 1353 operationId: listAccessories 1354 parameters: 1355 - $ref: '#/parameters/requestId' 1356 - $ref: '#/parameters/projectName' 1357 - $ref: '#/parameters/repositoryName' 1358 - $ref: '#/parameters/reference' 1359 - $ref: '#/parameters/query' 1360 - $ref: '#/parameters/sort' 1361 - $ref: '#/parameters/page' 1362 - $ref: '#/parameters/pageSize' 1363 responses: 1364 '200': 1365 description: Success 1366 headers: 1367 X-Total-Count: 1368 description: The total count of accessories 1369 type: integer 1370 Link: 1371 description: Link refers to the previous page and next page 1372 type: string 1373 schema: 1374 type: array 1375 items: 1376 $ref: '#/definitions/Accessory' 1377 '400': 1378 $ref: '#/responses/400' 1379 '401': 1380 $ref: '#/responses/401' 1381 '403': 1382 $ref: '#/responses/403' 1383 '404': 1384 $ref: '#/responses/404' 1385 '500': 1386 $ref: '#/responses/500' 1387 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/additions/vulnerabilities: 1388 get: 1389 summary: Get the vulnerabilities addition of the specific artifact 1390 description: Get the vulnerabilities addition of the artifact specified by the reference under the project and repository. 1391 tags: 1392 - artifact 1393 operationId: getVulnerabilitiesAddition 1394 parameters: 1395 - $ref: '#/parameters/requestId' 1396 - $ref: '#/parameters/projectName' 1397 - $ref: '#/parameters/repositoryName' 1398 - $ref: '#/parameters/reference' 1399 - $ref: '#/parameters/acceptVulnerabilities' 1400 responses: 1401 '200': 1402 description: Success 1403 headers: 1404 Content-Type: 1405 description: The content type of the vulnerabilities addition 1406 type: string 1407 schema: 1408 type: string 1409 '400': 1410 $ref: '#/responses/400' 1411 '401': 1412 $ref: '#/responses/401' 1413 '403': 1414 $ref: '#/responses/403' 1415 '404': 1416 $ref: '#/responses/404' 1417 '500': 1418 $ref: '#/responses/500' 1419 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/additions/{addition}: 1420 get: 1421 summary: Get the addition of the specific artifact 1422 description: Get the addition of the artifact specified by the reference under the project and repository. 1423 tags: 1424 - artifact 1425 operationId: getAddition 1426 parameters: 1427 - $ref: '#/parameters/requestId' 1428 - $ref: '#/parameters/projectName' 1429 - $ref: '#/parameters/repositoryName' 1430 - $ref: '#/parameters/reference' 1431 - name: addition 1432 in: path 1433 description: The type of addition. 1434 type: string 1435 enum: [build_history, values.yaml, readme.md, dependencies] 1436 required: true 1437 responses: 1438 '200': 1439 description: Success 1440 headers: 1441 Content-Type: 1442 description: The content type of the addition 1443 type: string 1444 schema: 1445 type: string 1446 '400': 1447 $ref: '#/responses/400' 1448 '401': 1449 $ref: '#/responses/401' 1450 '403': 1451 $ref: '#/responses/403' 1452 '404': 1453 $ref: '#/responses/404' 1454 '500': 1455 $ref: '#/responses/500' 1456 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/labels: 1457 post: 1458 summary: Add label to artifact 1459 description: Add label to the specified artiact. 1460 tags: 1461 - artifact 1462 operationId: addLabel 1463 parameters: 1464 - $ref: '#/parameters/requestId' 1465 - $ref: '#/parameters/projectName' 1466 - $ref: '#/parameters/repositoryName' 1467 - $ref: '#/parameters/reference' 1468 - name: label 1469 in: body 1470 description: The label that added to the artifact. Only the ID property is needed. 1471 required: true 1472 schema: 1473 $ref: '#/definitions/Label' 1474 responses: 1475 '200': 1476 $ref: '#/responses/200' 1477 '400': 1478 $ref: '#/responses/400' 1479 '401': 1480 $ref: '#/responses/401' 1481 '403': 1482 $ref: '#/responses/403' 1483 '404': 1484 $ref: '#/responses/404' 1485 '409': 1486 $ref: '#/responses/409' 1487 '500': 1488 $ref: '#/responses/500' 1489 /projects/{project_name}/repositories/{repository_name}/artifacts/{reference}/labels/{label_id}: 1490 delete: 1491 summary: Remove label from artifact 1492 description: Remove the label from the specified artiact. 1493 tags: 1494 - artifact 1495 operationId: removeLabel 1496 parameters: 1497 - $ref: '#/parameters/requestId' 1498 - $ref: '#/parameters/projectName' 1499 - $ref: '#/parameters/repositoryName' 1500 - $ref: '#/parameters/reference' 1501 - name: label_id 1502 in: path 1503 description: The ID of the label that removed from the artifact. 1504 type: integer 1505 format: int64 1506 required: true 1507 responses: 1508 '200': 1509 $ref: '#/responses/200' 1510 '401': 1511 $ref: '#/responses/401' 1512 '403': 1513 $ref: '#/responses/403' 1514 '404': 1515 $ref: '#/responses/404' 1516 '409': 1517 $ref: '#/responses/409' 1518 '500': 1519 $ref: '#/responses/500' 1520 '/projects/{project_name_or_id}/scanner': 1521 get: 1522 summary: Get project level scanner 1523 description: Get the scanner registration of the specified project. If no scanner registration is configured for the specified project, the system default scanner registration will be returned. 1524 tags: 1525 - project 1526 operationId: getScannerOfProject 1527 parameters: 1528 - $ref: '#/parameters/requestId' 1529 - $ref: '#/parameters/isResourceName' 1530 - $ref: '#/parameters/projectNameOrId' 1531 responses: 1532 '200': 1533 description: The details of the scanner registration. 1534 schema: 1535 $ref: '#/definitions/ScannerRegistration' 1536 '400': 1537 description: Bad project ID 1538 '401': 1539 description: Unauthorized request 1540 '403': 1541 description: Request is not allowed 1542 '404': 1543 description: The requested object is not found 1544 '500': 1545 description: Internal server error happened 1546 put: 1547 summary: Configure scanner for the specified project 1548 description: Set one of the system configured scanner registration as the indepndent scanner of the specified project. 1549 tags: 1550 - project 1551 operationId: setScannerOfProject 1552 parameters: 1553 - $ref: '#/parameters/requestId' 1554 - $ref: '#/parameters/isResourceName' 1555 - $ref: '#/parameters/projectNameOrId' 1556 - name: payload 1557 in: body 1558 required: true 1559 schema: 1560 $ref: '#/definitions/ProjectScanner' 1561 responses: 1562 '200': 1563 $ref: '#/responses/200' 1564 '400': 1565 $ref: '#/responses/400' 1566 '401': 1567 $ref: '#/responses/401' 1568 '403': 1569 $ref: '#/responses/403' 1570 '404': 1571 $ref: '#/responses/404' 1572 '500': 1573 $ref: '#/responses/500' 1574 '/projects/{project_name_or_id}/scanner/candidates': 1575 get: 1576 summary: Get scanner registration candidates for configurating project level scanner 1577 description: Retrieve the system configured scanner registrations as candidates of setting project level scanner. 1578 tags: 1579 - project 1580 operationId: listScannerCandidatesOfProject 1581 parameters: 1582 - $ref: '#/parameters/requestId' 1583 - $ref: '#/parameters/isResourceName' 1584 - $ref: '#/parameters/projectNameOrId' 1585 - $ref: '#/parameters/query' 1586 - $ref: '#/parameters/sort' 1587 - $ref: '#/parameters/page' 1588 - $ref: '#/parameters/pageSize' 1589 responses: 1590 '200': 1591 description: A list of scanner registrations. 1592 schema: 1593 type: array 1594 items: 1595 $ref: '#/definitions/ScannerRegistration' 1596 headers: 1597 X-Total-Count: 1598 description: The total count of available items 1599 type: integer 1600 Link: 1601 description: Link to previous page and next page 1602 type: string 1603 '400': 1604 $ref: '#/responses/400' 1605 '401': 1606 $ref: '#/responses/401' 1607 '403': 1608 $ref: '#/responses/403' 1609 '500': 1610 $ref: '#/responses/500' 1611 /audit-logs: 1612 get: 1613 summary: Get recent logs of the projects which the user is a member of 1614 description: | 1615 This endpoint let user see the recent operation logs of the projects which he is member of 1616 tags: 1617 - auditlog 1618 operationId: listAuditLogs 1619 parameters: 1620 - $ref: '#/parameters/requestId' 1621 - $ref: '#/parameters/query' 1622 - $ref: '#/parameters/sort' 1623 - $ref: '#/parameters/page' 1624 - $ref: '#/parameters/pageSize' 1625 responses: 1626 '200': 1627 description: Success 1628 headers: 1629 X-Total-Count: 1630 description: The total count of auditlogs 1631 type: integer 1632 Link: 1633 description: Link refers to the previous page and next page 1634 type: string 1635 schema: 1636 type: array 1637 items: 1638 $ref: '#/definitions/AuditLog' 1639 '400': 1640 $ref: '#/responses/400' 1641 '401': 1642 $ref: '#/responses/401' 1643 '500': 1644 $ref: '#/responses/500' 1645 /projects/{project_name}/logs: 1646 get: 1647 summary: Get recent logs of the projects 1648 description: Get recent logs of the projects 1649 tags: 1650 - project 1651 operationId: getLogs 1652 parameters: 1653 - $ref: '#/parameters/projectName' 1654 - $ref: '#/parameters/requestId' 1655 - $ref: '#/parameters/query' 1656 - $ref: '#/parameters/sort' 1657 - $ref: '#/parameters/page' 1658 - $ref: '#/parameters/pageSize' 1659 responses: 1660 '200': 1661 description: Success 1662 headers: 1663 X-Total-Count: 1664 description: The total count of auditlogs 1665 type: integer 1666 Link: 1667 description: Link refers to the previous page and next page 1668 type: string 1669 schema: 1670 type: array 1671 items: 1672 $ref: '#/definitions/AuditLog' 1673 '400': 1674 $ref: '#/responses/400' 1675 '401': 1676 $ref: '#/responses/401' 1677 '500': 1678 $ref: '#/responses/500' 1679 /p2p/preheat/providers: 1680 get: 1681 summary: List P2P providers 1682 description: List P2P providers 1683 tags: 1684 - preheat 1685 operationId: ListProviders 1686 parameters: 1687 - $ref: '#/parameters/requestId' 1688 responses: 1689 '200': 1690 description: Success 1691 schema: 1692 type: array 1693 items: 1694 $ref: '#/definitions/Metadata' 1695 '400': 1696 $ref: '#/responses/400' 1697 '401': 1698 $ref: '#/responses/401' 1699 '403': 1700 $ref: '#/responses/403' 1701 '404': 1702 $ref: '#/responses/404' 1703 '500': 1704 $ref: '#/responses/500' 1705 /p2p/preheat/instances/ping: 1706 post: 1707 summary: Ping status of a instance. 1708 description: | 1709 This endpoint checks status of a instance, the instance can be given by ID or Endpoint URL (together with credential) 1710 operationId: PingInstances 1711 parameters: 1712 - $ref: '#/parameters/requestId' 1713 - name: instance 1714 in: body 1715 description: The JSON object of instance. 1716 required: true 1717 schema: 1718 $ref: '#/definitions/Instance' 1719 tags: 1720 - preheat 1721 responses: 1722 '200': 1723 $ref: '#/responses/200' 1724 '400': 1725 $ref: '#/responses/400' 1726 '401': 1727 $ref: '#/responses/401' 1728 '404': 1729 description: Instance not found (when instance is provided by ID). 1730 '500': 1731 $ref: '#/responses/500' 1732 /p2p/preheat/instances: 1733 get: 1734 summary: List P2P provider instances 1735 description: List P2P provider instances 1736 tags: 1737 - preheat 1738 operationId: ListInstances 1739 parameters: 1740 - $ref: '#/parameters/requestId' 1741 - $ref: '#/parameters/page' 1742 - $ref: '#/parameters/pageSize' 1743 - $ref: '#/parameters/query' 1744 - $ref: '#/parameters/sort' 1745 responses: 1746 '200': 1747 description: Success 1748 headers: 1749 X-Total-Count: 1750 description: The total count of preheating provider instances 1751 type: integer 1752 Link: 1753 description: Link refers to the previous page and next page 1754 type: string 1755 schema: 1756 type: array 1757 items: 1758 $ref: '#/definitions/Instance' 1759 '400': 1760 $ref: '#/responses/400' 1761 '401': 1762 $ref: '#/responses/401' 1763 '403': 1764 $ref: '#/responses/403' 1765 '404': 1766 $ref: '#/responses/404' 1767 '500': 1768 $ref: '#/responses/500' 1769 post: 1770 summary: Create p2p provider instances 1771 description: Create p2p provider instances 1772 tags: 1773 - preheat 1774 operationId: CreateInstance 1775 parameters: 1776 - $ref: '#/parameters/requestId' 1777 - name: instance 1778 in: body 1779 description: The JSON object of instance. 1780 required: true 1781 schema: 1782 $ref: '#/definitions/Instance' 1783 responses: 1784 '201': 1785 $ref: '#/responses/201' 1786 '400': 1787 $ref: '#/responses/400' 1788 '401': 1789 $ref: '#/responses/401' 1790 '403': 1791 $ref: '#/responses/403' 1792 '404': 1793 $ref: '#/responses/404' 1794 '409': 1795 $ref: '#/responses/409' 1796 '500': 1797 $ref: '#/responses/500' 1798 /p2p/preheat/instances/{preheat_instance_name}: 1799 get: 1800 summary: Get a P2P provider instance 1801 description: Get a P2P provider instance 1802 tags: 1803 - preheat 1804 operationId: GetInstance 1805 parameters: 1806 - $ref: '#/parameters/requestId' 1807 - $ref: '#/parameters/instanceName' 1808 responses: 1809 '200': 1810 description: Success 1811 schema: 1812 $ref: '#/definitions/Instance' 1813 '400': 1814 $ref: '#/responses/400' 1815 '401': 1816 $ref: '#/responses/401' 1817 '403': 1818 $ref: '#/responses/403' 1819 '404': 1820 $ref: '#/responses/404' 1821 '500': 1822 $ref: '#/responses/500' 1823 delete: 1824 summary: Delete the specified P2P provider instance 1825 description: Delete the specified P2P provider instance 1826 tags: 1827 - preheat 1828 operationId: DeleteInstance 1829 parameters: 1830 - $ref: '#/parameters/requestId' 1831 - $ref: '#/parameters/instanceName' 1832 responses: 1833 '200': 1834 $ref: '#/responses/200' 1835 '401': 1836 $ref: '#/responses/401' 1837 '403': 1838 $ref: '#/responses/403' 1839 '404': 1840 $ref: '#/responses/404' 1841 '500': 1842 $ref: '#/responses/500' 1843 put: 1844 summary: Update the specified P2P provider instance 1845 description: Update the specified P2P provider instance 1846 tags: 1847 - preheat 1848 operationId: UpdateInstance 1849 parameters: 1850 - $ref: '#/parameters/requestId' 1851 - $ref: '#/parameters/instanceName' 1852 - name: instance 1853 in: body 1854 description: The instance to update 1855 required: true 1856 schema: 1857 $ref: '#/definitions/Instance' 1858 responses: 1859 '200': 1860 $ref: '#/responses/200' 1861 '400': 1862 $ref: '#/responses/400' 1863 '401': 1864 $ref: '#/responses/401' 1865 '403': 1866 $ref: '#/responses/403' 1867 '404': 1868 $ref: '#/responses/404' 1869 '500': 1870 $ref: '#/responses/500' 1871 /projects/{project_name}/preheat/policies: 1872 post: 1873 summary: Create a preheat policy under a project 1874 description: Create a preheat policy under a project 1875 tags: 1876 - preheat 1877 operationId: CreatePolicy 1878 parameters: 1879 - $ref: '#/parameters/requestId' 1880 - $ref: '#/parameters/projectName' 1881 - name: policy 1882 in: body 1883 description: The policy schema info 1884 required: true 1885 schema: 1886 $ref: '#/definitions/PreheatPolicy' 1887 responses: 1888 '201': 1889 $ref: '#/responses/201' 1890 '400': 1891 $ref: '#/responses/400' 1892 '401': 1893 $ref: '#/responses/401' 1894 '403': 1895 $ref: '#/responses/403' 1896 '409': 1897 $ref: '#/responses/409' 1898 '500': 1899 $ref: '#/responses/500' 1900 get: 1901 summary: List preheat policies 1902 description: List preheat policies 1903 tags: 1904 - preheat 1905 operationId: ListPolicies 1906 parameters: 1907 - $ref: '#/parameters/requestId' 1908 - $ref: '#/parameters/projectName' 1909 - $ref: '#/parameters/page' 1910 - $ref: '#/parameters/pageSize' 1911 - $ref: '#/parameters/query' 1912 - $ref: '#/parameters/sort' 1913 responses: 1914 '200': 1915 description: List preheat policies success 1916 headers: 1917 X-Total-Count: 1918 description: The total count of policies 1919 type: integer 1920 Link: 1921 description: Link refers to the previous page and next page 1922 type: string 1923 schema: 1924 type: array 1925 items: 1926 $ref: '#/definitions/PreheatPolicy' 1927 '400': 1928 $ref: '#/responses/400' 1929 '401': 1930 $ref: '#/responses/401' 1931 '403': 1932 $ref: '#/responses/403' 1933 '500': 1934 $ref: '#/responses/500' 1935 /projects/{project_name}/preheat/policies/{preheat_policy_name}: 1936 get: 1937 summary: Get a preheat policy 1938 description: Get a preheat policy 1939 tags: 1940 - preheat 1941 operationId: GetPolicy 1942 parameters: 1943 - $ref: '#/parameters/requestId' 1944 - $ref: '#/parameters/projectName' 1945 - $ref: '#/parameters/preheatPolicyName' 1946 responses: 1947 '200': 1948 description: Get a preheat policy success 1949 schema: 1950 $ref: '#/definitions/PreheatPolicy' 1951 '400': 1952 $ref: '#/responses/400' 1953 '401': 1954 $ref: '#/responses/401' 1955 '404': 1956 $ref: '#/responses/404' 1957 '403': 1958 $ref: '#/responses/403' 1959 '500': 1960 $ref: '#/responses/500' 1961 put: 1962 summary: Update preheat policy 1963 description: Update preheat policy 1964 tags: 1965 - preheat 1966 operationId: UpdatePolicy 1967 parameters: 1968 - $ref: '#/parameters/requestId' 1969 - $ref: '#/parameters/projectName' 1970 - $ref: '#/parameters/preheatPolicyName' 1971 - name: policy 1972 in: body 1973 description: The policy schema info 1974 required: true 1975 schema: 1976 $ref: '#/definitions/PreheatPolicy' 1977 responses: 1978 '200': 1979 $ref: '#/responses/200' 1980 '400': 1981 $ref: '#/responses/400' 1982 '401': 1983 $ref: '#/responses/401' 1984 '404': 1985 $ref: '#/responses/404' 1986 '403': 1987 $ref: '#/responses/403' 1988 '409': 1989 $ref: '#/responses/409' 1990 '500': 1991 $ref: '#/responses/500' 1992 post: 1993 summary: Manual preheat 1994 description: Manual preheat 1995 tags: 1996 - preheat 1997 operationId: ManualPreheat 1998 parameters: 1999 - $ref: '#/parameters/requestId' 2000 - $ref: '#/parameters/projectName' 2001 - $ref: '#/parameters/preheatPolicyName' 2002 - name: policy 2003 in: body 2004 description: The policy schema info 2005 required: true 2006 schema: 2007 $ref: '#/definitions/PreheatPolicy' 2008 responses: 2009 '201': 2010 $ref: '#/responses/201' 2011 '400': 2012 $ref: '#/responses/400' 2013 '401': 2014 $ref: '#/responses/401' 2015 '404': 2016 $ref: '#/responses/404' 2017 '403': 2018 $ref: '#/responses/403' 2019 '500': 2020 $ref: '#/responses/500' 2021 delete: 2022 summary: Delete a preheat policy 2023 description: Delete a preheat policy 2024 tags: 2025 - preheat 2026 operationId: DeletePolicy 2027 parameters: 2028 - $ref: '#/parameters/requestId' 2029 - $ref: '#/parameters/projectName' 2030 - $ref: '#/parameters/preheatPolicyName' 2031 responses: 2032 '200': 2033 $ref: '#/responses/200' 2034 '400': 2035 $ref: '#/responses/400' 2036 '401': 2037 $ref: '#/responses/401' 2038 '404': 2039 $ref: '#/responses/404' 2040 '403': 2041 $ref: '#/responses/403' 2042 '500': 2043 $ref: '#/responses/500' 2044 /projects/{project_name}/preheat/policies/{preheat_policy_name}/executions: 2045 get: 2046 summary: List executions for the given policy 2047 description: List executions for the given policy 2048 tags: 2049 - preheat 2050 operationId: ListExecutions 2051 parameters: 2052 - $ref: '#/parameters/requestId' 2053 - $ref: '#/parameters/projectName' 2054 - $ref: '#/parameters/preheatPolicyName' 2055 - $ref: '#/parameters/page' 2056 - $ref: '#/parameters/pageSize' 2057 - $ref: '#/parameters/query' 2058 - $ref: '#/parameters/sort' 2059 responses: 2060 '200': 2061 description: List executions success 2062 headers: 2063 X-Total-Count: 2064 description: The total count of executions 2065 type: integer 2066 Link: 2067 description: Link refers to the previous page and next page 2068 type: string 2069 schema: 2070 type: array 2071 items: 2072 $ref: '#/definitions/Execution' 2073 '400': 2074 $ref: '#/responses/400' 2075 '401': 2076 $ref: '#/responses/401' 2077 '404': 2078 $ref: '#/responses/404' 2079 '403': 2080 $ref: '#/responses/403' 2081 '500': 2082 $ref: '#/responses/500' 2083 /projects/{project_name}/preheat/policies/{preheat_policy_name}/executions/{execution_id}: 2084 get: 2085 summary: Get a execution detail by id 2086 description: Get a execution detail by id 2087 tags: 2088 - preheat 2089 operationId: GetExecution 2090 parameters: 2091 - $ref: '#/parameters/requestId' 2092 - $ref: '#/parameters/projectName' 2093 - $ref: '#/parameters/preheatPolicyName' 2094 - $ref: '#/parameters/executionId' 2095 responses: 2096 '200': 2097 description: Get execution success 2098 schema: 2099 $ref: '#/definitions/Execution' 2100 '400': 2101 $ref: '#/responses/400' 2102 '401': 2103 $ref: '#/responses/401' 2104 '404': 2105 $ref: '#/responses/404' 2106 '403': 2107 $ref: '#/responses/403' 2108 '500': 2109 $ref: '#/responses/500' 2110 patch: 2111 summary: Stop a execution 2112 description: Stop a execution 2113 tags: 2114 - preheat 2115 operationId: StopExecution 2116 parameters: 2117 - $ref: '#/parameters/requestId' 2118 - $ref: '#/parameters/projectName' 2119 - $ref: '#/parameters/preheatPolicyName' 2120 - $ref: '#/parameters/executionId' 2121 - name: execution 2122 description: The data of execution 2123 in: body 2124 required: true 2125 schema: 2126 $ref: '#/definitions/Execution' 2127 responses: 2128 '200': 2129 $ref: '#/responses/200' 2130 '400': 2131 $ref: '#/responses/400' 2132 '401': 2133 $ref: '#/responses/401' 2134 '404': 2135 $ref: '#/responses/404' 2136 '403': 2137 $ref: '#/responses/403' 2138 '500': 2139 $ref: '#/responses/500' 2140 /projects/{project_name}/preheat/policies/{preheat_policy_name}/executions/{execution_id}/tasks: 2141 get: 2142 summary: List all the related tasks for the given execution 2143 description: List all the related tasks for the given execution 2144 tags: 2145 - preheat 2146 operationId: ListTasks 2147 parameters: 2148 - $ref: '#/parameters/requestId' 2149 - $ref: '#/parameters/projectName' 2150 - $ref: '#/parameters/preheatPolicyName' 2151 - $ref: '#/parameters/executionId' 2152 - $ref: '#/parameters/page' 2153 - $ref: '#/parameters/pageSize' 2154 - $ref: '#/parameters/query' 2155 - $ref: '#/parameters/sort' 2156 responses: 2157 '200': 2158 description: List tasks success 2159 headers: 2160 X-Total-Count: 2161 description: The total count of tasks 2162 type: integer 2163 Link: 2164 description: Link refers to the previous page and next page 2165 type: string 2166 schema: 2167 type: array 2168 items: 2169 $ref: '#/definitions/Task' 2170 '400': 2171 $ref: '#/responses/400' 2172 '401': 2173 $ref: '#/responses/401' 2174 '404': 2175 $ref: '#/responses/404' 2176 '403': 2177 $ref: '#/responses/403' 2178 '500': 2179 $ref: '#/responses/500' 2180 /projects/{project_name}/preheat/policies/{preheat_policy_name}/executions/{execution_id}/tasks/{task_id}/logs: 2181 get: 2182 summary: Get the log text stream of the specified task for the given execution 2183 description: Get the log text stream of the specified task for the given execution 2184 tags: 2185 - preheat 2186 operationId: GetPreheatLog 2187 produces: 2188 - text/plain 2189 parameters: 2190 - $ref: '#/parameters/requestId' 2191 - $ref: '#/parameters/projectName' 2192 - $ref: '#/parameters/preheatPolicyName' 2193 - $ref: '#/parameters/executionId' 2194 - $ref: '#/parameters/taskId' 2195 responses: 2196 '200': 2197 description: Get log success 2198 headers: 2199 Content-Type: 2200 description: Content type of response 2201 type: string 2202 schema: 2203 type: string 2204 '400': 2205 $ref: '#/responses/400' 2206 '401': 2207 $ref: '#/responses/401' 2208 '404': 2209 $ref: '#/responses/404' 2210 '403': 2211 $ref: '#/responses/403' 2212 '500': 2213 $ref: '#/responses/500' 2214 /projects/{project_name}/preheat/providers: 2215 get: 2216 summary: Get all providers at project level 2217 description: Get all providers at project level 2218 tags: 2219 - preheat 2220 operationId: ListProvidersUnderProject 2221 parameters: 2222 - $ref: '#/parameters/requestId' 2223 - $ref: '#/parameters/projectName' 2224 responses: 2225 '200': 2226 description: Success 2227 schema: 2228 type: array 2229 items: 2230 $ref: '#/definitions/ProviderUnderProject' 2231 '400': 2232 $ref: '#/responses/400' 2233 '401': 2234 $ref: '#/responses/401' 2235 '403': 2236 $ref: '#/responses/403' 2237 '404': 2238 $ref: '#/responses/404' 2239 '500': 2240 $ref: '#/responses/500' 2241 /projects/{project_name_or_id}/robots: 2242 get: 2243 summary: Get all robot accounts of specified project 2244 description: Get all robot accounts of specified project 2245 parameters: 2246 - $ref: '#/parameters/requestId' 2247 - $ref: '#/parameters/isResourceName' 2248 - $ref: '#/parameters/projectNameOrId' 2249 - $ref: '#/parameters/page' 2250 - $ref: '#/parameters/pageSize' 2251 - $ref: '#/parameters/query' 2252 - $ref: '#/parameters/sort' 2253 tags: 2254 - robotv1 2255 operationId: ListRobotV1 2256 responses: 2257 '200': 2258 description: Success 2259 headers: 2260 X-Total-Count: 2261 description: The total count of robot accounts 2262 type: integer 2263 Link: 2264 description: Link refers to the previous page and next page 2265 type: string 2266 schema: 2267 type: array 2268 items: 2269 $ref: '#/definitions/Robot' 2270 '400': 2271 $ref: '#/responses/400' 2272 '404': 2273 $ref: '#/responses/404' 2274 '500': 2275 $ref: '#/responses/500' 2276 post: 2277 summary: Create a robot account 2278 description: Create a robot account 2279 tags: 2280 - robotv1 2281 operationId: CreateRobotV1 2282 parameters: 2283 - $ref: '#/parameters/requestId' 2284 - $ref: '#/parameters/isResourceName' 2285 - $ref: '#/parameters/projectNameOrId' 2286 - name: robot 2287 in: body 2288 description: The JSON object of a robot account. 2289 required: true 2290 schema: 2291 $ref: '#/definitions/RobotCreateV1' 2292 responses: 2293 '201': 2294 description: Created 2295 headers: 2296 X-Request-Id: 2297 description: The ID of the corresponding request for the response 2298 type: string 2299 Location: 2300 description: The location of the resource 2301 type: string 2302 schema: 2303 $ref: '#/definitions/RobotCreated' 2304 '400': 2305 $ref: '#/responses/400' 2306 '401': 2307 $ref: '#/responses/401' 2308 '403': 2309 $ref: '#/responses/403' 2310 '404': 2311 $ref: '#/responses/404' 2312 '500': 2313 $ref: '#/responses/500' 2314 /projects/{project_name_or_id}/robots/{robot_id}: 2315 get: 2316 summary: Get a robot account 2317 description: This endpoint returns specific robot account information by robot ID. 2318 tags: 2319 - robotv1 2320 operationId: GetRobotByIDV1 2321 parameters: 2322 - $ref: '#/parameters/requestId' 2323 - $ref: '#/parameters/isResourceName' 2324 - $ref: '#/parameters/projectNameOrId' 2325 - $ref: '#/parameters/robotId' 2326 responses: 2327 '200': 2328 description: Return matched robot information. 2329 schema: 2330 $ref: '#/definitions/Robot' 2331 '401': 2332 $ref: '#/responses/401' 2333 '403': 2334 $ref: '#/responses/403' 2335 '404': 2336 $ref: '#/responses/404' 2337 '500': 2338 $ref: '#/responses/500' 2339 put: 2340 summary: Update status of robot account. 2341 description: Used to disable/enable a specified robot account. 2342 tags: 2343 - robotv1 2344 operationId: UpdateRobotV1 2345 parameters: 2346 - $ref: '#/parameters/requestId' 2347 - $ref: '#/parameters/isResourceName' 2348 - $ref: '#/parameters/projectNameOrId' 2349 - $ref: '#/parameters/robotId' 2350 - name: robot 2351 in: body 2352 description: The JSON object of a robot account. 2353 required: true 2354 schema: 2355 $ref: '#/definitions/Robot' 2356 responses: 2357 '200': 2358 $ref: '#/responses/200' 2359 '400': 2360 $ref: '#/responses/400' 2361 '401': 2362 $ref: '#/responses/401' 2363 '403': 2364 $ref: '#/responses/403' 2365 '404': 2366 $ref: '#/responses/404' 2367 '409': 2368 $ref: '#/responses/409' 2369 '500': 2370 $ref: '#/responses/500' 2371 delete: 2372 summary: Delete a robot account 2373 description: This endpoint deletes specific robot account information by robot ID. 2374 tags: 2375 - robotv1 2376 operationId: DeleteRobotV1 2377 parameters: 2378 - $ref: '#/parameters/requestId' 2379 - $ref: '#/parameters/isResourceName' 2380 - $ref: '#/parameters/projectNameOrId' 2381 - $ref: '#/parameters/robotId' 2382 responses: 2383 '200': 2384 $ref: '#/responses/200' 2385 '400': 2386 $ref: '#/responses/400' 2387 '401': 2388 $ref: '#/responses/401' 2389 '403': 2390 $ref: '#/responses/403' 2391 '404': 2392 $ref: '#/responses/404' 2393 '500': 2394 $ref: '#/responses/500' 2395 '/projects/{project_name_or_id}/immutabletagrules': 2396 get: 2397 summary: List all immutable tag rules of current project 2398 description: | 2399 This endpoint returns the immutable tag rules of a project 2400 tags: 2401 - immutable 2402 operationId: ListImmuRules 2403 parameters: 2404 - $ref: '#/parameters/requestId' 2405 - $ref: '#/parameters/isResourceName' 2406 - $ref: '#/parameters/projectNameOrId' 2407 - $ref: '#/parameters/page' 2408 - $ref: '#/parameters/pageSize' 2409 - $ref: '#/parameters/query' 2410 - $ref: '#/parameters/sort' 2411 responses: 2412 '200': 2413 description: Success 2414 headers: 2415 X-Total-Count: 2416 description: The total count of immutable tag 2417 type: integer 2418 Link: 2419 description: Link refers to the previous page and next page 2420 type: string 2421 schema: 2422 type: array 2423 items: 2424 $ref: '#/definitions/ImmutableRule' 2425 '400': 2426 $ref: '#/responses/400' 2427 '401': 2428 $ref: '#/responses/401' 2429 '403': 2430 $ref: '#/responses/403' 2431 '500': 2432 $ref: '#/responses/500' 2433 post: 2434 summary: Add an immutable tag rule to current project 2435 description: | 2436 This endpoint add an immutable tag rule to the project 2437 tags: 2438 - immutable 2439 operationId: CreateImmuRule 2440 parameters: 2441 - $ref: '#/parameters/requestId' 2442 - $ref: '#/parameters/isResourceName' 2443 - $ref: '#/parameters/projectNameOrId' 2444 - name: ImmutableRule 2445 in: body 2446 required: true 2447 schema: 2448 $ref: '#/definitions/ImmutableRule' 2449 responses: 2450 '201': 2451 $ref: '#/responses/201' 2452 '400': 2453 $ref: '#/responses/400' 2454 '401': 2455 $ref: '#/responses/401' 2456 '403': 2457 $ref: '#/responses/403' 2458 '404': 2459 $ref: '#/responses/404' 2460 '500': 2461 $ref: '#/responses/500' 2462 '/projects/{project_name_or_id}/immutabletagrules/{immutable_rule_id}': 2463 put: 2464 summary: Update the immutable tag rule or enable or disable the rule 2465 tags: 2466 - immutable 2467 operationId: UpdateImmuRule 2468 parameters: 2469 - $ref: '#/parameters/requestId' 2470 - $ref: '#/parameters/isResourceName' 2471 - $ref: '#/parameters/projectNameOrId' 2472 - $ref: '#/parameters/immutableRuleId' 2473 - name: ImmutableRule 2474 in: body 2475 required: true 2476 schema: 2477 $ref: '#/definitions/ImmutableRule' 2478 responses: 2479 '200': 2480 $ref: '#/responses/200' 2481 '400': 2482 $ref: '#/responses/400' 2483 '401': 2484 $ref: '#/responses/401' 2485 '403': 2486 $ref: '#/responses/403' 2487 '500': 2488 $ref: '#/responses/500' 2489 delete: 2490 summary: Delete the immutable tag rule. 2491 tags: 2492 - immutable 2493 operationId: DeleteImmuRule 2494 parameters: 2495 - $ref: '#/parameters/requestId' 2496 - $ref: '#/parameters/isResourceName' 2497 - $ref: '#/parameters/projectNameOrId' 2498 - $ref: '#/parameters/immutableRuleId' 2499 responses: 2500 '200': 2501 $ref: '#/responses/200' 2502 '400': 2503 $ref: '#/responses/400' 2504 '401': 2505 $ref: '#/responses/401' 2506 '403': 2507 $ref: '#/responses/403' 2508 '500': 2509 $ref: '#/responses/500' 2510 '/projects/{project_name_or_id}/webhook/policies': 2511 get: 2512 summary: List project webhook policies. 2513 description: | 2514 This endpoint returns webhook policies of a project. 2515 tags: 2516 - webhook 2517 operationId: ListWebhookPoliciesOfProject 2518 parameters: 2519 - $ref: '#/parameters/requestId' 2520 - $ref: '#/parameters/isResourceName' 2521 - $ref: '#/parameters/projectNameOrId' 2522 - $ref: '#/parameters/sort' 2523 - $ref: '#/parameters/query' 2524 - $ref: '#/parameters/page' 2525 - $ref: '#/parameters/pageSize' 2526 responses: 2527 '200': 2528 description: Success 2529 headers: 2530 X-Total-Count: 2531 description: The total count of webhook policies. 2532 type: integer 2533 Link: 2534 description: Link refers to the previous page and next page 2535 type: string 2536 schema: 2537 type: array 2538 items: 2539 $ref: '#/definitions/WebhookPolicy' 2540 '400': 2541 $ref: '#/responses/400' 2542 '401': 2543 $ref: '#/responses/401' 2544 '403': 2545 $ref: '#/responses/403' 2546 '500': 2547 $ref: '#/responses/500' 2548 post: 2549 summary: Create project webhook policy. 2550 description: | 2551 This endpoint create a webhook policy if the project does not have one. 2552 tags: 2553 - webhook 2554 operationId: CreateWebhookPolicyOfProject 2555 parameters: 2556 - $ref: '#/parameters/requestId' 2557 - $ref: '#/parameters/isResourceName' 2558 - $ref: '#/parameters/projectNameOrId' 2559 - name: policy 2560 in: body 2561 description: Properties "targets" and "event_types" needed. 2562 required: true 2563 schema: 2564 $ref: '#/definitions/WebhookPolicy' 2565 responses: 2566 '201': 2567 description: Project webhook policy create successfully. 2568 headers: 2569 X-Request-Id: 2570 description: The ID of the corresponding request for the response 2571 type: string 2572 Location: 2573 description: The location of the resource 2574 type: string 2575 '400': 2576 $ref: '#/responses/400' 2577 '401': 2578 $ref: '#/responses/401' 2579 '403': 2580 $ref: '#/responses/403' 2581 '500': 2582 $ref: '#/responses/500' 2583 '/projects/{project_name_or_id}/webhook/policies/{webhook_policy_id}': 2584 get: 2585 summary: Get project webhook policy 2586 description: | 2587 This endpoint returns specified webhook policy of a project. 2588 tags: 2589 - webhook 2590 operationId: GetWebhookPolicyOfProject 2591 parameters: 2592 - $ref: '#/parameters/requestId' 2593 - $ref: '#/parameters/isResourceName' 2594 - $ref: '#/parameters/projectNameOrId' 2595 - $ref: '#/parameters/webhookPolicyId' 2596 responses: 2597 '200': 2598 description: Get webhook policy successfully. 2599 schema: 2600 $ref: '#/definitions/WebhookPolicy' 2601 '400': 2602 $ref: '#/responses/400' 2603 '401': 2604 $ref: '#/responses/401' 2605 '403': 2606 $ref: '#/responses/403' 2607 '404': 2608 $ref: '#/responses/404' 2609 '500': 2610 $ref: '#/responses/500' 2611 put: 2612 summary: Update webhook policy of a project. 2613 description: | 2614 This endpoint is aimed to update the webhook policy of a project. 2615 tags: 2616 - webhook 2617 operationId: UpdateWebhookPolicyOfProject 2618 parameters: 2619 - $ref: '#/parameters/requestId' 2620 - $ref: '#/parameters/isResourceName' 2621 - $ref: '#/parameters/projectNameOrId' 2622 - $ref: '#/parameters/webhookPolicyId' 2623 - name: policy 2624 in: body 2625 description: All properties needed except "id", "project_id", "creation_time", "update_time". 2626 required: true 2627 schema: 2628 $ref: '#/definitions/WebhookPolicy' 2629 responses: 2630 '200': 2631 $ref: '#/responses/200' 2632 '400': 2633 $ref: '#/responses/400' 2634 '401': 2635 $ref: '#/responses/401' 2636 '403': 2637 $ref: '#/responses/403' 2638 '404': 2639 $ref: '#/responses/404' 2640 '500': 2641 $ref: '#/responses/500' 2642 delete: 2643 summary: Delete webhook policy of a project 2644 description: | 2645 This endpoint is aimed to delete webhookpolicy of a project. 2646 tags: 2647 - webhook 2648 operationId: DeleteWebhookPolicyOfProject 2649 parameters: 2650 - $ref: '#/parameters/requestId' 2651 - $ref: '#/parameters/isResourceName' 2652 - $ref: '#/parameters/projectNameOrId' 2653 - $ref: '#/parameters/webhookPolicyId' 2654 responses: 2655 '200': 2656 $ref: '#/responses/200' 2657 '400': 2658 $ref: '#/responses/400' 2659 '401': 2660 $ref: '#/responses/401' 2661 '403': 2662 $ref: '#/responses/403' 2663 '404': 2664 $ref: '#/responses/404' 2665 '500': 2666 $ref: '#/responses/500' 2667 '/projects/{project_name_or_id}/webhook/policies/{webhook_policy_id}/executions': 2668 get: 2669 summary: List executions for a specific webhook policy 2670 description: | 2671 This endpoint returns the executions of a specific webhook policy. 2672 tags: 2673 - webhook 2674 operationId: ListExecutionsOfWebhookPolicy 2675 parameters: 2676 - $ref: '#/parameters/requestId' 2677 - $ref: '#/parameters/isResourceName' 2678 - $ref: '#/parameters/projectNameOrId' 2679 - $ref: '#/parameters/webhookPolicyId' 2680 - $ref: '#/parameters/page' 2681 - $ref: '#/parameters/pageSize' 2682 - $ref: '#/parameters/query' 2683 - $ref: '#/parameters/sort' 2684 responses: 2685 '200': 2686 description: List webhook executions success 2687 headers: 2688 X-Total-Count: 2689 description: The total count of executions 2690 type: integer 2691 Link: 2692 description: Link refers to the previous page and next page 2693 type: string 2694 schema: 2695 type: array 2696 items: 2697 $ref: '#/definitions/Execution' 2698 '400': 2699 $ref: '#/responses/400' 2700 '401': 2701 $ref: '#/responses/401' 2702 '404': 2703 $ref: '#/responses/404' 2704 '403': 2705 $ref: '#/responses/403' 2706 '500': 2707 $ref: '#/responses/500' 2708 '/projects/{project_name_or_id}/webhook/policies/{webhook_policy_id}/executions/{execution_id}/tasks': 2709 get: 2710 summary: List tasks for a specific webhook execution 2711 description: | 2712 This endpoint returns the tasks of a specific webhook execution. 2713 tags: 2714 - webhook 2715 operationId: ListTasksOfWebhookExecution 2716 parameters: 2717 - $ref: '#/parameters/requestId' 2718 - $ref: '#/parameters/isResourceName' 2719 - $ref: '#/parameters/projectNameOrId' 2720 - $ref: '#/parameters/webhookPolicyId' 2721 - $ref: '#/parameters/executionId' 2722 - $ref: '#/parameters/page' 2723 - $ref: '#/parameters/pageSize' 2724 - $ref: '#/parameters/query' 2725 - $ref: '#/parameters/sort' 2726 responses: 2727 '200': 2728 description: List tasks of webhook executions success 2729 headers: 2730 X-Total-Count: 2731 description: The total count of tasks 2732 type: integer 2733 Link: 2734 description: Link refers to the previous page and next page 2735 type: string 2736 schema: 2737 type: array 2738 items: 2739 $ref: '#/definitions/Task' 2740 '400': 2741 $ref: '#/responses/400' 2742 '401': 2743 $ref: '#/responses/401' 2744 '404': 2745 $ref: '#/responses/404' 2746 '403': 2747 $ref: '#/responses/403' 2748 '500': 2749 $ref: '#/responses/500' 2750 '/projects/{project_name_or_id}/webhook/policies/{webhook_policy_id}/executions/{execution_id}/tasks/{task_id}/log': 2751 get: 2752 summary: Get logs for a specific webhook task 2753 description: | 2754 This endpoint returns the logs of a specific webhook task. 2755 tags: 2756 - webhook 2757 operationId: GetLogsOfWebhookTask 2758 produces: 2759 - text/plain 2760 parameters: 2761 - $ref: '#/parameters/requestId' 2762 - $ref: '#/parameters/isResourceName' 2763 - $ref: '#/parameters/projectNameOrId' 2764 - $ref: '#/parameters/webhookPolicyId' 2765 - $ref: '#/parameters/executionId' 2766 - $ref: '#/parameters/taskId' 2767 responses: 2768 '200': 2769 description: Get log success 2770 headers: 2771 Content-Type: 2772 description: Content type of response 2773 type: string 2774 schema: 2775 type: string 2776 '400': 2777 $ref: '#/responses/400' 2778 '401': 2779 $ref: '#/responses/401' 2780 '404': 2781 $ref: '#/responses/404' 2782 '403': 2783 $ref: '#/responses/403' 2784 '500': 2785 $ref: '#/responses/500' 2786 '/projects/{project_name_or_id}/webhook/lasttrigger': 2787 get: 2788 deprecated: true 2789 summary: Get project webhook policy last trigger info 2790 description: | 2791 This endpoint returns last trigger information of project webhook policy. 2792 tags: 2793 - webhook 2794 operationId: LastTrigger 2795 parameters: 2796 - $ref: '#/parameters/requestId' 2797 - $ref: '#/parameters/isResourceName' 2798 - $ref: '#/parameters/projectNameOrId' 2799 responses: 2800 '200': 2801 description: Test webhook connection successfully. 2802 schema: 2803 type: array 2804 items: 2805 $ref: '#/definitions/WebhookLastTrigger' 2806 '400': 2807 $ref: '#/responses/400' 2808 '401': 2809 $ref: '#/responses/401' 2810 '403': 2811 $ref: '#/responses/403' 2812 '500': 2813 $ref: '#/responses/500' 2814 '/projects/{project_name_or_id}/webhook/jobs': 2815 get: 2816 deprecated: true 2817 summary: List project webhook jobs 2818 description: | 2819 This endpoint returns webhook jobs of a project. 2820 tags: 2821 - webhookjob 2822 operationId: ListWebhookJobs 2823 parameters: 2824 - $ref: '#/parameters/requestId' 2825 - $ref: '#/parameters/isResourceName' 2826 - $ref: '#/parameters/projectNameOrId' 2827 - $ref: '#/parameters/query' 2828 - $ref: '#/parameters/sort' 2829 - $ref: '#/parameters/page' 2830 - $ref: '#/parameters/pageSize' 2831 - name: policy_id 2832 in: query 2833 type: integer 2834 format: int64 2835 required: true 2836 description: The policy ID. 2837 - name: status 2838 in: query 2839 description: The status of webhook job. 2840 required: false 2841 type: array 2842 items: 2843 type: string 2844 responses: 2845 '200': 2846 description: List project webhook jobs successfully. 2847 headers: 2848 X-Total-Count: 2849 description: The total count of available items 2850 type: integer 2851 Link: 2852 description: Link to previous page and next page 2853 type: string 2854 schema: 2855 type: array 2856 items: 2857 $ref: '#/definitions/WebhookJob' 2858 '400': 2859 $ref: '#/responses/400' 2860 '401': 2861 $ref: '#/responses/401' 2862 '403': 2863 $ref: '#/responses/403' 2864 '500': 2865 $ref: '#/responses/500' 2866 '/projects/{project_name_or_id}/webhook/events': 2867 get: 2868 summary: Get supported event types and notify types. 2869 description: Get supported event types and notify types. 2870 tags: 2871 - webhook 2872 operationId: GetSupportedEventTypes 2873 parameters: 2874 - $ref: '#/parameters/requestId' 2875 - $ref: '#/parameters/isResourceName' 2876 - $ref: '#/parameters/projectNameOrId' 2877 responses: 2878 '200': 2879 description: Success 2880 schema: 2881 $ref: '#/definitions/SupportedWebhookEventTypes' 2882 '401': 2883 $ref: '#/responses/401' 2884 '403': 2885 $ref: '#/responses/403' 2886 '500': 2887 $ref: '#/responses/500' 2888 /usergroups: 2889 get: 2890 summary: Get all user groups information 2891 description: Get all user groups information, it is open for system admin 2892 operationId: listUserGroups 2893 tags: 2894 - usergroup 2895 parameters: 2896 - $ref: '#/parameters/requestId' 2897 - $ref: '#/parameters/page' 2898 - $ref: '#/parameters/pageSize' 2899 - name: ldap_group_dn 2900 in: query 2901 type: string 2902 required: false 2903 description: search with ldap group DN 2904 - name: group_name 2905 in: query 2906 type: string 2907 required: false 2908 description: group name need to search, fuzzy matches 2909 responses: 2910 '200': 2911 description: Get user group successfully. 2912 schema: 2913 type: array 2914 items: 2915 $ref: '#/definitions/UserGroup' 2916 headers: 2917 X-Total-Count: 2918 description: The total count of available items 2919 type: integer 2920 Link: 2921 description: Link to previous page and next page 2922 type: string 2923 '401': 2924 $ref: '#/responses/401' 2925 '403': 2926 $ref: '#/responses/403' 2927 '500': 2928 $ref: '#/responses/500' 2929 post: 2930 summary: Create user group 2931 description: Create user group information 2932 operationId: createUserGroup 2933 tags: 2934 - usergroup 2935 parameters: 2936 - $ref: '#/parameters/requestId' 2937 - name: usergroup 2938 in: body 2939 schema: 2940 $ref: '#/definitions/UserGroup' 2941 responses: 2942 '201': 2943 description: User group created successfully. 2944 headers: 2945 Location: 2946 type: string 2947 description: The URL of the created resource 2948 '400': 2949 $ref: '#/responses/400' 2950 '401': 2951 $ref: '#/responses/401' 2952 '403': 2953 $ref: '#/responses/403' 2954 '409': 2955 $ref: '#/responses/409' 2956 '500': 2957 $ref: '#/responses/500' 2958 /usergroups/search: 2959 get: 2960 summary: Search groups by groupname 2961 description: | 2962 This endpoint is to search groups by group name. It's open for all authenticated requests. 2963 tags: 2964 - usergroup 2965 operationId: searchUserGroups 2966 parameters: 2967 - $ref: '#/parameters/requestId' 2968 - $ref: '#/parameters/page' 2969 - $ref: '#/parameters/pageSize' 2970 - name: groupname 2971 in: query 2972 type: string 2973 required: true 2974 description: Group name for filtering results. 2975 responses: 2976 '200': 2977 description: Search groups successfully. 2978 schema: 2979 type: array 2980 items: 2981 $ref: '#/definitions/UserGroupSearchItem' 2982 headers: 2983 X-Total-Count: 2984 description: The total count of available items 2985 type: integer 2986 Link: 2987 description: Link to previous page and next page 2988 type: string 2989 '401': 2990 $ref: '#/responses/401' 2991 '500': 2992 $ref: '#/responses/500' 2993 '/usergroups/{group_id}': 2994 get: 2995 summary: Get user group information 2996 description: Get user group information 2997 operationId: getUserGroup 2998 tags: 2999 - usergroup 3000 parameters: 3001 - $ref: '#/parameters/requestId' 3002 - name: group_id 3003 in: path 3004 type: integer 3005 format: int64 3006 required: true 3007 description: Group ID 3008 responses: 3009 '200': 3010 description: User group get successfully. 3011 schema: 3012 $ref: '#/definitions/UserGroup' 3013 '400': 3014 $ref: '#/responses/400' 3015 '401': 3016 $ref: '#/responses/401' 3017 '403': 3018 $ref: '#/responses/403' 3019 '404': 3020 $ref: '#/responses/404' 3021 '500': 3022 $ref: '#/responses/500' 3023 put: 3024 summary: Update group information 3025 description: Update user group information 3026 operationId: updateUserGroup 3027 tags: 3028 - usergroup 3029 parameters: 3030 - $ref: '#/parameters/requestId' 3031 - name: group_id 3032 in: path 3033 type: integer 3034 format: int64 3035 required: true 3036 description: Group ID 3037 - name: usergroup 3038 in: body 3039 required: false 3040 schema: 3041 $ref: '#/definitions/UserGroup' 3042 responses: 3043 '200': 3044 $ref: '#/responses/200' 3045 '400': 3046 $ref: '#/responses/400' 3047 '401': 3048 $ref: '#/responses/401' 3049 '403': 3050 $ref: '#/responses/403' 3051 '404': 3052 $ref: '#/responses/404' 3053 '500': 3054 $ref: '#/responses/500' 3055 delete: 3056 summary: Delete user group 3057 description: Delete user group 3058 operationId: deleteUserGroup 3059 tags: 3060 - usergroup 3061 parameters: 3062 - $ref: '#/parameters/requestId' 3063 - name: group_id 3064 type: integer 3065 in: path 3066 required: true 3067 responses: 3068 '200': 3069 $ref: '#/responses/200' 3070 '400': 3071 $ref: '#/responses/400' 3072 '401': 3073 $ref: '#/responses/401' 3074 '403': 3075 $ref: '#/responses/403' 3076 '500': 3077 $ref: '#/responses/500' 3078 /icons/{digest}: 3079 get: 3080 summary: Get artifact icon 3081 description: Get the artifact icon with the specified digest. As the original icon image is resized and encoded before returning, the parameter "digest" in the path doesn't match the hash of the returned content 3082 tags: 3083 - icon 3084 operationId: getIcon 3085 parameters: 3086 - $ref: '#/parameters/requestId' 3087 - $ref: '#/parameters/digest' 3088 responses: 3089 '200': 3090 description: Success 3091 schema: 3092 $ref: '#/definitions/Icon' 3093 '400': 3094 $ref: '#/responses/400' 3095 '404': 3096 $ref: '#/responses/404' 3097 '500': 3098 $ref: '#/responses/500' 3099 /robots: 3100 get: 3101 summary: Get robot account 3102 description: List the robot accounts with the specified level and project. 3103 tags: 3104 - robot 3105 operationId: ListRobot 3106 parameters: 3107 - $ref: '#/parameters/requestId' 3108 - $ref: '#/parameters/query' 3109 - $ref: '#/parameters/sort' 3110 - $ref: '#/parameters/page' 3111 - $ref: '#/parameters/pageSize' 3112 responses: 3113 '200': 3114 description: Success 3115 headers: 3116 X-Total-Count: 3117 description: The total count of robot accounts 3118 type: integer 3119 Link: 3120 description: Link refers to the previous page and next page 3121 type: string 3122 schema: 3123 type: array 3124 items: 3125 $ref: '#/definitions/Robot' 3126 '400': 3127 $ref: '#/responses/400' 3128 '404': 3129 $ref: '#/responses/404' 3130 '500': 3131 $ref: '#/responses/500' 3132 post: 3133 summary: Create a robot account 3134 description: Create a robot account 3135 tags: 3136 - robot 3137 operationId: CreateRobot 3138 parameters: 3139 - $ref: '#/parameters/requestId' 3140 - name: robot 3141 in: body 3142 description: The JSON object of a robot account. 3143 required: true 3144 schema: 3145 $ref: '#/definitions/RobotCreate' 3146 responses: 3147 '201': 3148 description: Created 3149 headers: 3150 X-Request-Id: 3151 description: The ID of the corresponding request for the response 3152 type: string 3153 Location: 3154 description: The location of the resource 3155 type: string 3156 schema: 3157 $ref: '#/definitions/RobotCreated' 3158 '400': 3159 $ref: '#/responses/400' 3160 '401': 3161 $ref: '#/responses/401' 3162 '403': 3163 $ref: '#/responses/403' 3164 '404': 3165 $ref: '#/responses/404' 3166 '500': 3167 $ref: '#/responses/500' 3168 '/quotas': 3169 get: 3170 summary: List quotas 3171 description: List quotas 3172 tags: 3173 - quota 3174 operationId: listQuotas 3175 parameters: 3176 - $ref: '#/parameters/requestId' 3177 - $ref: '#/parameters/page' 3178 - $ref: '#/parameters/pageSize' 3179 - name: reference 3180 in: query 3181 description: The reference type of quota. 3182 required: false 3183 type: string 3184 - name: reference_id 3185 in: query 3186 description: The reference id of quota. 3187 required: false 3188 type: string 3189 - name: sort 3190 in: query 3191 type: string 3192 required: false 3193 description: | 3194 Sort method, valid values include: 3195 'hard.resource_name', '-hard.resource_name', 'used.resource_name', '-used.resource_name'. 3196 Here '-' stands for descending order, resource_name should be the real resource name of the quota. 3197 responses: 3198 '200': 3199 description: Successfully retrieved the quotas. 3200 schema: 3201 type: array 3202 items: 3203 $ref: '#/definitions/Quota' 3204 headers: 3205 X-Total-Count: 3206 description: The total count of access logs 3207 type: integer 3208 Link: 3209 description: Link refers to the previous page and next page 3210 type: string 3211 '401': 3212 $ref: '#/responses/401' 3213 '403': 3214 $ref: '#/responses/403' 3215 '500': 3216 $ref: '#/responses/500' 3217 '/quotas/{id}': 3218 get: 3219 summary: Get the specified quota 3220 description: Get the specified quota 3221 tags: 3222 - quota 3223 operationId: getQuota 3224 parameters: 3225 - $ref: '#/parameters/requestId' 3226 - name: id 3227 in: path 3228 type: integer 3229 required: true 3230 description: Quota ID 3231 responses: 3232 '200': 3233 description: Successfully retrieved the quota. 3234 schema: 3235 $ref: '#/definitions/Quota' 3236 '401': 3237 $ref: '#/responses/401' 3238 '403': 3239 $ref: '#/responses/403' 3240 '404': 3241 $ref: '#/responses/404' 3242 '500': 3243 $ref: '#/responses/500' 3244 put: 3245 summary: Update the specified quota 3246 description: Update hard limits of the specified quota 3247 tags: 3248 - quota 3249 operationId: updateQuota 3250 parameters: 3251 - $ref: '#/parameters/requestId' 3252 - name: id 3253 in: path 3254 type: integer 3255 required: true 3256 description: Quota ID 3257 - name: hard 3258 in: body 3259 required: true 3260 description: The new hard limits for the quota 3261 schema: 3262 $ref: '#/definitions/QuotaUpdateReq' 3263 responses: 3264 '200': 3265 $ref: '#/responses/200' 3266 '400': 3267 $ref: '#/responses/400' 3268 '401': 3269 $ref: '#/responses/401' 3270 '403': 3271 $ref: '#/responses/403' 3272 '404': 3273 $ref: '#/responses/404' 3274 '500': 3275 $ref: '#/responses/500' 3276 /robots/{robot_id}: 3277 get: 3278 summary: Get a robot account 3279 description: This endpoint returns specific robot account information by robot ID. 3280 tags: 3281 - robot 3282 operationId: GetRobotByID 3283 parameters: 3284 - $ref: '#/parameters/requestId' 3285 - $ref: '#/parameters/robotId' 3286 responses: 3287 '200': 3288 description: Return matched robot information. 3289 schema: 3290 $ref: '#/definitions/Robot' 3291 '401': 3292 $ref: '#/responses/401' 3293 '403': 3294 $ref: '#/responses/403' 3295 '404': 3296 $ref: '#/responses/404' 3297 '500': 3298 $ref: '#/responses/500' 3299 put: 3300 summary: Update a robot account 3301 description: This endpoint updates specific robot account information by robot ID. 3302 tags: 3303 - robot 3304 operationId: UpdateRobot 3305 parameters: 3306 - $ref: '#/parameters/requestId' 3307 - $ref: '#/parameters/robotId' 3308 - name: robot 3309 in: body 3310 description: The JSON object of a robot account. 3311 required: true 3312 schema: 3313 $ref: '#/definitions/Robot' 3314 responses: 3315 '200': 3316 $ref: '#/responses/200' 3317 '400': 3318 $ref: '#/responses/400' 3319 '401': 3320 $ref: '#/responses/401' 3321 '403': 3322 $ref: '#/responses/403' 3323 '404': 3324 $ref: '#/responses/404' 3325 '409': 3326 $ref: '#/responses/409' 3327 '500': 3328 $ref: '#/responses/500' 3329 patch: 3330 summary: Refresh the robot secret 3331 description: Refresh the robot secret 3332 tags: 3333 - robot 3334 operationId: RefreshSec 3335 parameters: 3336 - $ref: '#/parameters/requestId' 3337 - $ref: '#/parameters/robotId' 3338 - name: robotSec 3339 description: The JSON object of a robot account. 3340 in: body 3341 required: true 3342 schema: 3343 $ref: '#/definitions/RobotSec' 3344 responses: 3345 '200': 3346 description: Return refreshed robot sec. 3347 schema: 3348 $ref: '#/definitions/RobotSec' 3349 '400': 3350 $ref: '#/responses/400' 3351 '401': 3352 $ref: '#/responses/401' 3353 '404': 3354 $ref: '#/responses/404' 3355 '403': 3356 $ref: '#/responses/403' 3357 '500': 3358 $ref: '#/responses/500' 3359 delete: 3360 summary: Delete a robot account 3361 description: This endpoint deletes specific robot account information by robot ID. 3362 tags: 3363 - robot 3364 operationId: DeleteRobot 3365 parameters: 3366 - $ref: '#/parameters/requestId' 3367 - $ref: '#/parameters/robotId' 3368 responses: 3369 '200': 3370 $ref: '#/responses/200' 3371 '400': 3372 $ref: '#/responses/400' 3373 '401': 3374 $ref: '#/responses/401' 3375 '403': 3376 $ref: '#/responses/403' 3377 '404': 3378 $ref: '#/responses/404' 3379 '500': 3380 $ref: '#/responses/500' 3381 /replication/policies: 3382 get: 3383 summary: List replication policies 3384 description: List replication policies 3385 tags: 3386 - replication 3387 operationId: listReplicationPolicies 3388 parameters: 3389 - $ref: '#/parameters/requestId' 3390 - $ref: '#/parameters/query' 3391 - $ref: '#/parameters/sort' 3392 - $ref: '#/parameters/page' 3393 - $ref: '#/parameters/pageSize' 3394 - name: name 3395 in: query 3396 type: string 3397 required: false 3398 description: Deprecated, use "query" instead. The policy name. 3399 responses: 3400 '200': 3401 description: Success 3402 headers: 3403 X-Total-Count: 3404 description: The total count of the resources 3405 type: integer 3406 Link: 3407 description: Link refers to the previous page and next page 3408 type: string 3409 schema: 3410 type: array 3411 items: 3412 $ref: '#/definitions/ReplicationPolicy' 3413 '401': 3414 $ref: '#/responses/401' 3415 '403': 3416 $ref: '#/responses/403' 3417 '500': 3418 $ref: '#/responses/500' 3419 post: 3420 summary: Create a replication policy 3421 description: Create a replication policy 3422 tags: 3423 - replication 3424 operationId: createReplicationPolicy 3425 parameters: 3426 - $ref: '#/parameters/requestId' 3427 - name: policy 3428 in: body 3429 description: The replication policy 3430 required: true 3431 schema: 3432 $ref: '#/definitions/ReplicationPolicy' 3433 responses: 3434 '201': 3435 $ref: '#/responses/201' 3436 '400': 3437 $ref: '#/responses/400' 3438 '401': 3439 $ref: '#/responses/401' 3440 '403': 3441 $ref: '#/responses/403' 3442 '409': 3443 $ref: '#/responses/409' 3444 '500': 3445 $ref: '#/responses/500' 3446 /replication/policies/{id}: 3447 get: 3448 summary: Get the specific replication policy 3449 description: Get the specific replication policy 3450 tags: 3451 - replication 3452 operationId: getReplicationPolicy 3453 parameters: 3454 - $ref: '#/parameters/requestId' 3455 - name: id 3456 in: path 3457 type: integer 3458 format: int64 3459 required: true 3460 description: Policy ID 3461 responses: 3462 '200': 3463 description: Success 3464 schema: 3465 $ref: '#/definitions/ReplicationPolicy' 3466 '401': 3467 $ref: '#/responses/401' 3468 '403': 3469 $ref: '#/responses/403' 3470 '500': 3471 $ref: '#/responses/500' 3472 delete: 3473 summary: Delete the specific replication policy 3474 description: Delete the specific replication policy 3475 tags: 3476 - replication 3477 operationId: deleteReplicationPolicy 3478 parameters: 3479 - $ref: '#/parameters/requestId' 3480 - name: id 3481 in: path 3482 type: integer 3483 format: int64 3484 required: true 3485 description: Replication policy ID 3486 responses: 3487 '200': 3488 $ref: '#/responses/200' 3489 '401': 3490 $ref: '#/responses/401' 3491 '403': 3492 $ref: '#/responses/403' 3493 '404': 3494 $ref: '#/responses/404' 3495 '412': 3496 $ref: '#/responses/412' 3497 '500': 3498 $ref: '#/responses/500' 3499 put: 3500 summary: Update the replication policy 3501 description: Update the replication policy 3502 tags: 3503 - replication 3504 operationId: updateReplicationPolicy 3505 parameters: 3506 - $ref: '#/parameters/requestId' 3507 - name: id 3508 in: path 3509 type: integer 3510 format: int64 3511 required: true 3512 description: The policy ID 3513 - name: policy 3514 in: body 3515 description: The replication policy 3516 required: true 3517 schema: 3518 $ref: '#/definitions/ReplicationPolicy' 3519 responses: 3520 '200': 3521 $ref: '#/responses/200' 3522 '401': 3523 $ref: '#/responses/401' 3524 '403': 3525 $ref: '#/responses/403' 3526 '404': 3527 $ref: '#/responses/404' 3528 '409': 3529 $ref: '#/responses/409' 3530 '500': 3531 $ref: '#/responses/500' 3532 /replication/executions: 3533 get: 3534 summary: List replication executions 3535 description: List replication executions 3536 tags: 3537 - replication 3538 operationId: listReplicationExecutions 3539 parameters: 3540 - $ref: '#/parameters/requestId' 3541 - $ref: '#/parameters/sort' 3542 - $ref: '#/parameters/page' 3543 - $ref: '#/parameters/pageSize' 3544 - name: policy_id 3545 in: query 3546 type: integer 3547 required: false 3548 description: The ID of the policy that the executions belong to. 3549 - name: status 3550 in: query 3551 type: string 3552 required: false 3553 description: The execution status. 3554 - name: trigger 3555 in: query 3556 type: string 3557 required: false 3558 description: The trigger mode. 3559 responses: 3560 '200': 3561 description: Success 3562 headers: 3563 X-Total-Count: 3564 description: The total count of the resources 3565 type: integer 3566 Link: 3567 description: Link refers to the previous page and next page 3568 type: string 3569 schema: 3570 type: array 3571 items: 3572 $ref: '#/definitions/ReplicationExecution' 3573 '401': 3574 $ref: '#/responses/401' 3575 '403': 3576 $ref: '#/responses/403' 3577 '500': 3578 $ref: '#/responses/500' 3579 post: 3580 summary: Start one replication execution 3581 description: Start one replication execution according to the policy 3582 tags: 3583 - replication 3584 operationId: startReplication 3585 parameters: 3586 - $ref: '#/parameters/requestId' 3587 - name: execution 3588 in: body 3589 description: The ID of policy that the execution belongs to 3590 required: true 3591 schema: 3592 $ref: '#/definitions/StartReplicationExecution' 3593 responses: 3594 '201': 3595 $ref: '#/responses/201' 3596 '400': 3597 $ref: '#/responses/400' 3598 '401': 3599 $ref: '#/responses/401' 3600 '403': 3601 $ref: '#/responses/403' 3602 '500': 3603 $ref: '#/responses/500' 3604 /replication/executions/{id}: 3605 get: 3606 summary: Get the specific replication execution 3607 description: Get the replication execution specified by ID 3608 tags: 3609 - replication 3610 operationId: getReplicationExecution 3611 parameters: 3612 - $ref: '#/parameters/requestId' 3613 - name: id 3614 in: path 3615 type: integer 3616 format: int64 3617 description: The ID of the execution. 3618 required: true 3619 responses: 3620 '200': 3621 description: Success 3622 schema: 3623 $ref: '#/definitions/ReplicationExecution' 3624 '401': 3625 $ref: '#/responses/401' 3626 '403': 3627 $ref: '#/responses/403' 3628 '404': 3629 $ref: '#/responses/404' 3630 '500': 3631 $ref: '#/responses/500' 3632 put: 3633 summary: Stop the specific replication execution 3634 description: Stop the replication execution specified by ID 3635 tags: 3636 - replication 3637 operationId: stopReplication 3638 parameters: 3639 - $ref: '#/parameters/requestId' 3640 - name: id 3641 in: path 3642 type: integer 3643 format: int64 3644 description: The ID of the execution. 3645 required: true 3646 responses: 3647 '200': 3648 $ref: '#/responses/200' 3649 '401': 3650 $ref: '#/responses/401' 3651 '403': 3652 $ref: '#/responses/403' 3653 '404': 3654 $ref: '#/responses/404' 3655 '500': 3656 $ref: '#/responses/500' 3657 /replication/executions/{id}/tasks: 3658 get: 3659 summary: List replication tasks for a specific execution 3660 description: List replication tasks for a specific execution 3661 tags: 3662 - replication 3663 operationId: listReplicationTasks 3664 parameters: 3665 - $ref: '#/parameters/requestId' 3666 - $ref: '#/parameters/sort' 3667 - $ref: '#/parameters/page' 3668 - $ref: '#/parameters/pageSize' 3669 - name: id 3670 in: path 3671 type: integer 3672 format: int64 3673 description: The ID of the execution that the tasks belongs to. 3674 required: true 3675 - name: status 3676 in: query 3677 type: string 3678 required: false 3679 description: The task status. 3680 - name: resource_type 3681 in: query 3682 type: string 3683 required: false 3684 description: The resource type. 3685 responses: 3686 '200': 3687 description: Success 3688 headers: 3689 X-Total-Count: 3690 description: The total count of the resources 3691 type: integer 3692 Link: 3693 description: Link refers to the previous page and next page 3694 type: string 3695 schema: 3696 type: array 3697 items: 3698 $ref: '#/definitions/ReplicationTask' 3699 '401': 3700 $ref: '#/responses/401' 3701 '403': 3702 $ref: '#/responses/403' 3703 '500': 3704 $ref: '#/responses/500' 3705 /replication/executions/{id}/tasks/{task_id}/log: 3706 get: 3707 summary: Get the log of the specific replication task 3708 description: Get the log of the specific replication task 3709 tags: 3710 - replication 3711 operationId: getReplicationLog 3712 produces: 3713 - text/plain 3714 parameters: 3715 - $ref: '#/parameters/requestId' 3716 - name: id 3717 in: path 3718 type: integer 3719 format: int64 3720 description: The ID of the execution that the tasks belongs to. 3721 required: true 3722 - name: task_id 3723 in: path 3724 type: integer 3725 format: int64 3726 description: The ID of the task. 3727 required: true 3728 responses: 3729 '200': 3730 description: Success 3731 headers: 3732 Content-Type: 3733 description: The content type of response body 3734 type: string 3735 schema: 3736 type: string 3737 '401': 3738 $ref: '#/responses/401' 3739 '403': 3740 $ref: '#/responses/403' 3741 '404': 3742 $ref: '#/responses/404' 3743 '500': 3744 $ref: '#/responses/500' 3745 /replication/adapters: 3746 get: 3747 summary: List registry adapters 3748 description: List registry adapters 3749 tags: 3750 - registry 3751 operationId: listRegistryProviderTypes 3752 parameters: 3753 - $ref: '#/parameters/requestId' 3754 responses: 3755 '200': 3756 description: Success. 3757 schema: 3758 type: array 3759 items: 3760 type: string 3761 '401': 3762 $ref: '#/responses/401' 3763 '403': 3764 $ref: '#/responses/403' 3765 '500': 3766 $ref: '#/responses/500' 3767 /replication/adapterinfos: 3768 get: 3769 summary: List all registered registry provider information 3770 description: List all registered registry provider information 3771 tags: 3772 - registry 3773 operationId: listRegistryProviderInfos 3774 parameters: 3775 - $ref: '#/parameters/requestId' 3776 responses: 3777 '200': 3778 description: Success. 3779 schema: 3780 type: object 3781 additionalProperties: 3782 $ref: '#/definitions/RegistryProviderInfo' 3783 '401': 3784 $ref: '#/responses/401' 3785 '403': 3786 $ref: '#/responses/403' 3787 '500': 3788 $ref: '#/responses/500' 3789 /registries: 3790 post: 3791 summary: Create a registry 3792 description: Create a registry 3793 tags: 3794 - registry 3795 operationId: createRegistry 3796 parameters: 3797 - $ref: '#/parameters/requestId' 3798 - name: registry 3799 in: body 3800 description: The registry 3801 required: true 3802 schema: 3803 $ref: '#/definitions/Registry' 3804 responses: 3805 '201': 3806 $ref: '#/responses/201' 3807 '400': 3808 $ref: '#/responses/400' 3809 '401': 3810 $ref: '#/responses/401' 3811 '403': 3812 $ref: '#/responses/403' 3813 '409': 3814 $ref: '#/responses/409' 3815 '500': 3816 $ref: '#/responses/500' 3817 get: 3818 summary: List the registries 3819 description: List the registries 3820 tags: 3821 - registry 3822 operationId: listRegistries 3823 parameters: 3824 - $ref: '#/parameters/requestId' 3825 - $ref: '#/parameters/query' 3826 - $ref: '#/parameters/sort' 3827 - $ref: '#/parameters/page' 3828 - $ref: '#/parameters/pageSize' 3829 - name: name 3830 in: query 3831 type: string 3832 required: false 3833 description: Deprecated, use `q` instead. 3834 responses: 3835 '200': 3836 description: Success 3837 headers: 3838 X-Total-Count: 3839 description: The total count of the resources 3840 type: integer 3841 Link: 3842 description: Link refers to the previous page and next page 3843 type: string 3844 schema: 3845 type: array 3846 items: 3847 $ref: '#/definitions/Registry' 3848 '401': 3849 $ref: '#/responses/401' 3850 '403': 3851 $ref: '#/responses/403' 3852 '500': 3853 $ref: '#/responses/500' 3854 /registries/ping: 3855 post: 3856 summary: Check status of a registry 3857 description: Check status of a registry 3858 tags: 3859 - registry 3860 operationId: pingRegistry 3861 parameters: 3862 - $ref: '#/parameters/requestId' 3863 - name: registry 3864 in: body 3865 description: The registry 3866 required: true 3867 schema: 3868 $ref: '#/definitions/RegistryPing' 3869 responses: 3870 '200': 3871 $ref: '#/responses/200' 3872 '400': 3873 $ref: '#/responses/400' 3874 '401': 3875 $ref: '#/responses/401' 3876 '403': 3877 $ref: '#/responses/403' 3878 '404': 3879 $ref: '#/responses/404' 3880 '500': 3881 $ref: '#/responses/500' 3882 /registries/{id}: 3883 get: 3884 summary: Get the specific registry 3885 description: Get the specific registry 3886 tags: 3887 - registry 3888 operationId: getRegistry 3889 parameters: 3890 - $ref: '#/parameters/requestId' 3891 - name: id 3892 in: path 3893 type: integer 3894 format: int64 3895 required: true 3896 description: Registry ID 3897 responses: 3898 '200': 3899 description: Success 3900 schema: 3901 $ref: '#/definitions/Registry' 3902 '401': 3903 $ref: '#/responses/401' 3904 '403': 3905 $ref: '#/responses/403' 3906 '404': 3907 $ref: '#/responses/404' 3908 '500': 3909 $ref: '#/responses/500' 3910 delete: 3911 summary: Delete the specific registry 3912 description: Delete the specific registry 3913 tags: 3914 - registry 3915 operationId: deleteRegistry 3916 parameters: 3917 - $ref: '#/parameters/requestId' 3918 - name: id 3919 in: path 3920 type: integer 3921 format: int64 3922 required: true 3923 description: Registry ID 3924 responses: 3925 '200': 3926 $ref: '#/responses/200' 3927 '401': 3928 $ref: '#/responses/401' 3929 '403': 3930 $ref: '#/responses/403' 3931 '404': 3932 $ref: '#/responses/404' 3933 '412': 3934 $ref: '#/responses/412' 3935 '500': 3936 $ref: '#/responses/500' 3937 put: 3938 summary: Update the registry 3939 description: Update the registry 3940 tags: 3941 - registry 3942 operationId: updateRegistry 3943 parameters: 3944 - $ref: '#/parameters/requestId' 3945 - name: id 3946 in: path 3947 type: integer 3948 format: int64 3949 required: true 3950 description: The registry ID 3951 - name: registry 3952 in: body 3953 description: The registry 3954 required: true 3955 schema: 3956 $ref: '#/definitions/RegistryUpdate' 3957 responses: 3958 '200': 3959 $ref: '#/responses/200' 3960 '401': 3961 $ref: '#/responses/401' 3962 '403': 3963 $ref: '#/responses/403' 3964 '404': 3965 $ref: '#/responses/404' 3966 '409': 3967 $ref: '#/responses/409' 3968 '500': 3969 $ref: '#/responses/500' 3970 /registries/{id}/info: 3971 get: 3972 summary: Get the registry info 3973 description: Get the registry info 3974 tags: 3975 - registry 3976 operationId: getRegistryInfo 3977 parameters: 3978 - $ref: '#/parameters/requestId' 3979 - name: id 3980 in: path 3981 type: integer 3982 format: int64 3983 required: true 3984 description: Registry ID 3985 responses: 3986 '200': 3987 description: Success 3988 schema: 3989 $ref: '#/definitions/RegistryInfo' 3990 '401': 3991 $ref: '#/responses/401' 3992 '403': 3993 $ref: '#/responses/403' 3994 '404': 3995 $ref: '#/responses/404' 3996 '500': 3997 $ref: '#/responses/500' 3998 /scans/all/metrics: 3999 get: 4000 summary: Get the metrics of the latest scan all process 4001 description: Get the metrics of the latest scan all process 4002 tags: 4003 - scanAll 4004 operationId: getLatestScanAllMetrics 4005 parameters: 4006 - $ref: '#/parameters/requestId' 4007 responses: 4008 '200': 4009 description: OK 4010 schema: 4011 $ref: '#/definitions/Stats' 4012 '401': 4013 $ref: '#/responses/401' 4014 '403': 4015 $ref: '#/responses/403' 4016 '412': 4017 $ref: '#/responses/412' 4018 '500': 4019 $ref: '#/responses/500' 4020 /scans/schedule/metrics: 4021 get: 4022 summary: Get the metrics of the latest scheduled scan all process 4023 description: Get the metrics of the latest scheduled scan all process 4024 tags: 4025 - scanAll 4026 operationId: getLatestScheduledScanAllMetrics 4027 deprecated: true 4028 parameters: 4029 - $ref: '#/parameters/requestId' 4030 responses: 4031 '200': 4032 description: OK 4033 schema: 4034 $ref: '#/definitions/Stats' 4035 '401': 4036 $ref: '#/responses/401' 4037 '403': 4038 $ref: '#/responses/403' 4039 '412': 4040 $ref: '#/responses/412' 4041 '500': 4042 $ref: '#/responses/500' 4043 /systeminfo: 4044 get: 4045 summary: Get general system info 4046 operationId: getSystemInfo 4047 description: | 4048 This API is for retrieving general system info, this can be called by anonymous request. Some attributes will be omitted in the response when this API is called by anonymous request. 4049 tags: 4050 - systeminfo 4051 parameters: 4052 - $ref: '#/parameters/requestId' 4053 responses: 4054 '200': 4055 description: Get general info successfully. 4056 schema: 4057 $ref: '#/definitions/GeneralInfo' 4058 '500': 4059 $ref: '#/responses/500' 4060 /systeminfo/volumes: 4061 get: 4062 summary: Get system volume info (total/free size). 4063 operationId: getVolumes 4064 description: | 4065 This endpoint is for retrieving system volume info that only provides for admin user. Note that the response only reflects the storage status of local disk. 4066 tags: 4067 - systeminfo 4068 parameters: 4069 - $ref: '#/parameters/requestId' 4070 responses: 4071 '200': 4072 description: Get system volumes successfully. 4073 schema: 4074 $ref: '#/definitions/SystemInfo' 4075 '401': 4076 $ref: '#/responses/401' 4077 '403': 4078 $ref: '#/responses/403' 4079 '404': 4080 $ref: '#/responses/404' 4081 '500': 4082 $ref: '#/responses/500' 4083 /systeminfo/getcert: 4084 get: 4085 summary: Get default root certificate. 4086 operationId: getCert 4087 description: | 4088 This endpoint is for downloading a default root certificate. 4089 tags: 4090 - systeminfo 4091 produces: 4092 - application/octet-stream 4093 parameters: 4094 - $ref: '#/parameters/requestId' 4095 responses: 4096 '200': 4097 description: Get default root certificate successfully. 4098 schema: 4099 type: file 4100 headers: 4101 Content-Disposition: 4102 description: To set the filename of the downloaded file. 4103 type: string 4104 '404': 4105 description: Not found the default root certificate. 4106 '500': 4107 $ref: '#/responses/500' 4108 /system/oidc/ping: 4109 post: 4110 summary: Test the OIDC endpoint. 4111 description: | 4112 Test the OIDC endpoint, the setting of the endpoint is provided in the request. This API can only be called by system admin. 4113 tags: 4114 - oidc 4115 operationId: pingOIDC 4116 parameters: 4117 - $ref: '#/parameters/requestId' 4118 - name: endpoint 4119 in: body 4120 description: Request body for OIDC endpoint to be tested. 4121 required: true 4122 schema: 4123 type: object 4124 properties: 4125 url: 4126 type: string 4127 description: The URL of OIDC endpoint to be tested. 4128 verify_cert: 4129 type: boolean 4130 description: Whether the certificate should be verified 4131 responses: 4132 '200': 4133 $ref: '#/responses/200' 4134 '400': 4135 $ref: '#/responses/400' 4136 '401': 4137 $ref: '#/responses/401' 4138 '403': 4139 $ref: '#/responses/403' 4140 /system/gc: 4141 get: 4142 summary: Get gc results. 4143 description: This endpoint let user get gc execution history. 4144 tags: 4145 - gc 4146 operationId: getGCHistory 4147 parameters: 4148 - $ref: '#/parameters/requestId' 4149 - $ref: '#/parameters/query' 4150 - $ref: '#/parameters/sort' 4151 - $ref: '#/parameters/page' 4152 - $ref: '#/parameters/pageSize' 4153 responses: 4154 '200': 4155 description: Get gc results successfully. 4156 headers: 4157 X-Total-Count: 4158 description: The total count of history 4159 type: integer 4160 Link: 4161 description: Link refers to the previous page and next page 4162 type: string 4163 schema: 4164 type: array 4165 items: 4166 $ref: '#/definitions/GCHistory' 4167 '401': 4168 $ref: '#/responses/401' 4169 '403': 4170 $ref: '#/responses/403' 4171 '500': 4172 $ref: '#/responses/500' 4173 /system/gc/{gc_id}: 4174 get: 4175 summary: Get gc status. 4176 description: This endpoint let user get gc status filtered by specific ID. 4177 operationId: getGC 4178 parameters: 4179 - $ref: '#/parameters/requestId' 4180 - $ref: '#/parameters/gcId' 4181 tags: 4182 - gc 4183 responses: 4184 '200': 4185 description: Get gc results successfully. 4186 schema: 4187 $ref: '#/definitions/GCHistory' 4188 '401': 4189 $ref: '#/responses/401' 4190 '403': 4191 $ref: '#/responses/403' 4192 '404': 4193 $ref: '#/responses/404' 4194 '500': 4195 $ref: '#/responses/500' 4196 put: 4197 summary: Stop the specific GC execution 4198 description: Stop the GC execution specified by ID 4199 tags: 4200 - gc 4201 operationId: stopGC 4202 parameters: 4203 - $ref: '#/parameters/requestId' 4204 - $ref: '#/parameters/gcId' 4205 responses: 4206 '200': 4207 $ref: '#/responses/200' 4208 '401': 4209 $ref: '#/responses/401' 4210 '403': 4211 $ref: '#/responses/403' 4212 '404': 4213 $ref: '#/responses/404' 4214 '500': 4215 $ref: '#/responses/500' 4216 /system/gc/{gc_id}/log: 4217 get: 4218 summary: Get gc job log. 4219 description: This endpoint let user get gc job logs filtered by specific ID. 4220 operationId: getGCLog 4221 parameters: 4222 - $ref: '#/parameters/requestId' 4223 - $ref: '#/parameters/gcId' 4224 tags: 4225 - gc 4226 produces: 4227 - text/plain 4228 responses: 4229 '200': 4230 description: Get successfully. 4231 schema: 4232 type: string 4233 '400': 4234 $ref: '#/responses/400' 4235 '401': 4236 $ref: '#/responses/401' 4237 '403': 4238 $ref: '#/responses/403' 4239 '404': 4240 $ref: '#/responses/404' 4241 '500': 4242 $ref: '#/responses/500' 4243 /system/gc/schedule: 4244 get: 4245 summary: Get gc's schedule. 4246 description: This endpoint is for get schedule of gc job. 4247 operationId: getGCSchedule 4248 tags: 4249 - gc 4250 parameters: 4251 - $ref: '#/parameters/requestId' 4252 responses: 4253 '200': 4254 description: Get gc's schedule. 4255 schema: 4256 $ref: '#/definitions/GCHistory' 4257 '401': 4258 $ref: '#/responses/401' 4259 '403': 4260 $ref: '#/responses/403' 4261 '500': 4262 $ref: '#/responses/500' 4263 post: 4264 summary: Create a gc schedule. 4265 description: | 4266 This endpoint is for update gc schedule. 4267 operationId: createGCSchedule 4268 parameters: 4269 - $ref: '#/parameters/requestId' 4270 - name: schedule 4271 in: body 4272 required: true 4273 schema: 4274 $ref: '#/definitions/Schedule' 4275 description: Updates of gc's schedule. 4276 tags: 4277 - gc 4278 responses: 4279 '201': 4280 $ref: '#/responses/201' 4281 '400': 4282 $ref: '#/responses/400' 4283 '401': 4284 $ref: '#/responses/401' 4285 '403': 4286 $ref: '#/responses/403' 4287 '409': 4288 $ref: '#/responses/409' 4289 '500': 4290 $ref: '#/responses/500' 4291 put: 4292 summary: Update gc's schedule. 4293 description: | 4294 This endpoint is for update gc schedule. 4295 operationId: updateGCSchedule 4296 parameters: 4297 - $ref: '#/parameters/requestId' 4298 - name: schedule 4299 in: body 4300 required: true 4301 schema: 4302 $ref: '#/definitions/Schedule' 4303 description: Updates of gc's schedule. 4304 tags: 4305 - gc 4306 responses: 4307 '200': 4308 description: Updated gc's schedule successfully. 4309 '400': 4310 $ref: '#/responses/400' 4311 '401': 4312 $ref: '#/responses/401' 4313 '403': 4314 $ref: '#/responses/403' 4315 '500': 4316 $ref: '#/responses/500' 4317 /system/purgeaudit: 4318 get: 4319 summary: Get purge job results. 4320 description: get purge job execution history. 4321 tags: 4322 - purge 4323 operationId: getPurgeHistory 4324 parameters: 4325 - $ref: '#/parameters/requestId' 4326 - $ref: '#/parameters/query' 4327 - $ref: '#/parameters/sort' 4328 - $ref: '#/parameters/page' 4329 - $ref: '#/parameters/pageSize' 4330 responses: 4331 '200': 4332 description: Get purge job results successfully. 4333 headers: 4334 X-Total-Count: 4335 description: The total count of history 4336 type: integer 4337 Link: 4338 description: Link refers to the previous page and next page 4339 type: string 4340 schema: 4341 type: array 4342 items: 4343 $ref: '#/definitions/ExecHistory' 4344 '401': 4345 $ref: '#/responses/401' 4346 '403': 4347 $ref: '#/responses/403' 4348 '500': 4349 $ref: '#/responses/500' 4350 /system/purgeaudit/{purge_id}: 4351 get: 4352 summary: Get purge job status. 4353 description: This endpoint let user get purge job status filtered by specific ID. 4354 operationId: getPurgeJob 4355 parameters: 4356 - $ref: '#/parameters/requestId' 4357 - $ref: '#/parameters/purgeId' 4358 tags: 4359 - purge 4360 responses: 4361 '200': 4362 description: Get purge job results successfully. 4363 schema: 4364 $ref: '#/definitions/ExecHistory' 4365 '401': 4366 $ref: '#/responses/401' 4367 '403': 4368 $ref: '#/responses/403' 4369 '404': 4370 $ref: '#/responses/404' 4371 '500': 4372 $ref: '#/responses/500' 4373 put: 4374 summary: Stop the specific purge audit log execution 4375 description: Stop the purge audit log execution specified by ID 4376 tags: 4377 - purge 4378 operationId: stopPurge 4379 parameters: 4380 - $ref: '#/parameters/requestId' 4381 - $ref: '#/parameters/purgeId' 4382 responses: 4383 '200': 4384 $ref: '#/responses/200' 4385 '401': 4386 $ref: '#/responses/401' 4387 '403': 4388 $ref: '#/responses/403' 4389 '404': 4390 $ref: '#/responses/404' 4391 '500': 4392 $ref: '#/responses/500' 4393 /system/purgeaudit/{purge_id}/log: 4394 get: 4395 summary: Get purge job log. 4396 description: This endpoint let user get purge job logs filtered by specific ID. 4397 operationId: getPurgeJobLog 4398 parameters: 4399 - $ref: '#/parameters/requestId' 4400 - $ref: '#/parameters/purgeId' 4401 tags: 4402 - purge 4403 produces: 4404 - text/plain 4405 responses: 4406 '200': 4407 description: Get successfully. 4408 schema: 4409 type: string 4410 '400': 4411 $ref: '#/responses/400' 4412 '401': 4413 $ref: '#/responses/401' 4414 '403': 4415 $ref: '#/responses/403' 4416 '404': 4417 $ref: '#/responses/404' 4418 '500': 4419 $ref: '#/responses/500' 4420 /system/purgeaudit/schedule: 4421 get: 4422 summary: Get purge's schedule. 4423 description: This endpoint is for get schedule of purge job. 4424 operationId: getPurgeSchedule 4425 tags: 4426 - purge 4427 parameters: 4428 - $ref: '#/parameters/requestId' 4429 responses: 4430 '200': 4431 description: Get purge job's schedule. 4432 schema: 4433 $ref: '#/definitions/ExecHistory' 4434 '401': 4435 $ref: '#/responses/401' 4436 '403': 4437 $ref: '#/responses/403' 4438 '500': 4439 $ref: '#/responses/500' 4440 post: 4441 summary: Create a purge job schedule. 4442 description: | 4443 This endpoint is for update purge job schedule. 4444 operationId: createPurgeSchedule 4445 parameters: 4446 - $ref: '#/parameters/requestId' 4447 - name: schedule 4448 in: body 4449 required: true 4450 schema: 4451 $ref: '#/definitions/Schedule' 4452 description: | 4453 The purge job's schedule, it is a json object. | 4454 The sample format is | 4455 {"parameters":{"audit_retention_hour":168,"dry_run":true, "include_operations":"create,delete,pull"},"schedule":{"type":"Hourly","cron":"0 0 * * * *"}} | 4456 the include_operation should be a comma separated string, e.g. create,delete,pull, if it is empty, no operation will be purged. 4457 tags: 4458 - purge 4459 responses: 4460 '201': 4461 $ref: '#/responses/201' 4462 '400': 4463 $ref: '#/responses/400' 4464 '401': 4465 $ref: '#/responses/401' 4466 '403': 4467 $ref: '#/responses/403' 4468 '500': 4469 $ref: '#/responses/500' 4470 put: 4471 summary: Update purge job's schedule. 4472 description: | 4473 This endpoint is for update purge job schedule. 4474 operationId: updatePurgeSchedule 4475 parameters: 4476 - $ref: '#/parameters/requestId' 4477 - name: schedule 4478 in: body 4479 required: true 4480 schema: 4481 $ref: '#/definitions/Schedule' 4482 description: | 4483 The purge job's schedule, it is a json object. | 4484 The sample format is | 4485 {"parameters":{"audit_retention_hour":168,"dry_run":true, "include_operations":"create,delete,pull"},"schedule":{"type":"Hourly","cron":"0 0 * * * *"}} | 4486 the include_operation should be a comma separated string, e.g. create,delete,pull, if it is empty, no operation will be purged. 4487 tags: 4488 - purge 4489 responses: 4490 '200': 4491 description: Updated purge's schedule successfully. 4492 '400': 4493 $ref: '#/responses/400' 4494 '401': 4495 $ref: '#/responses/401' 4496 '403': 4497 $ref: '#/responses/403' 4498 '500': 4499 $ref: '#/responses/500' 4500 4501 /system/CVEAllowlist: 4502 get: 4503 summary: Get the system level allowlist of CVE. 4504 description: Get the system level allowlist of CVE. This API can be called by all authenticated users. 4505 operationId: getSystemCVEAllowlist 4506 tags: 4507 - SystemCVEAllowlist 4508 parameters: 4509 - $ref: '#/parameters/requestId' 4510 responses: 4511 '200': 4512 description: Successfully retrieved the CVE allowlist. 4513 schema: 4514 $ref: "#/definitions/CVEAllowlist" 4515 '401': 4516 $ref: '#/responses/401' 4517 '500': 4518 $ref: '#/responses/500' 4519 put: 4520 summary: Update the system level allowlist of CVE. 4521 description: This API overwrites the system level allowlist of CVE with the list in request body. Only system Admin 4522 has permission to call this API. 4523 operationId: putSystemCVEAllowlist 4524 tags: 4525 - SystemCVEAllowlist 4526 parameters: 4527 - $ref: '#/parameters/requestId' 4528 - in: body 4529 name: allowlist 4530 description: The allowlist with new content 4531 schema: 4532 $ref: "#/definitions/CVEAllowlist" 4533 responses: 4534 '200': 4535 description: Successfully updated the CVE allowlist. 4536 '401': 4537 $ref: '#/responses/401' 4538 '403': 4539 $ref: '#/responses/403' 4540 '500': 4541 $ref: '#/responses/500' 4542 /system/scanAll/schedule: 4543 get: 4544 summary: Get scan all's schedule. 4545 description: This endpoint is for getting a schedule for the scan all job, which scans all of images in Harbor. 4546 tags: 4547 - scanAll 4548 operationId: getScanAllSchedule 4549 parameters: 4550 - $ref: '#/parameters/requestId' 4551 responses: 4552 '200': 4553 description: Get a schedule for the scan all job, which scans all of images in Harbor. 4554 schema: 4555 $ref: '#/definitions/Schedule' 4556 '401': 4557 $ref: '#/responses/401' 4558 '403': 4559 $ref: '#/responses/403' 4560 '412': 4561 $ref: '#/responses/412' 4562 '500': 4563 $ref: '#/responses/500' 4564 put: 4565 summary: Update scan all's schedule. 4566 description: This endpoint is for updating the schedule of scan all job, which scans all of images in Harbor. 4567 parameters: 4568 - $ref: '#/parameters/requestId' 4569 - name: schedule 4570 in: body 4571 required: true 4572 schema: 4573 $ref: '#/definitions/Schedule' 4574 description: Updates the schedule of scan all job, which scans all of images in Harbor. 4575 tags: 4576 - scanAll 4577 operationId: updateScanAllSchedule 4578 responses: 4579 '200': 4580 $ref: '#/responses/200' 4581 '400': 4582 $ref: '#/responses/400' 4583 '401': 4584 $ref: '#/responses/401' 4585 '403': 4586 $ref: '#/responses/403' 4587 '412': 4588 $ref: '#/responses/412' 4589 '500': 4590 $ref: '#/responses/500' 4591 post: 4592 summary: Create a schedule or a manual trigger for the scan all job. 4593 description: This endpoint is for creating a schedule or a manual trigger for the scan all job, which scans all of images in Harbor. 4594 parameters: 4595 - $ref: '#/parameters/requestId' 4596 - name: schedule 4597 in: body 4598 required: true 4599 schema: 4600 $ref: '#/definitions/Schedule' 4601 description: Create a schedule or a manual trigger for the scan all job. 4602 tags: 4603 - scanAll 4604 operationId: createScanAllSchedule 4605 responses: 4606 '201': 4607 $ref: '#/responses/201' 4608 '400': 4609 $ref: '#/responses/400' 4610 '401': 4611 $ref: '#/responses/401' 4612 '403': 4613 $ref: '#/responses/403' 4614 '409': 4615 $ref: '#/responses/409' 4616 '412': 4617 $ref: '#/responses/412' 4618 '500': 4619 $ref: '#/responses/500' 4620 /system/scanAll/stop: 4621 post: 4622 summary: Stop scanAll job execution 4623 description: Stop scanAll job execution 4624 parameters: 4625 - $ref: '#/parameters/requestId' 4626 tags: 4627 - scanAll 4628 operationId: stopScanAll 4629 responses: 4630 '202': 4631 $ref: '#/responses/202' 4632 '400': 4633 $ref: '#/responses/400' 4634 '401': 4635 $ref: '#/responses/401' 4636 '403': 4637 $ref: '#/responses/403' 4638 '500': 4639 $ref: '#/responses/500' 4640 /jobservice/pools: 4641 get: 4642 operationId: getWorkerPools 4643 summary: Get worker pools 4644 description: Get worker pools 4645 tags: 4646 - jobservice 4647 parameters: 4648 - $ref: '#/parameters/requestId' 4649 responses: 4650 '200': 4651 description: Get worker pools successfully. 4652 schema: 4653 type: array 4654 items: 4655 $ref: '#/definitions/WorkerPool' 4656 '401': 4657 $ref: '#/responses/401' 4658 '403': 4659 $ref: '#/responses/403' 4660 '500': 4661 $ref: '#/responses/500' 4662 /jobservice/pools/{pool_id}/workers: 4663 get: 4664 operationId: getWorkers 4665 summary: Get workers 4666 description: Get workers in current pool 4667 tags: 4668 - jobservice 4669 parameters: 4670 - $ref: '#/parameters/requestId' 4671 - name: pool_id 4672 in: path 4673 required: true 4674 type: string 4675 description: The name of the pool. 'all' stands for all pools 4676 responses: 4677 '200': 4678 description: Get workers successfully. 4679 schema: 4680 type: array 4681 items: 4682 $ref: '#/definitions/Worker' 4683 '401': 4684 $ref: '#/responses/401' 4685 '403': 4686 $ref: '#/responses/403' 4687 '404': 4688 $ref: '#/responses/404' 4689 '500': 4690 $ref: '#/responses/500' 4691 /jobservice/jobs/{job_id}: 4692 put: 4693 operationId: stopRunningJob 4694 summary: Stop running job 4695 description: Stop running job 4696 tags: 4697 - jobservice 4698 parameters: 4699 - $ref: '#/parameters/requestId' 4700 - name: job_id 4701 in: path 4702 required: true 4703 type: string 4704 description: The id of the job. 4705 responses: 4706 '200': 4707 description: Stop worker successfully. 4708 '401': 4709 $ref: '#/responses/401' 4710 '403': 4711 $ref: '#/responses/403' 4712 '404': 4713 $ref: '#/responses/404' 4714 '500': 4715 $ref: '#/responses/500' 4716 /jobservice/jobs/{job_id}/log: 4717 get: 4718 operationId: actionGetJobLog 4719 summary: Get job log by job id 4720 description: Get job log by job id, it is only used by administrator 4721 produces: 4722 - text/plain 4723 tags: 4724 - jobservice 4725 parameters: 4726 - $ref: '#/parameters/requestId' 4727 - name: job_id 4728 in: path 4729 required: true 4730 type: string 4731 description: The id of the job. 4732 responses: 4733 '200': 4734 description: Get job log successfully. 4735 headers: 4736 Content-Type: 4737 description: The content type of response body 4738 type: string 4739 schema: 4740 type: string 4741 '401': 4742 $ref: '#/responses/401' 4743 '403': 4744 $ref: '#/responses/403' 4745 '404': 4746 $ref: '#/responses/404' 4747 '500': 4748 $ref: '#/responses/500' 4749 /jobservice/queues: 4750 get: 4751 operationId: listJobQueues 4752 summary: list job queues 4753 description: list job queue 4754 tags: 4755 - jobservice 4756 parameters: 4757 - $ref: '#/parameters/requestId' 4758 responses: 4759 '200': 4760 description: List job queue successfully. 4761 schema: 4762 type: array 4763 items: 4764 $ref: '#/definitions/JobQueue' 4765 '401': 4766 $ref: '#/responses/401' 4767 '403': 4768 $ref: '#/responses/403' 4769 '404': 4770 $ref: '#/responses/404' 4771 '500': 4772 $ref: '#/responses/500' 4773 /jobservice/queues/{job_type}: 4774 put: 4775 operationId: actionPendingJobs 4776 summary: stop and clean, pause, resume pending jobs in the queue 4777 description: stop and clean, pause, resume pending jobs in the queue 4778 tags: 4779 - jobservice 4780 parameters: 4781 - $ref: '#/parameters/requestId' 4782 - name: job_type 4783 in: path 4784 required: true 4785 type: string 4786 description: The type of the job. 'all' stands for all job types 4787 - name: action_request 4788 in: body 4789 required: true 4790 schema: 4791 $ref: '#/definitions/ActionRequest' 4792 responses: 4793 '200': 4794 description: take action to the jobs in the queue successfully. 4795 '401': 4796 $ref: '#/responses/401' 4797 '403': 4798 $ref: '#/responses/403' 4799 '404': 4800 $ref: '#/responses/404' 4801 '500': 4802 $ref: '#/responses/500' 4803 /schedules: 4804 get: 4805 operationId: listSchedules 4806 description: List schedules 4807 tags: 4808 - schedule 4809 parameters: 4810 - $ref: '#/parameters/requestId' 4811 - $ref: '#/parameters/page' 4812 - $ref: '#/parameters/pageSize' 4813 responses: 4814 '200': 4815 description: list schedule successfully. 4816 schema: 4817 type: array 4818 items: 4819 type: object 4820 $ref: '#/definitions/ScheduleTask' 4821 headers: 4822 X-Total-Count: 4823 description: The total count of available items 4824 type: integer 4825 Link: 4826 description: Link to previous page and next page 4827 type: string 4828 '401': 4829 $ref: '#/responses/401' 4830 '403': 4831 $ref: '#/responses/403' 4832 '404': 4833 $ref: '#/responses/404' 4834 '500': 4835 $ref: '#/responses/500' 4836 /schedules/{job_type}/paused: 4837 get: 4838 operationId: getSchedulePaused 4839 description: Get scheduler paused status 4840 tags: 4841 - schedule 4842 parameters: 4843 - $ref: '#/parameters/requestId' 4844 - name: job_type 4845 in: path 4846 required: true 4847 type: string 4848 description: The type of the job. 'all' stands for all job types, current only support query with all 4849 responses: 4850 '200': 4851 description: Get scheduler status successfully. 4852 schema: 4853 type: object 4854 $ref: '#/definitions/SchedulerStatus' 4855 '401': 4856 $ref: '#/responses/401' 4857 '403': 4858 $ref: '#/responses/403' 4859 '404': 4860 $ref: '#/responses/404' 4861 '500': 4862 $ref: '#/responses/500' 4863 /ping: 4864 get: 4865 operationId: getPing 4866 summary: Ping Harbor to check if the API server is alive. 4867 description: This API simply replies a pong to indicate the process to handle API is up, disregarding the health status of dependent components. This path does not require any authentication. 4868 tags: 4869 - ping 4870 produces: 4871 - text/plain 4872 parameters: 4873 - $ref: '#/parameters/requestId' 4874 responses: 4875 '200': 4876 description: The API server is alive 4877 schema: 4878 type: string 4879 /retentions/metadatas: 4880 get: 4881 summary: Get Retention Metadatas 4882 description: Get Retention Metadatas. 4883 operationId: getRentenitionMetadata 4884 tags: 4885 - Retention 4886 parameters: 4887 - $ref: '#/parameters/requestId' 4888 responses: 4889 '200': 4890 description: Get Retention Metadatas successfully. 4891 schema: 4892 $ref: '#/definitions/RetentionMetadata' 4893 4894 /retentions: 4895 post: 4896 summary: Create Retention Policy 4897 operationId: createRetention 4898 description: >- 4899 Create Retention Policy, you can reference metadatas API for the policy model. 4900 You can check project metadatas to find whether a retention policy is already binded. 4901 This method should only be called when no retention policy binded to project yet. 4902 tags: 4903 - Retention 4904 parameters: 4905 - $ref: '#/parameters/requestId' 4906 - name: policy 4907 in: body 4908 description: Create Retention Policy successfully. 4909 required: true 4910 schema: 4911 $ref: '#/definitions/RetentionPolicy' 4912 responses: 4913 '201': 4914 $ref: '#/responses/201' 4915 '400': 4916 $ref: '#/responses/400' 4917 '401': 4918 $ref: '#/responses/401' 4919 '403': 4920 $ref: '#/responses/403' 4921 '500': 4922 $ref: '#/responses/500' 4923 4924 /retentions/{id}: 4925 get: 4926 summary: Get Retention Policy 4927 operationId: getRetention 4928 description: Get Retention Policy. 4929 tags: 4930 - Retention 4931 parameters: 4932 - $ref: '#/parameters/requestId' 4933 - name: id 4934 in: path 4935 type: integer 4936 format: int64 4937 required: true 4938 description: Retention ID. 4939 responses: 4940 '200': 4941 description: Get Retention Policy successfully. 4942 schema: 4943 $ref: '#/definitions/RetentionPolicy' 4944 '401': 4945 $ref: '#/responses/401' 4946 '403': 4947 $ref: '#/responses/403' 4948 '500': 4949 $ref: '#/responses/500' 4950 put: 4951 summary: Update Retention Policy 4952 operationId: updateRetention 4953 description: >- 4954 Update Retention Policy, you can reference metadatas API for the policy model. 4955 You can check project metadatas to find whether a retention policy is already binded. 4956 This method should only be called when retention policy has already binded to project. 4957 tags: 4958 - Retention 4959 parameters: 4960 - $ref: '#/parameters/requestId' 4961 - name: id 4962 in: path 4963 type: integer 4964 format: int64 4965 required: true 4966 description: Retention ID. 4967 - name: policy 4968 in: body 4969 required: true 4970 schema: 4971 $ref: '#/definitions/RetentionPolicy' 4972 responses: 4973 '200': 4974 description: Update Retention Policy successfully. 4975 '401': 4976 $ref: '#/responses/401' 4977 '403': 4978 $ref: '#/responses/403' 4979 '500': 4980 $ref: '#/responses/500' 4981 delete: 4982 summary: Delete Retention Policy 4983 operationId: deleteRetention 4984 description: >- 4985 Delete Retention Policy, you can reference metadatas API for the policy model. 4986 You can check project metadatas to find whether a retention policy is already binded. 4987 This method should only be called when retention policy has already binded to project. 4988 tags: 4989 - Retention 4990 parameters: 4991 - $ref: '#/parameters/requestId' 4992 - name: id 4993 in: path 4994 type: integer 4995 format: int64 4996 required: true 4997 description: Retention ID. 4998 responses: 4999 '200': 5000 description: Update Retention Policy successfully. 5001 '401': 5002 $ref: '#/responses/401' 5003 '403': 5004 $ref: '#/responses/403' 5005 '500': 5006 $ref: '#/responses/500' 5007 5008 /retentions/{id}/executions: 5009 post: 5010 summary: Trigger a Retention Execution 5011 operationId: triggerRetentionExecution 5012 description: Trigger a Retention Execution, if dry_run is True, nothing would be deleted actually. 5013 tags: 5014 - Retention 5015 produces: 5016 - text/plain 5017 parameters: 5018 - $ref: '#/parameters/requestId' 5019 - name: id 5020 in: path 5021 type: integer 5022 format: int64 5023 required: true 5024 description: Retention ID. 5025 - name: body 5026 in: body 5027 required: true 5028 schema: 5029 type: object 5030 properties: 5031 dry_run: 5032 type: boolean 5033 responses: 5034 '200': 5035 description: Trigger a Retention job successfully. 5036 '201': 5037 $ref: '#/responses/201' 5038 '401': 5039 $ref: '#/responses/401' 5040 '403': 5041 $ref: '#/responses/403' 5042 '500': 5043 $ref: '#/responses/500' 5044 get: 5045 summary: Get Retention executions 5046 operationId: listRetentionExecutions 5047 description: Get Retention executions, execution status may be delayed before job service schedule it up. 5048 tags: 5049 - Retention 5050 parameters: 5051 - $ref: '#/parameters/requestId' 5052 - name: id 5053 in: path 5054 type: integer 5055 format: int64 5056 required: true 5057 description: Retention ID. 5058 - name: page 5059 in: query 5060 type: integer 5061 format: int64 5062 required: false 5063 description: The page number. 5064 - name: page_size 5065 in: query 5066 type: integer 5067 format: int64 5068 required: false 5069 description: The size of per page. 5070 responses: 5071 '200': 5072 description: Get a Retention execution successfully. 5073 schema: 5074 type: array 5075 items: 5076 type: object 5077 $ref: '#/definitions/RetentionExecution' 5078 headers: 5079 X-Total-Count: 5080 description: The total count of available items 5081 type: integer 5082 Link: 5083 description: Link to previous page and next page 5084 type: string 5085 '401': 5086 $ref: '#/responses/401' 5087 '403': 5088 $ref: '#/responses/403' 5089 '500': 5090 $ref: '#/responses/500' 5091 5092 /retentions/{id}/executions/{eid}: 5093 patch: 5094 summary: Stop a Retention execution 5095 operationId: operateRetentionExecution 5096 description: Stop a Retention execution, only support "stop" action now. 5097 tags: 5098 - Retention 5099 parameters: 5100 - $ref: '#/parameters/requestId' 5101 - name: id 5102 in: path 5103 type: integer 5104 format: int64 5105 required: true 5106 description: Retention ID. 5107 - name: eid 5108 in: path 5109 type: integer 5110 format: int64 5111 required: true 5112 description: Retention execution ID. 5113 - name: body 5114 in: body 5115 description: The action, only support "stop" now. 5116 required: true 5117 schema: 5118 type: object 5119 properties: 5120 action: 5121 type: string 5122 responses: 5123 '200': 5124 description: Stop a Retention job successfully. 5125 '401': 5126 $ref: '#/responses/401' 5127 '403': 5128 $ref: '#/responses/403' 5129 '500': 5130 $ref: '#/responses/500' 5131 5132 /retentions/{id}/executions/{eid}/tasks: 5133 get: 5134 summary: Get Retention tasks 5135 operationId: listRetentionTasks 5136 description: Get Retention tasks, each repository as a task. 5137 tags: 5138 - Retention 5139 parameters: 5140 - $ref: '#/parameters/requestId' 5141 - name: id 5142 in: path 5143 type: integer 5144 format: int64 5145 required: true 5146 description: Retention ID. 5147 - name: eid 5148 in: path 5149 type: integer 5150 format: int64 5151 required: true 5152 description: Retention execution ID. 5153 - name: page 5154 in: query 5155 type: integer 5156 format: int64 5157 required: false 5158 description: The page number. 5159 - name: page_size 5160 in: query 5161 type: integer 5162 format: int64 5163 required: false 5164 description: The size of per page. 5165 responses: 5166 '200': 5167 description: Get Retention job tasks successfully. 5168 schema: 5169 type: array 5170 items: 5171 type: object 5172 $ref: '#/definitions/RetentionExecutionTask' 5173 headers: 5174 X-Total-Count: 5175 description: The total count of available items 5176 type: integer 5177 Link: 5178 description: Link to previous page and next page 5179 type: string 5180 '401': 5181 $ref: '#/responses/401' 5182 '403': 5183 $ref: '#/responses/403' 5184 '500': 5185 $ref: '#/responses/500' 5186 5187 /retentions/{id}/executions/{eid}/tasks/{tid}: 5188 get: 5189 summary: Get Retention job task log 5190 operationId: getRetentionTaskLog 5191 description: Get Retention job task log, tags ratain or deletion detail will be shown in a table. 5192 tags: 5193 - Retention 5194 produces: 5195 - text/plain 5196 parameters: 5197 - $ref: '#/parameters/requestId' 5198 - name: id 5199 in: path 5200 type: integer 5201 format: int64 5202 required: true 5203 description: Retention ID. 5204 - name: eid 5205 in: path 5206 type: integer 5207 format: int64 5208 required: true 5209 description: Retention execution ID. 5210 - name: tid 5211 in: path 5212 type: integer 5213 format: int64 5214 required: true 5215 description: Retention execution ID. 5216 responses: 5217 '200': 5218 description: Get Retention job task log successfully. 5219 schema: 5220 type: string 5221 '401': 5222 $ref: '#/responses/401' 5223 '403': 5224 $ref: '#/responses/403' 5225 '500': 5226 $ref: '#/responses/500' 5227 5228 '/scanners': 5229 get: 5230 summary: List scanner registrations 5231 description: | 5232 Returns a list of currently configured scanner registrations. 5233 tags: 5234 - scanner 5235 operationId: listScanners 5236 parameters: 5237 - $ref: '#/parameters/requestId' 5238 - $ref: '#/parameters/query' 5239 - $ref: '#/parameters/sort' 5240 - $ref: '#/parameters/page' 5241 - $ref: '#/parameters/pageSize' 5242 responses: 5243 '200': 5244 description: A list of scanner registrations. 5245 schema: 5246 type: array 5247 items: 5248 $ref: '#/definitions/ScannerRegistration' 5249 headers: 5250 X-Total-Count: 5251 description: The total count of available items 5252 type: integer 5253 Link: 5254 description: Link to previous page and next page 5255 type: string 5256 '400': 5257 $ref: '#/responses/400' 5258 '401': 5259 $ref: '#/responses/401' 5260 '403': 5261 $ref: '#/responses/403' 5262 '500': 5263 $ref: '#/responses/500' 5264 post: 5265 summary: Create a scanner registration 5266 description: | 5267 Creats a new scanner registration with the given data. 5268 tags: 5269 - scanner 5270 operationId: createScanner 5271 parameters: 5272 - $ref: '#/parameters/requestId' 5273 - name: registration 5274 in: body 5275 description: A scanner registration to be created. 5276 required: true 5277 schema: 5278 $ref: '#/definitions/ScannerRegistrationReq' 5279 responses: 5280 '201': 5281 description: Created successfully 5282 headers: 5283 Location: 5284 type: string 5285 description: The URL of the created resource 5286 '400': 5287 $ref: '#/responses/400' 5288 '401': 5289 $ref: '#/responses/401' 5290 '403': 5291 $ref: '#/responses/403' 5292 '500': 5293 $ref: '#/responses/500' 5294 '/scanners/ping': 5295 post: 5296 summary: Tests scanner registration settings 5297 description: | 5298 Pings scanner adapter to test endpoint URL and authorization settings. 5299 tags: 5300 - scanner 5301 operationId: pingScanner 5302 parameters: 5303 - $ref: '#/parameters/requestId' 5304 - name: settings 5305 in: body 5306 description: A scanner registration settings to be tested. 5307 required: true 5308 schema: 5309 $ref: '#/definitions/ScannerRegistrationSettings' 5310 responses: 5311 '200': 5312 $ref: '#/responses/200' 5313 '400': 5314 $ref: '#/responses/400' 5315 '401': 5316 $ref: '#/responses/401' 5317 '403': 5318 $ref: '#/responses/403' 5319 '500': 5320 $ref: '#/responses/500' 5321 '/scanners/{registration_id}': 5322 get: 5323 summary: Get a scanner registration details 5324 description: | 5325 Retruns the details of the specified scanner registration. 5326 tags: 5327 - scanner 5328 operationId: getScanner 5329 parameters: 5330 - $ref: '#/parameters/requestId' 5331 - name: registration_id 5332 in: path 5333 description: The scanner registration identifer. 5334 required: true 5335 type: string 5336 responses: 5337 '200': 5338 description: The details of the scanner registration. 5339 schema: 5340 $ref: '#/definitions/ScannerRegistration' 5341 '401': 5342 $ref: '#/responses/401' 5343 '403': 5344 $ref: '#/responses/403' 5345 '404': 5346 $ref: '#/responses/404' 5347 '500': 5348 $ref: '#/responses/500' 5349 put: 5350 summary: Update a scanner registration 5351 description: | 5352 Updates the specified scanner registration. 5353 tags: 5354 - scanner 5355 operationId: updateScanner 5356 parameters: 5357 - $ref: '#/parameters/requestId' 5358 - name: registration_id 5359 in: path 5360 description: The scanner registration identifier. 5361 required: true 5362 type: string 5363 - name: registration 5364 in: body 5365 required: true 5366 description: A scanner registraiton to be updated. 5367 schema: 5368 $ref: '#/definitions/ScannerRegistrationReq' 5369 responses: 5370 '200': 5371 $ref: '#/responses/200' 5372 '401': 5373 $ref: '#/responses/401' 5374 '403': 5375 $ref: '#/responses/403' 5376 '404': 5377 $ref: '#/responses/404' 5378 '500': 5379 $ref: '#/responses/500' 5380 delete: 5381 summary: Delete a scanner registration 5382 description: | 5383 Deletes the specified scanner registration. 5384 tags: 5385 - scanner 5386 operationId: deleteScanner 5387 parameters: 5388 - $ref: '#/parameters/requestId' 5389 - name: registration_id 5390 in: path 5391 description: The scanner registration identifier. 5392 required: true 5393 type: string 5394 responses: 5395 '200': 5396 description: Deleted successfully and return the deleted registration 5397 schema: 5398 $ref: '#/definitions/ScannerRegistration' 5399 '401': 5400 $ref: '#/responses/401' 5401 '403': 5402 $ref: '#/responses/403' 5403 '404': 5404 $ref: '#/responses/404' 5405 '500': 5406 $ref: '#/responses/500' 5407 patch: 5408 summary: Set system default scanner registration 5409 description: | 5410 Set the specified scanner registration as the system default one. 5411 tags: 5412 - scanner 5413 operationId: setScannerAsDefault 5414 parameters: 5415 - $ref: '#/parameters/requestId' 5416 - name: registration_id 5417 in: path 5418 description: The scanner registration identifier. 5419 required: true 5420 type: string 5421 - name: payload 5422 in: body 5423 required: true 5424 schema: 5425 $ref: '#/definitions/IsDefault' 5426 responses: 5427 '200': 5428 description: Successfully set the specified scanner registration as system default 5429 '401': 5430 $ref: '#/responses/401' 5431 '403': 5432 $ref: '#/responses/403' 5433 '500': 5434 $ref: '#/responses/500' 5435 '/scanners/{registration_id}/metadata': 5436 get: 5437 summary: Get the metadata of the specified scanner registration 5438 description: | 5439 Get the metadata of the specified scanner registration, including the capabilities and customized properties. 5440 tags: 5441 - scanner 5442 operationId: getScannerMetadata 5443 parameters: 5444 - $ref: '#/parameters/requestId' 5445 - name: registration_id 5446 in: path 5447 required: true 5448 description: The scanner registration identifier. 5449 type: string 5450 responses: 5451 '200': 5452 description: The metadata of the specified scanner adapter 5453 schema: 5454 $ref: '#/definitions/ScannerAdapterMetadata' 5455 '401': 5456 $ref: '#/responses/401' 5457 '403': 5458 $ref: '#/responses/403' 5459 '500': 5460 $ref: '#/responses/500' 5461 /users: 5462 get: 5463 summary: List users 5464 tags: 5465 - user 5466 operationId: listUsers 5467 parameters: 5468 - $ref: '#/parameters/requestId' 5469 - $ref: '#/parameters/query' 5470 - $ref: '#/parameters/sort' 5471 - $ref: '#/parameters/page' 5472 - $ref: '#/parameters/pageSize' 5473 responses: 5474 '200': 5475 description: return the list of users. 5476 schema: 5477 type: array 5478 items: 5479 $ref: '#/definitions/UserResp' 5480 headers: 5481 X-Total-Count: 5482 description: The total count of users 5483 type: integer 5484 Link: 5485 description: Link to previous page and next page 5486 type: string 5487 '401': 5488 $ref: '#/responses/401' 5489 '403': 5490 $ref: '#/responses/403' 5491 '500': 5492 $ref: '#/responses/500' 5493 post: 5494 summary: Create a local user. 5495 description: This API can be used only when the authentication mode is for local DB. When self registration is disabled. 5496 tags: 5497 - user 5498 operationId: createUser 5499 parameters: 5500 - $ref: '#/parameters/requestId' 5501 - name: userReq 5502 in: body 5503 description: The new user 5504 required: true 5505 schema: 5506 $ref: '#/definitions/UserCreationReq' 5507 responses: 5508 '201': 5509 $ref: '#/responses/201' 5510 '400': 5511 $ref: '#/responses/400' 5512 '401': 5513 $ref: '#/responses/401' 5514 '403': 5515 description: When the self registration is disabled, non-admin does not have permission to create user. When self registration is enabled, this API can only be called from UI portal, calling it via script will get a 403 error. 5516 '409': 5517 $ref: '#/responses/409' 5518 '500': 5519 $ref: '#/responses/500' 5520 /users/current: 5521 get: 5522 summary: Get current user info. 5523 tags: 5524 - user 5525 operationId: getCurrentUserInfo 5526 parameters: 5527 - $ref: '#/parameters/requestId' 5528 responses: 5529 '200': 5530 description: Get current user information successfully. 5531 schema: 5532 $ref: '#/definitions/UserResp' 5533 '401': 5534 $ref: '#/responses/401' 5535 '500': 5536 $ref: '#/responses/500' 5537 /users/search: 5538 get: 5539 summary: Search users by username 5540 description: | 5541 This endpoint is to search the users by username. It's open for all authenticated requests. 5542 tags: 5543 - user 5544 operationId: searchUsers 5545 parameters: 5546 - $ref: '#/parameters/requestId' 5547 - $ref: '#/parameters/page' 5548 - $ref: '#/parameters/pageSize' 5549 - name: username 5550 in: query 5551 type: string 5552 required: true 5553 description: Username for filtering results. 5554 responses: 5555 '200': 5556 description: Search users by username successfully. 5557 schema: 5558 type: array 5559 items: 5560 $ref: '#/definitions/UserSearchRespItem' 5561 headers: 5562 X-Total-Count: 5563 description: The total count of available items 5564 type: integer 5565 Link: 5566 description: Link to previous page and next page 5567 type: string 5568 '401': 5569 $ref: '#/responses/401' 5570 '500': 5571 $ref: '#/responses/500' 5572 '/users/{user_id}': 5573 get: 5574 summary: Get a user's profile. 5575 parameters: 5576 - $ref: '#/parameters/requestId' 5577 - name: user_id 5578 in: path 5579 type: integer 5580 format: int 5581 required: true 5582 tags: 5583 - user 5584 operationId: getUser 5585 responses: 5586 '200': 5587 description: Get user's info successfully. 5588 schema: 5589 $ref: '#/definitions/UserResp' 5590 '401': 5591 $ref: '#/responses/401' 5592 '403': 5593 $ref: '#/responses/403' 5594 '404': 5595 $ref: '#/responses/404' 5596 '500': 5597 $ref: '#/responses/500' 5598 put: 5599 summary: Update user's profile. 5600 parameters: 5601 - $ref: '#/parameters/requestId' 5602 - name: user_id 5603 in: path 5604 type: integer 5605 format: int 5606 required: true 5607 description: Registered user ID 5608 - name: profile 5609 in: body 5610 description: 'Only email, realname and comment can be modified.' 5611 required: true 5612 schema: 5613 $ref: '#/definitions/UserProfile' 5614 tags: 5615 - user 5616 operationId: updateUserProfile 5617 responses: 5618 '200': 5619 $ref: '#/responses/200' 5620 '401': 5621 $ref: '#/responses/401' 5622 '403': 5623 $ref: '#/responses/403' 5624 '404': 5625 $ref: '#/responses/404' 5626 '500': 5627 $ref: '#/responses/500' 5628 delete: 5629 summary: Mark a registered user as be removed. 5630 description: | 5631 This endpoint let administrator of Harbor mark a registered user as removed.It actually won't be deleted from DB. 5632 parameters: 5633 - $ref: '#/parameters/requestId' 5634 - name: user_id 5635 in: path 5636 type: integer 5637 format: int 5638 required: true 5639 description: User ID for marking as to be removed. 5640 tags: 5641 - user 5642 operationId: deleteUser 5643 responses: 5644 '200': 5645 $ref: '#/responses/200' 5646 '401': 5647 $ref: '#/responses/401' 5648 '403': 5649 $ref: '#/responses/403' 5650 '404': 5651 $ref: '#/responses/404' 5652 '500': 5653 $ref: '#/responses/500' 5654 /users/{user_id}/sysadmin: 5655 put: 5656 summary: Update a registered user to change to be an administrator of Harbor. 5657 tags: 5658 - user 5659 operationId: setUserSysAdmin 5660 parameters: 5661 - $ref: '#/parameters/requestId' 5662 - name: user_id 5663 in: path 5664 type: integer 5665 format: int 5666 required: true 5667 - name: sysadmin_flag 5668 in: body 5669 description: Toggle a user to admin or not. 5670 required: true 5671 schema: 5672 $ref: '#/definitions/UserSysAdminFlag' 5673 responses: 5674 '200': 5675 $ref: '#/responses/200' 5676 '401': 5677 $ref: '#/responses/401' 5678 '403': 5679 $ref: '#/responses/403' 5680 '404': 5681 $ref: '#/responses/404' 5682 '500': 5683 description: Unexpected internal errors. 5684 '/users/{user_id}/password': 5685 put: 5686 summary: Change the password on a user that already exists. 5687 description: | 5688 This endpoint is for user to update password. Users with the admin role can change any user's password. Regular users can change only their own password. 5689 tags: 5690 - user 5691 operationId: updateUserPassword 5692 parameters: 5693 - $ref: '#/parameters/requestId' 5694 - name: user_id 5695 in: path 5696 type: integer 5697 format: int 5698 required: true 5699 - name: password 5700 in: body 5701 description: Password to be updated, the attribute 'old_password' is optional when the API is called by the system administrator. 5702 required: true 5703 schema: 5704 $ref: '#/definitions/PasswordReq' 5705 responses: 5706 '200': 5707 $ref: '#/responses/200' 5708 '400': 5709 description: Invalid user ID; Password does not meet requirement 5710 '401': 5711 $ref: '#/responses/401' 5712 '403': 5713 description: The caller does not have permission to update the password of the user with given ID, or the old password in request body is not correct. 5714 '500': 5715 $ref: '#/responses/500' 5716 /users/current/permissions: 5717 get: 5718 summary: Get current user permissions. 5719 tags: 5720 - user 5721 operationId: getCurrentUserPermissions 5722 parameters: 5723 - $ref: '#/parameters/requestId' 5724 - name: scope 5725 in: query 5726 type: string 5727 required: false 5728 description: The scope for the permission 5729 - name: relative 5730 in: query 5731 type: boolean 5732 required: false 5733 description: | 5734 If true, the resources in the response are relative to the scope, 5735 eg for resource '/project/1/repository' if relative is 'true' then the resource in response will be 'repository'. 5736 responses: 5737 '200': 5738 description: Get current user permission successfully. 5739 schema: 5740 type: array 5741 items: 5742 $ref: '#/definitions/Permission' 5743 '401': 5744 description: User need to log in first. 5745 '500': 5746 description: Internal errors. 5747 '/users/{user_id}/cli_secret': 5748 put: 5749 summary: Set CLI secret for a user. 5750 description: >- 5751 This endpoint let user generate a new CLI secret for himself. This API only works when auth mode is set to 'OIDC'. 5752 Once this API returns with successful status, the old secret will be invalid, as there will be only one CLI secret 5753 for a user. 5754 tags: 5755 - user 5756 operationId: setCliSecret 5757 parameters: 5758 - $ref: '#/parameters/requestId' 5759 - name: user_id 5760 in: path 5761 type: integer 5762 format: int 5763 required: true 5764 description: User ID 5765 - name: secret 5766 in: body 5767 required: true 5768 schema: 5769 $ref: '#/definitions/OIDCCliSecretReq' 5770 responses: 5771 '200': 5772 description: The secret is successfully updated 5773 '400': 5774 description: Invalid user ID. Or user is not onboarded via OIDC authentication. Or the secret does not meet the standard. 5775 '401': 5776 $ref: '#/responses/401' 5777 '403': 5778 $ref: '#/responses/403' 5779 '404': 5780 $ref: '#/responses/404' 5781 '412': 5782 description: The auth mode of the system is not "oidc_auth", or the user is not onboarded via OIDC AuthN. 5783 '500': 5784 $ref: '#/responses/500' 5785 5786 /labels: 5787 get: 5788 summary: List labels according to the query strings. 5789 description: | 5790 This endpoint let user list labels by name, scope and project_id 5791 tags: 5792 - label 5793 operationId: ListLabels 5794 parameters: 5795 - $ref: '#/parameters/requestId' 5796 - $ref: '#/parameters/query' 5797 - $ref: '#/parameters/sort' 5798 - $ref: '#/parameters/page' 5799 - $ref: '#/parameters/pageSize' 5800 - name: name 5801 in: query 5802 type: string 5803 required: false 5804 description: The label name. 5805 - name: scope 5806 in: query 5807 type: string 5808 required: false 5809 description: The label scope. Valid values are g and p. g for global labels and p for project labels. 5810 - name: project_id 5811 in: query 5812 type: integer 5813 format: int64 5814 required: false 5815 description: Relevant project ID, required when scope is p. 5816 responses: 5817 '200': 5818 description: Get successfully. 5819 schema: 5820 type: array 5821 items: 5822 $ref: '#/definitions/Label' 5823 headers: 5824 X-Total-Count: 5825 description: The total count of available items 5826 type: integer 5827 Link: 5828 description: Link to previous page and next page 5829 type: string 5830 '400': 5831 $ref: '#/responses/400' 5832 '401': 5833 $ref: '#/responses/401' 5834 '500': 5835 $ref: '#/responses/500' 5836 post: 5837 summary: Post creates a label 5838 description: | 5839 This endpoint let user creates a label. 5840 tags: 5841 - label 5842 operationId: CreateLabel 5843 parameters: 5844 - $ref: '#/parameters/requestId' 5845 - name: label 5846 in: body 5847 description: The json object of label. 5848 required: true 5849 schema: 5850 $ref: '#/definitions/Label' 5851 responses: 5852 '201': 5853 description: Create successfully. 5854 headers: 5855 Location: 5856 type: string 5857 description: The URL of the created resource 5858 '400': 5859 $ref: '#/responses/400' 5860 '401': 5861 $ref: '#/responses/401' 5862 '409': 5863 $ref: '#/responses/409' 5864 '415': 5865 $ref: '#/responses/415' 5866 '500': 5867 $ref: '#/responses/500' 5868 '/labels/{label_id}': 5869 get: 5870 summary: Get the label specified by ID. 5871 description: | 5872 This endpoint let user get the label by specific ID. 5873 tags: 5874 - label 5875 operationId: GetLabelByID 5876 parameters: 5877 - $ref: '#/parameters/requestId' 5878 - $ref: '#/parameters/labelId' 5879 responses: 5880 '200': 5881 description: Get successfully. 5882 schema: 5883 $ref: '#/definitions/Label' 5884 '401': 5885 $ref: '#/responses/401' 5886 '404': 5887 $ref: '#/responses/404' 5888 '500': 5889 $ref: '#/responses/500' 5890 put: 5891 summary: Update the label properties. 5892 description: | 5893 This endpoint let user update label properties. 5894 tags: 5895 - label 5896 operationId: UpdateLabel 5897 parameters: 5898 - $ref: '#/parameters/requestId' 5899 - $ref: '#/parameters/labelId' 5900 - name: label 5901 in: body 5902 description: The updated label json object. 5903 required: true 5904 schema: 5905 $ref: '#/definitions/Label' 5906 responses: 5907 '200': 5908 $ref: '#/responses/200' 5909 '400': 5910 $ref: '#/responses/400' 5911 '401': 5912 $ref: '#/responses/401' 5913 '404': 5914 $ref: '#/responses/404' 5915 '409': 5916 $ref: '#/responses/409' 5917 '500': 5918 $ref: '#/responses/500' 5919 delete: 5920 summary: Delete the label specified by ID. 5921 description: | 5922 Delete the label specified by ID. 5923 tags: 5924 - label 5925 operationId: DeleteLabel 5926 parameters: 5927 - $ref: '#/parameters/requestId' 5928 - $ref: '#/parameters/labelId' 5929 responses: 5930 '200': 5931 $ref: '#/responses/200' 5932 '400': 5933 $ref: '#/responses/400' 5934 '401': 5935 $ref: '#/responses/401' 5936 '404': 5937 $ref: '#/responses/404' 5938 '500': 5939 $ref: '#/responses/500' 5940 5941 /export/cve: 5942 post: 5943 summary: Export scan data for selected projects 5944 description: Export scan data for selected projects 5945 tags: 5946 - scan data export 5947 operationId: exportScanData 5948 parameters: 5949 - $ref: '#/parameters/requestId' 5950 - $ref: '#/parameters/scanDataType' 5951 - name: criteria 5952 in: body 5953 description: The criteria for the export 5954 required: true 5955 schema: 5956 $ref: '#/definitions/ScanDataExportRequest' 5957 responses: 5958 '200': 5959 description: Success. 5960 schema: 5961 $ref: '#/definitions/ScanDataExportJob' 5962 '400': 5963 $ref: '#/responses/400' 5964 '401': 5965 $ref: '#/responses/401' 5966 '403': 5967 $ref: '#/responses/403' 5968 '404': 5969 $ref: '#/responses/404' 5970 '405': 5971 $ref: '#/responses/405' 5972 '409': 5973 $ref: '#/responses/409' 5974 '500': 5975 $ref: '#/responses/500' 5976 /export/cve/execution/{execution_id}: 5977 get: 5978 summary: Get the specific scan data export execution 5979 description: Get the scan data export execution specified by ID 5980 tags: 5981 - scan data export 5982 operationId: getScanDataExportExecution 5983 parameters: 5984 - $ref: '#/parameters/requestId' 5985 - $ref: '#/parameters/executionId' 5986 responses: 5987 '200': 5988 description: Success 5989 schema: 5990 $ref: '#/definitions/ScanDataExportExecution' 5991 '401': 5992 $ref: '#/responses/401' 5993 '403': 5994 $ref: '#/responses/403' 5995 '404': 5996 $ref: '#/responses/404' 5997 '500': 5998 $ref: '#/responses/500' 5999 /export/cve/executions: 6000 get: 6001 summary: Get a list of specific scan data export execution jobs for a specified user 6002 description: Get a list of specific scan data export execution jobs for a specified user 6003 tags: 6004 - scan data export 6005 operationId: getScanDataExportExecutionList 6006 parameters: 6007 - $ref: '#/parameters/requestId' 6008 responses: 6009 '200': 6010 description: Success 6011 schema: 6012 $ref: '#/definitions/ScanDataExportExecutionList' 6013 '401': 6014 $ref: '#/responses/401' 6015 '403': 6016 $ref: '#/responses/403' 6017 '404': 6018 $ref: '#/responses/404' 6019 '500': 6020 $ref: '#/responses/500' 6021 /export/cve/download/{execution_id}: 6022 get: 6023 summary: Download the scan data export file 6024 description: Download the scan data report. Default format is CSV 6025 tags: 6026 - scan data export 6027 operationId: downloadScanData 6028 produces: 6029 - text/csv 6030 parameters: 6031 - $ref: '#/parameters/requestId' 6032 - $ref: '#/parameters/executionId' 6033 - name: format 6034 in: query 6035 type: string 6036 required: false 6037 description: The format of the data to be exported. e.g. CSV or PDF 6038 responses: 6039 '200': 6040 description: Data file containing the export data 6041 schema: 6042 type: file 6043 headers: 6044 Content-Disposition: 6045 type: string 6046 description: Value is a CSV formatted file; filename=export.csv 6047 '401': 6048 $ref: '#/responses/401' 6049 '403': 6050 $ref: '#/responses/403' 6051 '404': 6052 $ref: '#/responses/404' 6053 '500': 6054 $ref: '#/responses/500' 6055 /security/summary: 6056 get: 6057 summary: Get vulnerability system summary 6058 description: Retrieve the vulnerability summary of the system 6059 tags: 6060 - securityhub 6061 operationId: getSecuritySummary 6062 parameters: 6063 - $ref: '#/parameters/requestId' 6064 - name: with_dangerous_cve 6065 in: query 6066 description: Specify whether the dangerous CVEs are included inside summary information 6067 type: boolean 6068 required: false 6069 default: false 6070 - name: with_dangerous_artifact 6071 in: query 6072 description: Specify whether the dangerous Artifact are included inside summary information 6073 type: boolean 6074 required: false 6075 default: false 6076 responses: 6077 '200': 6078 description: Success 6079 schema: 6080 $ref: '#/definitions/SecuritySummary' 6081 '401': 6082 $ref: '#/responses/401' 6083 '403': 6084 $ref: '#/responses/403' 6085 '404': 6086 $ref: '#/responses/404' 6087 '500': 6088 $ref: '#/responses/500' 6089 6090 /security/vul: 6091 get: 6092 summary: Get the vulnerability list. 6093 description: | 6094 Get the vulnerability list. use q to pass the query condition, 6095 supported conditions: 6096 cve_id(exact match) 6097 cvss_score_v3(range condition) 6098 severity(exact match) 6099 repository_name(exact match) 6100 project_id(exact match) 6101 package(exact match) 6102 tag(exact match) 6103 digest(exact match) 6104 tags: 6105 - securityhub 6106 operationId: ListVulnerabilities 6107 parameters: 6108 - $ref: '#/parameters/requestId' 6109 - $ref: '#/parameters/query' 6110 - $ref: '#/parameters/page' 6111 - $ref: '#/parameters/pageSize' 6112 - name: tune_count 6113 in: query 6114 description: Enable to ignore X-Total-Count when the total count > 1000, if the total count is less than 1000, the real total count is returned, else -1. 6115 type: boolean 6116 required: false 6117 default: false 6118 - name: with_tag 6119 in: query 6120 description: Specify whether the tag information is included inside vulnerability information 6121 type: boolean 6122 required: false 6123 default: false 6124 responses: 6125 '200': 6126 description: The vulnerability list. 6127 schema: 6128 type: array 6129 items: 6130 $ref: '#/definitions/VulnerabilityItem' 6131 headers: 6132 X-Total-Count: 6133 description: The total count of vulnerabilities 6134 type: integer 6135 Link: 6136 description: Link refers to the previous page and next page 6137 type: string 6138 '400': 6139 $ref: '#/responses/400' 6140 '401': 6141 $ref: '#/responses/401' 6142 '500': 6143 $ref: '#/responses/500' 6144 6145 /permissions: 6146 get: 6147 summary: Get system or project level permissions info. 6148 operationId: getPermissions 6149 description: | 6150 This endpoint is for retrieving resource and action info that only provides for admin user(system admin and project admin). 6151 tags: 6152 - permissions 6153 parameters: 6154 - $ref: '#/parameters/requestId' 6155 responses: 6156 '200': 6157 description: Get permissions successfully. 6158 schema: 6159 $ref: '#/definitions/Permissions' 6160 '401': 6161 $ref: '#/responses/401' 6162 '403': 6163 $ref: '#/responses/403' 6164 '404': 6165 $ref: '#/responses/404' 6166 '500': 6167 $ref: '#/responses/500' 6168 6169 parameters: 6170 query: 6171 name: q 6172 description: Query string to query resources. Supported query patterns are "exact match(k=v)", "fuzzy match(k=~v)", "range(k=[min~max])", "list with union releationship(k={v1 v2 v3})" and "list with intersetion relationship(k=(v1 v2 v3))". The value of range and list can be string(enclosed by " or '), integer or time(in format "2020-04-09 02:36:00"). All of these query patterns should be put in the query string "q=xxx" and splitted by ",". e.g. q=k1=v1,k2=~v2,k3=[min~max] 6173 in: query 6174 type: string 6175 required: false 6176 sort: 6177 name: sort 6178 description: Sort the resource list in ascending or descending order. e.g. sort by field1 in ascending order and field2 in descending order with "sort=field1,-field2" 6179 in: query 6180 type: string 6181 required: false 6182 page: 6183 name: page 6184 in: query 6185 type: integer 6186 format: int64 6187 required: false 6188 description: The page number 6189 default: 1 6190 pageSize: 6191 name: page_size 6192 in: query 6193 type: integer 6194 format: int64 6195 required: false 6196 description: The size of per page 6197 default: 10 6198 maximum: 100 6199 requestId: 6200 name: X-Request-Id 6201 description: An unique ID for the request 6202 in: header 6203 type: string 6204 required: false 6205 minLength: 1 6206 resourceNameInLocation: 6207 name: X-Resource-Name-In-Location 6208 description: The flag to indicate whether to return the name of the resource in Location. When X-Resource-Name-In-Location is true, the Location will return the name of the resource. 6209 in: header 6210 type: boolean 6211 required: false 6212 default: false 6213 isResourceName: 6214 name: X-Is-Resource-Name 6215 description: The flag to indicate whether the parameter which supports both name and id in the path is the name of the resource. When the X-Is-Resource-Name is false and the parameter can be converted to an integer, the parameter will be as an id, otherwise, it will be as a name. 6216 in: header 6217 type: boolean 6218 required: false 6219 default: false 6220 acceptVulnerabilities: 6221 name: X-Accept-Vulnerabilities 6222 in: header 6223 type: string 6224 default: 'application/vnd.security.vulnerability.report; version=1.1, application/vnd.scanner.adapter.vuln.report.harbor+json; version=1.0' 6225 description: |- 6226 A comma-separated lists of MIME types for the scan report or scan summary. The first mime type will be used when the report found for it. 6227 Currently the mime type supports 'application/vnd.scanner.adapter.vuln.report.harbor+json; version=1.0' and 'application/vnd.security.vulnerability.report; version=1.1' 6228 projectName: 6229 name: project_name 6230 in: path 6231 description: The name of the project 6232 required: true 6233 type: string 6234 projectNameOrId: 6235 name: project_name_or_id 6236 in: path 6237 description: The name or id of the project 6238 required: true 6239 type: string 6240 repositoryName: 6241 name: repository_name 6242 in: path 6243 description: The name of the repository. If it contains slash, encode it twice over with URL encoding. e.g. a/b -> a%2Fb -> a%252Fb 6244 required: true 6245 type: string 6246 reference: 6247 name: reference 6248 in: path 6249 description: The reference of the artifact, can be digest or tag 6250 required: true 6251 type: string 6252 digest: 6253 name: digest 6254 in: path 6255 description: The digest of the resource 6256 required: true 6257 type: string 6258 tagName: 6259 name: tag_name 6260 in: path 6261 description: The name of the tag 6262 required: true 6263 type: string 6264 instanceName: 6265 name: preheat_instance_name 6266 in: path 6267 description: Instance Name 6268 required: true 6269 type: string 6270 preheatPolicyName: 6271 name: preheat_policy_name 6272 in: path 6273 description: Preheat Policy Name 6274 required: true 6275 type: string 6276 executionId: 6277 name: execution_id 6278 in: path 6279 description: Execution ID 6280 required: true 6281 type: integer 6282 taskId: 6283 name: task_id 6284 in: path 6285 description: Task ID 6286 required: true 6287 type: integer 6288 robotId: 6289 name: robot_id 6290 in: path 6291 description: Robot ID 6292 required: true 6293 type: integer 6294 gcId: 6295 name: gc_id 6296 in: path 6297 description: The ID of the gc log 6298 required: true 6299 type: integer 6300 format: int64 6301 purgeId: 6302 name: purge_id 6303 in: path 6304 description: The ID of the purge log 6305 required: true 6306 type: integer 6307 format: int64 6308 labelId: 6309 name: label_id 6310 in: path 6311 description: Label ID 6312 required: true 6313 type: integer 6314 format: int64 6315 webhookPolicyId: 6316 name: webhook_policy_id 6317 in: path 6318 description: The ID of the webhook policy 6319 required: true 6320 type: integer 6321 format: int64 6322 immutableRuleId: 6323 name: immutable_rule_id 6324 in: path 6325 description: The ID of the immutable rule 6326 required: true 6327 type: integer 6328 format: int64 6329 accessoryId: 6330 name: accessory_id 6331 in: path 6332 description: The ID of the accessory 6333 required: true 6334 type: integer 6335 format: int64 6336 scanDataType: 6337 name: X-Scan-Data-Type 6338 description: The type of scan data to export 6339 in: header 6340 type: string 6341 required: true 6342 userName: 6343 name: user_name 6344 description: The name of the user 6345 in: query 6346 type: string 6347 required: true 6348 6349 responses: 6350 '200': 6351 description: Success 6352 headers: 6353 X-Request-Id: 6354 description: The ID of the corresponding request for the response 6355 type: string 6356 '201': 6357 description: Created 6358 headers: 6359 X-Request-Id: 6360 description: The ID of the corresponding request for the response 6361 type: string 6362 Location: 6363 description: The location of the resource 6364 type: string 6365 '202': 6366 description: Accepted 6367 headers: 6368 X-Request-Id: 6369 description: The ID of the corresponding request for the response 6370 type: string 6371 '400': 6372 description: Bad request 6373 headers: 6374 X-Request-Id: 6375 description: The ID of the corresponding request for the response 6376 type: string 6377 schema: 6378 $ref: '#/definitions/Errors' 6379 '401': 6380 description: Unauthorized 6381 headers: 6382 X-Request-Id: 6383 description: The ID of the corresponding request for the response 6384 type: string 6385 schema: 6386 $ref: '#/definitions/Errors' 6387 '403': 6388 description: Forbidden 6389 headers: 6390 X-Request-Id: 6391 description: The ID of the corresponding request for the response 6392 type: string 6393 schema: 6394 $ref: '#/definitions/Errors' 6395 '404': 6396 description: Not found 6397 headers: 6398 X-Request-Id: 6399 description: The ID of the corresponding request for the response 6400 type: string 6401 schema: 6402 $ref: '#/definitions/Errors' 6403 '405': 6404 description: Method not allowed 6405 headers: 6406 X-Request-Id: 6407 description: The ID of the corresponding request for the response 6408 type: string 6409 schema: 6410 $ref: '#/definitions/Errors' 6411 '409': 6412 description: Conflict 6413 headers: 6414 X-Request-Id: 6415 description: The ID of the corresponding request for the response 6416 type: string 6417 schema: 6418 $ref: '#/definitions/Errors' 6419 '412': 6420 description: Precondition failed 6421 headers: 6422 X-Request-Id: 6423 description: The ID of the corresponding request for the response 6424 type: string 6425 schema: 6426 $ref: '#/definitions/Errors' 6427 '415': 6428 description: Unsupported MediaType 6429 headers: 6430 X-Request-Id: 6431 description: The ID of the corresponding request for the response 6432 type: string 6433 schema: 6434 $ref: '#/definitions/Errors' 6435 '500': 6436 description: Internal server error 6437 headers: 6438 X-Request-Id: 6439 description: The ID of the corresponding request for the response 6440 type: string 6441 schema: 6442 $ref: '#/definitions/Errors' 6443 definitions: 6444 Errors: 6445 description: The error array that describe the errors got during the handling of request 6446 type: object 6447 properties: 6448 errors: 6449 type: array 6450 items: 6451 $ref: '#/definitions/Error' 6452 Error: 6453 description: a model for all the error response coming from harbor 6454 type: object 6455 properties: 6456 code: 6457 type: string 6458 description: The error code 6459 message: 6460 type: string 6461 description: The error message 6462 Search: 6463 type: object 6464 properties: 6465 project: 6466 description: Search results of the projects that matched the filter keywords. 6467 type: array 6468 items: 6469 $ref: '#/definitions/Project' 6470 repository: 6471 description: Search results of the repositories that matched the filter keywords. 6472 type: array 6473 items: 6474 $ref: '#/definitions/SearchRepository' 6475 SearchRepository: 6476 type: object 6477 properties: 6478 project_id: 6479 type: integer 6480 description: The ID of the project that the repository belongs to 6481 project_name: 6482 type: string 6483 description: The name of the project that the repository belongs to 6484 project_public: 6485 type: boolean 6486 description: 'The flag to indicate the publicity of the project that the repository belongs to (1 is public, 0 is not)' 6487 repository_name: 6488 type: string 6489 description: The name of the repository 6490 pull_count: 6491 type: integer 6492 description: The count how many times the repository is pulled 6493 artifact_count: 6494 type: integer 6495 description: The count of artifacts in the repository 6496 Repository: 6497 type: object 6498 properties: 6499 id: 6500 type: integer 6501 format: int64 6502 description: The ID of the repository 6503 project_id: 6504 type: integer 6505 format: int64 6506 description: The ID of the project that the repository belongs to 6507 name: 6508 type: string 6509 description: The name of the repository 6510 description: 6511 type: string 6512 description: The description of the repository 6513 artifact_count: 6514 type: integer 6515 format: int64 6516 description: The count of the artifacts inside the repository 6517 x-omitempty: false 6518 pull_count: 6519 type: integer 6520 format: int64 6521 description: The count that the artifact inside the repository pulled 6522 x-omitempty: false 6523 creation_time: 6524 type: string 6525 format: date-time 6526 description: The creation time of the repository 6527 x-nullable: true 6528 x-omitempty: true 6529 update_time: 6530 type: string 6531 format: date-time 6532 description: The update time of the repository 6533 Artifact: 6534 type: object 6535 properties: 6536 id: 6537 type: integer 6538 format: int64 6539 description: The ID of the artifact 6540 type: 6541 type: string 6542 description: The type of the artifact, e.g. image, chart, etc 6543 media_type: 6544 type: string 6545 description: The media type of the artifact 6546 manifest_media_type: 6547 type: string 6548 description: The manifest media type of the artifact 6549 project_id: 6550 type: integer 6551 format: int64 6552 description: The ID of the project that the artifact belongs to 6553 repository_id: 6554 type: integer 6555 format: int64 6556 description: The ID of the repository that the artifact belongs to 6557 digest: 6558 type: string 6559 description: The digest of the artifact 6560 size: 6561 type: integer 6562 format: int64 6563 description: The size of the artifact 6564 icon: 6565 type: string 6566 description: The digest of the icon 6567 push_time: 6568 type: string 6569 format: date-time 6570 description: The push time of the artifact 6571 pull_time: 6572 type: string 6573 format: date-time 6574 description: The latest pull time of the artifact 6575 extra_attrs: 6576 $ref: '#/definitions/ExtraAttrs' 6577 annotations: 6578 $ref: '#/definitions/Annotations' 6579 references: 6580 type: array 6581 items: 6582 $ref: '#/definitions/Reference' 6583 tags: 6584 type: array 6585 items: 6586 $ref: '#/definitions/Tag' 6587 addition_links: 6588 $ref: '#/definitions/AdditionLinks' 6589 labels: 6590 type: array 6591 items: 6592 $ref: '#/definitions/Label' 6593 scan_overview: 6594 $ref: '#/definitions/ScanOverview' 6595 description: The overview of the scan result. 6596 accessories: 6597 type: array 6598 items: 6599 $ref: '#/definitions/Accessory' 6600 description: The accessory of the artifact. 6601 Tag: 6602 type: object 6603 properties: 6604 id: 6605 type: integer 6606 format: int64 6607 description: The ID of the tag 6608 repository_id: 6609 type: integer 6610 format: int64 6611 description: The ID of the repository that the tag belongs to 6612 artifact_id: 6613 type: integer 6614 format: int64 6615 description: The ID of the artifact that the tag attached to 6616 name: 6617 type: string 6618 description: The name of the tag 6619 push_time: 6620 type: string 6621 format: date-time 6622 description: The push time of the tag 6623 pull_time: 6624 type: string 6625 format: date-time 6626 description: The latest pull time of the tag 6627 immutable: 6628 type: boolean 6629 x-omitempty: false 6630 description: The immutable status of the tag 6631 ExtraAttrs: 6632 type: object 6633 additionalProperties: 6634 type: object 6635 Annotations: 6636 type: object 6637 additionalProperties: 6638 type: string 6639 AdditionLinks: 6640 type: object 6641 additionalProperties: 6642 $ref: '#/definitions/AdditionLink' 6643 AdditionLink: 6644 type: object 6645 properties: 6646 href: 6647 type: string 6648 description: The link of the addition 6649 absolute: 6650 type: boolean 6651 x-omitempty: false 6652 description: Determine whether the link is an absolute URL or not 6653 Reference: 6654 type: object 6655 properties: 6656 parent_id: 6657 type: integer 6658 format: int64 6659 description: The parent ID of the reference 6660 child_id: 6661 type: integer 6662 format: int64 6663 description: The child ID of the reference 6664 child_digest: 6665 type: string 6666 description: The digest of the child artifact 6667 platform: 6668 $ref: '#/definitions/Platform' 6669 annotations: 6670 $ref: '#/definitions/Annotations' 6671 urls: 6672 type: array 6673 description: The download URLs 6674 items: 6675 type: string 6676 Platform: 6677 type: object 6678 properties: 6679 architecture: 6680 type: string 6681 description: The architecture that the artifact applys to 6682 os: 6683 type: string 6684 description: The OS that the artifact applys to 6685 '''os.version''': 6686 type: string 6687 description: The version of the OS that the artifact applys to 6688 '''os.features''': 6689 type: array 6690 description: The features of the OS that the artifact applys to 6691 items: 6692 type: string 6693 variant: 6694 type: string 6695 description: The variant of the CPU 6696 Label: 6697 type: object 6698 properties: 6699 id: 6700 type: integer 6701 format: int64 6702 description: The ID of the label 6703 name: 6704 type: string 6705 description: The name the label 6706 description: 6707 type: string 6708 description: The description the label 6709 color: 6710 type: string 6711 description: The color the label 6712 scope: 6713 type: string 6714 description: The scope the label 6715 project_id: 6716 type: integer 6717 format: int64 6718 description: The ID of project that the label belongs to 6719 creation_time: 6720 type: string 6721 format: date-time 6722 description: The creation time the label 6723 update_time: 6724 type: string 6725 format: date-time 6726 description: The update time of the label 6727 Scanner: 6728 type: object 6729 properties: 6730 name: 6731 type: string 6732 description: Name of the scanner 6733 example: "Trivy" 6734 vendor: 6735 type: string 6736 description: Name of the scanner provider 6737 example: "Aqua Security" 6738 version: 6739 type: string 6740 description: Version of the scanner adapter 6741 example: "v0.9.1" 6742 ScanOverview: 6743 type: object 6744 description: 'The scan overview attached in the metadata of tag' 6745 additionalProperties: 6746 $ref: '#/definitions/NativeReportSummary' 6747 NativeReportSummary: 6748 type: object 6749 description: 'The summary for the native report' 6750 properties: 6751 report_id: 6752 type: string 6753 description: 'id of the native scan report' 6754 example: '5f62c830-f996-11e9-957f-0242c0a89008' 6755 scan_status: 6756 type: string 6757 description: 'The status of the report generating process' 6758 example: 'Success' 6759 severity: 6760 type: string 6761 description: 'The overall severity' 6762 example: 'High' 6763 duration: 6764 type: integer 6765 format: int64 6766 description: 'The seconds spent for generating the report' 6767 example: 300 6768 summary: 6769 $ref: '#/definitions/VulnerabilitySummary' 6770 start_time: 6771 type: string 6772 format: date-time 6773 description: 'The start time of the scan process that generating report' 6774 example: '2006-01-02T14:04:05Z' 6775 end_time: 6776 type: string 6777 format: date-time 6778 description: 'The end time of the scan process that generating report' 6779 example: '2006-01-02T15:04:05Z' 6780 complete_percent: 6781 type: integer 6782 description: 'The complete percent of the scanning which value is between 0 and 100' 6783 example: 100 6784 scanner: 6785 $ref: '#/definitions/Scanner' 6786 VulnerabilitySummary: 6787 type: object 6788 description: | 6789 VulnerabilitySummary contains the total number of the foun d vulnerabilities number and numbers of each severity level. 6790 properties: 6791 total: 6792 type: integer 6793 format: int 6794 description: 'The total number of the found vulnerabilities' 6795 example: 500 6796 x-omitempty: false 6797 fixable: 6798 type: integer 6799 format: int 6800 description: 'The number of the fixable vulnerabilities' 6801 example: 100 6802 x-omitempty: false 6803 summary: 6804 type: object 6805 description: 'Numbers of the vulnerabilities with different severity' 6806 additionalProperties: 6807 type: integer 6808 format: int 6809 example: 10 6810 example: 6811 'Critical': 5 6812 'High': 5 6813 x-omitempty: false 6814 AuditLog: 6815 type: object 6816 properties: 6817 id: 6818 type: integer 6819 description: The ID of the audit log entry. 6820 username: 6821 type: string 6822 description: Username of the user in this log entry. 6823 resource: 6824 type: string 6825 description: Name of the repository in this log entry. 6826 resource_type: 6827 type: string 6828 description: Tag of the repository in this log entry. 6829 operation: 6830 type: string 6831 description: The operation against the repository in this log entry. 6832 op_time: 6833 type: string 6834 format: date-time 6835 example: '2006-01-02T15:04:05Z' 6836 description: The time when this operation is triggered. 6837 Metadata: 6838 type: object 6839 properties: 6840 id: 6841 type: string 6842 description: id 6843 name: 6844 type: string 6845 description: name 6846 icon: 6847 type: string 6848 description: icon 6849 maintainers: 6850 type: array 6851 description: maintainers 6852 items: 6853 type: string 6854 version: 6855 type: string 6856 description: version 6857 source: 6858 type: string 6859 description: source 6860 Instance: 6861 type: object 6862 properties: 6863 id: 6864 type: integer 6865 description: Unique ID 6866 name: 6867 type: string 6868 description: Instance name 6869 description: 6870 type: string 6871 description: Description of instance 6872 vendor: 6873 type: string 6874 description: Based on which driver, identified by ID 6875 endpoint: 6876 type: string 6877 description: The service endpoint of this instance 6878 auth_mode: 6879 type: string 6880 description: The authentication way supported 6881 auth_info: 6882 type: object 6883 description: The auth credential data if exists 6884 additionalProperties: 6885 type: string 6886 status: 6887 type: string 6888 description: The health status 6889 enabled: 6890 type: boolean 6891 description: Whether the instance is activated or not 6892 x-omitempty: false 6893 default: 6894 type: boolean 6895 description: Whether the instance is default or not 6896 x-omitempty: false 6897 insecure: 6898 type: boolean 6899 description: Whether the instance endpoint is insecure or not 6900 x-omitempty: false 6901 setup_timestamp: 6902 type: integer 6903 format: int64 6904 description: The timestamp of instance setting up 6905 PreheatPolicy: 6906 type: object 6907 properties: 6908 id: 6909 type: integer 6910 description: The ID of preheat policy 6911 name: 6912 type: string 6913 description: The Name of preheat policy 6914 description: 6915 type: string 6916 description: The Description of preheat policy 6917 project_id: 6918 type: integer 6919 description: The ID of preheat policy project 6920 provider_id: 6921 type: integer 6922 description: The ID of preheat policy provider 6923 provider_name: 6924 type: string 6925 description: The Name of preheat policy provider 6926 filters: 6927 type: string 6928 description: The Filters of preheat policy 6929 trigger: 6930 type: string 6931 description: The Trigger of preheat policy 6932 enabled: 6933 type: boolean 6934 description: Whether the preheat policy enabled 6935 x-omitempty: false 6936 creation_time: 6937 type: string 6938 format: date-time 6939 description: The Create Time of preheat policy 6940 update_time: 6941 type: string 6942 format: date-time 6943 description: The Update Time of preheat policy 6944 Metrics: 6945 type: object 6946 properties: 6947 task_count: 6948 type: integer 6949 description: The count of task 6950 success_task_count: 6951 type: integer 6952 description: The count of success task 6953 error_task_count: 6954 type: integer 6955 description: The count of error task 6956 pending_task_count: 6957 type: integer 6958 description: The count of pending task 6959 running_task_count: 6960 type: integer 6961 description: The count of running task 6962 scheduled_task_count: 6963 type: integer 6964 description: The count of scheduled task 6965 stopped_task_count: 6966 type: integer 6967 description: The count of stopped task 6968 Execution: 6969 type: object 6970 properties: 6971 id: 6972 type: integer 6973 description: The ID of execution 6974 vendor_type: 6975 type: string 6976 description: The vendor type of execution 6977 vendor_id: 6978 type: integer 6979 description: The vendor id of execution 6980 status: 6981 type: string 6982 description: The status of execution 6983 status_message: 6984 type: string 6985 description: The status message of execution 6986 metrics: 6987 $ref: '#/definitions/Metrics' 6988 trigger: 6989 type: string 6990 description: The trigger of execution 6991 extra_attrs: 6992 $ref: '#/definitions/ExtraAttrs' 6993 start_time: 6994 type: string 6995 description: The start time of execution 6996 end_time: 6997 type: string 6998 description: The end time of execution 6999 Task: 7000 type: object 7001 properties: 7002 id: 7003 type: integer 7004 description: The ID of task 7005 execution_id: 7006 type: integer 7007 description: The ID of task execution 7008 status: 7009 type: string 7010 description: The status of task 7011 status_message: 7012 type: string 7013 description: The status message of task 7014 run_count: 7015 type: integer 7016 format: int32 7017 description: The count of task run 7018 extra_attrs: 7019 $ref: '#/definitions/ExtraAttrs' 7020 creation_time: 7021 type: string 7022 description: The creation time of task 7023 update_time: 7024 type: string 7025 description: The update time of task 7026 start_time: 7027 type: string 7028 description: The start time of task 7029 end_time: 7030 type: string 7031 description: The end time of task 7032 ProviderUnderProject: 7033 type: object 7034 properties: 7035 id: 7036 type: integer 7037 provider: 7038 type: string 7039 enabled: 7040 type: boolean 7041 default: 7042 type: boolean 7043 Icon: 7044 type: object 7045 properties: 7046 content-type: 7047 type: string 7048 description: The content type of the icon 7049 content: 7050 type: string 7051 description: The base64 encoded content of the icon 7052 ProjectReq: 7053 type: object 7054 properties: 7055 project_name: 7056 type: string 7057 description: The name of the project. 7058 maxLength: 255 7059 public: 7060 type: boolean 7061 description: deprecated, reserved for project creation in replication 7062 x-nullable: true 7063 metadata: 7064 description: The metadata of the project. 7065 $ref: '#/definitions/ProjectMetadata' 7066 cve_allowlist: 7067 description: The CVE allowlist of the project. 7068 $ref: '#/definitions/CVEAllowlist' 7069 storage_limit: 7070 type: integer 7071 format: int64 7072 description: The storage quota of the project. 7073 x-nullable: true 7074 registry_id: 7075 type: integer 7076 format: int64 7077 description: The ID of referenced registry when creating the proxy cache project 7078 x-nullable: true 7079 Project: 7080 type: object 7081 properties: 7082 project_id: 7083 type: integer 7084 format: int32 7085 description: Project ID 7086 owner_id: 7087 type: integer 7088 format: int32 7089 description: The owner ID of the project always means the creator of the project. 7090 name: 7091 type: string 7092 description: The name of the project. 7093 registry_id: 7094 type: integer 7095 format: int64 7096 description: The ID of referenced registry when the project is a proxy cache project. 7097 creation_time: 7098 type: string 7099 format: date-time 7100 description: The creation time of the project. 7101 update_time: 7102 type: string 7103 format: date-time 7104 description: The update time of the project. 7105 deleted: 7106 type: boolean 7107 description: A deletion mark of the project. 7108 owner_name: 7109 type: string 7110 description: The owner name of the project. 7111 togglable: 7112 type: boolean 7113 description: Correspond to the UI about whether the project's publicity is updatable (for UI) 7114 current_user_role_id: 7115 type: integer 7116 description: The role ID with highest permission of the current user who triggered the API (for UI). This attribute is deprecated and will be removed in future versions. 7117 current_user_role_ids: 7118 type: array 7119 items: 7120 type: integer 7121 format: int32 7122 description: The list of role ID of the current user who triggered the API (for UI) 7123 repo_count: 7124 type: integer 7125 description: The number of the repositories under this project. 7126 x-omitempty: false 7127 metadata: 7128 description: The metadata of the project. 7129 $ref: '#/definitions/ProjectMetadata' 7130 cve_allowlist: 7131 description: The CVE allowlist of this project. 7132 $ref: '#/definitions/CVEAllowlist' 7133 ProjectDeletable: 7134 type: object 7135 properties: 7136 deletable: 7137 type: boolean 7138 description: Whether the project can be deleted. 7139 message: 7140 type: string 7141 description: The detail message when the project can not be deleted. 7142 ProjectMetadata: 7143 type: object 7144 properties: 7145 public: 7146 type: string 7147 description: 'The public status of the project. The valid values are "true", "false".' 7148 enable_content_trust: 7149 type: string 7150 description: 'Whether content trust is enabled or not. If it is enabled, user can''t pull unsigned images from this project. The valid values are "true", "false".' 7151 x-nullable: true 7152 enable_content_trust_cosign: 7153 type: string 7154 description: 'Whether cosign content trust is enabled or not. If it is enabled, user can''t pull images without cosign signature from this project. The valid values are "true", "false".' 7155 x-nullable: true 7156 prevent_vul: 7157 type: string 7158 description: 'Whether prevent the vulnerable images from running. The valid values are "true", "false".' 7159 x-nullable: true 7160 severity: 7161 type: string 7162 description: 'If the vulnerability is high than severity defined here, the images can''t be pulled. The valid values are "none", "low", "medium", "high", "critical".' 7163 x-nullable: true 7164 auto_scan: 7165 type: string 7166 description: 'Whether scan images automatically when pushing. The valid values are "true", "false".' 7167 x-nullable: true 7168 reuse_sys_cve_allowlist: 7169 type: string 7170 description: 'Whether this project reuse the system level CVE allowlist as the allowlist of its own. The valid values are "true", "false". 7171 If it is set to "true" the actual allowlist associate with this project, if any, will be ignored.' 7172 x-nullable: true 7173 retention_id: 7174 type: string 7175 description: 'The ID of the tag retention policy for the project' 7176 x-nullable: true 7177 ProjectSummary: 7178 type: object 7179 properties: 7180 repo_count: 7181 type: integer 7182 description: The number of the repositories under this project. 7183 x-omitempty: false 7184 project_admin_count: 7185 type: integer 7186 description: The total number of project admin members. 7187 maintainer_count: 7188 type: integer 7189 description: The total number of maintainer members. 7190 developer_count: 7191 type: integer 7192 description: The total number of developer members. 7193 guest_count: 7194 type: integer 7195 description: The total number of guest members. 7196 limited_guest_count: 7197 type: integer 7198 description: The total number of limited guest members. 7199 quota: 7200 $ref: "#/definitions/ProjectSummaryQuota" 7201 registry: 7202 $ref: "#/definitions/Registry" 7203 ProjectSummaryQuota: 7204 type: object 7205 properties: 7206 hard: 7207 $ref: "#/definitions/ResourceList" 7208 description: The hard limits of the quota 7209 used: 7210 $ref: "#/definitions/ResourceList" 7211 description: The used status of the quota 7212 ProjectScanner: 7213 type: object 7214 required: 7215 - uuid 7216 properties: 7217 uuid: 7218 type: string 7219 description: The identifier of the scanner registration 7220 CVEAllowlist: 7221 type: object 7222 description: The CVE Allowlist for system or project 7223 properties: 7224 id: 7225 type: integer 7226 description: ID of the allowlist 7227 project_id: 7228 type: integer 7229 description: ID of the project which the allowlist belongs to. For system level allowlist this attribute is zero. 7230 expires_at: 7231 type: integer 7232 description: the time for expiration of the allowlist, in the form of seconds since epoch. This is an optional attribute, if it's not set the CVE allowlist does not expire. 7233 x-nullable: true 7234 items: 7235 type: array 7236 items: 7237 $ref: "#/definitions/CVEAllowlistItem" 7238 creation_time: 7239 type: string 7240 format: date-time 7241 description: The creation time of the allowlist. 7242 update_time: 7243 type: string 7244 format: date-time 7245 description: The update time of the allowlist. 7246 CVEAllowlistItem: 7247 type: object 7248 description: The item in CVE allowlist 7249 properties: 7250 cve_id: 7251 type: string 7252 description: The ID of the CVE, such as "CVE-2019-10164" 7253 ReplicationPolicy: 7254 type: object 7255 properties: 7256 id: 7257 type: integer 7258 format: int64 7259 description: The policy ID. 7260 name: 7261 type: string 7262 description: The policy name. 7263 description: 7264 type: string 7265 description: The description of the policy. 7266 src_registry: 7267 description: The source registry. 7268 $ref: '#/definitions/Registry' 7269 dest_registry: 7270 description: The destination registry. 7271 $ref: '#/definitions/Registry' 7272 dest_namespace: 7273 type: string 7274 description: The destination namespace. 7275 dest_namespace_replace_count: 7276 type: integer 7277 format: int8 7278 description: |- 7279 Specify how many path components will be replaced by the provided destination namespace. 7280 The default value is -1 in which case the legacy mode will be applied. 7281 x-isnullable: true # make this field optional to keep backward compatibility 7282 trigger: 7283 $ref: '#/definitions/ReplicationTrigger' 7284 filters: 7285 type: array 7286 description: The replication policy filter array. 7287 items: 7288 $ref: '#/definitions/ReplicationFilter' 7289 replicate_deletion: 7290 type: boolean 7291 description: Whether to replicate the deletion operation. 7292 deletion: 7293 type: boolean 7294 description: Deprecated, use "replicate_deletion" instead. Whether to replicate the deletion operation. 7295 override: 7296 type: boolean 7297 description: Whether to override the resources on the destination registry. 7298 enabled: 7299 type: boolean 7300 description: Whether the policy is enabled or not. 7301 creation_time: 7302 type: string 7303 format: date-time 7304 description: The create time of the policy. 7305 update_time: 7306 type: string 7307 format: date-time 7308 description: The update time of the policy. 7309 speed: 7310 type: integer 7311 format: int32 7312 description: speed limit for each task 7313 x-isnullable: true # make this field optional to keep backward compatibility 7314 copy_by_chunk: 7315 type: boolean 7316 description: Whether to enable copy by chunk. 7317 x-isnullable: true 7318 ReplicationTrigger: 7319 type: object 7320 properties: 7321 type: 7322 type: string 7323 description: 'The replication policy trigger type. The valid values are manual, event_based and scheduled.' 7324 trigger_settings: 7325 $ref: '#/definitions/ReplicationTriggerSettings' 7326 ReplicationTriggerSettings: 7327 type: object 7328 properties: 7329 cron: 7330 type: string 7331 description: The cron string for scheduled trigger 7332 ReplicationFilter: 7333 type: object 7334 properties: 7335 type: 7336 type: string 7337 description: 'The replication policy filter type.' 7338 value: 7339 type: object 7340 description: 'The value of replication policy filter.' 7341 decoration: 7342 type: string 7343 description: 'matches or excludes the result' 7344 RegistryCredential: 7345 type: object 7346 properties: 7347 type: 7348 type: string 7349 description: Credential type, such as 'basic', 'oauth'. 7350 access_key: 7351 type: string 7352 description: Access key, e.g. user name when credential type is 'basic'. 7353 access_secret: 7354 type: string 7355 description: Access secret, e.g. password when credential type is 'basic'. 7356 Registry: 7357 type: object 7358 properties: 7359 id: 7360 type: integer 7361 format: int64 7362 description: The registry ID. 7363 x-omitempty: false 7364 url: 7365 type: string 7366 description: The registry URL string. 7367 name: 7368 type: string 7369 description: The registry name. 7370 credential: 7371 $ref: '#/definitions/RegistryCredential' 7372 type: 7373 type: string 7374 description: Type of the registry, e.g. 'harbor'. 7375 insecure: 7376 type: boolean 7377 description: Whether or not the certificate will be verified when Harbor tries to access the server. 7378 description: 7379 type: string 7380 description: Description of the registry. 7381 status: 7382 type: string 7383 description: Health status of the registry. 7384 creation_time: 7385 type: string 7386 format: date-time 7387 description: The create time of the policy. 7388 update_time: 7389 type: string 7390 format: date-time 7391 description: The update time of the policy. 7392 RegistryUpdate: 7393 type: object 7394 properties: 7395 name: 7396 type: string 7397 description: The registry name. 7398 x-nullable: true 7399 description: 7400 type: string 7401 description: Description of the registry. 7402 x-nullable: true 7403 url: 7404 type: string 7405 description: The registry URL. 7406 x-nullable: true 7407 credential_type: 7408 type: string 7409 description: Credential type of the registry, e.g. 'basic'. 7410 x-nullable: true 7411 access_key: 7412 type: string 7413 description: The registry access key. 7414 x-nullable: true 7415 access_secret: 7416 type: string 7417 description: The registry access secret. 7418 x-nullable: true 7419 insecure: 7420 type: boolean 7421 description: Whether or not the certificate will be verified when Harbor tries to access the server. 7422 x-nullable: true 7423 RegistryPing: 7424 type: object 7425 properties: 7426 id: 7427 type: integer 7428 format: int64 7429 description: The registry ID. 7430 x-nullable: true 7431 type: 7432 type: string 7433 description: Type of the registry, e.g. 'harbor'. 7434 x-nullable: true 7435 url: 7436 type: string 7437 description: The registry URL. 7438 x-nullable: true 7439 credential_type: 7440 type: string 7441 description: Credential type of the registry, e.g. 'basic'. 7442 x-nullable: true 7443 access_key: 7444 type: string 7445 description: The registry access key. 7446 x-nullable: true 7447 access_secret: 7448 type: string 7449 description: The registry access secret. 7450 x-nullable: true 7451 insecure: 7452 type: boolean 7453 description: Whether or not the certificate will be verified when Harbor tries to access the server. 7454 x-nullable: true 7455 RegistryInfo: 7456 type: object 7457 description: The registry info contains the base info and capability declarations of the registry 7458 properties: 7459 type: 7460 type: string 7461 description: The registry type 7462 description: 7463 type: string 7464 description: The description 7465 supported_resource_filters: 7466 type: array 7467 description: The filters that the registry supports 7468 items: 7469 $ref: '#/definitions/FilterStyle' 7470 supported_triggers: 7471 type: array 7472 description: The triggers that the registry supports 7473 items: 7474 type: string 7475 supported_copy_by_chunk: 7476 type: boolean 7477 description: The registry whether support copy by chunk. 7478 x-omitempty: true 7479 x-isnullable: true 7480 RegistryProviderInfo: 7481 type: object 7482 description: The registry provider info contains the base info and capability declarations of the registry provider 7483 properties: 7484 endpoint_pattern: 7485 description: The endpoint pattern 7486 $ref: '#/definitions/RegistryProviderEndpointPattern' 7487 credential_pattern: 7488 description: The credential pattern 7489 $ref: '#/definitions/RegistryProviderCredentialPattern' 7490 RegistryProviderEndpointPattern: 7491 type: object 7492 description: The registry endpoint pattern 7493 properties: 7494 endpoint_type: 7495 type: string 7496 description: The endpoint type 7497 endpoints: 7498 type: array 7499 description: The endpoint list 7500 items: 7501 $ref: '#/definitions/RegistryEndpoint' 7502 RegistryProviderCredentialPattern: 7503 type: object 7504 description: The registry credential pattern 7505 properties: 7506 access_key_type: 7507 type: string 7508 description: The access key type 7509 access_key_data: 7510 type: string 7511 description: The access key data 7512 access_secret_type: 7513 type: string 7514 description: The access secret type 7515 access_secret_data: 7516 type: string 7517 description: The access secret data 7518 RegistryEndpoint: 7519 type: object 7520 description: The style of the resource filter 7521 properties: 7522 key: 7523 type: string 7524 description: The endpoint key 7525 value: 7526 type: string 7527 description: The endpoint value 7528 FilterStyle: 7529 type: object 7530 description: The style of the resource filter 7531 properties: 7532 type: 7533 type: string 7534 description: The filter type 7535 style: 7536 type: string 7537 description: The filter style 7538 values: 7539 type: array 7540 description: The filter values 7541 items: 7542 type: string 7543 ResourceList: 7544 type: object 7545 additionalProperties: 7546 type: integer 7547 format: int64 7548 ReplicationExecution: 7549 type: object 7550 description: The replication execution 7551 properties: 7552 id: 7553 type: integer 7554 description: The ID of the execution 7555 policy_id: 7556 type: integer 7557 description: The ID if the policy that the execution belongs to 7558 status: 7559 type: string 7560 description: The status of the execution 7561 trigger: 7562 type: string 7563 description: The trigger mode 7564 start_time: 7565 type: string 7566 format: date-time 7567 description: The start time 7568 end_time: 7569 type: string 7570 format: date-time 7571 description: The end time 7572 status_text: 7573 type: string 7574 x-omitempty: false 7575 description: The status text 7576 total: 7577 type: integer 7578 x-omitempty: false 7579 description: The total count of all executions 7580 failed: 7581 type: integer 7582 x-omitempty: false 7583 description: The count of failed executions 7584 succeed: 7585 type: integer 7586 x-omitempty: false 7587 description: The count of succeed executions 7588 in_progress: 7589 type: integer 7590 x-omitempty: false 7591 description: The count of in_progress executions 7592 stopped: 7593 type: integer 7594 x-omitempty: false 7595 description: The count of stopped executions 7596 StartReplicationExecution: 7597 type: object 7598 properties: 7599 policy_id: 7600 type: integer 7601 format: int64 7602 description: The ID of policy that the execution belongs to. 7603 ReplicationTask: 7604 type: object 7605 description: The replication task 7606 properties: 7607 id: 7608 type: integer 7609 description: The ID of the task 7610 execution_id: 7611 type: integer 7612 description: The ID of the execution that the task belongs to 7613 status: 7614 type: string 7615 description: The status of the task 7616 job_id: 7617 type: string 7618 description: The ID of the underlying job that the task related to 7619 operation: 7620 type: string 7621 description: The operation of the task 7622 resource_type: 7623 type: string 7624 description: The type of the resource that the task operates 7625 src_resource: 7626 type: string 7627 description: The source resource that the task operates 7628 dst_resource: 7629 type: string 7630 description: The destination resource that the task operates 7631 start_time: 7632 type: string 7633 format: date-time 7634 description: The start time of the task 7635 end_time: 7636 type: string 7637 format: date-time 7638 description: The end time of the task 7639 Robot: 7640 type: object 7641 properties: 7642 id: 7643 type: integer 7644 format: int64 7645 description: The ID of the robot 7646 name: 7647 type: string 7648 description: The name of the robot 7649 description: 7650 type: string 7651 description: The description of the robot 7652 secret: 7653 type: string 7654 description: The secret of the robot 7655 level: 7656 type: string 7657 description: The level of the robot, project or system 7658 duration: 7659 type: integer 7660 format: int64 7661 description: The duration of the robot in days 7662 editable: 7663 type: boolean 7664 x-omitempty: false 7665 description: The editable status of the robot 7666 disable: 7667 type: boolean 7668 x-omitempty: false 7669 description: The disable status of the robot 7670 expires_at: 7671 type: integer 7672 format: int64 7673 description: The expiration date of the robot 7674 permissions: 7675 type: array 7676 items: 7677 $ref: '#/definitions/RobotPermission' 7678 creation_time: 7679 type: string 7680 format: date-time 7681 description: The creation time of the robot. 7682 update_time: 7683 type: string 7684 format: date-time 7685 description: The update time of the robot. 7686 RobotCreate: 7687 type: object 7688 description: The request for robot account creation. 7689 properties: 7690 name: 7691 type: string 7692 description: The name of the robot 7693 description: 7694 type: string 7695 description: The description of the robot 7696 secret: 7697 type: string 7698 description: The secret of the robot 7699 level: 7700 type: string 7701 description: The level of the robot, project or system 7702 disable: 7703 type: boolean 7704 description: The disable status of the robot 7705 duration: 7706 type: integer 7707 format: int64 7708 description: The duration of the robot in days 7709 permissions: 7710 type: array 7711 items: 7712 $ref: '#/definitions/RobotPermission' 7713 RobotCreated: 7714 type: object 7715 description: The response for robot account creation. 7716 properties: 7717 id: 7718 type: integer 7719 format: int64 7720 description: The ID of the robot 7721 name: 7722 type: string 7723 description: The name of the robot 7724 secret: 7725 type: string 7726 description: The secret of the robot 7727 creation_time: 7728 type: string 7729 format: date-time 7730 description: The creation time of the robot. 7731 expires_at: 7732 type: integer 7733 format: int64 7734 description: The expiration date of the robot 7735 RobotSec: 7736 type: object 7737 description: The response for refresh/update robot account secret. 7738 properties: 7739 secret: 7740 type: string 7741 description: The secret of the robot 7742 RobotPermission: 7743 type: object 7744 properties: 7745 kind: 7746 type: string 7747 description: The kind of the permission 7748 namespace: 7749 type: string 7750 description: The namespace of the permission 7751 access: 7752 type: array 7753 items: 7754 $ref: '#/definitions/Access' 7755 Access: 7756 type: object 7757 properties: 7758 resource: 7759 type: string 7760 description: The resource of the access. Possible resources are *, artifact, artifact-addition, artifact-label, audit-log, catalog, configuration, distribution, garbage-collection, helm-chart, helm-chart-version, helm-chart-version-label, immutable-tag, label, ldap-user, log, member, metadata, notification-policy, preheat-instance, preheat-policy, project, quota, registry, replication, replication-adapter, replication-policy, repository, robot, scan, scan-all, scanner, system-volumes, tag, tag-retention, user, user-group or "" (for self-reference). 7761 action: 7762 type: string 7763 description: The action of the access. Possible actions are *, pull, push, create, read, update, delete, list, operate, scanner-pull and stop. 7764 effect: 7765 type: string 7766 description: The effect of the access 7767 RobotCreateV1: 7768 type: object 7769 properties: 7770 name: 7771 type: string 7772 description: The name of robot account 7773 description: 7774 type: string 7775 description: The description of robot account 7776 expires_at: 7777 type: integer 7778 description: The expiration time on or after which the JWT MUST NOT be accepted for processing. 7779 access: 7780 type: array 7781 description: The permission of robot account 7782 items: 7783 $ref: '#/definitions/Access' 7784 Storage: 7785 type: object 7786 properties: 7787 total: 7788 type: integer 7789 format: uint64 7790 description: Total volume size. 7791 free: 7792 type: integer 7793 format: uint64 7794 description: Free volume size. 7795 GeneralInfo: 7796 type: object 7797 properties: 7798 banner_message: 7799 type: string 7800 x-nullable: true 7801 x-omitempty: true 7802 description: The banner message for the UI. It is the stringified result of the banner message object. 7803 example: "{\"closable\":true,\"message\":\"your banner message content\",\"type\":\"warning\",\"fromDate\":\"06/19/2023\",\"toDate\":\"06/21/2023\"}" 7804 current_time: 7805 type: string 7806 format: date-time 7807 x-nullable: true 7808 x-omitempty: true 7809 description: The current time of the server. 7810 registry_url: 7811 type: string 7812 x-nullable: true 7813 x-omitempty: true 7814 description: The url of registry against which the docker command should be issued. 7815 external_url: 7816 type: string 7817 x-nullable: true 7818 x-omitempty: true 7819 description: The external URL of Harbor, with protocol. 7820 auth_mode: 7821 type: string 7822 x-nullable: true 7823 x-omitempty: true 7824 description: The auth mode of current Harbor instance. 7825 primary_auth_mode: 7826 type: boolean 7827 x-nullable: true 7828 x-omitempty: true 7829 description: The flag to indicate whether the current auth mode should consider as a primary one. 7830 project_creation_restriction: 7831 type: string 7832 x-nullable: true 7833 x-omitempty: true 7834 description: 'Indicate who can create projects, it could be ''adminonly'' or ''everyone''.' 7835 self_registration: 7836 type: boolean 7837 x-nullable: true 7838 x-omitempty: true 7839 description: Indicate whether the Harbor instance enable user to register himself. 7840 has_ca_root: 7841 type: boolean 7842 x-nullable: true 7843 x-omitempty: true 7844 description: Indicate whether there is a ca root cert file ready for download in the file system. 7845 harbor_version: 7846 type: string 7847 x-nullable: true 7848 x-omitempty: true 7849 description: The build version of Harbor. 7850 registry_storage_provider_name: 7851 type: string 7852 x-nullable: true 7853 x-omitempty: true 7854 description: The storage provider's name of Harbor registry 7855 read_only: 7856 type: boolean 7857 x-nullable: true 7858 x-omitempty: true 7859 description: The flag to indicate whether Harbor is in readonly mode. 7860 notification_enable: 7861 type: boolean 7862 x-nullable: true 7863 x-omitempty: true 7864 description: The flag to indicate whether notification mechanism is enabled on Harbor instance. 7865 authproxy_settings: 7866 description: The setting of auth proxy this is only available when Harbor relies on authproxy for authentication. 7867 x-nullable: true 7868 x-omitempty: true 7869 $ref: '#/definitions/AuthproxySetting' 7870 oidc_provider_name: 7871 type: string 7872 x-nullable: true 7873 x-omitempty: true 7874 description: The OIDC provider name, empty if current auth is not OIDC_auth or OIDC provider is not configured. 7875 AuthproxySetting: 7876 type: object 7877 properties: 7878 endpoint: 7879 type: string 7880 description: The fully qualified URI of login endpoint of authproxy, such as 'https://192.168.1.2:8443/login' 7881 tokenreivew_endpoint: 7882 type: string 7883 description: The fully qualified URI of token review endpoint of authproxy, such as 'https://192.168.1.2:8443/tokenreview' 7884 skip_search: 7885 type: boolean 7886 description: The flag to determine whether Harbor can skip search the user/group when adding him as a member. 7887 verify_cert: 7888 type: boolean 7889 description: The flag to determine whether Harbor should verify the certificate when connecting to the auth proxy. 7890 server_certificate: 7891 type: string 7892 description: The certificate to be pinned when connecting auth proxy. 7893 SystemInfo: 7894 type: object 7895 properties: 7896 storage: 7897 type: array 7898 description: The storage of system. 7899 items: 7900 $ref: '#/definitions/Storage' 7901 GCHistory: 7902 type: object 7903 properties: 7904 id: 7905 type: integer 7906 description: the id of gc job. 7907 job_name: 7908 type: string 7909 description: the job name of gc job. 7910 job_kind: 7911 type: string 7912 description: the job kind of gc job. 7913 job_parameters: 7914 type: string 7915 description: the job parameters of gc job. 7916 schedule: 7917 $ref: '#/definitions/ScheduleObj' 7918 job_status: 7919 type: string 7920 description: the status of gc job. 7921 deleted: 7922 type: boolean 7923 description: if gc job was deleted. 7924 creation_time: 7925 type: string 7926 format: date-time 7927 description: the creation time of gc job. 7928 update_time: 7929 type: string 7930 format: date-time 7931 description: the update time of gc job. 7932 ExecHistory: 7933 type: object 7934 properties: 7935 id: 7936 type: integer 7937 description: the id of purge job. 7938 job_name: 7939 type: string 7940 description: the job name of purge job. 7941 job_kind: 7942 type: string 7943 description: the job kind of purge job. 7944 job_parameters: 7945 type: string 7946 description: the job parameters of purge job. 7947 schedule: 7948 $ref: '#/definitions/ScheduleObj' 7949 job_status: 7950 type: string 7951 description: the status of purge job. 7952 deleted: 7953 type: boolean 7954 description: if purge job was deleted. 7955 creation_time: 7956 type: string 7957 format: date-time 7958 description: the creation time of purge job. 7959 update_time: 7960 type: string 7961 format: date-time 7962 description: the update time of purge job. 7963 Schedule: 7964 type: object 7965 properties: 7966 id: 7967 type: integer 7968 description: The id of the schedule. 7969 readOnly: true 7970 status: 7971 type: string 7972 description: The status of the schedule. 7973 readOnly: true 7974 creation_time: 7975 type: string 7976 format: date-time 7977 description: the creation time of the schedule. 7978 readOnly: true 7979 update_time: 7980 type: string 7981 format: date-time 7982 description: the update time of the schedule. 7983 readOnly: true 7984 schedule: 7985 $ref: '#/definitions/ScheduleObj' 7986 parameters: 7987 type: object 7988 description: The parameters of schedule job 7989 additionalProperties: 7990 type: object 7991 ScheduleObj: 7992 type: object 7993 properties: 7994 type: 7995 type: string 7996 description: | 7997 The schedule type. The valid values are 'Hourly', 'Daily', 'Weekly', 'Custom', 'Manual', 'None' and 'Schedule'. 7998 'Manual' means to trigger it right away, 'Schedule' means to trigger it by a specified cron schedule and 7999 'None' means to cancel the schedule. 8000 enum: 8001 - Hourly 8002 - Daily 8003 - Weekly 8004 - Custom 8005 - Manual 8006 - None 8007 - Schedule 8008 cron: 8009 type: string 8010 description: A cron expression, a time-based job scheduler. 8011 next_scheduled_time: 8012 type: string 8013 format: date-time 8014 description: The next time to schedule to run the job. 8015 Stats: 8016 type: object 8017 description: Stats provides the overall progress of the scan all process. 8018 properties: 8019 total: 8020 type: integer 8021 format: int 8022 description: 'The total number of scan processes triggered by the scan all action' 8023 example: 100 8024 x-omitempty: false 8025 completed: 8026 type: integer 8027 format: int 8028 description: 'The number of the finished scan processes triggered by the scan all action' 8029 example: 90 8030 x-omitempty: false 8031 metrics: 8032 type: object 8033 description: 'The metrics data for the each status' 8034 additionalProperties: 8035 type: integer 8036 format: int 8037 example: 10 8038 example: 8039 'Success': 5 8040 'Error': 2 8041 'Running': 3 8042 ongoing: 8043 type: boolean 8044 description: A flag indicating job status of scan all. 8045 x-omitempty: false 8046 trigger: 8047 type: string 8048 description: The trigger of the scan all job. 8049 enum: 8050 - Manual 8051 - Schedule 8052 - Event 8053 RetentionMetadata: 8054 type: object 8055 description: the tag retention metadata 8056 properties: 8057 templates: 8058 type: array 8059 description: templates 8060 items: 8061 $ref: '#/definitions/RetentionRuleMetadata' 8062 scope_selectors: 8063 type: array 8064 description: supported scope selectors 8065 items: 8066 $ref: '#/definitions/RetentionSelectorMetadata' 8067 tag_selectors: 8068 type: array 8069 description: supported tag selectors 8070 items: 8071 $ref: '#/definitions/RetentionSelectorMetadata' 8072 8073 RetentionRuleMetadata: 8074 type: object 8075 description: the tag retention rule metadata 8076 properties: 8077 rule_template: 8078 type: string 8079 description: rule id 8080 display_text: 8081 type: string 8082 description: rule display text 8083 action: 8084 type: string 8085 description: rule action 8086 params: 8087 type: array 8088 description: rule params 8089 items: 8090 $ref: '#/definitions/RetentionRuleParamMetadata' 8091 8092 RetentionRuleParamMetadata: 8093 type: object 8094 description: rule param 8095 properties: 8096 type: 8097 type: string 8098 unit: 8099 type: string 8100 required: 8101 type: boolean 8102 8103 8104 RetentionSelectorMetadata: 8105 type: object 8106 description: retention selector 8107 properties: 8108 display_text: 8109 type: string 8110 kind: 8111 type: string 8112 decorations: 8113 type: array 8114 items: 8115 type: string 8116 8117 RetentionPolicy: 8118 type: object 8119 description: retention policy 8120 properties: 8121 id: 8122 type: integer 8123 format: int64 8124 algorithm: 8125 type: string 8126 rules: 8127 type: array 8128 items: 8129 $ref: '#/definitions/RetentionRule' 8130 trigger: 8131 type: object 8132 $ref: '#/definitions/RetentionRuleTrigger' 8133 scope: 8134 type: object 8135 $ref: '#/definitions/RetentionPolicyScope' 8136 8137 RetentionRuleTrigger: 8138 type: object 8139 properties: 8140 kind: 8141 type: string 8142 settings: 8143 type: object 8144 references: 8145 type: object 8146 8147 RetentionPolicyScope: 8148 type: object 8149 properties: 8150 level: 8151 type: string 8152 ref: 8153 type: integer 8154 8155 RetentionRule: 8156 type: object 8157 properties: 8158 id: 8159 type: integer 8160 priority: 8161 type: integer 8162 disabled: 8163 type: boolean 8164 action: 8165 type: string 8166 template: 8167 type: string 8168 params: 8169 type: object 8170 additionalProperties: 8171 type: object 8172 tag_selectors: 8173 type: array 8174 items: 8175 $ref: '#/definitions/RetentionSelector' 8176 scope_selectors: 8177 type: object 8178 additionalProperties: 8179 type: array 8180 items: 8181 $ref: '#/definitions/RetentionSelector' 8182 8183 RetentionSelector: 8184 type: object 8185 properties: 8186 kind: 8187 type: string 8188 decoration: 8189 type: string 8190 pattern: 8191 type: string 8192 extras: 8193 type: string 8194 8195 RetentionExecution: 8196 type: object 8197 properties: 8198 id: 8199 type: integer 8200 format: int64 8201 policy_id: 8202 type: integer 8203 format: int64 8204 start_time: 8205 type: string 8206 end_time: 8207 type: string 8208 status: 8209 type: string 8210 trigger: 8211 type: string 8212 dry_run: 8213 type: boolean 8214 8215 RetentionExecutionTask: 8216 type: object 8217 properties: 8218 id: 8219 type: integer 8220 format: int64 8221 execution_id: 8222 type: integer 8223 format: int64 8224 repository: 8225 type: string 8226 job_id: 8227 type: string 8228 status: 8229 type: string 8230 status_code: 8231 type: integer 8232 x-omitempty: false 8233 status_revision: 8234 type: integer 8235 format: int64 8236 start_time: 8237 type: string 8238 end_time: 8239 type: string 8240 total: 8241 type: integer 8242 x-omitempty: false 8243 retained: 8244 type: integer 8245 x-omitempty: false 8246 8247 QuotaUpdateReq: 8248 type: object 8249 properties: 8250 hard: 8251 $ref: "#/definitions/ResourceList" 8252 description: The new hard limits for the quota 8253 8254 QuotaRefObject: 8255 type: object 8256 additionalProperties: {} 8257 8258 Quota: 8259 type: object 8260 description: The quota object 8261 properties: 8262 id: 8263 type: integer 8264 description: ID of the quota 8265 ref: 8266 $ref: "#/definitions/QuotaRefObject" 8267 description: The reference object of the quota 8268 hard: 8269 $ref: "#/definitions/ResourceList" 8270 description: The hard limits of the quota 8271 x-omitempty: false 8272 used: 8273 $ref: "#/definitions/ResourceList" 8274 description: The used status of the quota 8275 x-omitempty: false 8276 creation_time: 8277 type: string 8278 format: date-time 8279 description: the creation time of the quota 8280 update_time: 8281 type: string 8282 format: date-time 8283 description: the update time of the quota 8284 8285 ScannerRegistration: 8286 type: object 8287 description: | 8288 Registration represents a named configuration for invoking a scanner via its adapter. 8289 properties: 8290 uuid: 8291 type: string 8292 description: The unique identifier of this registration. 8293 name: 8294 type: string 8295 example: Trivy 8296 description: The name of this registration. 8297 description: 8298 type: string 8299 description: An optional description of this registration. 8300 example: | 8301 A free-to-use tool that scans container images for package vulnerabilities. 8302 x-omitempty: false 8303 url: 8304 type: string 8305 format: uri 8306 description: A base URL of the scanner adapter 8307 example: http://harbor-scanner-trivy:8080 8308 disabled: 8309 type: boolean 8310 default: false 8311 description: Indicate whether the registration is enabled or not 8312 x-omitempty: false 8313 is_default: 8314 type: boolean 8315 default: false 8316 description: Indicate if the registration is set as the system default one 8317 x-omitempty: false 8318 auth: 8319 type: string 8320 default: "" 8321 description: | 8322 Specify what authentication approach is adopted for the HTTP communications. 8323 Supported types Basic", "Bearer" and api key header "X-ScannerAdapter-API-Key" 8324 example: "Bearer" 8325 x-omitempty: false 8326 access_credential: 8327 type: string 8328 description: | 8329 An optional value of the HTTP Authorization header sent with each request to the Scanner Adapter API. 8330 example: "Bearer: JWTTOKENGOESHERE" 8331 x-omitempty: false 8332 skip_certVerify: 8333 type: boolean 8334 default: false 8335 description: Indicate if skip the certificate verification when sending HTTP requests 8336 x-omitempty: false 8337 use_internal_addr: 8338 type: boolean 8339 default: false 8340 description: Indicate whether use internal registry addr for the scanner to pull content or not 8341 x-omitempty: false 8342 create_time: 8343 type: string 8344 format: date-time 8345 description: The creation time of this registration 8346 update_time: 8347 type: string 8348 format: date-time 8349 description: The update time of this registration 8350 adapter: 8351 type: string 8352 description: Optional property to describe the name of the scanner registration 8353 example: "Trivy" 8354 vendor: 8355 type: string 8356 description: Optional property to describe the vendor of the scanner registration 8357 example: "CentOS" 8358 version: 8359 type: string 8360 description: Optional property to describe the version of the scanner registration 8361 example: "1.0.1" 8362 health: 8363 type: string 8364 default: "" 8365 description: Indicate the healthy of the registration 8366 example: "healthy" 8367 8368 ScannerRegistrationReq: 8369 type: object 8370 required: 8371 - name 8372 - url 8373 properties: 8374 name: 8375 type: string 8376 description: The name of this registration 8377 example: Trivy 8378 description: 8379 type: string 8380 description: An optional description of this registration. 8381 example: | 8382 A free-to-use tool that scans container images for package vulnerabilities. 8383 url: 8384 type: string 8385 format: uri 8386 description: A base URL of the scanner adapter. 8387 example: http://harbor-scanner-trivy:8080 8388 auth: 8389 type: string 8390 description: | 8391 Specify what authentication approach is adopted for the HTTP communications. 8392 Supported types Basic", "Bearer" and api key header "X-ScannerAdapter-API-Key" 8393 example: "Bearer" 8394 access_credential: 8395 type: string 8396 description: | 8397 An optional value of the HTTP Authorization header sent with each request to the Scanner Adapter API. 8398 example: "Bearer: JWTTOKENGOESHERE" 8399 skip_certVerify: 8400 type: boolean 8401 default: false 8402 description: Indicate if skip the certificate verification when sending HTTP requests 8403 use_internal_addr: 8404 type: boolean 8405 default: false 8406 description: Indicate whether use internal registry addr for the scanner to pull content or not 8407 disabled: 8408 type: boolean 8409 default: false 8410 description: Indicate whether the registration is enabled or not 8411 8412 ScannerRegistrationSettings: 8413 type: object 8414 required: 8415 - name 8416 - url 8417 properties: 8418 name: 8419 type: string 8420 description: The name of this registration 8421 example: Trivy 8422 url: 8423 type: string 8424 format: uri 8425 description: A base URL of the scanner adapter. 8426 example: http://harbor-scanner-trivy:8080 8427 auth: 8428 type: string 8429 default: "" 8430 description: | 8431 Specify what authentication approach is adopted for the HTTP communications. 8432 Supported types Basic", "Bearer" and api key header "X-ScannerAdapter-API-Key" 8433 access_credential: 8434 type: string 8435 description: | 8436 An optional value of the HTTP Authorization header sent with each request to the Scanner Adapter API. 8437 example: "Bearer: JWTTOKENGOESHERE" 8438 8439 IsDefault: 8440 type: object 8441 properties: 8442 is_default: 8443 type: boolean 8444 description: A flag indicating whether a scanner registration is default. 8445 8446 ScannerCapability: 8447 type: object 8448 properties: 8449 consumes_mime_types: 8450 type: array 8451 items: 8452 type: string 8453 example: "application/vnd.docker.distribution.manifest.v2+json" 8454 produces_mime_types: 8455 type: array 8456 items: 8457 type: string 8458 example: "application/vnd.scanner.adapter.vuln.report.harbor+json; version=1.0" 8459 8460 ScannerAdapterMetadata: 8461 type: object 8462 description: The metadata info of the scanner adapter 8463 properties: 8464 scanner: 8465 $ref: '#/definitions/Scanner' 8466 capabilities: 8467 type: array 8468 items: 8469 $ref: '#/definitions/ScannerCapability' 8470 properties: 8471 type: object 8472 additionalProperties: 8473 type: string 8474 example: 8475 'harbor.scanner-adapter/registry-authorization-type': 'Bearer' 8476 8477 ImmutableRule: 8478 type: object 8479 properties: 8480 id: 8481 type: integer 8482 priority: 8483 type: integer 8484 disabled: 8485 type: boolean 8486 action: 8487 type: string 8488 template: 8489 type: string 8490 params: 8491 type: object 8492 additionalProperties: 8493 type: object 8494 tag_selectors: 8495 type: array 8496 items: 8497 $ref: '#/definitions/ImmutableSelector' 8498 scope_selectors: 8499 type: object 8500 additionalProperties: 8501 type: array 8502 items: 8503 $ref: '#/definitions/ImmutableSelector' 8504 ImmutableSelector: 8505 type: object 8506 properties: 8507 kind: 8508 type: string 8509 decoration: 8510 type: string 8511 pattern: 8512 type: string 8513 extras: 8514 type: string 8515 LdapConf: 8516 type: object 8517 description: The ldap configure properties 8518 properties: 8519 ldap_url: 8520 type: string 8521 description: The url of ldap service. 8522 ldap_search_dn: 8523 type: string 8524 description: The search dn of ldap service. 8525 ldap_search_password: 8526 type: string 8527 description: The search password of ldap service. 8528 ldap_base_dn: 8529 type: string 8530 description: The base dn of ldap service. 8531 ldap_filter: 8532 type: string 8533 description: The serach filter of ldap service. 8534 ldap_uid: 8535 type: string 8536 description: The serach uid from ldap service attributes. 8537 ldap_scope: 8538 type: integer 8539 format: int64 8540 description: The serach scope of ldap service. 8541 ldap_connection_timeout: 8542 type: integer 8543 format: int64 8544 description: The connect timeout of ldap service(second). 8545 ldap_verify_cert: 8546 type: boolean 8547 description: Verify Ldap server certificate. 8548 LdapPingResult: 8549 type: object 8550 description: The ldap ping result 8551 properties: 8552 success: 8553 type: boolean 8554 description: Test success 8555 message: 8556 type: string 8557 description: The ping operation output message. 8558 LdapImportUsers: 8559 type: object 8560 properties: 8561 ldap_uid_list: 8562 type: array 8563 description: selected uid list 8564 items: 8565 type: string 8566 LdapFailedImportUser: 8567 type: object 8568 properties: 8569 uid: 8570 type: string 8571 description: the uid can't add to system. 8572 error: 8573 type: string 8574 description: fail reason. 8575 LdapUser: 8576 type: object 8577 properties: 8578 username: 8579 type: string 8580 description: ldap username. 8581 realname: 8582 type: string 8583 description: The user realname from "uid" or "cn" attribute. 8584 email: 8585 type: string 8586 description: The user email address from "mail" or "email" attribute. 8587 UserGroup: 8588 type: object 8589 properties: 8590 id: 8591 type: integer 8592 description: The ID of the user group 8593 group_name: 8594 type: string 8595 description: The name of the user group 8596 group_type: 8597 type: integer 8598 description: 'The group type, 1 for LDAP group, 2 for HTTP group, 3 for OIDC group.' 8599 ldap_group_dn: 8600 type: string 8601 description: The DN of the LDAP group if group type is 1 (LDAP group). 8602 UserGroupSearchItem: 8603 type: object 8604 properties: 8605 id: 8606 type: integer 8607 description: The ID of the user group 8608 group_name: 8609 type: string 8610 description: The name of the user group 8611 group_type: 8612 type: integer 8613 description: 'The group type, 1 for LDAP group, 2 for HTTP group, 3 for OIDC group.' 8614 SupportedWebhookEventTypes: 8615 type: object 8616 description: Supported webhook event types and notify types. 8617 properties: 8618 event_type: 8619 type: array 8620 items: 8621 $ref: '#/definitions/EventType' 8622 notify_type: 8623 type: array 8624 items: 8625 $ref: '#/definitions/NotifyType' 8626 payload_formats: 8627 type: array 8628 items: 8629 $ref: '#/definitions/PayloadFormat' 8630 EventType: 8631 type: string 8632 description: Webhook supported event type. 8633 example: 'PULL_ARTIFACT' 8634 NotifyType: 8635 type: string 8636 description: Webhook supported notify type. 8637 example: 'http' 8638 PayloadFormatType: 8639 type: string 8640 description: The type of webhook paylod format. 8641 example: 'CloudEvents' 8642 PayloadFormat: 8643 type: object 8644 description: Webhook supported payload format type collections. 8645 properties: 8646 notify_type: 8647 $ref: '#/definitions/NotifyType' 8648 formats: 8649 type: array 8650 description: The supported payload formats for this notify type. 8651 items: 8652 $ref: '#/definitions/PayloadFormatType' 8653 8654 WebhookTargetObject: 8655 type: object 8656 description: The webhook policy target object. 8657 properties: 8658 type: 8659 type: string 8660 description: The webhook target notify type. 8661 address: 8662 type: string 8663 description: The webhook target address. 8664 auth_header: 8665 type: string 8666 description: The webhook auth header. 8667 skip_cert_verify: 8668 type: boolean 8669 description: Whether or not to skip cert verify. 8670 payload_format: 8671 $ref: '#/definitions/PayloadFormatType' 8672 description: The payload format of webhook, by default is Default for http type. 8673 WebhookPolicy: 8674 type: object 8675 description: The webhook policy object 8676 properties: 8677 id: 8678 type: integer 8679 format: int64 8680 description: The webhook policy ID. 8681 name: 8682 type: string 8683 description: The name of webhook policy. 8684 description: 8685 type: string 8686 description: The description of webhook policy. 8687 project_id: 8688 type: integer 8689 description: The project ID of webhook policy. 8690 targets: 8691 type: array 8692 items: 8693 $ref: '#/definitions/WebhookTargetObject' 8694 event_types: 8695 type: array 8696 items: 8697 type: string 8698 creator: 8699 type: string 8700 description: The creator of the webhook policy. 8701 creation_time: 8702 type: string 8703 description: The create time of the webhook policy. 8704 format: date-time 8705 update_time: 8706 type: string 8707 description: The update time of the webhook policy. 8708 format: date-time 8709 enabled: 8710 type: boolean 8711 description: Whether the webhook policy is enabled or not. 8712 x-omitempty: false 8713 WebhookLastTrigger: 8714 type: object 8715 description: The webhook policy and last trigger time group by event type. 8716 properties: 8717 policy_name: 8718 type: string 8719 description: The webhook policy name. 8720 event_type: 8721 type: string 8722 description: The webhook event type. 8723 enabled: 8724 type: boolean 8725 description: Whether or not the webhook policy enabled. 8726 creation_time: 8727 type: string 8728 description: The creation time of webhook policy. 8729 format: date-time 8730 last_trigger_time: 8731 type: string 8732 description: The last trigger time of webhook policy. 8733 format: date-time 8734 WebhookJob: 8735 type: object 8736 description: The webhook job. 8737 properties: 8738 id: 8739 type: integer 8740 format: int64 8741 description: The webhook job ID. 8742 policy_id: 8743 type: integer 8744 format: int64 8745 description: The webhook policy ID. 8746 event_type: 8747 type: string 8748 description: The webhook job event type. 8749 notify_type: 8750 type: string 8751 description: The webhook job notify type. 8752 status: 8753 type: string 8754 description: The webhook job status. 8755 job_detail: 8756 type: string 8757 description: The webhook job notify detailed data. 8758 creation_time: 8759 type: string 8760 description: The webhook job creation time. 8761 format: date-time 8762 update_time: 8763 type: string 8764 description: The webhook job update time. 8765 format: date-time 8766 InternalConfigurationsResponse: 8767 type: object 8768 additionalProperties: 8769 $ref: '#/definitions/InternalConfigurationValue' 8770 InternalConfigurationValue: 8771 type: object 8772 properties: 8773 value: 8774 type: object 8775 description: The value of current config item 8776 editable: 8777 type: boolean 8778 x-omitempty: false 8779 description: The configure item can be updated or not 8780 ConfigurationsResponse: 8781 type: object 8782 properties: 8783 auth_mode: 8784 $ref: '#/definitions/StringConfigItem' 8785 description: The auth mode of current system, such as "db_auth", "ldap_auth", "oidc_auth" 8786 primary_auth_mode: 8787 $ref: '#/definitions/BoolConfigItem' 8788 description: The flag to indicate whether the current auth mode should consider as a primary one. 8789 ldap_base_dn: 8790 $ref: '#/definitions/StringConfigItem' 8791 description: The Base DN for LDAP binding. 8792 ldap_filter: 8793 $ref: '#/definitions/StringConfigItem' 8794 description: The filter for LDAP search 8795 ldap_group_base_dn: 8796 $ref: '#/definitions/StringConfigItem' 8797 description: The base DN to search LDAP group. 8798 ldap_group_admin_dn: 8799 $ref: '#/definitions/StringConfigItem' 8800 description: Specify the ldap group which have the same privilege with Harbor admin 8801 ldap_group_attribute_name: 8802 $ref: '#/definitions/StringConfigItem' 8803 description: The attribute which is used as identity of the LDAP group, default is cn.' 8804 ldap_group_search_filter: 8805 $ref: '#/definitions/StringConfigItem' 8806 description: The filter to search the ldap group 8807 ldap_group_search_scope: 8808 $ref: '#/definitions/IntegerConfigItem' 8809 description: The scope to search ldap group. ''0-LDAP_SCOPE_BASE, 1-LDAP_SCOPE_ONELEVEL, 2-LDAP_SCOPE_SUBTREE'' 8810 ldap_scope: 8811 $ref: '#/definitions/IntegerConfigItem' 8812 description: The scope to search ldap users,'0-LDAP_SCOPE_BASE, 1-LDAP_SCOPE_ONELEVEL, 2-LDAP_SCOPE_SUBTREE' 8813 ldap_search_dn: 8814 $ref: '#/definitions/StringConfigItem' 8815 description: The DN of the user to do the search. 8816 ldap_timeout: 8817 $ref: '#/definitions/IntegerConfigItem' 8818 description: Timeout in seconds for connection to LDAP server 8819 ldap_uid: 8820 $ref: '#/definitions/StringConfigItem' 8821 description: The attribute which is used as identity for the LDAP binding, such as "CN" or "SAMAccountname" 8822 ldap_url: 8823 $ref: '#/definitions/StringConfigItem' 8824 description: The URL of LDAP server 8825 ldap_verify_cert: 8826 $ref: '#/definitions/BoolConfigItem' 8827 description: Whether verify your OIDC server certificate, disable it if your OIDC server is hosted via self-hosted certificate. 8828 ldap_group_membership_attribute: 8829 $ref: '#/definitions/StringConfigItem' 8830 description: The user attribute to identify the group membership 8831 project_creation_restriction: 8832 $ref: '#/definitions/StringConfigItem' 8833 description: Indicate who can create projects, it could be ''adminonly'' or ''everyone''. 8834 read_only: 8835 $ref: '#/definitions/BoolConfigItem' 8836 description: The flag to indicate whether Harbor is in readonly mode. 8837 self_registration: 8838 $ref: '#/definitions/BoolConfigItem' 8839 description: Whether the Harbor instance supports self-registration. If it''s set to false, admin need to add user to the instance. 8840 token_expiration: 8841 $ref: '#/definitions/IntegerConfigItem' 8842 description: The expiration time of the token for internal Registry, in minutes. 8843 uaa_client_id: 8844 $ref: '#/definitions/StringConfigItem' 8845 description: The client id of UAA 8846 uaa_client_secret: 8847 $ref: '#/definitions/StringConfigItem' 8848 description: The client secret of the UAA 8849 uaa_endpoint: 8850 $ref: '#/definitions/StringConfigItem' 8851 description: The endpoint of the UAA 8852 uaa_verify_cert: 8853 $ref: '#/definitions/BoolConfigItem' 8854 description: Verify the certificate in UAA server 8855 http_authproxy_endpoint: 8856 $ref: '#/definitions/StringConfigItem' 8857 description: The endpoint of the HTTP auth 8858 http_authproxy_tokenreview_endpoint: 8859 $ref: '#/definitions/StringConfigItem' 8860 description: The token review endpoint 8861 http_authproxy_admin_groups: 8862 $ref: '#/definitions/StringConfigItem' 8863 description: The group which has the harbor admin privileges 8864 http_authproxy_admin_usernames: 8865 $ref: '#/definitions/StringConfigItem' 8866 description: The usernames which has the harbor admin privileges 8867 http_authproxy_verify_cert: 8868 $ref: '#/definitions/BoolConfigItem' 8869 description: Verify the HTTP auth provider's certificate 8870 http_authproxy_skip_search: 8871 $ref: '#/definitions/BoolConfigItem' 8872 description: Search user before onboard 8873 http_authproxy_server_certificate: 8874 $ref: '#/definitions/StringConfigItem' 8875 description: The certificate of the HTTP auth provider 8876 oidc_name: 8877 $ref: '#/definitions/StringConfigItem' 8878 description: The OIDC provider name 8879 oidc_endpoint: 8880 $ref: '#/definitions/StringConfigItem' 8881 description: The endpoint of the OIDC provider 8882 oidc_client_id: 8883 $ref: '#/definitions/StringConfigItem' 8884 description: The client ID of the OIDC provider 8885 oidc_groups_claim: 8886 $ref: '#/definitions/StringConfigItem' 8887 description: The attribute claims the group name 8888 oidc_admin_group: 8889 $ref: '#/definitions/StringConfigItem' 8890 description: The OIDC group which has the harbor admin privileges 8891 oidc_group_filter: 8892 $ref: '#/definitions/StringConfigItem' 8893 description: The OIDC group filter which filters out the group doesn't match the regular expression 8894 oidc_scope: 8895 $ref: '#/definitions/StringConfigItem' 8896 description: The scope of the OIDC provider 8897 oidc_user_claim: 8898 $ref: '#/definitions/StringConfigItem' 8899 description: The attribute claims the username 8900 oidc_verify_cert: 8901 $ref: '#/definitions/BoolConfigItem' 8902 description: Verify the OIDC provider's certificate' 8903 oidc_auto_onboard: 8904 $ref: '#/definitions/BoolConfigItem' 8905 description: Auto onboard the OIDC user 8906 oidc_extra_redirect_parms: 8907 $ref: '#/definitions/StringConfigItem' 8908 description: Extra parameters to add when redirect request to OIDC provider 8909 robot_token_duration: 8910 $ref: '#/definitions/IntegerConfigItem' 8911 description: The robot account token duration in days 8912 robot_name_prefix: 8913 $ref: '#/definitions/StringConfigItem' 8914 description: The rebot account name prefix 8915 notification_enable: 8916 $ref: '#/definitions/BoolConfigItem' 8917 description: Enable notification 8918 quota_per_project_enable: 8919 $ref: '#/definitions/BoolConfigItem' 8920 description: Enable quota per project 8921 storage_per_project: 8922 $ref: '#/definitions/IntegerConfigItem' 8923 description: The storage quota per project 8924 audit_log_forward_endpoint: 8925 $ref: '#/definitions/StringConfigItem' 8926 description: The endpoint of the audit log forwarder 8927 skip_audit_log_database: 8928 $ref: '#/definitions/BoolConfigItem' 8929 description: Whether skip the audit log in database 8930 scanner_skip_update_pulltime: 8931 $ref: '#/definitions/BoolConfigItem' 8932 description: Whether or not to skip update the pull time for scanner 8933 scan_all_policy: 8934 type: object 8935 properties: 8936 type: 8937 type: string 8938 description: 'The type of scan all policy, currently the valid values are "none" and "daily"' 8939 parameter: 8940 type: object 8941 properties: 8942 daily_time: 8943 type: integer 8944 description: 'The offset in seconds of UTC 0 o''clock, only valid when the policy type is "daily"' 8945 description: 'The parameters of the policy, the values are dependent on the type of the policy.' 8946 session_timeout: 8947 $ref: '#/definitions/IntegerConfigItem' 8948 description: The session timeout in minutes 8949 banner_message: 8950 $ref: '#/definitions/StringConfigItem' 8951 description: The banner message for the UI.It is the stringified result of the banner message object 8952 Configurations: 8953 type: object 8954 properties: 8955 auth_mode: 8956 type: string 8957 description: The auth mode of current system, such as "db_auth", "ldap_auth", "oidc_auth" 8958 x-omitempty: true 8959 x-isnullable: true 8960 primary_auth_mode: 8961 type: boolean 8962 x-nullable: true 8963 x-omitempty: true 8964 description: The flag to indicate whether the current auth mode should consider as a primary one. 8965 ldap_base_dn: 8966 type: string 8967 description: The Base DN for LDAP binding. 8968 x-omitempty: true 8969 x-isnullable: true 8970 ldap_filter: 8971 type: string 8972 description: The filter for LDAP search 8973 x-omitempty: true 8974 x-isnullable: true 8975 ldap_group_base_dn: 8976 type: string 8977 description: The base DN to search LDAP group. 8978 x-omitempty: true 8979 x-isnullable: true 8980 ldap_group_admin_dn: 8981 type: string 8982 description: Specify the ldap group which have the same privilege with Harbor admin 8983 x-omitempty: true 8984 x-isnullable: true 8985 ldap_group_attribute_name: 8986 type: string 8987 description: The attribute which is used as identity of the LDAP group, default is cn.' 8988 x-omitempty: true 8989 x-isnullable: true 8990 ldap_group_search_filter: 8991 type: string 8992 description: The filter to search the ldap group 8993 x-omitempty: true 8994 x-isnullable: true 8995 ldap_group_search_scope: 8996 type: integer 8997 description: The scope to search ldap group. ''0-LDAP_SCOPE_BASE, 1-LDAP_SCOPE_ONELEVEL, 2-LDAP_SCOPE_SUBTREE'' 8998 x-omitempty: true 8999 x-isnullable: true 9000 ldap_scope: 9001 type: integer 9002 description: The scope to search ldap users,'0-LDAP_SCOPE_BASE, 1-LDAP_SCOPE_ONELEVEL, 2-LDAP_SCOPE_SUBTREE' 9003 x-omitempty: true 9004 x-isnullable: true 9005 ldap_search_dn: 9006 type: string 9007 description: The DN of the user to do the search. 9008 x-omitempty: true 9009 x-isnullable: true 9010 ldap_search_password: 9011 type: string 9012 description: The password of the ldap search dn 9013 x-omitempty: true 9014 x-isnullable: true 9015 ldap_timeout: 9016 type: integer 9017 description: Timeout in seconds for connection to LDAP server 9018 x-omitempty: true 9019 x-isnullable: true 9020 ldap_uid: 9021 type: string 9022 description: The attribute which is used as identity for the LDAP binding, such as "CN" or "SAMAccountname" 9023 x-omitempty: true 9024 x-isnullable: true 9025 ldap_url: 9026 type: string 9027 description: The URL of LDAP server 9028 x-omitempty: true 9029 x-isnullable: true 9030 ldap_verify_cert: 9031 type: boolean 9032 description: Whether verify your OIDC server certificate, disable it if your OIDC server is hosted via self-hosted certificate. 9033 x-omitempty: true 9034 x-isnullable: true 9035 ldap_group_membership_attribute: 9036 type: string 9037 description: The user attribute to identify the group membership 9038 x-omitempty: true 9039 x-isnullable: true 9040 project_creation_restriction: 9041 type: string 9042 description: Indicate who can create projects, it could be ''adminonly'' or ''everyone''. 9043 x-omitempty: true 9044 x-isnullable: true 9045 read_only: 9046 type: boolean 9047 description: The flag to indicate whether Harbor is in readonly mode. 9048 x-omitempty: true 9049 x-isnullable: true 9050 self_registration: 9051 type: boolean 9052 description: Whether the Harbor instance supports self-registration. If it''s set to false, admin need to add user to the instance. 9053 x-omitempty: true 9054 x-isnullable: true 9055 token_expiration: 9056 type: integer 9057 description: The expiration time of the token for internal Registry, in minutes. 9058 x-omitempty: true 9059 x-isnullable: true 9060 uaa_client_id: 9061 type: string 9062 description: The client id of UAA 9063 x-omitempty: true 9064 x-isnullable: true 9065 uaa_client_secret: 9066 type: string 9067 description: The client secret of the UAA 9068 x-omitempty: true 9069 x-isnullable: true 9070 uaa_endpoint: 9071 type: string 9072 description: The endpoint of the UAA 9073 x-omitempty: true 9074 x-isnullable: true 9075 uaa_verify_cert: 9076 type: boolean 9077 description: Verify the certificate in UAA server 9078 x-omitempty: true 9079 x-isnullable: true 9080 http_authproxy_endpoint: 9081 type: string 9082 description: The endpoint of the HTTP auth 9083 x-omitempty: true 9084 x-isnullable: true 9085 http_authproxy_tokenreview_endpoint: 9086 type: string 9087 description: The token review endpoint 9088 x-omitempty: true 9089 x-isnullable: true 9090 http_authproxy_admin_groups: 9091 type: string 9092 description: The group which has the harbor admin privileges 9093 x-omitempty: true 9094 x-isnullable: true 9095 http_authproxy_admin_usernames: 9096 type: string 9097 description: The username which has the harbor admin privileges 9098 x-omitempty: true 9099 x-isnullable: true 9100 http_authproxy_verify_cert: 9101 type: boolean 9102 description: Verify the HTTP auth provider's certificate 9103 x-omitempty: true 9104 x-isnullable: true 9105 http_authproxy_skip_search: 9106 type: boolean 9107 description: Search user before onboard 9108 x-omitempty: true 9109 x-isnullable: true 9110 http_authproxy_server_certificate: 9111 type: string 9112 description: The certificate of the HTTP auth provider 9113 x-omitempty: true 9114 x-isnullable: true 9115 oidc_name: 9116 type: string 9117 description: The OIDC provider name 9118 x-omitempty: true 9119 x-isnullable: true 9120 oidc_endpoint: 9121 type: string 9122 description: The endpoint of the OIDC provider 9123 x-omitempty: true 9124 x-isnullable: true 9125 oidc_client_id: 9126 type: string 9127 description: The client ID of the OIDC provider 9128 x-omitempty: true 9129 x-isnullable: true 9130 oidc_client_secret: 9131 type: string 9132 description: The OIDC provider secret 9133 x-omitempty: true 9134 x-isnullable: true 9135 oidc_groups_claim: 9136 type: string 9137 description: The attribute claims the group name 9138 x-omitempty: true 9139 x-isnullable: true 9140 oidc_admin_group: 9141 type: string 9142 description: The OIDC group which has the harbor admin privileges 9143 x-omitempty: true 9144 x-isnullable: true 9145 oidc_group_filter: 9146 type: string 9147 description: The OIDC group filter which filters out the group name doesn't match the regular expression 9148 x-omitempty: true 9149 x-isnullable: true 9150 oidc_scope: 9151 type: string 9152 description: The scope of the OIDC provider 9153 x-omitempty: true 9154 x-isnullable: true 9155 oidc_user_claim: 9156 type: string 9157 description: The attribute claims the username 9158 x-omitempty: true 9159 x-isnullable: true 9160 oidc_verify_cert: 9161 type: boolean 9162 description: Verify the OIDC provider's certificate' 9163 x-omitempty: true 9164 x-isnullable: true 9165 oidc_auto_onboard: 9166 type: boolean 9167 description: Auto onboard the OIDC user 9168 x-omitempty: true 9169 x-isnullable: true 9170 oidc_extra_redirect_parms: 9171 type: string 9172 description: Extra parameters to add when redirect request to OIDC provider 9173 x-omitempty: true 9174 x-isnullable: true 9175 robot_token_duration: 9176 type: integer 9177 description: The robot account token duration in days 9178 x-omitempty: true 9179 x-isnullable: true 9180 robot_name_prefix: 9181 type: string 9182 description: The rebot account name prefix 9183 x-omitempty: true 9184 x-isnullable: true 9185 notification_enable: 9186 type: boolean 9187 description: Enable notification 9188 x-omitempty: true 9189 x-isnullable: true 9190 quota_per_project_enable: 9191 type: boolean 9192 description: Enable quota per project 9193 x-omitempty: true 9194 x-isnullable: true 9195 storage_per_project: 9196 type: integer 9197 description: The storage quota per project 9198 x-omitempty: true 9199 x-isnullable: true 9200 audit_log_forward_endpoint: 9201 type: string 9202 description: The audit log forward endpoint 9203 x-omitempty: true 9204 x-isnullable: true 9205 skip_audit_log_database: 9206 type: boolean 9207 description: Skip audit log database 9208 x-omitempty: true 9209 x-isnullable: true 9210 session_timeout: 9211 type: integer 9212 description: The session timeout for harbor, in minutes. 9213 x-omitempty: true 9214 x-isnullable: true 9215 scanner_skip_update_pulltime: 9216 type: boolean 9217 description: Whether or not to skip update pull time for scanner 9218 x-omitempty: true 9219 x-isnullable: true 9220 banner_message: 9221 type: string 9222 description: The banner message for the UI.It is the stringified result of the banner message object 9223 x-omitempty: true 9224 x-isnullable: true 9225 StringConfigItem: 9226 type: object 9227 properties: 9228 value: 9229 type: string 9230 x-omitempty: false 9231 description: The string value of current config item 9232 editable: 9233 type: boolean 9234 x-omitempty: false 9235 description: The configure item can be updated or not 9236 BoolConfigItem: 9237 type: object 9238 properties: 9239 value: 9240 type: boolean 9241 x-omitempty: false 9242 description: The boolean value of current config item 9243 editable: 9244 type: boolean 9245 x-omitempty: false 9246 description: The configure item can be updated or not 9247 IntegerConfigItem: 9248 type: object 9249 properties: 9250 value: 9251 type: integer 9252 x-omitempty: false 9253 description: The integer value of current config item 9254 editable: 9255 type: boolean 9256 x-omitempty: false 9257 description: The configure item can be updated or not 9258 ProjectMemberEntity: 9259 type: object 9260 properties: 9261 id: 9262 type: integer 9263 description: the project member id 9264 project_id: 9265 type: integer 9266 description: the project id 9267 entity_name: 9268 type: string 9269 description: the name of the group member. 9270 role_name: 9271 type: string 9272 description: the name of the role 9273 role_id: 9274 type: integer 9275 description: the role id 9276 entity_id: 9277 type: integer 9278 description: 'the id of entity, if the member is a user, it is user_id in user table. if the member is a user group, it is the user group''s ID in user_group table.' 9279 entity_type: 9280 type: string 9281 description: 'the entity''s type, u for user entity, g for group entity.' 9282 ProjectMember: 9283 type: object 9284 properties: 9285 role_id: 9286 type: integer 9287 description: 'The role id 1 for projectAdmin, 2 for developer, 3 for guest, 4 for maintainer' 9288 member_user: 9289 $ref: '#/definitions/UserEntity' 9290 member_group: 9291 $ref: '#/definitions/UserGroup' 9292 RoleRequest: 9293 type: object 9294 properties: 9295 role_id: 9296 type: integer 9297 description: 'The role id 1 for projectAdmin, 2 for developer, 3 for guest, 4 for maintainer' 9298 UserEntity: 9299 type: object 9300 properties: 9301 user_id: 9302 type: integer 9303 description: The ID of the user. 9304 username: 9305 type: string 9306 description: The name of the user. 9307 UserProfile: 9308 type: object 9309 properties: 9310 email: 9311 type: string 9312 realname: 9313 type: string 9314 comment: 9315 type: string 9316 UserCreationReq: 9317 type: object 9318 properties: 9319 email: 9320 type: string 9321 maxLength: 255 9322 realname: 9323 type: string 9324 comment: 9325 type: string 9326 password: 9327 type: string 9328 username: 9329 type: string 9330 maxLength: 255 9331 OIDCUserInfo: 9332 type: object 9333 properties: 9334 id: 9335 type: integer 9336 format: int 9337 description: the ID of the OIDC info record 9338 user_id: 9339 type: integer 9340 format: int 9341 description: the ID of the user 9342 subiss: 9343 type: string 9344 description: the concatenation of sub and issuer in the ID token 9345 secret: 9346 type: string 9347 description: the secret of the OIDC user that can be used for CLI to push/pull artifacts 9348 creation_time: 9349 type: string 9350 format: date-time 9351 description: The creation time of the OIDC user info record. 9352 update_time: 9353 type: string 9354 format: date-time 9355 description: The update time of the OIDC user info record. 9356 UserResp: 9357 type: object 9358 properties: 9359 email: 9360 type: string 9361 realname: 9362 type: string 9363 comment: 9364 type: string 9365 user_id: 9366 type: integer 9367 format: int 9368 username: 9369 type: string 9370 sysadmin_flag: 9371 type: boolean 9372 x-omitempty: false 9373 admin_role_in_auth: 9374 type: boolean 9375 x-omitempty: false 9376 description: indicate the admin privilege is grant by authenticator (LDAP), is always false unless it is the current login user 9377 oidc_user_meta: 9378 $ref: '#/definitions/OIDCUserInfo' 9379 creation_time: 9380 type: string 9381 format: date-time 9382 description: The creation time of the user. 9383 update_time: 9384 type: string 9385 format: date-time 9386 description: The update time of the user. 9387 UserSysAdminFlag: 9388 type: object 9389 properties: 9390 sysadmin_flag: 9391 type: boolean 9392 description: 'true-admin, false-not admin.' 9393 UserSearch: 9394 type: object 9395 properties: 9396 user_id: 9397 type: integer 9398 format: int 9399 description: The ID of the user. 9400 username: 9401 type: string 9402 PasswordReq: 9403 type: object 9404 properties: 9405 old_password: 9406 type: string 9407 description: The user's existing password. 9408 new_password: 9409 type: string 9410 description: New password for marking as to be updated. 9411 UserSearchRespItem: 9412 type: object 9413 properties: 9414 user_id: 9415 type: integer 9416 format: int 9417 description: The ID of the user. 9418 username: 9419 type: string 9420 Permission: 9421 type: object 9422 properties: 9423 resource: 9424 type: string 9425 description: The permission resoruce 9426 action: 9427 type: string 9428 description: The permission action 9429 Permissions: 9430 type: object 9431 properties: 9432 system: 9433 type: array 9434 description: The system level permissions 9435 items: 9436 $ref: '#/definitions/Permission' 9437 project: 9438 type: array 9439 description: The project level permissions 9440 items: 9441 $ref: '#/definitions/Permission' 9442 OIDCCliSecretReq: 9443 type: object 9444 properties: 9445 secret: 9446 type: string 9447 description: The new secret 9448 OverallHealthStatus: 9449 type: object 9450 description: The system health status 9451 properties: 9452 status: 9453 type: string 9454 description: The overall health status. It is "healthy" only when all the components' status are "healthy" 9455 components: 9456 type: array 9457 items: 9458 $ref: '#/definitions/ComponentHealthStatus' 9459 ComponentHealthStatus: 9460 type: object 9461 description: The health status of component 9462 properties: 9463 name: 9464 type: string 9465 description: The component name 9466 status: 9467 type: string 9468 description: The health status of component. Is either "healthy" or "unhealthy". 9469 error: 9470 type: string 9471 description: (optional) The error message when the status is "unhealthy" 9472 Statistic: 9473 type: object 9474 properties: 9475 private_project_count: 9476 type: integer 9477 format: int64 9478 description: The count of the private projects 9479 x-omitempty: false 9480 private_repo_count: 9481 type: integer 9482 format: int64 9483 description: The count of the private repositories 9484 x-omitempty: false 9485 public_project_count: 9486 type: integer 9487 format: int64 9488 description: The count of the public projects 9489 x-omitempty: false 9490 public_repo_count: 9491 type: integer 9492 format: int64 9493 description: The count of the public repositories 9494 x-omitempty: false 9495 total_project_count: 9496 type: integer 9497 format: int64 9498 description: The count of the total projects, only be seen by the system admin 9499 x-omitempty: false 9500 total_repo_count: 9501 type: integer 9502 format: int64 9503 description: The count of the total repositories, only be seen by the system admin 9504 x-omitempty: false 9505 total_storage_consumption: 9506 type: integer 9507 format: int64 9508 description: The total storage consumption of blobs, only be seen by the system admin 9509 x-omitempty: false 9510 Accessory: 9511 type: object 9512 description: 'The accessory of the artifact' 9513 properties: 9514 id: 9515 type: integer 9516 format: int64 9517 description: The ID of the accessory 9518 artifact_id: 9519 type: integer 9520 format: int64 9521 description: The artifact id of the accessory 9522 x-omitempty: false 9523 subject_artifact_id: 9524 type: integer 9525 format: int64 9526 description: Going to be deprecated, use repo and digest for insteand. The subject artifact id of the accessory. 9527 subject_artifact_digest: 9528 type: string 9529 description: The subject artifact digest of the accessory 9530 x-omitempty: false 9531 subject_artifact_repo: 9532 type: string 9533 description: The subject artifact repository name of the accessory 9534 x-omitempty: false 9535 size: 9536 type: integer 9537 format: int64 9538 description: The artifact size of the accessory 9539 x-omitempty: false 9540 digest: 9541 type: string 9542 description: The artifact digest of the accessory 9543 x-omitempty: false 9544 type: 9545 type: string 9546 description: The artifact size of the accessory 9547 x-omitempty: false 9548 icon: 9549 type: string 9550 description: The icon of the accessory 9551 x-omitempty: false 9552 creation_time: 9553 type: string 9554 format: date-time 9555 description: The creation time of the accessory 9556 9557 ScanDataExportRequest: 9558 type: object 9559 description: The criteria to select the scan data to export. 9560 properties: 9561 job_name: 9562 type: string 9563 description: Name of the scan data export job 9564 projects: 9565 type: array 9566 items: 9567 type: integer 9568 format: int64 9569 description: A list of one or more projects for which to export the scan data, currently only one project is supported due to performance concerns, but define as array for extension in the future. 9570 labels: 9571 type: array 9572 items: 9573 type: integer 9574 format: int64 9575 description: A list of one or more labels for which to export the scan data, defaults to all if empty 9576 repositories: 9577 type: string 9578 description: A list of repositories for which to export the scan data, defaults to all if empty 9579 cveIds: 9580 type: string 9581 description: CVE-IDs for which to export data. Multiple CVE-IDs can be specified by separating using ',' and enclosed between '{}'. Defaults to all if empty 9582 tags: 9583 type: string 9584 description: A list of tags enclosed within '{}'. Defaults to all if empty 9585 ScanDataExportJob: 9586 type: object 9587 description: The metadata associated with the scan data export job 9588 properties: 9589 id: 9590 type: integer 9591 format: int64 9592 description: The id of the scan data export job 9593 ScanDataExportExecution: 9594 type: object 9595 description: The replication execution 9596 properties: 9597 id: 9598 type: integer 9599 description: The ID of the execution 9600 user_id: 9601 type: integer 9602 description: The ID if the user triggering the export job 9603 status: 9604 type: string 9605 description: The status of the execution 9606 trigger: 9607 type: string 9608 description: The trigger mode 9609 start_time: 9610 type: string 9611 format: date-time 9612 description: The start time 9613 end_time: 9614 type: string 9615 format: date-time 9616 description: The end time 9617 status_text: 9618 type: string 9619 x-omitempty: false 9620 description: The status text 9621 user_name: 9622 type: string 9623 x-omitempty: false 9624 description: The name of the user triggering the job 9625 file_present: 9626 type: boolean 9627 x-omitempty: false 9628 description: Indicates whether the export artifact is present in registry 9629 ScanDataExportExecutionList: 9630 type: object 9631 description: The list of scan data export executions 9632 properties: 9633 items: 9634 type: array 9635 items: 9636 $ref: '#/definitions/ScanDataExportExecution' 9637 description: The list of scan data export executions 9638 9639 WorkerPool: 9640 type: object 9641 description: the worker pool of job service 9642 properties: 9643 pid: 9644 type: integer 9645 description: the process id of jobservice 9646 worker_pool_id: 9647 type: string 9648 description: the id of the worker pool 9649 start_at: 9650 type: string 9651 format: date-time 9652 description: The start time of the work pool 9653 heartbeat_at: 9654 type: string 9655 format: date-time 9656 description: The heartbeat time of the work pool 9657 concurrency: 9658 type: integer 9659 description: The concurrency of the work pool 9660 host: 9661 type: string 9662 description: The host of the work pool 9663 Worker: 9664 type: object 9665 description: worker in the pool 9666 properties: 9667 id: 9668 type: string 9669 description: the id of the worker 9670 pool_id: 9671 type: string 9672 description: the id of the worker pool 9673 job_name: 9674 type: string 9675 description: the name of the running job in the worker 9676 job_id: 9677 type: string 9678 description: the id of the running job in the worker 9679 start_at: 9680 type: string 9681 format: date-time 9682 description: The start time of the worker 9683 x-nullable: true 9684 x-omitempty: true 9685 check_in: 9686 type: string 9687 description: the checkin of the running job in the worker 9688 checkin_at: 9689 type: string 9690 format: date-time 9691 description: The checkin time of the worker 9692 x-nullable: true 9693 x-omitempty: true 9694 ActionRequest: 9695 type: object 9696 description: The request to stop, pause or resume 9697 properties: 9698 action: 9699 type: string 9700 description: The action of the request, should be stop, pause or resume 9701 enum: 9702 - stop 9703 - pause 9704 - resume 9705 JobQueue: 9706 type: object 9707 description: the job queue info 9708 properties: 9709 job_type: 9710 type: string 9711 description: The type of the job queue 9712 count: 9713 type: integer 9714 description: The count of jobs in the job queue 9715 latency: 9716 type: integer 9717 description: The latency the job queue (seconds) 9718 paused: 9719 type: boolean 9720 description: The paused status of the job queue 9721 x-omitempty: false 9722 ScheduleTask: 9723 type: object 9724 description: the schedule task info 9725 properties: 9726 id: 9727 type: integer 9728 description: the id of the Schedule task 9729 vendor_type: 9730 type: string 9731 description: the vendor type of the current schedule task 9732 vendor_id: 9733 type: integer 9734 description: the vendor id of the current task 9735 cron: 9736 type: string 9737 description: the cron of the current schedule task 9738 update_time: 9739 type: string 9740 format: date-time 9741 description: the update time of the schedule task 9742 SchedulerStatus: 9743 type: object 9744 description: the scheduler status 9745 properties: 9746 paused: 9747 type: boolean 9748 description: if the scheduler is paused 9749 x-omitempty: false 9750 SecuritySummary: 9751 type: object 9752 description: the security summary 9753 properties: 9754 critical_cnt: 9755 type: integer 9756 format: int64 9757 x-omitempty: false 9758 description: the count of critical vulnerabilities 9759 high_cnt: 9760 type: integer 9761 format: int64 9762 description: the count of high vulnerabilities 9763 medium_cnt: 9764 type: integer 9765 format: int64 9766 x-omitempty: false 9767 description: the count of medium vulnerabilities 9768 low_cnt: 9769 type: integer 9770 format: int64 9771 x-omitempty: false 9772 description: the count of low vulnerabilities 9773 none_cnt: 9774 type: integer 9775 format: int64 9776 description: the count of none vulnerabilities 9777 unknown_cnt: 9778 type: integer 9779 format: int64 9780 description: the count of unknown vulnerabilities 9781 total_vuls: 9782 type: integer 9783 format: int64 9784 x-omitempty: false 9785 description: the count of total vulnerabilities 9786 scanned_cnt: 9787 type: integer 9788 format: int64 9789 x-omitempty: false 9790 description: the count of scanned artifacts 9791 total_artifact: 9792 type: integer 9793 format: int64 9794 x-omitempty: false 9795 description: the total count of artifacts 9796 fixable_cnt: 9797 type: integer 9798 format: int64 9799 x-omitempty: false 9800 description: the count of fixable vulnerabilities 9801 dangerous_cves: 9802 type: array 9803 x-omitempty: true 9804 description: the list of dangerous CVEs 9805 items: 9806 $ref: '#/definitions/DangerousCVE' 9807 dangerous_artifacts: 9808 type: array 9809 x-omitempty: true 9810 description: the list of dangerous artifacts 9811 items: 9812 $ref: '#/definitions/DangerousArtifact' 9813 DangerousCVE: 9814 type: object 9815 description: the dangerous CVE information 9816 properties: 9817 cve_id: 9818 type: string 9819 description: the cve id 9820 severity: 9821 type: string 9822 description: the severity of the CVE 9823 cvss_score_v3: 9824 type: number 9825 format: float64 9826 description: the cvss score v3 9827 desc: 9828 type: string 9829 description: the description of the CVE 9830 package: 9831 type: string 9832 description: the package of the CVE 9833 version: 9834 type: string 9835 description: the version of the package 9836 DangerousArtifact: 9837 type: object 9838 description: the dangerous artifact information 9839 properties: 9840 project_id: 9841 type: integer 9842 format: int64 9843 description: the project id of the artifact 9844 repository_name: 9845 type: string 9846 description: the repository name of the artifact 9847 digest: 9848 type: string 9849 description: the digest of the artifact 9850 critical_cnt: 9851 type: integer 9852 x-omitempty: false 9853 description: the count of critical vulnerabilities 9854 high_cnt: 9855 type: integer 9856 format: int64 9857 x-omitempty: false 9858 description: the count of high vulnerabilities 9859 medium_cnt: 9860 type: integer 9861 x-omitempty: false 9862 description: the count of medium vulnerabilities 9863 9864 VulnerabilityItem: 9865 type: object 9866 description: the vulnerability item info 9867 properties: 9868 project_id: 9869 type: integer 9870 format: int64 9871 description: the project ID of the artifact 9872 repository_name: 9873 type: string 9874 description: the repository name of the artifact 9875 digest: 9876 type: string 9877 description: the digest of the artifact 9878 tags: 9879 type: array 9880 items: 9881 type: string 9882 description: the tags of the artifact 9883 cve_id: 9884 type: string 9885 description: the CVE id of the vulnerability. 9886 severity: 9887 type: string 9888 description: the severity of the vulnerability 9889 cvss_v3_score: 9890 type: number 9891 format: float 9892 description: the nvd cvss v3 score of the vulnerability 9893 package: 9894 type: string 9895 description: the package of the vulnerability 9896 version: 9897 type: string 9898 description: the version of the package 9899 fixed_version: 9900 type: string 9901 description: the fixed version of the package 9902 desc: 9903 type: string 9904 description: The description of the vulnerability 9905 links: 9906 type: array 9907 items: 9908 type: string 9909 description: Links of the vulnerability