Index
A
- AbstractClient — Class in namespace CNIC
Shared foundation for all registrar API clients.
- AbstractLogger — Class in namespace CNIC
Shared foundation for brand loggers: implement {format()}, inherit the destination.
- AbstractResponse — Class in namespace CNIC
Shared Response foundation
- AbstractResponse::assembleRecords() — Method in class AbstractResponse
Assemble the record (row) list from the columns already added via addColumn(). Shared by all brands: each subclass populates the columns with its own Column type beforehand, while the row assembly is identical.
- AbstractResponse::addRecord() — Method in class AbstractResponse
Add a record to the record list
- AbstractResponseTemplateManager — Class in namespace CNIC
Shared base for all registrar ResponseTemplateManager implementations.
- AbstractResponseTemplateManager::addTemplate() — Method in class AbstractResponseTemplateManager
Add response template to template container
- AbstractResponseTranslator — Class in namespace CNIC
Shared base for all registrar ResponseTranslator implementations.
- AbstractSocketConfig — Class in namespace CNIC
Shared base for all registrar SocketConfig implementations, and the one home for connection configuration.
- ApiDateTime — Class in namespace CNIC
An immutable, UTC-only date/time value parsed from an API response.
- Response::addColumn() — Method in class Response
Add a column to the column list
- Response::addColumn() — Method in class Response
Add a column to the column list
- ResponseInterface::addColumn() — Method in class ResponseInterface
Add a column to the column list
- ResponseInterface::addRecord() — Method in class ResponseInterface
Add a record to the record list
B
- AbstractClient::buildCommand() — Method in class AbstractClient
Flatten and normalise the given command into wire form.
- Client::buildCommand() — Method in class Client
Flatten the given command into wire form (CNR uppercase key/value pairs) and convert its IDN parameters to punycode.
- Client::buildCommand() — Method in class Client
Flatten the given command into wire form, injecting the JSON response format.
C
- $ AbstractClient#context — Property in class AbstractClient
context data for the client
- AbstractClient::close() — Method in class AbstractClient
Close all cURL connections
- $ AbstractResponse#command — Property in class AbstractResponse
The API Command used within this request
- $ AbstractResponse#columnKeys — Property in class AbstractResponse
Column names available in this response
- $ AbstractResponse#columns — Property in class AbstractResponse
Container of Column Instances
- $ AbstractResponse#columnIndex — Property in class AbstractResponse
Map of column name to its index in the column/columnKeys lists.
- $ AbstractResponse#context — Property in class AbstractResponse
Context data for the response
- AbstractResponseTemplateManager::createResponse() — Method in class AbstractResponseTemplateManager
Create a brand Response instance from a template id or raw response.
- $ AbstractSocketConfig#curlOptions — Property in class AbstractSocketConfig
Caller-supplied cURL options, over and above what the transport and the dedicated setters above provide. Seeded from {getDefaultCurlOpts()} by the constructor, mutated by {setExtraCurlOptions()} and restored to those defaults by {resetCurlOptions()}.
- Client — Class in namespace CNIC\CNR
CNR API Client
- Column — Class in namespace CNIC\CNR
CNR Column
- ResponseTemplateManager::createResponse() — Method in class ResponseTemplateManager
Create a CNR Response instance from a template id or raw response.
- ClientFactory — Class in namespace CNIC
- ClientFactory
- ClientFactory::cnr() — Method in class ClientFactory
CentralNic Reseller (CNR, fka RRPproxy) client.
- Column — Class in namespace CNIC
Shared Column implementation
- ColumnInterface — Class in namespace CNIC
Common Column Interface
- CommandFormatter — Class in namespace CNIC
- CommandFormatter
- CnicException — Class in namespace CNIC\Exception
Base class for every exception the CNIC SDK throws.
- HttpTransport::close() — Method in class HttpTransport
Close and reset the cURL handle.
- Client — Class in namespace CNIC\IBS
IBS API Client
- ResponseTemplateManager::createResponse() — Method in class ResponseTemplateManager
Create an IBS Response instance from a template id or raw response.
- Client — Class in namespace CNIC\MONIKER
Moniker API Client — same platform as IBS; only the endpoints differ.
- TransportInterface::close() — Method in class TransportInterface
Close and release any underlying connection/handle.
D
- $ AbstractClient#debugMode — Property in class AbstractClient
activity flag for debug mode
- AbstractClient::disableDebugMode() — Method in class AbstractClient
Disable debug output
- AbstractResponseTranslator::descriptionRegexMap() — Method in class AbstractResponseTranslator
plain-string description keys for translation; keys are preg_quote'd before matching
- AbstractResponseTranslator::descriptionRawPatternMap() — Method in class AbstractResponseTranslator
raw regex pattern keys for translation; keys are used as-is (not preg_quote'd)
- $ ApiDateTime#date — Property in class ApiDateTime
The calendar date as
Y-m-d. Always populated, for both shapes.- $ ApiDateTime#dateTime — Property in class ApiDateTime
The full timestamp as
Y-m-d H:i:s, ornullfor a date-only value.- ResponseTranslator::descriptionRegexMap() — Method in class ResponseTranslator
- ResponseTranslator::descriptionRawPatternMap() — Method in class ResponseTranslator
- ResponseTranslator::descriptionRegexMap() — Method in class ResponseTranslator
- ResponseTranslator::descriptionRawPatternMap() — Method in class ResponseTranslator
E
- AbstractClient::enableDebugMode() — Method in class AbstractClient
Enable debug output to STDOUT
- AbstractClient::executeCurl() — Method in class AbstractClient
Delegate cURL execution to the transport layer.
- EchoSink — Class in namespace CNIC
Log sink writing to standard output — the shipped default, and what keeps
enableDebugMode()emitting the bytes consumers expect.- ExtendedResponseInterface — Class in namespace CNIC
Extended Response Interface
F
- AbstractLogger::format() — Method in class AbstractLogger
Build the debug record for the given request/response pair.
- AbstractResponseTranslator::fieldName() — Method in class AbstractResponseTranslator
Name of the response field carrying the human-readable text ("description" for CNR, "message" for IBS).
- ApiDateTime::from() — Method in class ApiDateTime
Parse an API date/time value.
- Logger::format() — Method in class Logger
Build the CNR debug record: command, POST body, optional transport error and the plain response, joined by newlines.
- ResponseTranslator::fieldName() — Method in class ResponseTranslator
CNR carries the human-readable text in the DESCRIPTION field.
- CommandFormatter::flattenCommand() — Method in class CommandFormatter
Flatten API command's nested arrays for easier handling
- CommandFormatter::formatCommand() — Method in class CommandFormatter
Format the command array into a plain text string
- Logger::format() — Method in class Logger
Build the IBS debug record: a labelled REQUEST/RESPONSE block with the plain response indented by one tab per line.
- ResponseTranslator::fieldName() — Method in class ResponseTranslator
IBS carries the human-readable text in the message field.
- LoggerInterface::format() — Method in class LoggerInterface
Build the debug record for the given request/response pair.
G
- AbstractClient::getSocketConfig() — Method in class AbstractClient
The connection configuration this client uses — the accessor that means a new setting needs no forwarder, and the seam that lets configuration be built and asserted without constructing a client.
- AbstractClient::getPOSTData() — Method in class AbstractClient
Serialize given command for POST request including connection configuration data
- AbstractClient::getURL() — Method in class AbstractClient
Get the API connection url that is currently set
- AbstractClient::getSocketTimeout() — Method in class AbstractClient
Get the request timeout in seconds currently configured.
- AbstractClient::getUserAgent() — Method in class AbstractClient
Get the user agent string — the one set via {setUserAgent()}, or the SDK default when none was.
- AbstractClient::getProxy() — Method in class AbstractClient
Get proxy configuration for API communication
- AbstractClient::getReferer() — Method in class AbstractClient
Get Referer configuration for API communication
- AbstractClient::getVersion() — Method in class AbstractClient
Get the current module version
- AbstractClient::getLiveUrl() — Method in class AbstractClient
Get LIVE system URL.
- AbstractClient::getSystem() — Method in class AbstractClient
Get the API system in use, or null when the configured URL is neither of the brand's two known endpoints.
- AbstractResponse::getContext() — Method in class AbstractResponse
Get context data for the response
- AbstractResponse::getRequestURL() — Method in class AbstractResponse
Get Request URL
- AbstractResponse::getPlain() — Method in class AbstractResponse
Get Plain API response
- AbstractResponse::getHash() — Method in class AbstractResponse
Get API response as Hash
- AbstractResponse::getColumn() — Method in class AbstractResponse
Get column by column name
- AbstractResponse::getColumnIndex() — Method in class AbstractResponse
Get Data by Column Name and Index
- AbstractResponse::getColumnKeys() — Method in class AbstractResponse
Get Column Names
- AbstractResponse::getColumns() — Method in class AbstractResponse
Get List of Columns
- AbstractResponse::getCommand() — Method in class AbstractResponse
Get Command used in this request
- AbstractResponse::getCommandPlain() — Method in class AbstractResponse
Get Command used in this request in plain text format
- AbstractResponse::getCurrentRecord() — Method in class AbstractResponse
Get Record of current record index
- AbstractResponse::getNextRecord() — Method in class AbstractResponse
Get next record in record list
- AbstractResponse::getNextPageNumber() — Method in class AbstractResponse
Get Page Number of next list query
- AbstractResponse::getNumberOfPages() — Method in class AbstractResponse
Get the number of pages available for this list query
- AbstractResponse::getPagination() — Method in class AbstractResponse
Get object containing all paging data
- AbstractResponse::getPreviousPageNumber() — Method in class AbstractResponse
Get Page Number of previous list query
- AbstractResponse::getPreviousRecord() — Method in class AbstractResponse
Get previous record in record list
- AbstractResponse::getRecord() — Method in class AbstractResponse
Get Record at given index
- AbstractResponse::getRecords() — Method in class AbstractResponse
Get all Records
- AbstractResponse::getRecordsCount() — Method in class AbstractResponse
Get count of rows in this response
- AbstractResponse::getHashString() — Method in class AbstractResponse
Get a string value from the hash by key, returning a default if not found or not a string
- AbstractResponse::getHashArray() — Method in class AbstractResponse
Get an array value from the hash by key, returning an empty array if not found or not an array. The twin of {getHashString()} for the nested blocks a brand's populate() reads (e.g. CNR's PROPERTY).
- AbstractResponseTemplateManager::generateTemplate() — Method in class AbstractResponseTemplateManager
Generate API response template string for given code and description
- AbstractResponseTemplateManager::getTemplate() — Method in class AbstractResponseTemplateManager
Get response template instance from template container.
- AbstractResponseTemplateManager::getTemplates() — Method in class AbstractResponseTemplateManager
Return all available response templates
- AbstractSocketConfig::getLogin() — Method in class AbstractSocketConfig
Get current login
- AbstractSocketConfig::getURL() — Method in class AbstractSocketConfig
Get the endpoint API requests are sent to — the effective URL.
- AbstractSocketConfig::getOTEUrl() — Method in class AbstractSocketConfig
Get OT&E endpoint URL
- AbstractSocketConfig::getLiveUrl() — Method in class AbstractSocketConfig
Get LIVE endpoint URL
- AbstractSocketConfig::getSystem() — Method in class AbstractSocketConfig
Get the API system currently in use, or null when the configured URL is neither of the brand's two known endpoints.
- AbstractSocketConfig::getProxy() — Method in class AbstractSocketConfig
Get the proxy configured for API communication, or null for a direct connection
- AbstractSocketConfig::getReferer() — Method in class AbstractSocketConfig
Get the Referer sent with API requests, or null when none is sent
- AbstractSocketConfig::getDefaultCurlOpts() — Method in class AbstractSocketConfig
Brand-default cURL options, used to seed and to reset {$curlOptions}.
- AbstractSocketConfig::getCurlOptions() — Method in class AbstractSocketConfig
The cURL options to hand the transport for a request: the dedicated proxy/referer state plus the caller's bag.
- AbstractSocketConfig::getSocketTimeout() — Method in class AbstractSocketConfig
Get socket timeout in seconds
- AbstractSocketConfig::getPOSTDataParams() — Method in class AbstractSocketConfig
Get POST data container of connection data
- AbstractSocketConfig::getPOSTData() — Method in class AbstractSocketConfig
Create POST data string out of connection data.
- Client::getSocketConfig() — Method in class Client
The CNR SocketConfig, narrowed from the shared {AbstractSocketConfig} type of {AbstractClient::$socketConfig}.
- Client::getSession() — Method in class Client
Get the API Session ID that is currently set, or null when there is none.
- Column::getDataByIndex() — Method in class Column
Get column data at given index
- Response::getCode() — Method in class Response
Get API response code
- Response::getDescription() — Method in class Response
Get API response description
- Response::getQueuetime() — Method in class Response
Get Queuetime of API response
- Response::getRuntime() — Method in class Response
Get Runtime of API response
- Response::getCurrentPageNumber() — Method in class Response
Get Page Number of current List Query
- Response::getFirstRecordIndex() — Method in class Response
Get Index of first row in this response
- Response::getLastRecordIndex() — Method in class Response
Get last record index of the current list query
- Response::getListHash() — Method in class Response
Get Response as List Hash including useful meta data for tables
- Response::getRecordsTotalCount() — Method in class Response
Get total count of records available for the list query
- Response::getRecordsLimitation() — Method in class Response
Get limit(ation) setting of the current list query This is the count of requested rows
- ResponseTemplateManager::generateTemplate() — Method in class ResponseTemplateManager
Generate API response template string for given code and description
- ResponseTemplateManager::getTemplate() — Method in class ResponseTemplateManager
Get response template instance from template container
- SocketConfig::getPOSTDataParams() — Method in class SocketConfig
Get POST data container of connection data
- SocketConfig::getPersistent() — Method in class SocketConfig
Get persistent parameter returned
- SocketConfig::getSession() — Method in class SocketConfig
Get API Session ID in use
- SocketConfig::getRoleSeparator() — Method in class SocketConfig
Get the separator between account id and role user id in a role login
- Column::getKey() — Method in class Column
Get column name
- Column::getData() — Method in class Column
Get column data
- Column::getDataByIndex() — Method in class Column
Get column data at given index
- Column::getDateTimeByIndex() — Method in class Column
Get column data at given index, parsed as a date/time value.
- ColumnInterface::getKey() — Method in class ColumnInterface
Get column name
- ColumnInterface::getData() — Method in class ColumnInterface
Get column data
- ColumnInterface::getDataByIndex() — Method in class ColumnInterface
Get column data at given index
- ColumnInterface::getDateTimeByIndex() — Method in class ColumnInterface
Get column data at given index, parsed as a date/time value.
- CommandFormatter::getSortedCommand() — Method in class CommandFormatter
Get the sorted command array based on priority
- ExtendedResponseInterface::getQueuetime() — Method in class ExtendedResponseInterface
Get Queuetime of API response
- ExtendedResponseInterface::getRuntime() — Method in class ExtendedResponseInterface
Get Runtime of API response
- ExtendedResponseInterface::getListHash() — Method in class ExtendedResponseInterface
Get Response as List Hash including useful meta data for tables
- Response::getCode() — Method in class Response
Get API response code.
- Response::getDescription() — Method in class Response
Get API response description
- Response::getCurrentPageNumber() — Method in class Response
Get Page Number of current List Query
- Response::getFirstRecordIndex() — Method in class Response
Get Index of first row in this response
- Response::getLastRecordIndex() — Method in class Response
Get last record index of the current list query
- Response::getRecordsTotalCount() — Method in class Response
Get total count of records available for the list query
- Response::getRecordsLimitation() — Method in class Response
Get limit(ation) setting of the current list query This is the count of requested rows
- ResponseTemplateManager::generateTemplate() — Method in class ResponseTemplateManager
Generate API response template string for given status and description
- ResponseTemplateManager::getTemplate() — Method in class ResponseTemplateManager
Get response template instance from template container
- SocketConfig::getPOSTDataParams() — Method in class SocketConfig
Get POST data container of connection data
- Record::getData() — Method in class Record
get row data
- Record::getDataByKey() — Method in class Record
get row data for given column
- Record::getDateTimeByKey() — Method in class Record
Get row data for given column, parsed as a date/time value.
- RecordInterface::getData() — Method in class RecordInterface
Get row data
- RecordInterface::getDataByKey() — Method in class RecordInterface
Get row data for given column, or null if the column does not exist
- RecordInterface::getDateTimeByKey() — Method in class RecordInterface
Get row data for given column, parsed as a date/time value.
- ResponseInterface::getCode() — Method in class ResponseInterface
Get API response code
- ResponseInterface::getDescription() — Method in class ResponseInterface
Get API response description
- ResponseInterface::getRequestURL() — Method in class ResponseInterface
Get Request URL
- ResponseInterface::getPlain() — Method in class ResponseInterface
Get Plain API response
- ResponseInterface::getHash() — Method in class ResponseInterface
Get API response as Hash
- ResponseInterface::getColumn() — Method in class ResponseInterface
Get column by column name, or null if the column does not exist
- ResponseInterface::getColumnIndex() — Method in class ResponseInterface
Get Data by Column Name and Index, or null if not found
- ResponseInterface::getColumnKeys() — Method in class ResponseInterface
Get Column Names
- ResponseInterface::getColumns() — Method in class ResponseInterface
Get List of Columns
- ResponseInterface::getCommand() — Method in class ResponseInterface
Get Command used in this request
- ResponseInterface::getCommandPlain() — Method in class ResponseInterface
Get Command used in this request in plain text format
- ResponseInterface::getContext() — Method in class ResponseInterface
Get context data for the response
- ResponseInterface::getCurrentPageNumber() — Method in class ResponseInterface
Get Page Number of current List Query, or null for a non-list response
- ResponseInterface::getCurrentRecord() — Method in class ResponseInterface
Get Record of current record index, or null for a non-list response
- ResponseInterface::getFirstRecordIndex() — Method in class ResponseInterface
Get Index of first row in this response
- ResponseInterface::getLastRecordIndex() — Method in class ResponseInterface
Get last record index of the current list query, or null for a non-list response
- ResponseInterface::getNextRecord() — Method in class ResponseInterface
Get next record in record list, or null if there is no further record
- ResponseInterface::getNextPageNumber() — Method in class ResponseInterface
Get Page Number of next list query, or null if there is no next page
- ResponseInterface::getNumberOfPages() — Method in class ResponseInterface
Get the number of pages available for this list query
- ResponseInterface::getPagination() — Method in class ResponseInterface
Get object containing all paging data
- ResponseInterface::getPreviousPageNumber() — Method in class ResponseInterface
Get Page Number of previous list query, or null if there is no previous page
- ResponseInterface::getPreviousRecord() — Method in class ResponseInterface
Get previous record in record list, or null if there is no previous record
- ResponseInterface::getRecord() — Method in class ResponseInterface
Get Record at given index, or null if the index does not exist
- ResponseInterface::getRecords() — Method in class ResponseInterface
Get all Records
- ResponseInterface::getRecordsCount() — Method in class ResponseInterface
Get count of rows in this response
- ResponseInterface::getRecordsTotalCount() — Method in class ResponseInterface
Get total count of records available for the list query, or the count of records for a non-list response
- ResponseInterface::getRecordsLimitation() — Method in class ResponseInterface
Get limit(ation) setting of the current list query — the count of requested rows
H
- $ AbstractResponse#hash — Property in class AbstractResponse
hash representation of plain API response.
- AbstractResponse::hasCurrentRecord() — Method in class AbstractResponse
Check if the record list contains a record for the current record index in use
- AbstractResponse::hasNextRecord() — Method in class AbstractResponse
Check if the record list contains a next record for the current record index in use
- AbstractResponse::hasPreviousRecord() — Method in class AbstractResponse
Check if the record list contains a previous record for the current record index in use
- AbstractResponseTemplateManager::hasTemplate() — Method in class AbstractResponseTemplateManager
Check if given template exists in template container
- AbstractResponseTranslator::hasMissingRequiredFields() — Method in class AbstractResponseTranslator
Whether the raw response is missing or has an empty required field (CNR: CODE/DESCRIPTION, IBS: status) and should therefore fall back to the "invalid" template.
- $ AbstractSocketConfig#highPerformance — Property in class AbstractSocketConfig
Whether requests are routed through the co-located high-performance proxy on loopback ({useHighPerformanceConnectionSetup()}).
- Response::hasNextPage() — Method in class Response
Check if this list query has a next page
- Response::hasPreviousPage() — Method in class Response
Check if this list query has a previous page
- ResponseTranslator::hasMissingRequiredFields() — Method in class ResponseTranslator
CNR falls back to the "invalid" template when CODE or DESCRIPTION is missing, or DESCRIPTION is present but empty.
- HttpTransport — Class in namespace CNIC
Low-level HTTP transport over cURL.
- Response::hasNextPage() — Method in class Response
Check if this list query has a next page
- Response::hasPreviousPage() — Method in class Response
Check if this list query has a previous page
- ResponseTranslator::hasMissingRequiredFields() — Method in class ResponseTranslator
IBS falls back to the "invalid" template when status is missing (JSON or plain) or present but empty. message is optional in success cases and is deliberately not checked.
- ResponseInterface::hasNextPage() — Method in class ResponseInterface
Check if this list query has a next page
- ResponseInterface::hasPreviousPage() — Method in class ResponseInterface
Check if this list query has a previous page
I
- AbstractClient::IDNConvert() — Method in class AbstractClient
Convert domain names to idn + punycode.
- AbstractClient::isOTE() — Method in class AbstractClient
Check whether the OT&E system is in use
- AbstractResponseTemplateManager::isTemplateMatchHash() — Method in class AbstractResponseTemplateManager
Check if given API response hash matches a given template by code and description
- AbstractResponseTemplateManager::isTemplateMatchPlain() — Method in class AbstractResponseTemplateManager
Check if given API plain response matches a given template by code and description
- AbstractSocketConfig::isOTE() — Method in class AbstractSocketConfig
Check whether the OT&E endpoint is in use
- ApiDateTime::isDateOnly() — Method in class ApiDateTime
Whether the source value was a bare calendar date, naming no instant.
- IDNCommandRewriter — Class in namespace CNIC\CNR
Rewrites the IDN-bearing parameters of a CNR API command to punycode.
- Response::isError() — Method in class Response
Check if current API response represents an error case API response code is an 5xx code
- Response::isSuccess() — Method in class Response
Check if current API response represents a success case API response code is an 2xx code
- Response::isTmpError() — Method in class Response
Check if current API response represents a temporary error case API response code is an 4xx code
- Response::isPending() — Method in class Response
Check if current operation is returned as pending
- ClientFactory::ibs() — Method in class ClientFactory
Internet.bs (IBS) client.
- InvalidConfigurationException — Class in namespace CNIC\Exception
Thrown when a configuration value handed to the SDK is outside the range the transport can act on.
- InvalidDateTimeException — Class in namespace CNIC\Exception
Thrown when an API date/time value cannot be parsed.
- ExtendedResponseInterface::isTmpError() — Method in class ExtendedResponseInterface
Check if current API response represents a temporary error case (a 4xx code)
- ExtendedResponseInterface::isPending() — Method in class ExtendedResponseInterface
Check if current operation is returned as pending
- Response::isError() — Method in class Response
Check if current API response represents an error case.
- Response::isSuccess() — Method in class Response
Check if current API response represents a success case.
- ResponseInterface::isError() — Method in class ResponseInterface
Check if current API response represents an error case (a 5xx code)
- ResponseInterface::isSuccess() — Method in class ResponseInterface
Check if current API response represents a success case (a 2xx code)
L
- $ AbstractClient#logger — Property in class AbstractClient
logger instance for debug mode
- AbstractLogger::log() — Method in class AbstractLogger
Format the record, then hand it to the sink. The whole implementation of the contract — see the class docblock for why it may not be overridden.
- $ AbstractSocketConfig#login — Property in class AbstractSocketConfig
account name
- $ AbstractSocketConfig#liveUrl — Property in class AbstractSocketConfig
API LIVE endpoint URL
- Logger — Class in namespace CNIC\CNR
CNR Logger
- SessionCapable::login() — Method in class SessionCapable
Perform API login to start session-based communication
- SessionCapable::logout() — Method in class SessionCapable
Perform API logout to close API session in use
- $ SocketConfig#liveUrl — Property in class SocketConfig
- $ Column#length — Property in class Column
count of column data entries
- Logger — Class in namespace CNIC\IBS
IBS Logger
- $ SocketConfig#liveUrl — Property in class SocketConfig
- LogSinkInterface — Class in namespace CNIC
Destination for formatted debug output.
- LoggerInterface — Class in namespace CNIC
Common Logger Interface
- LoggerInterface::log() — Method in class LoggerInterface
Write the debug record for the given request/response pair.
- $ SocketConfig#liveUrl — Property in class SocketConfig
M
- AbstractResponseTemplateManager::matchKeys() — Method in class AbstractResponseTemplateManager
The two response-hash keys this brand compares when matching a template (code/description equivalent, e.g. CODE/DESCRIPTION or status/message).
- AbstractSocketConfig::maskSensitiveCommand() — Method in class AbstractSocketConfig
Mask the values of the brand's sensitive command keys (see $sensitiveFields) so command-level secrets — e.g. a domain transfer authorization code — never reach the debug log in cleartext. Matching is case-insensitive to stay robust against casing differences between what a brand documents and what it actually sends.
nullvalues are left untouched (they are dropped from the request, not logged).- ResponseTemplateManager::matchKeys() — Method in class ResponseTemplateManager
CNR compares templates on the CODE and DESCRIPTION hash keys.
- ClientFactory::moniker() — Method in class ClientFactory
Moniker client (same platform as IBS; only the endpoints differ).
- ResponseTemplateManager::matchKeys() — Method in class ResponseTemplateManager
IBS compares templates on the status and message hash keys.
N
- AbstractClient::newResponse() — Method in class AbstractClient
Instantiate the brand Response for the given raw payload.
- AbstractClient::newSocketConfig() — Method in class AbstractClient
Instantiate the SocketConfig for this client.
- AbstractClient::newTransport() — Method in class AbstractClient
Instantiate the HTTP transport for this client. Mirrors {newSocketConfig()} — the default is the production cURL transport; override or {setTransport()} to inject a test double so the request() lifecycle can run offline.
- AbstractClient::newLogger() — Method in class AbstractClient
Instantiate the brand's logger, writing to the given sink. Mirrors {newTransport()}/{@see newSocketConfig()}, and exists so a sink can be chosen without the brand's Logger class being named at the call site. An override must honour
$sink— that is what makes {setLogSink()} work for a subclass.- AbstractResponse::newResponseParser() — Method in class AbstractResponse
Instantiate the response parser for this brand.
- AbstractResponse::newRecord() — Method in class AbstractResponse
Instantiate the record type for this brand.
- AbstractResponseTemplateManager::newResponseParser() — Method in class AbstractResponseTemplateManager
Instantiate the brand's response parser.
- Client::newSocketConfig() — Method in class Client
Instantiate CNR SocketConfig
- Client::newLogger() — Method in class Client
Instantiate the CNR logger writing to the given sink
- Client::newResponse() — Method in class Client
Instantiate a CNR Response for the given raw payload.
- Response::newRecord() — Method in class Response
Instantiate the record type for this brand.
- Response::newResponseParser() — Method in class Response
Instantiate the response parser for this brand.
- ResponseTemplateManager::newResponseParser() — Method in class ResponseTemplateManager
Instantiate the CNR response parser.
- Client::newSocketConfig() — Method in class Client
Instantiate IBS SocketConfig
- Client::newLogger() — Method in class Client
Instantiate the IBS logger writing to the given sink
- Client::newResponse() — Method in class Client
Instantiate an IBS Response for the given raw payload.
- Response::newRecord() — Method in class Response
Instantiate the record type for this brand.
- Response::newResponseParser() — Method in class Response
Instantiate the response parser for this brand (Moniker inherits it).
- ResponseTemplateManager::newResponseParser() — Method in class ResponseTemplateManager
Instantiate the IBS response parser.
- Client::newSocketConfig() — Method in class Client
Instantiate MONIKER SocketConfig
O
- $ AbstractSocketConfig#oteUrl — Property in class AbstractSocketConfig
API OT&E endpoint URL
- $ SocketConfig#oteUrl — Property in class SocketConfig
- $ SocketConfig#oteUrl — Property in class SocketConfig
- $ SocketConfig#oteUrl — Property in class SocketConfig
P
- AbstractClient::performRequest() — Method in class AbstractClient
Shared request lifecycle (template method). Never reimplement it in a brand; vary it through exactly two hooks — {buildCommand()} (command flattening) and {newResponse()} (covariant Response factory) — plus the {newSocketConfig()} subtype, which is where a brand-mandatory cURL option would go. No brand declares one.
- $ AbstractResponse#paginationKeys — Property in class AbstractResponse
Regex for pagination related column keys, stripped in getColumnKeys(true).
- $ AbstractResponse#parser — Property in class AbstractResponse
The parser turning the translated raw response into {$hash}.
- AbstractResponse::populate() — Method in class AbstractResponse
Parse the translated response into the hash and build the column/record lists from it. Brand-specific because each brand's parser returns a different hash shape (CNR nests columns under PROPERTY, IBS is a flat key => value map). The sanitized command is available as $this->command, and the parser — the brand default or the injected substitute — as $this->parser.
- $ AbstractSocketConfig#password — Property in class AbstractSocketConfig
account password
- $ AbstractSocketConfig#proxy — Property in class AbstractSocketConfig
Proxy for API communication, or null for a direct connection.
- $ Response#paginationKeys — Property in class Response
Regex for pagination related column keys.
- Response::populate() — Method in class Response
Parse the translated response into the hash and build the column/record lists from it. CNR exposes its columns under the PROPERTY sub-array and assembles records only when properties are present.
- ResponseParser::parse() — Method in class ResponseParser
Method to parse plain API response into js object
- PaginationException — Class in namespace CNIC\Exception
Thrown when a list-pagination helper is used incorrectly.
- HttpTransport::post() — Method in class HttpTransport
Execute a POST request and return the raw response.
- $ Response#paginationKeys — Property in class Response
Regex for the count/metadata column keys IBS emits alongside a list.
- Response::populate() — Method in class Response
Parse the translated response with the IBS parser and build the columns from it. The IBS parser needs the sanitized command (kept on $this->command by the shared constructor). IBS responses are flat key => value maps; each hash entry becomes a column, list values kept as-is and anything else wrapped into a single-cell list so the shared record assembly can iterate them.
- ResponseParser::parse() — Method in class ResponseParser
Method to parse API response into associative array
- ResponseParserInterface::parse() — Method in class ResponseParserInterface
Parse a raw API response into its hash form.
- TransportInterface::post() — Method in class TransportInterface
Execute a POST request and return the raw response.
R
- AbstractClient::request() — Method in class AbstractClient
Perform API request using the given command.
- AbstractClient::resetCurlOptions() — Method in class AbstractClient
Restore the cURL option bag to the brand defaults, discarding anything previously handed to {setExtraCurlOptions()}. Options only — the proxy and referer are separate state and survive; see {AbstractSocketConfig::resetCurlOptions()}.
- $ AbstractResponse#raw — Property in class AbstractResponse
plain API response
- $ AbstractResponse#recordIndex — Property in class AbstractResponse
Record Index we currently point to in record list
- $ AbstractResponse#records — Property in class AbstractResponse
Record List (List of rows)
- $ AbstractResponse#requestUrl — Property in class AbstractResponse
API request url
- AbstractResponse::registerColumn() — Method in class AbstractResponse
Register an already-constructed column into the list bookkeeping.
- AbstractResponse::rewindRecordList() — Method in class AbstractResponse
Reset index in record list back to zero
- AbstractResponseTemplateManager::resetTemplates() — Method in class AbstractResponseTemplateManager
Restore the brand's built-in templates, discarding everything {addTemplate()} has registered since.
- AbstractResponseTranslator::replacePlaceholders() — Method in class AbstractResponseTranslator
Replace known placeholders in the human-readable field while preserving literal brace content and unknown-token content in other fields.
- $ AbstractSocketConfig#referer — Property in class AbstractSocketConfig
Referer sent with API requests, or null to send none. Real state for the same reason as {$proxy}.
- AbstractSocketConfig::resetCurlOptions() — Method in class AbstractSocketConfig
Restore the cURL option bag to the brand defaults ({getDefaultCurlOpts()}), discarding anything previously handed to {setExtraCurlOptions()}.
- $ ApiDateTime#raw — Property in class ApiDateTime
The original input string, exactly as passed to {self::from()} / {self::tryFrom()} — no separator normalisation, no fractional-second stripping. Before the
getDateTimeByKey()/getDateTimeByIndex()accessors existed, the only way to obtain anApiDateTimewasApiDateTime::tryFrom($hash["paiduntil"]), so the caller necessarily still held the raw string alongside it. Those accessors close that gap — the raw value never passes through the integrator's own code — and recovering it afterwards would mean a secondgetDataByKey()lookup plus a re-narrow, exactly the double work the accessor exists to eliminate.- Client::request() — Method in class Client
Perform API request using the given command
- Client::requestNextResponsePage() — Method in class Client
Request the next page of list entries for the current list query
- Client::requestAllResponsePages() — Method in class Client
Request all pages/entries for the given query command
- IDNCommandRewriter::rewrite() — Method in class IDNCommandRewriter
Convert the IDN-bearing values of a flattened CNR command to punycode.
- Response — Class in namespace CNIC\CNR
CNR Response
- ResponseParser — Class in namespace CNIC\CNR
CNR ResponseParser
- ResponseTemplateManager — Class in namespace CNIC\CNR
CNR ResponseTemplateManager
- ResponseTranslator — Class in namespace CNIC\CNR
CNR ResponseTranslator
- SessionCapable::reuseSession() — Method in class SessionCapable
Rebuild connection settings from a PHP session object.
- Client::request() — Method in class Client
Perform API request using the given command.
- Response — Class in namespace CNIC\IBS
IBS Response
- ResponseParser — Class in namespace CNIC\IBS
IBS ResponseParser
- ResponseTemplateManager — Class in namespace CNIC\IBS
IBS ResponseTemplateManager
- ResponseTranslator — Class in namespace CNIC\IBS
IBS ResponseTranslator
- Record — Class in namespace CNIC
Shared Record implementation
- RecordInterface — Class in namespace CNIC
Common Record Interface
- ResponseInterface — Class in namespace CNIC
Common Response Interface
- ResponseInterface::rewindRecordList() — Method in class ResponseInterface
Reset index in record list back to zero
- ResponseParserInterface — Class in namespace CNIC
Contract for the brand parser that turns a raw API response into its hash form.
- RoleCredentialsInterface — Class in namespace CNIC
Role-credentials capability.
S
- $ AbstractClient#socketConfig — Property in class AbstractClient
Object covering API connection data — the one home for connection configuration; see {getSocketConfig()}.
- AbstractClient::setTransport() — Method in class AbstractClient
Inject a custom HTTP transport (e.g. a record/replay cassette transport for offline tests) in place of the default {HttpTransport}.
- AbstractClient::setLogSink() — Method in class AbstractClient
Route debug output somewhere other than standard output, keeping this brand's format.
- AbstractClient::setCustomLogger() — Method in class AbstractClient
Set custom logger to use instead of the default one — use this to replace the format as well as the destination. Create your own class extending \CNIC\AbstractLogger (format only) or implementing \CNIC\LoggerInterface (format and destination).
- AbstractClient::setSocketTimeout() — Method in class AbstractClient
Set the request timeout in seconds (default 300).
- AbstractClient::setUserAgent() — Method in class AbstractClient
Set a custom user agent (for platforms that use this SDK)
- AbstractClient::setExtraCurlOptions() — Method in class AbstractClient
Merge additional cURL options into the bag, overriding existing values on key collision. Forwards to {AbstractSocketConfig::setExtraCurlOptions()}, whose docblock carries the detail: what reaches the wire, and the two sets of keys that are refused — the SDK-managed settings ({AbstractSocketConfig::MANAGED_OPTIONS}, rejected here and now) and the transport's own ({HttpTransport::PROTECTED_OPTIONS}, rejected on the next request).
- AbstractClient::setProxy() — Method in class AbstractClient
Set proxy to use for API communication
- AbstractClient::setReferer() — Method in class AbstractClient
Set Referer to use for API communication
- AbstractClient::setURL() — Method in class AbstractClient
Set another connection url to be used for API communication
- AbstractClient::setCredentials() — Method in class AbstractClient
Set Credentials to be used for API communication.
- AbstractClient::setContext() — Method in class AbstractClient
Set context data for the client
- $ AbstractResponse#sensitiveFields — Property in class AbstractResponse
Command parameter keys that carry sensitive data for this brand (account password, domain authorization code, ...). Their values are masked before the command is stored so they can never be read back (e.g. by custom loggers). Matching is case-insensitive (see sanitizeCommand()), so only the names matter, not their casing. Brand-specific by design: each brand declares the keys it uses (CNR upper-case, IBS lower-/camel-case); the neutral default masks nothing.
- AbstractResponse::sanitizeCommand() — Method in class AbstractResponse
Mask the brand's sensitive command keys (see $sensitiveFields) so their values can never be read back from the response (e.g. by custom loggers).
- $ AbstractSocketConfig#socketTimeout — Property in class AbstractSocketConfig
API socket timeout in seconds
- $ AbstractSocketConfig#sensitiveFields — Property in class AbstractSocketConfig
Command parameter keys whose values carry sensitive data (account password, domain authorization code, ...) and must be masked in the "secured" POST body used for debug logging. Matching is case-insensitive (see maskSensitiveCommand()), so only the names matter, not their casing.
- AbstractSocketConfig::setLogin() — Method in class AbstractSocketConfig
Set account name to use
- AbstractSocketConfig::setPassword() — Method in class AbstractSocketConfig
Set account password to use
- AbstractSocketConfig::setURL() — Method in class AbstractSocketConfig
Set another connection url to be used for API communication.
- AbstractSocketConfig::setProxy() — Method in class AbstractSocketConfig
Set the proxy to use for API communication
- AbstractSocketConfig::setReferer() — Method in class AbstractSocketConfig
Set the Referer to send with API requests
- AbstractSocketConfig::setExtraCurlOptions() — Method in class AbstractSocketConfig
Merge additional cURL options into the bag, overriding existing values on key collision (including brand defaults). Use {resetCurlOptions()} to restore the brand defaults afterwards.
- AbstractSocketConfig::setSocketTimeout() — Method in class AbstractSocketConfig
Set the socket timeout in seconds — the ceiling on a whole API request.
- Client::setSession() — Method in class Client
Set an API session id to be used for API communication.
- Client::setRoleCredentials() — Method in class Client
Set Role Credentials to be used for API communication.
- $ Response#sensitiveFields — Property in class Response
Command parameter keys carrying sensitive data (masked before storage).
- SessionCapable — Class in namespace CNIC\CNR
Provides session-based API communication methods.
- SessionCapable::saveSession() — Method in class SessionCapable
Apply session data to a PHP session object
- SessionClient — Class in namespace CNIC\CNR
CNR Session API Client
- SocketConfig — Class in namespace CNIC\CNR
CNR SocketConfig
- $ SocketConfig#socketTimeout — Property in class SocketConfig
- $ SocketConfig#sensitiveFields — Property in class SocketConfig
CNR carries sensitive data under upper-case command keys. Mirrors {\CNIC\CNR\Response::$sensitiveFields}.
- SocketConfig::setPersistent() — Method in class SocketConfig
Add persistent parameter to request (request API session)
- SocketConfig::setLogin() — Method in class SocketConfig
Set account name to use
- SocketConfig::setPassword() — Method in class SocketConfig
Set account password to use
- SocketConfig::setSession() — Method in class SocketConfig
Set API Session ID to use.
- $ Response#sensitiveFields — Property in class Response
IBS carries sensitive data under lower-/camel-case command keys.
- SocketConfig — Class in namespace CNIC\IBS
IBS SocketConfig
- $ SocketConfig#socketTimeout — Property in class SocketConfig
- $ SocketConfig#sensitiveFields — Property in class SocketConfig
IBS carries sensitive data under lower-/camel-case command keys. Mirrors {\CNIC\IBS\Response::$sensitiveFields}.
- SocketConfig — Class in namespace CNIC\MONIKER
Moniker SocketConfig — same API platform as IBS; only the endpoints differ.
- RoleCredentialsInterface::setRoleCredentials() — Method in class RoleCredentialsInterface
Set Role Credentials to be used for API communication
T
- $ AbstractClient#transport — Property in class AbstractClient
HTTP transport layer
- AbstractResponse::translate() — Method in class AbstractResponse
Translate the raw API response into its canonical form.
- $ AbstractResponseTemplateManager#templates — Property in class AbstractResponseTemplateManager
Template container
- AbstractResponseTranslator::templates() — Method in class AbstractResponseTranslator
The brand's static template container (id => raw template string).
- AbstractResponseTranslator::translate() — Method in class AbstractResponseTranslator
translate a raw api response
- $ ApiDateTime#ts — Property in class ApiDateTime
Unix timestamp of the instant, or
nullwhen the source value was a bare calendar date and the instant is therefore unknown.- $ ApiDateTime#tz — Property in class ApiDateTime
Timezone of the source declaration — always
"UTC".- ApiDateTime::tryFrom() — Method in class ApiDateTime
Null-tolerant, non-throwing counterpart of {self::from()}.
- ApiDateTime::toArray() — Method in class ApiDateTime
The value as a plain array — ready for
json_encode()and for handing to a template or frontend.- Response::translate() — Method in class Response
Translate the raw API response into its canonical form using the CNR translator. $cmd is already sanitized.
- $ ResponseTemplateManager#templates — Property in class ResponseTemplateManager
Template container
- ResponseTranslator::templates() — Method in class ResponseTranslator
The CNR static template container.
- Response::translate() — Method in class Response
Translate the raw API response using the IBS translator.
- $ ResponseTemplateManager#templates — Property in class ResponseTemplateManager
template container
- ResponseTranslator::templates() — Method in class ResponseTranslator
The IBS static template container.
- TransportInterface — Class in namespace CNIC
Contract for the low-level HTTP transport used by {AbstractClient}.
U
- $ AbstractClient#userAgent — Property in class AbstractClient
User agent sent with every request. Empty until {setUserAgent()} is called; while it is empty {getUserAgent()} derives the SDK default.
- AbstractClient::useHighPerformanceConnectionSetup() — Method in class AbstractClient
Activate High Performance Setup — route requests through the co-located proxy on loopback.
- AbstractClient::useOTESystem() — Method in class AbstractClient
Set OT&E System for API communication
- AbstractClient::useLIVESystem() — Method in class AbstractClient
Set LIVE System for API communication (this is the default setting)
- $ AbstractSocketConfig#url — Property in class AbstractSocketConfig
The endpoint requests are sent to — one of {$oteUrl}/{@see $liveUrl} when a system was selected, or whatever {setURL()} was handed.
- AbstractSocketConfig::useOTESystem() — Method in class AbstractSocketConfig
Select the OT&E system for API communication
- AbstractSocketConfig::useLIVESystem() — Method in class AbstractSocketConfig
Select the LIVE system for API communication (the default)
- AbstractSocketConfig::useHighPerformanceConnectionSetup() — Method in class AbstractSocketConfig
Route API requests through the co-located high-performance proxy on loopback.
- AbstractSocketConfig::usesHighPerformanceConnectionSetup() — Method in class AbstractSocketConfig
Whether high-performance (loopback proxy) routing is switched on
- UnsupportedFeatureException — Class in namespace CNIC\Exception
Thrown when a capability is not available on the current platform or response.
W
- EchoSink::write() — Method in class EchoSink
Write one formatted debug record.
- LogSinkInterface::write() — Method in class LogSinkInterface
Write one formatted debug record.
_
- AbstractClient::__construct() — Method in class AbstractClient
- Constructor
- AbstractLogger::__construct() — Method in class AbstractLogger
- AbstractResponse::__construct() — Method in class AbstractResponse
- Constructor
- AbstractSocketConfig::__construct() — Method in class AbstractSocketConfig
Seed the runtime state that depends on the brand's property defaults.
- Column::__construct() — Method in class Column
- Constructor
- Record::__construct() — Method in class Record
Constructor e.g.