def construct_api_params(
        tenancy_type=None,
        account_integration=None,
        region=None,
        provider=None,
        business_unit=None,
        business_unit_name=None,
        domain=None,
        domain_search=None,
        origin=None,
        inet=None,
        limit=None,
        offset=None,
        sort=None,
):
    """Constructs the parameters object for the API call.

    Args:
        tenancy_type (str): Filter by tenancy type - Available values: single-tenant, multi-tenant
        account_integration (str): Filter by provider account integrations by IDs
        region (str): Filter by cloud regions
        provider (str): Comma-separated string; Returns only results that were found on the given providers.
                        If not set, results will include anything regardless of provider status.
                        Available values: Akamai Technologies, Amazon Web Services,
                        Google, Microsoft Azure, Other, Rackspace
        business_unit (str): Comma-separated string; Returns only results whose Business Unit’s ID falls in the provided
                             list. NOTE: If omitted, API will return results for all Business Units the user has
                             permissions to view. Also, cannot be used with the filter[business-unit-name] parameter.
        business_unit_name (str): Comma-separated string; Returns only results whose Business Unit’s name falls in the
                                  provided list. NOTE: If omitted, API will return results for all Business Units the
                                  user has permissions to view. Also, cannot be used with the
                                  filter[business-unit] parameter.
        domain (str): Search for given domain value via exact match
        domain_search (str): Search for given domain value via substring match
        origin (str): Filter by asset origin -- Available values: expanse-identified, cloud-account-integration
        inet (str): Search for given IP/CIDR block using a single IP (d.d.d.d), a dashed IP range (d.d.d.d-d.d.d.d),
                    a CIDR block (d.d.d.d/m), a partial CIDR (d.d.), or a wildcard (d.d.*.d).
        limit (int): Page size in pagination
        offset (int): Offset in pagination
        sort (str): Sort by specified properties -- Available values: ip, -ip, lastSeen, -lastSeen, provider.name, -provider.name
    Returns:
         dict: the params object to be sent to the API
    """
    tokens = {
        'filter[tenancy-type]': tenancy_type,
        'filter[account-integration]': account_integration,
        'filter[region]': region,
        'filter[provider]': provider,
        'filter[business-unit]': business_unit,
        'filter[business-unit-name]': business_unit_name,
        'filter[domain]': domain,
        'filter[domain-search]': domain_search,
        'filter[origin]': origin,
        'filter[inet]': inet,
        'page[limit]': limit,
        'page[offset]': offset,
        'sort': sort
    }
    params = {}

    for token_key, token_value in tokens.items():
        if token_value is not None:
            params.update({token_key: token_value})

    return params