Esc

    AuthZEN API

    OpenID Foundation Authorization API specification endpoints.

    InferaDB implements the OpenID AuthZEN specification. AuthZEN provides vendor-neutral interoperability — swap authorization providers without changing integration code.

    Service Discovery

    GET /.well-known/authzen-configuration
    

    Returns supported endpoints and extensions for this instance.

    Evaluation

    Single Check

    POST /access/v1/evaluation
    

    Request:

    {
      "subject": {
        "type": "user",
        "id": "alice"
      },
      "action": {
        "name": "can_edit"
      },
      "resource": {
        "type": "document",
        "id": "readme"
      }
    }
    

    Response:

    {
      "decision": true
    }
    

    Batch Check

    POST /access/v1/evaluations
    

    Evaluate up to 100 authorization checks in a single request.

    Request:

    {
      "evaluations": [
        {
          "subject": { "type": "user", "id": "alice" },
          "action": { "name": "can_edit" },
          "resource": { "type": "document", "id": "readme" }
        },
        {
          "subject": { "type": "user", "id": "bob" },
          "action": { "name": "can_view" },
          "resource": { "type": "document", "id": "readme" }
        }
      ]
    }
    
    POST /access/v1/search/resource
    

    Find resources accessible by a subject with a given action.

    POST /access/v1/search/subject
    

    Find subjects with access to a resource for a given action.

    InferaDB Extensions

    Extensions beyond the AuthZEN base spec, advertised via the well-known endpoint:

    Extension Description
    inferadb_relationship_management Direct CRUD for relationship tuples
    inferadb_relation_expansion Expand relation trees
    inferadb_simulation What-if testing with ephemeral data
    inferadb_realtime_streaming Real-time change notifications via SSE

    Identifier Format

    AuthZEN uses typed identifiers ({"type": "user", "id": "alice"}); the native API uses "user:alice". Both are accepted on all endpoints.