permify-javascript
v0.11.1
Published
Permify is an open source authorization service for creating fine-grained and scalable authorization systems.
Downloads
9
Readme
permify-javascript
PermifyApi - JavaScript client for Permify REST Api Permify is an open source authorization service for creating fine-grained and scalable authorization systems. This SDK is automatically generated by the OpenAPI Generator project:
- API version: v0.10.0
- Package version: v0.10.0
- Generator version: 7.7.0
- Build package: org.openapitools.codegen.languages.JavascriptClientCodegen For more information, please visit https://github.com/Permify/permify/issues
Installation
For Node.js
npm
To publish the library as a npm, please follow the procedure in "Publishing npm packages".
Then install it via:
npm install permify-javascript --save
Finally, you need to build the module:
npm run build
Local development
To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json
(and this README). Let's call this JAVASCRIPT_CLIENT_DIR
. Then run:
npm install
Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR
:
npm link
To use the link you just defined in your project, switch to the directory you want to use your permify_api from, and run:
npm link /path/to/<JAVASCRIPT_CLIENT_DIR>
Finally, you need to build the module:
npm run build
git
If the library is hosted at a git repository, e.g.https://github.com/GIT_USER_ID/GIT_REPO_ID then install it via:
npm install GIT_USER_ID/GIT_REPO_ID --save
For browser
The library also works in the browser environment via npm and browserify. After following
the above steps with Node.js and installing browserify with npm install -g browserify
,
perform the following (assuming main.js is your entry file):
browserify main.js > bundle.js
Then include bundle.js in the HTML pages.
Webpack Configuration
Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:
module: {
rules: [
{
parser: {
amd: false
}
}
]
}
Getting Started
Please follow the installation instruction and execute the following JS code:
var PermifyApi = require('permify-javascript');
var api = new PermifyApi.BundleApi()
var tenantId = "tenantId_example"; // {String} Identifier of the tenant, if you are not using multi-tenancy (have only one tenant) use pre-inserted tenant <code>t1</code> for this field. Required, and must match the pattern \\“[a-zA-Z0-9-,]+\\“, max 64 bytes.
var body = new PermifyApi.BundleDeleteBody(); // {BundleDeleteBody}
var callback = function(error, data, response) {
if (error) {
console.error(error);
} else {
console.log('API called successfully. Returned data: ' + data);
}
};
api.bundleDelete(tenantId, body, callback);
Documentation for API Endpoints
All URIs are relative to http://localhost
Class | Method | HTTP request | Description ------------ | ------------- | ------------- | ------------- PermifyApi.BundleApi | bundleDelete | POST /v1/tenants/{tenant_id}/bundle/delete | delete bundle PermifyApi.BundleApi | bundleRead | POST /v1/tenants/{tenant_id}/bundle/read | read bundle PermifyApi.BundleApi | bundleWrite | POST /v1/tenants/{tenant_id}/bundle/write | write bundle PermifyApi.DataApi | bundleRun | POST /v1/tenants/{tenant_id}/data/run-bundle | run bundle PermifyApi.DataApi | dataAttributesRead | POST /v1/tenants/{tenant_id}/data/attributes/read | read attributes PermifyApi.DataApi | dataDelete | POST /v1/tenants/{tenant_id}/data/delete | delete data PermifyApi.DataApi | dataRelationshipsRead | POST /v1/tenants/{tenant_id}/data/relationships/read | read relationships PermifyApi.DataApi | dataWrite | POST /v1/tenants/{tenant_id}/data/write | write data PermifyApi.DataApi | relationshipsDelete | POST /v1/tenants/{tenant_id}/relationships/delete | delete relationships PermifyApi.DataApi | relationshipsWrite | POST /v1/tenants/{tenant_id}/relationships/write | write relationships PermifyApi.PermissionApi | permissionsCheck | POST /v1/tenants/{tenant_id}/permissions/check | check api PermifyApi.PermissionApi | permissionsExpand | POST /v1/tenants/{tenant_id}/permissions/expand | expand api PermifyApi.PermissionApi | permissionsLookupEntity | POST /v1/tenants/{tenant_id}/permissions/lookup-entity | lookup entity PermifyApi.PermissionApi | permissionsLookupEntityStream | POST /v1/tenants/{tenant_id}/permissions/lookup-entity-stream | lookup entity stream PermifyApi.PermissionApi | permissionsLookupSubject | POST /v1/tenants/{tenant_id}/permissions/lookup-subject | lookup-subject PermifyApi.PermissionApi | permissionsSubjectPermission | POST /v1/tenants/{tenant_id}/permissions/subject-permission | subject permission PermifyApi.SchemaApi | schemasList | POST /v1/tenants/{tenant_id}/schemas/list | list schema PermifyApi.SchemaApi | schemasPartialWrite | PATCH /v1/tenants/{tenant_id}/schemas/partial-write | partially update your authorization model PermifyApi.SchemaApi | schemasRead | POST /v1/tenants/{tenant_id}/schemas/read | read schema PermifyApi.SchemaApi | schemasWrite | POST /v1/tenants/{tenant_id}/schemas/write | write schema PermifyApi.TenancyApi | tenantsCreate | POST /v1/tenants/create | create tenant PermifyApi.TenancyApi | tenantsDelete | DELETE /v1/tenants/{id} | delete tenant PermifyApi.TenancyApi | tenantsList | POST /v1/tenants/list | list tenants PermifyApi.WatchApi | watchWatch | POST /v1/tenants/{tenant_id}/watch | watch changes
Documentation for Models
- PermifyApi.AbstractType
- PermifyApi.Any
- PermifyApi.Argument
- PermifyApi.Attribute
- PermifyApi.AttributeDefinition
- PermifyApi.AttributeFilter
- PermifyApi.AttributeReadRequestMetadata
- PermifyApi.AttributeReadResponse
- PermifyApi.AttributeType
- PermifyApi.BundleDeleteBody
- PermifyApi.BundleDeleteResponse
- PermifyApi.BundleReadBody
- PermifyApi.BundleReadResponse
- PermifyApi.BundleRunResponse
- PermifyApi.BundleWriteBody
- PermifyApi.BundleWriteResponse
- PermifyApi.CheckBody
- PermifyApi.CheckResult
- PermifyApi.CheckedExpr
- PermifyApi.Child
- PermifyApi.Comprehension
- PermifyApi.ComputedAttribute
- PermifyApi.ComputedUserSet
- PermifyApi.Constant
- PermifyApi.Context
- PermifyApi.ContextAttribute
- PermifyApi.CreateList
- PermifyApi.CreateStruct
- PermifyApi.DataBundle
- PermifyApi.DataChange
- PermifyApi.DataChangeOperation
- PermifyApi.DataChanges
- PermifyApi.DataDeleteBody
- PermifyApi.DataDeleteResponse
- PermifyApi.DataWriteBody
- PermifyApi.DataWriteRequestMetadata
- PermifyApi.DataWriteResponse
- PermifyApi.DeleteRelationshipsBody
- PermifyApi.Entity
- PermifyApi.EntityDefinition
- PermifyApi.EntityDefinitionReference
- PermifyApi.EntityFilter
- PermifyApi.Entry
- PermifyApi.ExpandLeaf
- PermifyApi.ExpandTreeNode
- PermifyApi.ExpandTreeNodeOperation
- PermifyApi.Expr
- PermifyApi.ExprCall
- PermifyApi.FunctionType
- PermifyApi.Ident
- PermifyApi.Leaf
- PermifyApi.ListType
- PermifyApi.LookupEntityBody
- PermifyApi.LookupEntityStreamBody
- PermifyApi.LookupSubjectBody
- PermifyApi.MapType
- PermifyApi.PartialWriteBody
- PermifyApi.Partials
- PermifyApi.PermissionCheckRequestMetadata
- PermifyApi.PermissionCheckResponse
- PermifyApi.PermissionCheckResponseMetadata
- PermifyApi.PermissionDefinition
- PermifyApi.PermissionExpandBody
- PermifyApi.PermissionExpandRequestMetadata
- PermifyApi.PermissionExpandResponse
- PermifyApi.PermissionLookupEntityRequestMetadata
- PermifyApi.PermissionLookupEntityResponse
- PermifyApi.PermissionLookupEntityStreamResponse
- PermifyApi.PermissionLookupSubjectRequestMetadata
- PermifyApi.PermissionLookupSubjectResponse
- PermifyApi.PermissionSubjectPermissionRequestMetadata
- PermifyApi.PermissionSubjectPermissionResponse
- PermifyApi.PrimitiveType
- PermifyApi.ReadAttributesBody
- PermifyApi.ReadRelationshipsBody
- PermifyApi.RelationDefinition
- PermifyApi.RelationReference
- PermifyApi.RelationshipDeleteResponse
- PermifyApi.RelationshipReadRequestMetadata
- PermifyApi.RelationshipReadResponse
- PermifyApi.RelationshipWriteRequestMetadata
- PermifyApi.RelationshipWriteResponse
- PermifyApi.Rewrite
- PermifyApi.RewriteOperation
- PermifyApi.RuleDefinition
- PermifyApi.RunBundleBody
- PermifyApi.SchemaDefinition
- PermifyApi.SchemaDefinitionReference
- PermifyApi.SchemaList
- PermifyApi.SchemaListBody
- PermifyApi.SchemaListResponse
- PermifyApi.SchemaPartialWriteRequestMetadata
- PermifyApi.SchemaPartialWriteResponse
- PermifyApi.SchemaReadBody
- PermifyApi.SchemaReadRequestMetadata
- PermifyApi.SchemaReadResponse
- PermifyApi.SchemaWriteBody
- PermifyApi.SchemaWriteResponse
- PermifyApi.Select
- PermifyApi.SourceInfo
- PermifyApi.Status
- PermifyApi.StreamResultOfPermissionLookupEntityStreamResponse
- PermifyApi.StreamResultOfWatchResponse
- PermifyApi.Subject
- PermifyApi.SubjectFilter
- PermifyApi.SubjectPermissionBody
- PermifyApi.Subjects
- PermifyApi.Tenant
- PermifyApi.TenantCreateRequest
- PermifyApi.TenantCreateResponse
- PermifyApi.TenantDeleteResponse
- PermifyApi.TenantListRequest
- PermifyApi.TenantListResponse
- PermifyApi.Tuple
- PermifyApi.TupleFilter
- PermifyApi.TupleSet
- PermifyApi.TupleToUserSet
- PermifyApi.V1Call
- PermifyApi.V1Expand
- PermifyApi.V1Operation
- PermifyApi.V1alpha1Reference
- PermifyApi.V1alpha1Type
- PermifyApi.Values
- PermifyApi.WatchBody
- PermifyApi.WatchResponse
- PermifyApi.WellKnownType
- PermifyApi.WriteRelationshipsBody
Documentation for Authorization
Authentication schemes defined for the API:
ApiKeyAuth
- Type: API key
- API key parameter name: Authorization
- Location: HTTP header