# Thing Identity - [Quickstart](https://docs.thingidentity.com/quickstart.md): Create an API client, exchange it for a token and start using the API. - [Authentication](https://docs.thingidentity.com/guides/authentication.md): Create an API client and exchange its credentials for a bearer token. - [Introduction](https://docs.thingidentity.com/api-reference/introduction.md): Base URL, media types and status codes shared by every endpoint. - [Error handling](https://docs.thingidentity.com/api-reference/errors.md): The envelope a failure comes back in. - [Get an access token](https://docs.thingidentity.com/api-reference/endpoints/get-an-access-token.md): Exchanges the credentials of an API client for a bearer token using the OAuth 2.0 client credentials grant. There is no refresh token: when the access token expires, ask for another one. - [Generate codes](https://docs.thingidentity.com/api-reference/endpoints/generate-codes.md): Takes a batch of code definitions and returns, for each one, the payload to encode in a symbol plus its human readable interpretation. Nothing is rendered as an image: you get the text and feed it to your own 2D barcode renderer. ## OpenAPI Specs - [openapi](/openapi.json) ## Optional - [Blog](https://thingidentity.com/blog)