def request_body()

in curator/defaults/option_defaults.py [0:0]


def request_body():
    """
    :returns: A :py:class:`voluptuous.schema_builder.Schema` object.
        See code for more details.
    """
    return {
        Required('request_body'): {
            Optional('conflicts'): Any('proceed', 'abort'),
            Optional('max_docs'): Coerce(int),
            Required('source'): {
                Required('index'): Any(Any(str), list),
                Optional('query'): dict,
                Optional('remote'): {
                    Optional('host'): Any(str),
                    Optional('username'): Any(str),
                    Optional('password'): Any(str),
                    Optional('socket_timeout'): Any(str),
                    Optional('connect_timeout'): Any(str),
                    Optional('headers'): Any(str),
                },
                Optional('size'): Coerce(int),
                Optional('_source'): Any(bool, Boolean()),
            },
            Required('dest'): {
                Required('index'): Any(str),
                Optional('version_type'): Any(
                    'internal', 'external', 'external_gt', 'external_gte'
                ),
                Optional('op_type'): Any(str),
                Optional('pipeline'): Any(str),
            },
            Optional('script'): {
                Optional('source'): Any(str),
                Optional('lang'): Any('painless', 'expression', 'mustache', 'java'),
            },
        }
    }