'Registers a new domain.
:type name: string
:param name: Name of the domain to register. The name must be unique.
:type workflow_execution_retention_period_in_days: string
:param workflow_execution_retention_period_in_days: Specifies
the duration *in days* for which the record (including the
history) of workflow executions in this domain should be kept
by the service. After the retention period, the workflow
execution will not be available in the results of visibility
calls. If a duration of NONE is specified, the records for
workflow executions in this domain are not retained at all.
:type description: string
:param description: Textual description of the domain.
:raises: SWFDomainAlreadyExistsError, SWFLimitExceededError,
SWFOperationNotPermittedError'

def register_domain(self, name, workflow_execution_retention_period_in_days, description=None):

    return self.json_request('RegisterDomain', {'name': name, 'workflowExecutionRetentionPeriodInDays': workflow_execution_retention_period_in_days, 'description': description})
