ScimTargetInput
in package
implements
JsonSerializable
`create` and `update` (a **replacement**) body.
This is a REPLACEMENT body (§27.4 rule 5): what it omits is not preserved. The required
members are constructor parameters, so omitting one is a constructor error; an optional
member left unset is omitted from the wire and takes its default server-side. Left unset,
the write-only secret (credential) is not reset but kept -- see the operation's
documentation for when a write must carry it.
Table of Contents
Interfaces
- JsonSerializable
Properties
- $auth : ScimTargetAuthVariant
- $baseUrl : string
- $credential : Sensitive|null
- $deprovision : DeprovisionPolicy|null
- $enabled : bool|null
- $expectedUpdatedAt : string|null
- $name : string
- $pushGroups : bool|null
- $scope : ScimTargetScopeVariant
- $userNameFrom : UserNameSource|null
Methods
- __construct() : mixed
- Constructs a ScimTargetInput.
- fromArray() : self
- Rebuilds a ScimTargetInput from one decoded JSON object.
- jsonSerialize() : array<string, mixed>
- Renders this object for `json_encode()`.
- toArray() : array<string, mixed>
- Renders this object back to its wire form.
- unknownEnumValue() : string|null
- The string the server sent for an open-enum member this SDK has no name for, or `null`.
Properties
$auth read-only
public
ScimTargetAuthVariant
$auth
$baseUrl read-only
public
string
$baseUrl
$credential read-only
public
Sensitive|null
$credential
= null
$deprovision read-only
public
DeprovisionPolicy|null
$deprovision
= null
$enabled read-only
public
bool|null
$enabled
= null
$expectedUpdatedAt read-only
public
string|null
$expectedUpdatedAt
= null
$name read-only
public
string
$name
$pushGroups read-only
public
bool|null
$pushGroups
= null
$scope read-only
public
ScimTargetScopeVariant
$scope
$userNameFrom read-only
public
UserNameSource|null
$userNameFrom
= null
Methods
__construct()
Constructs a ScimTargetInput.
public
__construct(ScimTargetAuthVariant $auth, string $baseUrl, string $name, ScimTargetScopeVariant $scope[, Sensitive|null $credential = null ][, DeprovisionPolicy|null $deprovision = null ][, bool|null $enabled = null ][, string|null $expectedUpdatedAt = null ][, bool|null $pushGroups = null ][, UserNameSource|null $userNameFrom = null ]) : mixed
Parameters
- $auth : ScimTargetAuthVariant
-
bearer, oroauth2_client_credentialswithtoken_url(the same URL policy),client_id(1–256 bytes) and an optionalscope. - $baseUrl : string
-
The downstream's SCIM service root: an
httpsURL under the outbound address policy (no credentials or fragment, at most 2 048 bytes, no non-public address, no local name). - $name : string
-
1–128 bytes.
- $scope : ScimTargetScopeVariant
-
all_users, orgroupswith 1–100group_idsof this tenant: users who are direct members of any listed group. - $credential : Sensitive|null = null
-
Write-only. The bearer token or the OAuth2 client secret, 1–4 096 bytes. Required on create. On update, absent keeps the stored one — except that moving it to another URL (
base_urlof a bearer target,token_urlorbase_urlof a client-credentials one) or switchingauth.typerequires it again. (optional) - $deprovision : DeprovisionPolicy|null = null
-
deactivate(default:PATCH active=false) ordelete. (optional) - $enabled : bool|null = null
-
trueby default. A disabled target receives nothing. (optional) - $expectedUpdatedAt : string|null = null
-
The
updated_atof the target as the client read it (P23W5-09, T-416). Update only; create ignores it. When present, the replacement lands only if the target still has that version, else409(reload and retry): two administrators who opened the form at the same version cannot silently overwrite each other. When absent the replacement is conditional on the version the server reads during the request — last-writer-wins between administrators, as before. (optional) - $pushGroups : bool|null = null
-
Push groups too (every group for
all_users, the listed ones forgroups).falseby default. (optional) - $userNameFrom : UserNameSource|null = null
-
username(default) oremail. (optional)
fromArray()
Rebuilds a ScimTargetInput from one decoded JSON object.
public
static fromArray(array<string, mixed> $data) : self
Parameters
- $data : array<string, mixed>
-
The raw wire object.
Return values
selfjsonSerialize()
Renders this object for `json_encode()`.
public
jsonSerialize() : array<string, mixed>
Any Sensitive it carries stays WRAPPED here, so a log line or a
json_encode($model) in application code prints [SENSITIVE]. The one place a secret
is revealed is ManagementTransport, on the way to the wire
and nowhere else (§27.5).
Rendering for a log line never fails: an unknown union arm renders its discriminator and
an unrecognised enum value its empty Unknown spelling here, and only self::toArray() -- the request path -- refuses to send it (CONTRACT.md §31.2, §34.2
P12.2).
Return values
array<string, mixed>toArray()
Renders this object back to its wire form.
public
toArray() : array<string, mixed>
§27.4 rule 5: a null property is OMITTED, not emitted as null. On a sparse update those two say opposite things — "leave this alone" versus "set this to nothing" — and only omission means the first.
Return values
array<string, mixed>unknownEnumValue()
The string the server sent for an open-enum member this SDK has no name for, or `null`.
public
unknownEnumValue(string $wire) : string|null
Only a model decoded by self::fromArray() knows it, and only for a member that
decoded to Unknown (CONTRACT.md §27.6.2 item 4, §34.8 (c)): it lets a refusal name the
value. It is for messages -- it is never rendered by self::toArray() or self::jsonSerialize() and so is never sent.
Parameters
- $wire : string
-
The member's wire name.