You can generate a new Access Token by making a POST
request to the Token endpoint.
Token Endpoint
https://einsteinocr.netlify.app/.netlify/functions/token
curl --request POST \
--url https://einsteinocr.netlify.app/.netlify/functions/token \
--header 'Content-Type: application/json' \
--data '{"sub":"[email protected]","aud":"https://api.einstein.ai/v2/oauth2/token","key":"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb2dJQkFBS0NBUUVBdmxzTEpPNUJGSHprWXE1VmhYSHI1NU51MlA5TDd5UE0rV0h5MGsyeC9Rd0sxM2U4Ck04KytONTdML2lJSE9EVTV2SEFYUUhnWUtMU2Y3UW12dkVqTXJqQXhFMHpxR0ZEZW9OemRhbCtHVkpLeGZJMWQKOW1PTlZnUG1rcUpzdVljUTVnVFRiZklXc3VuR3lNVkpTaGVVS0NQdVQybWlBWjU5T296clpjWHN0SFp2dDVPZgpWUG85alIwQ2xYODZsbit0RTZjQjZhOEt4SWhsUjVySU1Ud0hNdlJjOEc4VlpIamFJMWhwN3dSLzFlV3FJUmx1ClloUEVIaUZjczF3ZWtjcm1Qd0JxUldML1BIQWNaYjUxeFJMY3dTSDFHMmsvRk5VbFlwcTF6RTNlOG9XVUE5UEoKZGlwT3lKNlBYWHZLRkJFWFd3MlYyQWw3enY4dkdFM0JnbVg1VXdJREFRQUJBb0lCQURPSjB1cWMxMklFcnBGSgpRajV2S2IvNVd2bkZwWG1KNStWZGI3RWcrQi9iTXRSRHh1RUFUakFnL25wQUhGUkxsT1pBTXd0eGVKa016b0FQCkwxVjdJRy9JL0lDTlFwUnkwTlFjK0pYa1p5cGV6VTg3dDBVT2p5WEt5SkxMQjBUMEhNOHFYMVJWUjNBSmU1akEKVWFlTjJyOURlekpsRjBmNDhVNzQrSU1GbzZENE9FUXlySk1Hc1FkNTZERkVyUTZkQklUYjVJSGZwQmlBbmgraAovZWF0UkpsaVRXaDhrYlBTSnVyRlVabDdreDRoVmtkdy9STmVtWVNTSkVYU1RVTFgvZEFWYldCWGo5SE5KZytOClpLTFVKTW93cE1UNk5ZMXEzYXRLSXpMYXYxWlRFNFdYZ2swUlB2SmZwajB1MmtpenlDSnhtdWw4QUJzcU8xSXIKcndic0I0RUNnWUVBN2tjSHArNjJkeTV3K0toN1VXb0wxRHJ4bDZGejdDUGtvazc0d1lpV0hRS3RkL2xqeWwrVQp2a0pSbktWL090YVBpdm0zenR2Z29HQW9hQkVuNjRvd09yaUJ2WEVXRy9MdEtTaG43Y2FLNTJVSTRJeGZKRHcxCkdTUUp4MjdBb3RHTkNJbklicmpQWXZJRkFZMC9Db0Y3N3ZQdjVoYnFCd1Arcm1sVmx4ZmVndVVDZ1lFQXpJT00KYXJ5TkgzLzhZQmttajQrUldXV0RwbFVaR2FtVEM2NklOU25CcnY5NGJUd20yTCtWZUFjclU2Y05EVG1zbjErWgo0ZkZmQ3pvNTdLdVN6SGFQejZhSTNtQlpIclZiWFFMaTBoY2FxWEFhUCtBVUhCOEdZVlhFcVNoQjh5c1h5L3lLCk02bHpyYkRETmlQMVQ3emFvTStMbXBhTWdTZW1ZYzJSNHd5bUw5Y0NnWUI2NTFCZm9wV2phK1VCbllYZVBLRFYKVzRINkFHRlcwRHpDSzVITDRiUHNTdEZITE8vNEZzMFdSZ2Jxa2NMS2lwbUh5YjZ4aUdDWTJJQi9EVHBXRi9WQQpsS0wzSURtVE9QNXpXRkFqS1dIRWNTemZCZ2lkSENFWFVxdG9ud3ZsNzhpYk90YVRwZWZ5MVhzWGpjK1NqNjlwClZaSE1VTTF0eVBXNDZNUXBKenF5c1FLQmdDaUloZ0w5bmNhNWVnNmR6WHUwaTYwNUptK0gvREtPM2xyNVczdVYKN0JKQUJlRTRnOFovcWlNZzRLQnl3bTUxbU5YNWY2azlTb1lTSXpyYUFuMU5ubEVjZzVIM2JKSmVoVjRZM1ZXZwpTS04rV1dXQmh0clA5MWJCUmZuMHhhVnBUQTBjMzFNLzZYSnFUelppeUJMbXJqb2pDRnM2TFZ6SHUvMDBYZzZ2CkNoei9Bb0dBWjhhckNXcStDcEQ2RkZQUE1hbDduQWU2WDhPdlFSTEQ0WFFnZVNBbEZ1WnBoWkQyd1ZUeGxCM2cKL1E2N0dRUG9DSFM0eGFoVmNEUjBGcW42ZDBEWkNNdXZLbm9EeExGdWpBV1lYOVdEWm40eUV3R1RSOVh5N0Z6cQp1d3VaaEF5cXYxMVd2enRvRzdxRmtPUTVQUDZVRGd4Y0xINURYQkphV0RacFRPN2JsOE09Ci0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg=="}'
Understanding the Request Body
sub
The
sub
in the request body is your Einstein Platform Services username. You can find your username in the welcome email you receive after you get an account. If you signed up using Salesforce, your username is the email address associated with the org you signed up with.
key
The
key
in the request body is Base64 encoded key contents. When you sign up for an account, you download your key contained in a file calledeinstein_platform.pem
. Copy the contents of the PEM file, visit https://www.base64encode.org/, paste the copied contents and hit Encode to perform a base64 encoding.
Swagger Schema for Token Endpoint
Use the below Swagger 2.0 Schema to create an External Service Registration in Salesforce
{
"swagger": "2.0",
"info": {
"title": "Einstein OCR Simplified",
"description": "Salesforce External Services Compatible Einstein OCR API | Powered by Netlify | Built by www.shrutisridharan.com",
"version": "1.0.0"
},
"host": "einsteinocr.netlify.app",
"schemes": [
"https"
],
"paths": {
"/.netlify/functions/token": {
"post": {
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"in": "body",
"name": "tokenRequest",
"required": true,
"schema": {
"$ref": "#/definitions/TokenRequest"
}
}
],
"responses": {
"200": {
"description": "Successful Operation",
"schema": {
"$ref": "#/definitions/TokenResponse"
}
}
}
}
}
},
"definitions": {
"TokenRequest": {
"type": "object",
"properties": {
"sub": {
"type": "string"
},
"aud": {
"type": "string"
},
"key": {
"type": "string"
}
}
},
"TokenResponse": {
"type": "object",
"properties": {
"statusCode": {
"type": "number"
},
"status": {
"type": "string"
},
"data": {
"type": "object",
"properties": {
"access_token": {
"type": "string"
}
}
}
}
}
}
}