AshScim.Info (ash_scim v0.1.0)

Copy Markdown View Source

Introspection for the AshScim.User and AshScim.Group extensions.

Use these helpers when you need to inspect a resource's SCIM mapping at runtime (e.g. in routers, plugs, or custom rendering code).

Summary

Functions

scim DSL entities

The Ash create action used by SCIM POST requests. Defaults to the resource's primary create action.

The Ash create action used by SCIM POST requests. Defaults to the resource's primary create action.

The Ash destroy action used by SCIM DELETE requests. Defaults to the resource's primary destroy action.

The Ash destroy action used by SCIM DELETE requests. Defaults to the resource's primary destroy action.

Returns the declared SCIM schema-extension URNs for resource.

Returns all SCIM mapping entities (maps, complex, multivalued) declared on the resource, preserving declaration order.

Emit the standard SCIM meta object (created, lastModified, location, resourceType).

URL path under which this resource is mounted (relative to the SCIM root).

URL path under which this resource is mounted (relative to the SCIM root).

The Ash read action used by SCIM GET requests. Defaults to the resource's primary read action.

The Ash read action used by SCIM GET requests. Defaults to the resource's primary read action.

Returns true if resource carries either the AshScim.User or AshScim.Group extension.

The SCIM schemas URN advertised for this resource.

The SCIM schemas URN advertised for this resource.

Returns the SCIM resource type for resource — :user, :group, or nil.

The Ash update action used by SCIM PUT/PATCH requests. Defaults to the resource's primary update action.

The Ash update action used by SCIM PUT/PATCH requests. Defaults to the resource's primary update action.

Functions

scim(dsl_or_extended)

@spec scim(dsl_or_extended :: module() | map()) :: [struct()]

scim DSL entities

scim_create_action(dsl_or_extended)

@spec scim_create_action(dsl_or_extended :: module() | map()) ::
  {:ok, atom()} | :error

The Ash create action used by SCIM POST requests. Defaults to the resource's primary create action.

scim_create_action!(dsl_or_extended)

@spec scim_create_action!(dsl_or_extended :: module() | map()) :: atom() | no_return()

The Ash create action used by SCIM POST requests. Defaults to the resource's primary create action.

scim_destroy_action(dsl_or_extended)

@spec scim_destroy_action(dsl_or_extended :: module() | map()) ::
  {:ok, atom()} | :error

The Ash destroy action used by SCIM DELETE requests. Defaults to the resource's primary destroy action.

scim_destroy_action!(dsl_or_extended)

@spec scim_destroy_action!(dsl_or_extended :: module() | map()) ::
  atom() | no_return()

The Ash destroy action used by SCIM DELETE requests. Defaults to the resource's primary destroy action.

scim_extension_urns(resource)

@spec scim_extension_urns(module()) :: [String.t()]

Returns the declared SCIM schema-extension URNs for resource.

scim_mappings(resource)

Returns all SCIM mapping entities (maps, complex, multivalued) declared on the resource, preserving declaration order.

scim_meta?(dsl_or_extended)

@spec scim_meta?(dsl_or_extended :: module() | map()) :: boolean()

Emit the standard SCIM meta object (created, lastModified, location, resourceType).

scim_options(dsl_or_extended)

@spec scim_options(dsl_or_extended :: module() | map()) :: %{
  required(atom()) => any()
}

scim DSL options

Returns a map containing the and any configured or default values.

scim_path(dsl_or_extended)

@spec scim_path(dsl_or_extended :: module() | map()) :: {:ok, String.t()} | :error

URL path under which this resource is mounted (relative to the SCIM root).

scim_path!(dsl_or_extended)

@spec scim_path!(dsl_or_extended :: module() | map()) :: String.t() | no_return()

URL path under which this resource is mounted (relative to the SCIM root).

scim_read_action(dsl_or_extended)

@spec scim_read_action(dsl_or_extended :: module() | map()) :: {:ok, atom()} | :error

The Ash read action used by SCIM GET requests. Defaults to the resource's primary read action.

scim_read_action!(dsl_or_extended)

@spec scim_read_action!(dsl_or_extended :: module() | map()) :: atom() | no_return()

The Ash read action used by SCIM GET requests. Defaults to the resource's primary read action.

scim_resource?(resource)

@spec scim_resource?(module()) :: boolean()

Returns true if resource carries either the AshScim.User or AshScim.Group extension.

scim_schema(dsl_or_extended)

@spec scim_schema(dsl_or_extended :: module() | map()) :: {:ok, String.t()} | :error

The SCIM schemas URN advertised for this resource.

scim_schema!(dsl_or_extended)

@spec scim_schema!(dsl_or_extended :: module() | map()) :: String.t() | no_return()

The SCIM schemas URN advertised for this resource.

scim_type(resource)

@spec scim_type(module()) :: :user | :group | nil

Returns the SCIM resource type for resource — :user, :group, or nil.

scim_update_action(dsl_or_extended)

@spec scim_update_action(dsl_or_extended :: module() | map()) ::
  {:ok, atom()} | :error

The Ash update action used by SCIM PUT/PATCH requests. Defaults to the resource's primary update action.

scim_update_action!(dsl_or_extended)

@spec scim_update_action!(dsl_or_extended :: module() | map()) :: atom() | no_return()

The Ash update action used by SCIM PUT/PATCH requests. Defaults to the resource's primary update action.