Get group sync config
Retrieve the IdP group sync configuration for the workspace. If the workspace has no config yet, the first request creates one with default values.
Path parameters
workspace_slug:requiredstringThe workspace slug. It appears in your Plane URLs. In https://app.plane.so/my-team/projects/, the slug is my-team.
Response attributes
id:optionalstringUnique identifier of the config.
is_enabled:optionalbooleanWhether IdP group sync is enabled for the workspace.
sync_on_login:optionalbooleanSync group memberships automatically on user login.
auto_remove:optionalbooleanAutomatically remove users from projects or workspace when removed from their IdP group.
sync_offline:optionalbooleanAllow sync to run outside of login events.
group_attribute_key:optionalstringThe IdP claim key that contains group membership data (e.g. groups).
default_workspace_role:optionalstringRole slug assigned to users when added to the workspace via group sync.
created_at:optionaltimestampThe timestamp of when the config was created.
updated_at:optionaltimestampThe timestamp of when the config was last updated.
Scopes
workspaces.group_sync:read
curl -X GET \
"https://api.plane.so/api/v1/workspaces/my-workspace/group-sync/config/" \
-H "X-API-Key: $PLANE_API_KEY"
# Or use -H "Authorization: Bearer $PLANE_OAUTH_TOKEN"import requests
response = requests.get(
"https://api.plane.so/api/v1/workspaces/my-workspace/group-sync/config/",
headers={"X-API-Key": "your-api-key"}
)
print(response.json())const response = await fetch(
"https://api.plane.so/api/v1/workspaces/my-workspace/group-sync/config/",
{
headers: {
"X-API-Key": "your-api-key",
},
},
);
const data = await response.json();{
"id": "550e8400-e29b-41d4-a716-446655440000",
"is_enabled": true,
"sync_on_login": true,
"auto_remove": false,
"sync_offline": false,
"group_attribute_key": "groups",
"default_workspace_role": "member",
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-01T00:00:00Z"
}
