Variable: ROUTES
constROUTES:object
Defined in: packages/contracts/src/routes.ts:72
Every authenticated gateway route, keyed <METHOD> <path>. verifyEstate checks each
names a registered request, that a GET is not a mutation, and that no admin route
accepts the holder population.
Slice 1's routes are staff and public (D1.4). Slice 2's are the trust tree's, and
every one is admin (D2.9): admitting an entity is the capability 28 section 1 says
must be absent from the public surface, not guarded on it. The public deployment
registers none of them and answers their paths as unknown.
Slice 3's are the identifier's, and they are public again (D3.7): an entity
administering its own identifier is Studio's audience, which 17 puts on the public
gateway behind authentication. Admitting the entity was the admin act; holding its own
keys is not.
Type Declaration
GET /api/v1/accreditations
readonlyGET /api/v1/accreditations:object
GET /api/v1/accreditations.contract
readonlycontract:"request.*.governance.accreditation.list.v1"='request.*.governance.accreditation.list.v1'
GET /api/v1/accreditations.method
readonlymethod:"GET"='GET'
GET /api/v1/accreditations.path
readonlypath:"/api/v1/accreditations"='/api/v1/accreditations'
GET /api/v1/accreditations.permission
readonlypermission:"accreditation.read"='accreditation.read'
GET /api/v1/accreditations.population
readonlypopulation:"staff"='staff'
GET /api/v1/accreditations.surface
readonlysurface:"admin"='admin'
GET /api/v1/accreditations/:id
readonlyGET /api/v1/accreditations/:id:object
GET /api/v1/accreditations/:id.contract
readonlycontract:"request.*.governance.accreditation.get.v1"='request.*.governance.accreditation.get.v1'
GET /api/v1/accreditations/:id.method
readonlymethod:"GET"='GET'
GET /api/v1/accreditations/:id.path
readonlypath:"/api/v1/accreditations/:id"='/api/v1/accreditations/:id'
GET /api/v1/accreditations/:id.permission
readonlypermission:"accreditation.read"='accreditation.read'
GET /api/v1/accreditations/:id.population
readonlypopulation:"staff"='staff'
GET /api/v1/accreditations/:id.surface
readonlysurface:"admin"='admin'
GET /api/v1/entity-statements
readonlyGET /api/v1/entity-statements:object
GET /api/v1/entity-statements.contract
readonlycontract:"request.*.trust.entity-statement.list.v1"='request.*.trust.entity-statement.list.v1'
GET /api/v1/entity-statements.method
readonlymethod:"GET"='GET'
GET /api/v1/entity-statements.path
readonlypath:"/api/v1/entity-statements"='/api/v1/entity-statements'
GET /api/v1/entity-statements.permission
readonlypermission:"entity-statement.read"='entity-statement.read'
GET /api/v1/entity-statements.population
readonlypopulation:"staff"='staff'
GET /api/v1/entity-statements.surface
readonlysurface:"admin"='admin'
GET /api/v1/entity-statements/:id/preview
readonlyGET /api/v1/entity-statements/:id/preview:object
GET /api/v1/entity-statements/:id/preview.contract
readonlycontract:"request.*.trust.entity-statement.preview.v1"='request.*.trust.entity-statement.preview.v1'
GET /api/v1/entity-statements/:id/preview.method
readonlymethod:"GET"='GET'
GET /api/v1/entity-statements/:id/preview.path
readonlypath:"/api/v1/entity-statements/:id/preview"='/api/v1/entity-statements/:id/preview'
GET /api/v1/entity-statements/:id/preview.permission
readonlypermission:"entity-statement.read"='entity-statement.read'
GET /api/v1/entity-statements/:id/preview.population
readonlypopulation:"staff"='staff'
GET /api/v1/entity-statements/:id/preview.surface
readonlysurface:"admin"='admin'
GET /api/v1/grants
readonlyGET /api/v1/grants:object
GET /api/v1/grants.contract
readonlycontract:"request.*.identity.grant.list.v1"='request.*.identity.grant.list.v1'
GET /api/v1/grants.method
readonlymethod:"GET"='GET'
GET /api/v1/grants.path
readonlypath:"/api/v1/grants"='/api/v1/grants'
GET /api/v1/grants.permission
readonlypermission:"grant.read"='grant.read'
GET /api/v1/grants.population
readonlypopulation:"staff"='staff'
GET /api/v1/grants.surface
readonlysurface:"public"='public'
GET /api/v1/identifiers
readonlyGET /api/v1/identifiers:object
GET /api/v1/identifiers.contract
readonlycontract:"request.*.issuance.identifier.list.v1"='request.*.issuance.identifier.list.v1'
GET /api/v1/identifiers.method
readonlymethod:"GET"='GET'
GET /api/v1/identifiers.path
readonlypath:"/api/v1/identifiers"='/api/v1/identifiers'
GET /api/v1/identifiers.permission
readonlypermission:"identifier.read"='identifier.read'
GET /api/v1/identifiers.population
readonlypopulation:"staff"='staff'
GET /api/v1/identifiers.surface
readonlysurface:"public"='public'
GET /api/v1/identifiers/:id
readonlyGET /api/v1/identifiers/:id:object
GET /api/v1/identifiers/:id.contract
readonlycontract:"request.*.issuance.identifier.get.v1"='request.*.issuance.identifier.get.v1'
GET /api/v1/identifiers/:id.method
readonlymethod:"GET"='GET'
GET /api/v1/identifiers/:id.path
readonlypath:"/api/v1/identifiers/:id"='/api/v1/identifiers/:id'
GET /api/v1/identifiers/:id.permission
readonlypermission:"identifier.read"='identifier.read'
GET /api/v1/identifiers/:id.population
readonlypopulation:"staff"='staff'
GET /api/v1/identifiers/:id.surface
readonlysurface:"public"='public'
GET /api/v1/identifiers/:id/preview
readonlyGET /api/v1/identifiers/:id/preview:object
GET /api/v1/identifiers/:id/preview.contract
readonlycontract:"request.*.issuance.identifier.preview.v1"='request.*.issuance.identifier.preview.v1'
GET /api/v1/identifiers/:id/preview.method
readonlymethod:"GET"='GET'
GET /api/v1/identifiers/:id/preview.path
readonlypath:"/api/v1/identifiers/:id/preview"='/api/v1/identifiers/:id/preview'
GET /api/v1/identifiers/:id/preview.permission
readonlypermission:"identifier.read"='identifier.read'
GET /api/v1/identifiers/:id/preview.population
readonlypopulation:"staff"='staff'
GET /api/v1/identifiers/:id/preview.surface
readonlysurface:"public"='public'
GET /api/v1/me
readonlyGET /api/v1/me:object
GET /api/v1/me.contract
readonlycontract:"request.platform.identity.me.get.v1"='request.platform.identity.me.get.v1'
GET /api/v1/me.method
readonlymethod:"GET"='GET'
GET /api/v1/me.path
readonlypath:"/api/v1/me"='/api/v1/me'
GET /api/v1/me.permission
readonlypermission:"none"='none'
GET /api/v1/me.population
readonlypopulation:"staff"='staff'
GET /api/v1/me.surface
readonlysurface:"public"='public'
GET /api/v1/persons/:id
readonlyGET /api/v1/persons/:id:object
GET /api/v1/persons/:id.contract
readonlycontract:"request.*.identity.person.get.v1"='request.*.identity.person.get.v1'
GET /api/v1/persons/:id.method
readonlymethod:"GET"='GET'
GET /api/v1/persons/:id.path
readonlypath:"/api/v1/persons/:id"='/api/v1/persons/:id'
GET /api/v1/persons/:id.permission
readonlypermission:"person.read"='person.read'
GET /api/v1/persons/:id.population
readonlypopulation:"staff"='staff'
GET /api/v1/persons/:id.surface
readonlysurface:"public"='public'
GET /api/v1/subjects/:id
readonlyGET /api/v1/subjects/:id:object
GET /api/v1/subjects/:id.contract
readonlycontract:"request.*.identity.subject.get.v1"='request.*.identity.subject.get.v1'
GET /api/v1/subjects/:id.method
readonlymethod:"GET"='GET'
GET /api/v1/subjects/:id.path
readonlypath:"/api/v1/subjects/:id"='/api/v1/subjects/:id'
GET /api/v1/subjects/:id.permission
readonlypermission:"subject.read"='subject.read'
GET /api/v1/subjects/:id.population
readonlypopulation:"staff"='staff'
GET /api/v1/subjects/:id.surface
readonlysurface:"public"='public'
POST /api/v1/accreditations
readonlyPOST /api/v1/accreditations:object
POST /api/v1/accreditations.contract
readonlycontract:"request.*.governance.accreditation.apply.v1"='request.*.governance.accreditation.apply.v1'
POST /api/v1/accreditations.method
readonlymethod:"POST"='POST'
POST /api/v1/accreditations.path
readonlypath:"/api/v1/accreditations"='/api/v1/accreditations'
POST /api/v1/accreditations.permission
readonlypermission:"accreditation.apply"='accreditation.apply'
POST /api/v1/accreditations.population
readonlypopulation:"staff"='staff'
POST /api/v1/accreditations.surface
readonlysurface:"admin"='admin'
POST /api/v1/accreditations/:id/admit
readonlyPOST /api/v1/accreditations/:id/admit:object
POST /api/v1/accreditations/:id/admit.contract
readonlycontract:"request.*.governance.accreditation.admit.v1"='request.*.governance.accreditation.admit.v1'
POST /api/v1/accreditations/:id/admit.method
readonlymethod:"POST"='POST'
POST /api/v1/accreditations/:id/admit.path
readonlypath:"/api/v1/accreditations/:id/admit"='/api/v1/accreditations/:id/admit'
POST /api/v1/accreditations/:id/admit.permission
readonlypermission:"accreditation.admit"='accreditation.admit'
POST /api/v1/accreditations/:id/admit.population
readonlypopulation:"staff"='staff'
POST /api/v1/accreditations/:id/admit.surface
readonlysurface:"admin"='admin'
POST /api/v1/accreditations/:id/publish
readonlyPOST /api/v1/accreditations/:id/publish:object
POST /api/v1/accreditations/:id/publish.contract
readonlycontract:"request.*.governance.accreditation.publish.v1"='request.*.governance.accreditation.publish.v1'
POST /api/v1/accreditations/:id/publish.method
readonlymethod:"POST"='POST'
POST /api/v1/accreditations/:id/publish.path
readonlypath:"/api/v1/accreditations/:id/publish"='/api/v1/accreditations/:id/publish'
POST /api/v1/accreditations/:id/publish.permission
readonlypermission:"accreditation.publish"='accreditation.publish'
POST /api/v1/accreditations/:id/publish.population
readonlypopulation:"staff"='staff'
POST /api/v1/accreditations/:id/publish.surface
readonlysurface:"admin"='admin'
POST /api/v1/grants
readonlyPOST /api/v1/grants:object
POST /api/v1/grants.contract
readonlycontract:"request.*.identity.grant.create.v1"='request.*.identity.grant.create.v1'
POST /api/v1/grants.method
readonlymethod:"POST"='POST'
POST /api/v1/grants.path
readonlypath:"/api/v1/grants"='/api/v1/grants'
POST /api/v1/grants.permission
readonlypermission:"grant.create"='grant.create'
POST /api/v1/grants.population
readonlypopulation:"staff"='staff'
POST /api/v1/grants.surface
readonlysurface:"public"='public'
POST /api/v1/grants/:id/revoke
readonlyPOST /api/v1/grants/:id/revoke:object
POST /api/v1/grants/:id/revoke.contract
readonlycontract:"request.*.identity.grant.revoke.v1"='request.*.identity.grant.revoke.v1'
POST /api/v1/grants/:id/revoke.method
readonlymethod:"POST"='POST'
POST /api/v1/grants/:id/revoke.path
readonlypath:"/api/v1/grants/:id/revoke"='/api/v1/grants/:id/revoke'
POST /api/v1/grants/:id/revoke.permission
readonlypermission:"grant.revoke"='grant.revoke'
POST /api/v1/grants/:id/revoke.population
readonlypopulation:"staff"='staff'
POST /api/v1/grants/:id/revoke.surface
readonlysurface:"public"='public'
POST /api/v1/identifiers
readonlyPOST /api/v1/identifiers:object
POST /api/v1/identifiers.contract
readonlycontract:"request.*.issuance.identifier.create.v1"='request.*.issuance.identifier.create.v1'
POST /api/v1/identifiers.method
readonlymethod:"POST"='POST'
POST /api/v1/identifiers.path
readonlypath:"/api/v1/identifiers"='/api/v1/identifiers'
POST /api/v1/identifiers.permission
readonlypermission:"identifier.create"='identifier.create'
POST /api/v1/identifiers.population
readonlypopulation:"staff"='staff'
POST /api/v1/identifiers.surface
readonlysurface:"public"='public'
POST /api/v1/identifiers/:id/publish
readonlyPOST /api/v1/identifiers/:id/publish:object
POST /api/v1/identifiers/:id/publish.contract
readonlycontract:"request.*.issuance.identifier.publish.v1"='request.*.issuance.identifier.publish.v1'
POST /api/v1/identifiers/:id/publish.method
readonlymethod:"POST"='POST'
POST /api/v1/identifiers/:id/publish.path
readonlypath:"/api/v1/identifiers/:id/publish"='/api/v1/identifiers/:id/publish'
POST /api/v1/identifiers/:id/publish.permission
readonlypermission:"identifier.publish"='identifier.publish'
POST /api/v1/identifiers/:id/publish.population
readonlypopulation:"staff"='staff'
POST /api/v1/identifiers/:id/publish.surface
readonlysurface:"public"='public'
POST /api/v1/identifiers/:id/update
readonlyPOST /api/v1/identifiers/:id/update:object
POST /api/v1/identifiers/:id/update.contract
readonlycontract:"request.*.issuance.identifier.update.v1"='request.*.issuance.identifier.update.v1'
POST /api/v1/identifiers/:id/update.method
readonlymethod:"POST"='POST'
POST /api/v1/identifiers/:id/update.path
readonlypath:"/api/v1/identifiers/:id/update"='/api/v1/identifiers/:id/update'
POST /api/v1/identifiers/:id/update.permission
readonlypermission:"identifier.update"='identifier.update'
POST /api/v1/identifiers/:id/update.population
readonlypopulation:"staff"='staff'
POST /api/v1/identifiers/:id/update.surface
readonlysurface:"public"='public'
POST /api/v1/persons
readonlyPOST /api/v1/persons:object
POST /api/v1/persons.contract
readonlycontract:"request.*.identity.person.create.v1"='request.*.identity.person.create.v1'
POST /api/v1/persons.method
readonlymethod:"POST"='POST'
POST /api/v1/persons.path
readonlypath:"/api/v1/persons"='/api/v1/persons'
POST /api/v1/persons.permission
readonlypermission:"person.create"='person.create'
POST /api/v1/persons.population
readonlypopulation:"staff"='staff'
POST /api/v1/persons.surface
readonlysurface:"public"='public'
POST /api/v1/persons/:id/invitation
readonlyPOST /api/v1/persons/:id/invitation:object
POST /api/v1/persons/:id/invitation.contract
readonlycontract:"request.*.identity.person.invite.v1"='request.*.identity.person.invite.v1'
POST /api/v1/persons/:id/invitation.method
readonlymethod:"POST"='POST'
POST /api/v1/persons/:id/invitation.path
readonlypath:"/api/v1/persons/:id/invitation"='/api/v1/persons/:id/invitation'
POST /api/v1/persons/:id/invitation.permission
readonlypermission:"person.create"='person.create'
POST /api/v1/persons/:id/invitation.population
readonlypopulation:"staff"='staff'
POST /api/v1/persons/:id/invitation.surface
readonlysurface:"public"='public'
POST /api/v1/subjects
readonlyPOST /api/v1/subjects:object
POST /api/v1/subjects.contract
readonlycontract:"request.*.identity.subject.create.v1"='request.*.identity.subject.create.v1'
POST /api/v1/subjects.method
readonlymethod:"POST"='POST'
POST /api/v1/subjects.path
readonlypath:"/api/v1/subjects"='/api/v1/subjects'
POST /api/v1/subjects.permission
readonlypermission:"subject.create"='subject.create'
POST /api/v1/subjects.population
readonlypopulation:"staff"='staff'
POST /api/v1/subjects.surface
readonlysurface:"public"='public'