Grape gem is the core of API service, which bulits API endpoints and handles each exception. Devise gem’s role is the user management system. Doorkeeper gem manages oauth clients, which are related with users in Devise gem, and record oauth clients' app id, secret, scopes, authorization codes and access tokens. Doorkeeper takes responsibilities about giving, revoking, and refreshing authorization codes and access tokens. Wine_bouncer gem’s role is a guard of API endpoints, which exams an access tokens with every request that receiving from oauth clients. Grape-swagger and grape-swagger-rails(used as swagger-ui) gem are used for writting documents of API usage.
I think these are all you need to learn for building a basic API-service.
Tips: