sym.sdk.request_destination

pydantic model sym.sdk.request_destination.RequestDestination

Bases: pydantic.main.BaseModel

A super-class for classes representing a Sym Request Destination.

Show JSON schema
{
   "title": "RequestDestination",
   "description": "A super-class for classes representing a Sym Request Destination.",
   "type": "object",
   "properties": {
      "allow_self": {
         "title": "Allow Self",
         "default": false,
         "type": "boolean"
      },
      "timeout": {
         "title": "Timeout",
         "type": "integer"
      }
   }
}

Fields
field allow_self: bool = False

A boolean indicating whether the requester may approve this Request.

field timeout: Optional[int] = None

An optional integer representing the duration until this destination will time out, in seconds. If not specified, then the destination will never time out, i.e the Request will hang indefinitely until responded to.

classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) Model

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) Model

Duplicate a model, optionally choose which fields to include, exclude and change.

Parameters
  • include – fields to include in new model

  • exclude – fields to exclude from new model, as with values this takes precedence over include

  • update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

  • deep – set to True to make a deep copy of the model

Returns

new model instance

dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

classmethod from_orm(obj: Any) Model
json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

classmethod parse_file(path: Union[str, pathlib.Path], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod parse_obj(obj: Any) Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) unicode
classmethod update_forward_refs(**localns: Any) None

Try to update ForwardRefs on fields based on this Model, globalns and localns.

classmethod validate(value: Any) Model
pydantic model sym.sdk.request_destination.RequestDestinationFallback

Bases: pydantic.main.BaseModel

A list of RequestDestination to attempt to send requests to. The next RequestDestination will be attempted based on the failure mode configuration.

Show JSON schema
{
   "title": "RequestDestinationFallback",
   "description": "A list of :class:`~sym.sdk.request_destination.RequestDestination` to attempt to send requests to.\nThe next :class:`~sym.sdk.request_destination.RequestDestination` will be attempted based on the failure mode\nconfiguration.",
   "type": "object",
   "properties": {
      "destinations": {
         "title": "Destinations",
         "type": "array",
         "items": {
            "$ref": "#/definitions/RequestDestination"
         }
      },
      "continue_on_delivery_failure": {
         "title": "Continue On Delivery Failure",
         "default": true,
         "type": "boolean"
      },
      "continue_on_timeout": {
         "title": "Continue On Timeout",
         "default": false,
         "type": "boolean"
      }
   },
   "required": [
      "destinations"
   ],
   "definitions": {
      "RequestDestination": {
         "title": "RequestDestination",
         "description": "A super-class for classes representing a Sym Request Destination.",
         "type": "object",
         "properties": {
            "allow_self": {
               "title": "Allow Self",
               "default": false,
               "type": "boolean"
            },
            "timeout": {
               "title": "Timeout",
               "type": "integer"
            }
         }
      }
   }
}

Fields
field continue_on_delivery_failure: bool = True

If set to True, if Sym fails to deliver a Request to a RequestDestination (such as when the Slack Channel does not exist), then the next RequestDestination in the destinations list will be attempted.

field continue_on_timeout: bool = False

If set to True, if the current Request times out, then a new Request will be sent to the next RequestDestination in the destinations list.

field destinations: List[sym.sdk.request_destination.RequestDestination] [Required]

The list of RequestDestination objects to attempt to send requests to.

classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) Model

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) Model

Duplicate a model, optionally choose which fields to include, exclude and change.

Parameters
  • include – fields to include in new model

  • exclude – fields to exclude from new model, as with values this takes precedence over include

  • update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

  • deep – set to True to make a deep copy of the model

Returns

new model instance

dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

classmethod from_orm(obj: Any) Model
json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

classmethod parse_file(path: Union[str, pathlib.Path], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod parse_obj(obj: Any) Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) unicode
classmethod update_forward_refs(**localns: Any) None

Try to update ForwardRefs on fields based on this Model, globalns and localns.

classmethod validate(value: Any) Model
pydantic model sym.sdk.request_destination.RequestForwardContext

Bases: pydantic.main.BaseModel

An object containing additional context about the current and next destinations of the Sym Request. An instance of this class is included as an argument when on_request_forward and after_request_forward hooks are invoked by the Sym Runtime.

Show JSON schema
{
   "title": "RequestForwardContext",
   "description": "An object containing additional context about the current and next destinations of the Sym Request. An instance\nof this class is included as an argument when `on_request_forward` and `after_request_forward` hooks are invoked by\nthe Sym Runtime.",
   "type": "object",
   "properties": {
      "all_request_destinations": {
         "title": "All Request Destinations",
         "type": "array",
         "items": {
            "$ref": "#/definitions/RequestDestination"
         }
      },
      "current_destination_index": {
         "title": "Current Destination Index",
         "type": "integer"
      },
      "next_destination_index": {
         "title": "Next Destination Index",
         "type": "integer"
      }
   },
   "required": [
      "all_request_destinations",
      "current_destination_index"
   ],
   "definitions": {
      "RequestDestination": {
         "title": "RequestDestination",
         "description": "A super-class for classes representing a Sym Request Destination.",
         "type": "object",
         "properties": {
            "allow_self": {
               "title": "Allow Self",
               "default": false,
               "type": "boolean"
            },
            "timeout": {
               "title": "Timeout",
               "type": "integer"
            }
         }
      }
   }
}

