> ## Documentation Index
> Fetch the complete documentation index at: https://docs.slm.m1amdocs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# PaymentProvider.dataRequest

The `dataRequest` method performs a generic query on a `PaymentProvider` object.

**Note:** Subscribe currently supports BOKU for this method.

For more `dataRequest` examples, please see Using Subscribe to query BOKU in the Subscribe Programming Guide.

## Input

*srd*: sparse response description, a SOAP string (which must be a JSON object), in which you specify the elements you want returned.This parameter enables the calling system to constrain a `method` call to return only components you specify. This gives you greater control over returned content, and improves response time within the Vindicia platform by reducing the processing needed for the call.

Some fields are required, either practically or in the WSDL, and will be returned regardless of the *srd*. A null *srd* returns the complete response.

*paymentProvider*: the `PaymentProvider` against which the query will be performed.

*requestType*: the type of query to be performed. Subscribe currently supports the BOKU price and service-price calls.

*requestArguments*: an array of name/value pairs used to construct the query.

**Note:** The following price/service-price parameters are not allowed (Vindicia will include authentication information for the query): *merchant-id*, *password*, *sig*, and *timestamp*.

## Output

*return*: an object of type `Return` that indicates the success or failure of the call.

*paymentProvider*: the `PaymentProvider` object against which the query was performed.

*request*: the formatted query input in payment provider-native format.

*response*: the formatted query output in payment provider-native format.

## Returns

This method returns the codes listed in [The Return Object](The_Return_Object).

## Example

```

$provider = new paymentProvider();
$rc = $provider->dataRequest('price',
   [
   NameValuePair->new(name => 'reference-currency',
      value => 'USD'),
   NameValuePair->new(name => 'service-id',
      value => '140ba94f2c24e44b5cb85730')
   ]
);
```

**Parent topic:**[PaymentProvider Methods](../topics/PaymentProvider_Methods)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.