Skip to content
Ona Docs

UnshareResourceWithPrincipal

client.Groups.Shares.Delete(ctx, body) (*GroupShareDeleteResponse, error)
POST/gitpod.v1.GroupService/UnshareResourceWithPrincipal

Removes direct access for a principal (user or service account) from a resource.

Use this method to:

  • Revoke a principal’s direct access to a resource
  • Remove sharing without affecting group-based access

Examples

  • Remove user access from a runner:

    Revokes a user’s direct access to a runner.

    resourceType: RESOURCE_TYPE_RUNNER
    resourceId: "d2c94c27-3b76-4a42-b88c-95a85e392c68"
    principal: PRINCIPAL_USER
    principalId: "f53d2330-3795-4c5d-a1f3-453121af9c60"

Authorization

Requires admin role on the specific resource.

ParametersExpand Collapse
body GroupShareDeleteParams
Principal param.Field[Principal]Optional

Type of principal to remove access from (user or service account)

PrincipalID param.Field[string]Optional

ID of the principal (user or service account) to remove access from

formatuuid
ResourceID param.Field[string]Optional

ID of the resource to unshare

formatuuid
ResourceType param.Field[ResourceType]Optional

Type of resource to unshare

ReturnsExpand Collapse
type GroupShareDeleteResponse interface{…}

Empty response on success

UnshareResourceWithPrincipal

package main

import (
  "context"
  "fmt"

  "github.com/gitpod-io/gitpod-sdk-go"
  "github.com/gitpod-io/gitpod-sdk-go/option"
  "github.com/gitpod-io/gitpod-sdk-go/shared"
)

func main() {
  client := gitpod.NewClient(
    option.WithBearerToken("My Bearer Token"),
  )
  share, err := client.Groups.Shares.Delete(context.TODO(), gitpod.GroupShareDeleteParams{
    Principal: gitpod.F(shared.PrincipalUser),
    PrincipalID: gitpod.F("f53d2330-3795-4c5d-a1f3-453121af9c60"),
    ResourceID: gitpod.F("d2c94c27-3b76-4a42-b88c-95a85e392c68"),
    ResourceType: gitpod.F(shared.ResourceTypeRunner),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", share)
}
{}
Returns Examples
{}