Fields
field all_request_destinations: List[sym.sdk.request_destination.RequestDestination] [Required]

A list of all RequestDestination instances that this Sym Request may be sent to

field current_destination_index: int [Required]

An integer representing the index of the current destination in all_request_destinations

field next_destination_index: Optional[int] = None

An integer representing the index of the next destination in all_request_destinations. When set to None, this means that the current_destination_index is at the last element of all_request_destinations, i.e there are no more destinations to try next.

classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) Model

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) Model

Duplicate a model, optionally choose which fields to include, exclude and change.

Parameters
  • include – fields to include in new model

  • exclude – fields to exclude from new model, as with values this takes precedence over include

  • update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

  • deep – set to True to make a deep copy of the model

Returns

new model instance

dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

classmethod from_orm(obj: Any) Model
json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

classmethod parse_file(path: Union[str, pathlib.Path], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod parse_obj(obj: Any) Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) unicode
classmethod update_forward_refs(**localns: Any) None

Try to update ForwardRefs on fields based on this Model, globalns and localns.

classmethod validate(value: Any) Model
pydantic model sym.sdk.request_destination.SlackChannelID

Bases: sym.sdk.request_destination.RequestDestination

A Request to be sent to a Slack Channel, identified by a Slack Channel ID, e.g. ‘C12345’.

Show JSON schema
{
   "title": "SlackChannelID",
   "description": "A Request to be sent to a Slack Channel, identified by a Slack Channel ID, e.g. 'C12345'.",
   "type": "object",
   "properties": {
      "allow_self": {
         "title": "Allow Self",
         "default": false,
         "type": "boolean"
      },
      "timeout": {
         "title": "Timeout",
         "type": "integer"
      },
      "channel_id": {
         "title": "Channel Id",
         "type": "string"
      }
   },
   "required": [
      "channel_id"
   ]
}

Fields
Validators
field allow_self: bool = False

A boolean indicating whether the requester may approve this Request.

field channel_id: str [Required]

A string that identifies a Slack Channel by its unique ID. e.g. ‘C12345’.

Validated by
field timeout: Optional[int] = None

An optional integer representing the duration until this destination will time out, in seconds. If not specified, then the destination will never time out, i.e the Request will hang indefinitely until responded to.

classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) Model

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) Model

Duplicate a model, optionally choose which fields to include, exclude and change.

Parameters
  • include – fields to include in new model

  • exclude – fields to exclude from new model, as with values this takes precedence over include

  • update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

  • deep – set to True to make a deep copy of the model

Returns

new model instance

dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

classmethod from_orm(obj: Any) Model
json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

classmethod parse_file(path: Union[str, pathlib.Path], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod parse_obj(obj: Any) Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) unicode
classmethod update_forward_refs(**localns: Any) None

Try to update ForwardRefs on fields based on this Model, globalns and localns.

classmethod validate(value: Any) Model
validator validate_channel_id_format  »  channel_id

Validates that the given channel_id follows Slack’s convention of starting with a C, D or G. (e.g. ‘D12345’).

pydantic model sym.sdk.request_destination.SlackChannelName

Bases: sym.sdk.request_destination.RequestDestination

A Request to be sent to a Slack Channel, identified by a Slack Channel name.

Show JSON schema
{
   "title": "SlackChannelName",
   "description": "A Request to be sent to a Slack Channel, identified by a Slack Channel name.",
   "type": "object",
   "properties": {
      "allow_self": {
         "title": "Allow Self",
         "default": false,
         "type": "boolean"
      },
      "timeout": {
         "title": "Timeout",
         "type": "integer"
      },
      "channel_name": {
         "title": "Channel Name",
         "type": "string"
      }
   },
   "required": [
      "channel_name"
   ]
}

Fields
Validators
field allow_self: bool = False

A boolean indicating whether the requester may approve this Request.

field channel_name: str [Required]

A string that identifies a Slack Channel by its unique name. (e.g. ‘#sym-errors’).

Validated by
field timeout: Optional[int] = None

An optional integer representing the duration until this destination will time out, in seconds. If not specified, then the destination will never time out, i.e the Request will hang indefinitely until responded to.

classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) Model

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) Model

Duplicate a model, optionally choose which fields to include, exclude and change.

Parameters
  • include – fields to include in new model

  • exclude – fields to exclude from new model, as with values this takes precedence over include

  • update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

  • deep – set to True to make a deep copy of the model

