Package com.xebialabs.xlrelease.api.v1

## Interface RolesApi

- All Superinterfaces:
    `ApiService`

      @Path("/api/v1/roles")
      @Consumes("application/json")
      @Produces("application/json")
      public interface RolesApi
      extends ApiService

  Operations related to roles.

- - ### Field Summary

    - ### Fields inherited from interface com.xebialabs.xlrelease.api.ApiService

      `DEFAULT_RESULTS_PER_PAGE, DEFAULT_RESULTS_PER_PAGE_STRING, DEPTH, ORDER_BY, PAGE, PAGE_IS_OFFSET, RESULTS_PER_PAGE, ROLE_IDS_DATA`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `create​(java.lang.String roleName, RoleView roleView)` |
    `void` | `create​(java.util.List<RoleView> roleViews)` |
    `void` | `delete​(java.lang.String roleName)` |
    `RoleView` | `getRole​(java.lang.String roleName)` |
    `java.util.List<RoleView>` | `getRoles​(java.lang.Integer page, java.lang.Integer resultsPerPage)` | Returns the paginated list of roles ordered by role name.
    `void` | `rename​(java.lang.String roleName, java.lang.String newName)` |
    `default java.lang.String` | `serviceName()` |
    `void` | `update​(java.lang.String roleName, RoleView roleView)` |
    `void` | `update​(java.util.List<RoleView> roleViews)` |

- - ### Method Detail

    - #### serviceName

          default java.lang.String serviceName()

      Specified by:
        `serviceName` in interface `ApiService`

    - #### getRoles

          @GET
          java.util.List<RoleView> getRoles​(@DefaultValue("0") @QueryParam("page")
                                            java.lang.Integer page,
                                            @DefaultValue("100") @QueryParam("resultsPerPage")
                                            java.lang.Integer resultsPerPage)

      Returns the paginated list of roles ordered by role name.
      Parameters:
        `page` - the page of results to return. Default value is 0.
        `resultsPerPage` - the number of results per page. Default value is 100. Maximum value is 100.
      Returns:
        a list of roles.

    - #### getRole

          @GET
          @Path("/{roleName:.*[^/]*}")
          RoleView getRole​(@PathParam("roleName")
                           java.lang.String roleName)

    - #### create

          @POST
          @Path("/{roleName:.*[^/]*}")
          void create​(@PathParam("roleName")
                      java.lang.String roleName,
                      RoleView roleView)

    - #### create

          @POST
          void create​(java.util.List<RoleView> roleViews)

    - #### update

          @PUT
          @Path("/{roleName:.*[^/]*}")
          void update​(@PathParam("roleName")
                      java.lang.String roleName,
                      RoleView roleView)

    - #### update

          @PUT
          void update​(java.util.List<RoleView> roleViews)

    - #### delete

          @DELETE
          @Path("/{roleName:.*[^/]*}")
          void delete​(@PathParam("roleName")
                      java.lang.String roleName)

    - #### rename

          @POST
          @Path("/{roleName:.*[^/]*}/rename")
          void rename​(@PathParam("roleName")
                      java.lang.String roleName,
                      @QueryParam("newName")
                      java.lang.String newName)