Interface TenantApi


@Path("/api/v1/tenants") @Consumes("application/json") @Produces("application/json") public interface TenantApi
REST API for managing tenants and their configurations in Release.
  • Method Details

    • getTenants

      @GET List<Tenant> getTenants()
      Retrieves all tenants in the system.
      Returns:
      a list of all tenants
    • getTenant

      @GET @Path("/{tenantId}") Tenant getTenant(@PathParam("tenantId") String tenantId)
      Retrieves a specific tenant by its ID.
      Parameters:
      tenantId - the unique identifier of the tenant
      Returns:
      the tenant with the specified ID
    • create

      @POST Tenant create(TenantRequest tenantRequest)
      Creates a new tenant.
      Parameters:
      tenantRequest - the tenant creation request containing tenant details
      Returns:
      the newly created tenant
    • update

      @PUT @Path("/{tenantId}") void update(@PathParam("tenantId") String tenantId, TenantRequest tenantRequest)
      Updates an existing tenant.
      Parameters:
      tenantId - the unique identifier of the tenant to update
      tenantRequest - the tenant update request containing new tenant details
    • delete

      @DELETE @Path("/{tenantId}") void delete(@PathParam("tenantId") String tenantId)
      Deletes a tenant by its ID.
      Parameters:
      tenantId - the unique identifier of the tenant to delete
    • getLimits

      @GET @Path("/limits") List<TenantLimit> getLimits()
      Retrieves all tenant limits in the system.
      Returns:
      a list of all tenant limits
    • getLimit

      @GET @Path("/limits/{tenantId}") TenantLimit getLimit(@PathParam("tenantId") String tenantId)
      Retrieves the limit configuration for a specific tenant.
      Parameters:
      tenantId - the unique identifier of the tenant
      Returns:
      the tenant limit configuration
    • createLimit

      @POST @Path("/limits/{tenantId}") TenantLimit createLimit(@PathParam("tenantId") String tenantId, TenantLimit limit)
      Creates a new limit configuration for a tenant.
      Parameters:
      tenantId - the unique identifier of the tenant
      limit - the tenant limit configuration to create
      Returns:
      the newly created tenant limit configuration
    • updateLimit

      @PUT @Path("/limits/{tenantId}") void updateLimit(@PathParam("tenantId") String tenantId, TenantLimit limit)
      Updates the limit configuration for a tenant.
      Parameters:
      tenantId - the unique identifier of the tenant
      limit - the updated tenant limit configuration
    • deleteLimit

      @DELETE @Path("/limits/{tenantId}") void deleteLimit(@PathParam("tenantId") String tenantId)
      Deletes the limit configuration for a tenant.
      Parameters:
      tenantId - the unique identifier of the tenant
    • linkResource

      @PUT @Path("/{tenantId}/link") void linkResource(@PathParam("tenantId") String tenantId, List<TenantLinkRequest> linkRequests)
      Links a tenant with various XL Release objects/resources. This operation associates the tenant with different resources in the system.
      Parameters:
      tenantId - the unique identifier of the tenant
      linkRequests - a list of tenant link requests specifying which resources to link