Skip to content

Main repo integration for SCIM #7150

@khvn26

Description

@khvn26

Scope

Wire the SCIM module from flagsmith-private into the main repo:

  • Conditional loading in settings/common.py: check for the SCIM module (e.g. importlib.util.find_spec), add to INSTALLED_APPS, configure DJANGO_SCIM_ settings pointing to adapters and middleware in flagsmith-private.
  • Mount SCIM URLs at /api/v1/scim/v2/ in the main URL conf, conditionally.
  • Mount SCIM configuration management URLs under /api/v1/organisations/{org_id}/scim/, conditionally.

Acceptance criteria

  • When the SCIM module is not installed, no SCIM URLs are registered and no SCIM app appears in INSTALLED_APPS.
  • When installed, GET /api/v1/scim/v2/ServiceProviderConfig returns a valid SCIM ServiceProviderConfig response.
  • GET /api/v1/scim/v2/Schemas and GET /api/v1/scim/v2/ResourceTypes return valid responses.
  • Requests without a valid bearer token receive 401.
  • Requests from a non-Enterprise org receive 403.

Metadata

Metadata

Assignees

No one assigned

    Labels

    apiIssue related to the REST API

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions