Quick Summary: SkillsDB uses Private-Key JWT authentication — you generate a key pair, register the public key with SkillsDB, and sign a short-lived JWT with your private key on every request.
Provide SkillsDB the Public Key
The client organization will need to provide the following to SkillsDB:- Public Key: This needs to be provided most probably in PEM Format.
----BEGIN PUBLIC KEY----- MIIBIjANBg…. -----END PUBLIC KEY----- - Signature Algorithm Name: The name of the algorithm used to sign the JWTs such as
RS256,HS256
SkillsDB Provides Your Company ID
The JWT payload includes a field calledcompany_id, which must be acquired from SkillsDB.
This is a unique identifier that identifies your company and is a must in the JWT payload.
JWT Payload Expected Format
SkillsDB expects the following attributes in the payload of the JWT:external_system_email:StringThe email address of the user making this request. The authorization depends upon the permissions that are granted to this user in the system.company_id:IntegerThis is the company ID that uniquely identifies your company in the SkillsDB system.exp:IntegerExpiry date in epoch format until which this JWT is valid.
Procedure
For every request, the external client system needs to call every GraphQL query and mutation using the Authorization header in the following format:- Name:
Authorization - Value:
Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9
Need Help?
If you run into any issues or have questions, reach out to your organization’s SkillsDB administrator or contact SkillsDB Support.