Entitlement Read
note
At this time Entitlement Read is not triggered from ISC for any specific workflow and as such it is not necessary to implement this in order to have a fully functional connector.
To use this command, you must specify this value in the commands
array: std:entitlement:list
Input/Output | Data Type |
---|---|
Input | StdEntitlementReadInput |
Output | StdEntitlementReadOutput |
Example StdEntitlementReadInput
{
"identity": "john.doe",
"key": {
"simple": {
"id": "john.doe"
}
},
"type": "group"
}
Example StdEntitlementReadOutput
{
"identity": "john.doe",
"key": {
"simple": {
"id": "administrator"
}
},
"type": "group",
"attributes": {
"id": "administrator",
"name": "Administrator"
}
}
Response Schema
Entitlement read fetches a single entitlement’s attributes and returns the resulting object to ISC, similar to how entitlement list does. You can implement this in the main connector file, index.ts:
...
.stdEntitlementRead(async (context: Context, input: StdEntitlementReadInput, res: Response<StdEntitlementReadOutput>) => {
const group = await airtable.getEntitlement(input.key)
res.send(group.toStdEntitlementReadOutput())
})
...
...
...
public toStdEntitlementReadOutput(): StdEntitlementReadOutput {
return this.buildStandardObject();
}
private buildStandardObject(): StdEntitlementReadOutput | StdEntitlementListOutput {
return {
key: SimpleKey(this.id),
type: 'group',
attributes: {
id: this.id,
name: this.name
}
}
}