Add auth to api endpoints
- [x] /first-rows
- [x] /splits-next
- [x] /is-valid

Will not call the external authentication:
- /healthcheck
- /webhook
- /metrics
- /assets  (for now)
- /valid. It's not feasible to call the external auth endpoint for every dataset in the list (there are thousands of them). For now, we just let the endpoint unprotected, which means that unauthorized people can know that a gated dataset is valid. I don't think it's very dangerous. If we had private datasets, it would be different because it would disclose the name of private datasets.

Will be deprecated:
- /splits
- /rows

See #429
Add auth to api endpoints: - [x] /first-rows
- [x] /splits-next
- [x] /is-valid

Will not call the external authentication:
- /healthcheck
- /webhook
- /metrics
- /assets  (for now)
- /valid. It's not feasible to call the external auth endpoint for every dataset in the list (there are thousands of them). For now, we just let the endpoint unprotected, which means that unauthorized people can know that a gated dataset is valid. I don't think it's very dangerous. If we had private datasets, it would be different because it would disclose the name of private datasets.

Will be deprecated:
- /splits
- /rows

See #429