# Dataprovider.com API > Programmatic access to structured data on 250M+ domains worldwide: 200+ fields covering company, technology, hosting, traffic and ownership, with 3+ years of monthly history. Query the dataset with DPQL (Dataprovider Query Language) and look up, enrich, or aggregate records over a REST/JSON API. Authentication: Send a personal access token in the `X-API-Key: ` header, or an OAuth2 bearer token in the `Authorization: Bearer ` header. OAuth2 tokens are issued at `https://api.dataprovider.com/v2/auth/oauth2/token`. Accounts with MFA enabled must use the `X-API-Key` header. Notes: - Requests and responses are JSON. The default rate limit is 120 requests/minute. - Each returned record is billed; requests that return no records are not billed. ## API reference - [OpenAPI specification](https://api.dataprovider.com/v2/docs/oa/gateway): Complete machine-readable definition of every endpoint, parameter, schema and example. Start here to call the API. ## Query language - [DPQL guide](https://api.dataprovider.com/v2/docs/dpql-guide.md): Building Dataprovider Query Language filter trees — operator, predicate, querystring, terms and match nodes, predicate value types, with examples. ## Optional - [Interactive documentation](https://api.dataprovider.com/v2/docs): Human-readable rendered reference (ReDoc).