// IdentifyParams organizes the given params in two groups: the payload params and the query params. func IdentifyParams(a *metadata.Action, params APIParams) (payloadParams APIParams, queryParams APIParams) { payloadParamNames := a.PayloadParamNames() payloadParams = make(APIParams) for _, n := range payloadParamNames { if p, ok := params[n]; ok { payloadParams[n] = p } } queryParamNames := a.QueryParamNames() queryParams = make(APIParams) for _, n := range queryParamNames { if p, ok := params[n]; ok { queryParams[n] = p } } return payloadParams, queryParams }