Get OAuth2 access token

Authenticates the application using client credentials and returns a Bearer token for API requests. Tokens expire after a configurable period.