AXIAM PHP SDK

SetDirectoryConfig
in package
implements JsonSerializable

FinalYes

`PUT /api/v1/tenants/{tenant_id}/directory` — a **replacement**. Every `DirectoryConfig` member except `id`, `tenant_id` and the two timestamps, plus the write-only `bind_secret`.

An omitted optional member is reset to its default, not kept.

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 (bind_secret) is not reset but kept -- see the operation's documentation for when a write must carry it.

Table of Contents

Interfaces

JsonSerializable

Properties

$baseDn  : string
$bindDn  : string
$bindSecret  : Sensitive|null
$enabled  : bool
$groupBaseDn  : string|null
$groupFilter  : string|null
$groupMappings  : array<string|int, mixed>|null
$groupMemberAttribute  : string|null
$groupNestingDepth  : int|null
$jitProvisioning  : bool|null
$kind  : DirectoryKind
$startTls  : bool
$syncIntervalSecs  : int|null
$trustAnchorsPem  : array<string|int, mixed>|null
$url  : string
$userAttributeMap  : UserAttributeMap|null
$userFilter  : string

Methods

__construct()  : mixed
Constructs a SetDirectoryConfig.
fromArray()  : self
Rebuilds a SetDirectoryConfig 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

$groupMappings read-only

public array<string|int, mixed>|null $groupMappings = null

$trustAnchorsPem read-only

public array<string|int, mixed>|null $trustAnchorsPem = null

Methods

__construct()

Constructs a SetDirectoryConfig.

public __construct(string $baseDn, string $bindDn, bool $enabled, DirectoryKind $kind, bool $startTls, string $url, string $userFilter[, Sensitive|null $bindSecret = null ][, string|null $groupBaseDn = null ][, string|null $groupFilter = null ][, array<int, GroupMapping>|null $groupMappings = null ][, string|null $groupMemberAttribute = null ][, int|null $groupNestingDepth = null ][, bool|null $jitProvisioning = null ][, int|null $syncIntervalSecs = null ][, array<int, string>|null $trustAnchorsPem = null ][, UserAttributeMap|null $userAttributeMap = null ]) : mixed
Parameters
$baseDn : string

Where users are searched for.

$bindDn : string

The service account the search runs as.

$enabled : bool

A disabled directory serves no sign-in and is not synced.

$kind : DirectoryKind

Chooses defaults only.

$startTls : bool

Upgrade an ldap:// connection with StartTLS before any bind.

$url : string

ldaps://host[:port], or ldap://host[:port] with start_tls.

$userFilter : string

One {username} placeholder in value position.

$bindSecret : Sensitive|null = null

The service account's password: write-only*, 1 to 4096 octets. Required when the tenant has no configuration yet; on a replacement, absent means keep the stored secret — unless the write moves the connection (url, start_tls, bind_dn or trust_anchors_pem), which then requires it (400, P23W2-01). (optional)

$groupBaseDn : string|null = null

Defaults to null. (optional)

$groupFilter : string|null = null

Defaults to null. (optional)

$groupMappings : array<int, GroupMapping>|null = null

At most 500; every group_id a group of the tenant. Default empty. (optional)

$groupMemberAttribute : string|null = null

Defaults by kind. (optional)

$groupNestingDepth : int|null = null

0..=10, default 5. (optional)

$jitProvisioning : bool|null = null

Default false. (optional)

$syncIntervalSecs : int|null = null

300..=86400, default 3600. (optional)

$trustAnchorsPem : array<int, string>|null = null

At most 16 CA certificates in PEM. Default empty (the public roots). (optional)

$userAttributeMap : UserAttributeMap|null = null

the server's user_attribute_map field (optional)

fromArray()

Rebuilds a SetDirectoryConfig from one decoded JSON object.

public static fromArray(array<string, mixed> $data) : self
Parameters
$data : array<string, mixed>

The raw wire object.

Return values
self

jsonSerialize()

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.

Return values
string|null
On this page

Search results