1. Register an app
From your account, under Developers, register the app. You give it a name and a redirect address and get a client id and a secret; the secret is shown once. TAP reviews the app. Until it is approved the consent screen refuses, and a token from the client cannot read an artist: Register an app.
2. Get a token
Client credentials read published artists with no person present. Tokens live a day.
POST /oauth/token
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials&client_id=01m0x9td…&client_secret=…&scope=artists:read
{ "token_type": "Bearer", "expires_in": 86400, "access_token": "…" }
To act for a person instead, send them through Sign in with TAP and use the token they granted: Sign in with TAP: scopes and the consent screen. A refresh token from that flow lives 30 days.
3. Read an artist
Send the token as a bearer. Keep the ETag from the response and send it back next time; an unchanged artist answers 304 with no body.
GET /api/v1/artists/nightshift
Authorization: Bearer …
Accept: application/json
If-None-Match: "8f3a1c"
304 Not Modified
What each endpoint takes and returns, and every status code, is in The API reference. What it costs at volume is on the partners page.