Returns

new model instance

dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

classmethod from_orm(obj: Any) Model
json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

classmethod parse_file(path: Union[str, pathlib.Path], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod parse_obj(obj: Any) Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) unicode
classmethod update_forward_refs(**localns: Any) None

Try to update ForwardRefs on fields based on this Model, globalns and localns.

classmethod validate(value: Any) Model
validator validate_channel_name_format  »  channel_name
pydantic model sym.sdk.request_destination.SlackUser

Bases: sym.sdk.request_destination.RequestDestination

A Request to be sent to a Slack User, identified by a Slack User ID.

Show JSON schema
{
   "title": "SlackUser",
   "description": "A Request to be sent to a Slack User, identified by a Slack User ID.",
   "type": "object",
   "properties": {
      "allow_self": {
         "title": "Allow Self",
         "default": false,
         "type": "boolean"
      },
      "timeout": {
         "title": "Timeout",
         "type": "integer"
      },
      "user_id": {
         "title": "User Id",
         "type": "string"
      }
   },
   "required": [
      "user_id"
   ]
}

Fields
Validators
field allow_self: bool = False

A boolean indicating whether the requester may approve this Request.

field timeout: Optional[int] = None

An optional integer representing the duration until this destination will time out, in seconds. If not specified, then the destination will never time out, i.e the Request will hang indefinitely until responded to.

field user_id: str [Required]

A string that identifies a Slack User by their unique ID (also called Member ID). (e.g. ‘U12345’).

Validated by
classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) Model

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) Model

Duplicate a model, optionally choose which fields to include, exclude and change.

Parameters
  • include – fields to include in new model

  • exclude – fields to exclude from new model, as with values this takes precedence over include

  • update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

  • deep – set to True to make a deep copy of the model

Returns

new model instance

dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

classmethod from_orm(obj: Any) Model
json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

mention() str

Returns a string that can be used to @mention this User in a Slack message.

classmethod parse_file(path: Union[str, pathlib.Path], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod parse_obj(obj: Any) Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) unicode
classmethod update_forward_refs(**localns: Any) None

Try to update ForwardRefs on fields based on this Model, globalns and localns.

classmethod validate(value: Any) Model
validator validate_user_id_format  »  user_id

Validates that the given user_id follows Slack’s convention of starting with a U or W. (e.g. ‘U12345’).

pydantic model sym.sdk.request_destination.SlackUserGroup

Bases: sym.sdk.request_destination.RequestDestination

A Request to be sent in a Slack Group DM including the given Slack Users, with a maximum of 7 Users.

Show JSON schema
{
   "title": "SlackUserGroup",
   "description": "A Request to be sent in a Slack Group DM including the given Slack Users, with a maximum of 7 Users.",
   "type": "object",
   "properties": {
      "allow_self": {
         "title": "Allow Self",
         "default": false,
         "type": "boolean"
      },
      "timeout": {
         "title": "Timeout",
         "type": "integer"
      },
      "users": {
         "title": "Users",
         "minItems": 1,
         "maxItems": 7,
         "type": "array",
         "items": {
            "$ref": "#/definitions/SlackUser"
         }
      }
   },
   "required": [
      "users"
   ],
   "definitions": {
      "SlackUser": {
         "title": "SlackUser",
         "description": "A Request to be sent to a Slack User, identified by a Slack User ID.",
         "type": "object",
         "properties": {
            "allow_self": {
               "title": "Allow Self",
               "default": false,
               "type": "boolean"
            },
            "timeout": {
               "title": "Timeout",
               "type": "integer"
            },
            "user_id": {
               "title": "User Id",
               "type": "string"
            }
         },
         "required": [
            "user_id"
         ]
      }
   }
}

Fields
field allow_self: bool = False

A boolean indicating whether the requester may approve this Request.

field timeout: Optional[int] = None

An optional integer representing the duration until this destination will time out, in seconds. If not specified, then the destination will never time out, i.e the Request will hang indefinitely until responded to.

field users: List[sym.sdk.request_destination.SlackUser] [Required]

A list of SlackUser objects to include in the group DM. Note: While each SlackUser object supports an allow_self attribute, this attribute will ignored in favor of the allow_self attribute set on the SlackUserGroup object.

Constraints
  • minItems = 1

  • maxItems = 7

classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) Model

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) Model

Duplicate a model, optionally choose which fields to include, exclude and change.

Parameters
  • include – fields to include in new model

  • exclude – fields to exclude from new model, as with values this takes precedence over include

  • update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

  • deep – set to True to make a deep copy of the model

Returns

new model instance

dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

classmethod from_orm(obj: Any) Model
json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

classmethod parse_file(path: Union[str, pathlib.Path], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod parse_obj(obj: Any) Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) unicode
classmethod update_forward_refs(**localns: Any) None

Try to update ForwardRefs on fields based on this Model, globalns and localns.

classmethod validate(value: Any) Model