Venkat
04/16/2025, 12:47 PMJack Muller
04/16/2025, 8:51 PMcurl --request POST \
--url <https://api.permit.io/v2/schema/default/temp-dev-kemo1x/condition_sets> \
--header 'Authorization: Bearer <envApiToken>' \
--header 'Content-Type: application/json' \
--data '{
"key": "own_or_public_process",
"name": "Own or Public Process",
"description": "Processes owned by the user or marked as public",
"resource_id": "process",
"type": "resourceset",
"conditions": {
"anyOf": [
{
"resource.isPrivate": {
"equals": false
}
},
{
"resource.userId": {
"equals": {
"ref": "user.key"
}
}
},
{
"resource.additionalOwners": {
"array_contains": {
"ref": "user.key"
}
}
}
]
}
}'
Here's the response
{
"id": "25a6eb8d1db74f1caa89c2ed34633e61",
"title": "The request could not be completed",
"error_code": "UNEXPECTED_ERROR",
"message": "You did nothing wrong, but we could not finish your request due to a technical issue on our end. Please try again.\nIf the issue keeps happening, contact our support on Slack for further guidance."
}
My audit logs are also showing up delayed like 45 minutes when before they were showing up instantly which was incredibly useful for debugging and demoing to customers.Chris Barlow
04/17/2025, 9:29 AM[34muvicorn.protocols.http.httptools_impl [0m|[33m[1mWARNING | Invalid HTTP request received.
It works with HTTP/1.1. Is there support for HTTP/2 and/or is it planned?Abinand P
04/20/2025, 4:08 PMJay Kumar
04/20/2025, 5:24 PMC:\nvm\node\npm.cmd run run
> help-permissions@1.0.0 run
> node test.cjs
{"level":50,"time":"2025-04-20T17:21:10.797Z","label":"<http://Permit.io|Permit.io>","msg":"[422] Error in permit.check({\"key\":\"generated_user\",\"attributes\":{\"department\":\"Engineering\",\"training_status\":\"certified\"}}, view, default/undefined:premium_document), err: {\"detail\":[{\"loc\":[\"body\",\"resource\",\"type\"],\"msg\":\"field required\",\"type\":\"value_error.missing\"}],\"body\":{\"user\":{\"key\":\"generated_user\",\"attributes\":{\"department\":\"Engineering\",\"training_status\":\"certified\"}},\"action\":\"view\",\"resource\":{\"key\":\"premium_document\",\"attributes\":{\"document_type\":\"classified\",\"priority_level\":\"high\"},\"tenant\":\"default\"},\"context\":{}}}"}
D:\Jay\Algora\help-permissions\node_modules\permitio\build\main\enforcement\enforcer.js:288
throw new PermitConnectionError(`Permit SDK got error: \n ${error.message} \n
^
PermitConnectionError: Permit SDK got error:
Request failed with status code 422
and cannot connect to the PDP, please check your configuration and make sure the PDP is running at <https://cloudpdp.api.permit.io> and accepting requests.
Read more about setting up the PDP at <https://docs.permit.io>
at D:\Jay\Algora\help-permissions\node_modules\permitio\build\main\enforcement\enforcer.js:288:19
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async Enforcer.checkWithExceptions (D:\Jay\Algora\help-permissions\node_modules\permitio\build\main\enforcement\enforcer.js:259:16)
at async Enforcer.check (D:\Jay\Algora\help-permissions\node_modules\permitio\build\main\enforcement\enforcer.js:237:16)
at async Permit.check (D:\Jay\Algora\help-permissions\node_modules\permitio\build\main\index.js:108:16)
at async D:\Jay\Algora\help-permissions\test.cjs:50:23
Node.js v22.14.0
const {Permit} = require('permitio');
const permit = new Permit({
pdp: '<https://cloudpdp.api.permit.io>',
token: 'permit_key_txxxx',
// token: 'permit_key_xxxx',
});
const user = {
key: 'generated_user',
attributes: {
department: 'Engineering',
training_status: 'certified'
}
};
const action = "view";
const resource = {
key: 'premium_document',
attributes: {
document_type: 'classified',
priority_level: 'high'
}
};
(async () => {
const permitted = await permit.check(user, action, resource);
if (permitted) {
console.log(`${user} is PERMITTED to '${action}' ${resource}!`);
} else {
console.log(`${user} is NOT PERMITTED to '${action}' ${resource}!`);
}
})();
Vivek Garg
04/20/2025, 7:47 PM{"time":"2025-04-20T12:43:33.605155-07:00","level":"ERROR","msg":"serverError","error":{"error":"failed to assign role in <http://Permit.io|Permit.io>: Post \"<http://localhost:7766/v2/facts/f45912930a77419cb908cf7ee649b46d/2bf09a0624414c208eaf033b8e8e368c/users/3@gmail.com/roles>\": context deadline exceeded","trace":"goroutine 498 [running]:\nruntime/debug.Stack()\n\t/opt/homebrew/Cellar/go/1.24.1/libexec/src/runtime/debug/stack.go:26 +0x64\nmain.(*application).serverError(0x1400042c060, {0x1065b3010, 0x14000303080}, 0x14000809680, {0x1065a88c0, 0x140003d6000})\n\t/Users/vg/git/caseguild/TenantServer/cmd/tenantservice/errors.go:19 +0x3c\nmain.(*application).removeUserFromProject(0x1400042c060, {0x1065b3010, 0x14000303080}, 0x14000809680)\n\t/Users/vg/git/caseguild/TenantServer/cmd/tenantservice/handleaccess.go:192 +0x4cc\nnet/http.HandlerFunc.ServeHTTP(0x140002cf710, {0x1065b3010, 0x14000303080}, 0x14000809680)\n\t/opt/homebrew/Cellar/go/1.24.1/libexec/src/net
Slackbot
04/22/2025, 1:22 PMArsene Hakobian
04/23/2025, 10:28 AMArsene Hakobian
04/23/2025, 3:25 PMjbolanosg
04/23/2025, 6:01 PMJackson Myers
04/28/2025, 3:08 PMe.g: resource type: "process" Instance: "27567d01-c4e6-4bed-a5c5-84cdea5a9253"
If i search
27567d01-c4e6-4bed-a5c5-84cdea5a925
The resource doesn't appear. Would love to see this functionality implemented, thanks!Jack Muller
04/28/2025, 4:11 PM"no_matching_rules"
,
"matching_resourcesets"
: [
"__autogen_fabu_user"
,
"__autogen_process"
],
"matching_usersets"
: [
"__autogen_fabu_user"
,
"__autogen_process"
]
Craig Haseler
04/28/2025, 8:31 PMPatrick Hartmann
04/29/2025, 9:56 AMGanesh Jadhav
04/29/2025, 1:21 PMrequire 'permit-sdk'
3. It throws following error:
cannot load such file -- permit-sdk (LoadError)
We would greatly appreciate it if someone from the Permit.io team could help.Vivek Garg
04/30/2025, 12:41 AMAdrian Green
04/30/2025, 6:36 PMconst foo = await permit.api.users.list({ role: 'tenant:11030c3c-7a13-4ccb-b308-997a3d8f9f5d#admin' })
Emi Opaluwa
05/01/2025, 11:52 AMmathieu hamel
05/01/2025, 1:59 PMkevin heidt
05/02/2025, 7:18 PMvehicle
that has 3 ABAC Option attributes: vin (string)
, owner_id (string)
, fleet_id (string)
. Then in my users I have a user vehicle-owner-1
that has the following metadata attributes:
{
"id": "vehicle-owner-1",
"vehicles": [
"VIN123456789",
"VIN987654321"
]
}
Under settings, in User Attributes, I've added vehicles
as Array<string>
.
I'm trying to send a request to /allowed
that would pass in a JIT attribute of the VIN being requested, and I want to have a rule that only allows the user to access the vehicle if the JIT VIN is one of the ones in their vehicles
array. Can I get some guidance on how to accomplish this? ThanksSam Jakos
05/02/2025, 8:49 PMJay Kumar
05/05/2025, 1:39 PMRobin Simard
05/05/2025, 4:14 PM@permitio/permit-js
. Should it be working already, or do you plan to address this with this feature request? Thanks!Jack Muller
05/05/2025, 5:11 PMTaofiq Aiyelabegan
05/08/2025, 7:07 AMfilterObjects
method exist on the NodeJS SDK?Slackbot
05/08/2025, 8:12 AMFabian Dios Rodas
05/08/2025, 8:16 AMArsene Hakobian
05/08/2025, 10:47 AMAdrian Green
05/08/2025, 7:35 PM<http://localhost:8181/v1/data/permit/rebac/cache_rebuild>
that would fail when running in https. The new 0.9.0-rc-1
version has an internal python3 health check at port 7001 that fails when running in https.Catalin Tomescu
05/08/2025, 8:30 PM