Process of hosting jwks public keys in c#

I am new to JWT, trying to figure many things in ere. we are planning of hosting jwks public keys. Now, from where does the Kid value come from to provide it in the Header, as this field needs to be dynamic ?

//header
{
  "kid": "Gb389a-9f76-gdjs-a92j-0242bk94356",
  "alg": "PS256"
}

//PAYLOAD
{
  "iss": "b99d9297-9d99-1sh2-a8b3-0301jh130828",
  "sub": "b99d9297-9d99-1sh2-a8b3-0301jh130828",,
  "aud": "https://platform.geico.ins.io",
  "exp": 1410871077,
  "nbf": 1410871077,,
  "iat": 1410871077,,
  "jti": "h6734251-8d43-1sh2-a9v1-0242ac130003",
  "scope": "profile-search"
} 

what I have tried is, I went to jwt.io website and provided the token, and it showed me Header, Payload and signature on the right. But unable to find out how to get those kid in header and other values in payload, to convert that to encodedbase64

How many English words
do you know?
Test your English vocabulary size, and measure
how many words do you know
Online Test
Powered by Examplum