{"id":19510006,"url":"https://github.com/permify/permify-javascript","last_synced_at":"2025-04-26T03:32:09.578Z","repository":{"id":227495992,"uuid":"771581173","full_name":"Permify/permify-javascript","owner":"Permify","description":"Permify Javascript Client","archived":false,"fork":false,"pushed_at":"2024-07-29T11:41:01.000Z","size":1010,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-04T07:35:50.277Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Permify.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-13T15:02:42.000Z","updated_at":"2024-08-15T15:28:47.000Z","dependencies_parsed_at":"2024-05-21T00:34:16.739Z","dependency_job_id":"1046aeff-b77e-4642-aac3-6484697a170c","html_url":"https://github.com/Permify/permify-javascript","commit_stats":null,"previous_names":["permify/permify-javascript"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Permify%2Fpermify-javascript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Permify%2Fpermify-javascript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Permify%2Fpermify-javascript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Permify%2Fpermify-javascript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Permify","download_url":"https://codeload.github.com/Permify/permify-javascript/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250926859,"owners_count":21509050,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T23:14:10.017Z","updated_at":"2025-04-26T03:32:07.667Z","avatar_url":"https://github.com/Permify.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# permify-javascript\n\nPermifyApi - JavaScript client for Permify REST Api\nPermify is an open source authorization service for creating fine-grained and scalable authorization systems.\nThis SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:\n\n- API version: v0.10.0\n- Package version: v0.10.0\n- Generator version: 7.7.0\n- Build package: org.openapitools.codegen.languages.JavascriptClientCodegen\nFor more information, please visit [https://github.com/Permify/permify/issues](https://github.com/Permify/permify/issues)\n\n## Installation\n\n### For [Node.js](https://nodejs.org/)\n\n#### npm\n\nTo publish the library as a [npm](https://www.npmjs.com/), please follow the procedure in [\"Publishing npm packages\"](https://docs.npmjs.com/getting-started/publishing-npm-packages).\n\nThen install it via:\n\n```shell\nnpm install permify-javascript --save\n```\n\nFinally, you need to build the module:\n\n```shell\nnpm run build\n```\n\n##### Local development\n\nTo 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:\n\n```shell\nnpm install\n```\n\nNext, [link](https://docs.npmjs.com/cli/link) it globally in npm with the following, also from `JAVASCRIPT_CLIENT_DIR`:\n\n```shell\nnpm link\n```\n\nTo use the link you just defined in your project, switch to the directory you want to use your permify_api from, and run:\n\n```shell\nnpm link /path/to/\u003cJAVASCRIPT_CLIENT_DIR\u003e\n```\n\nFinally, you need to build the module:\n\n```shell\nnpm run build\n```\n\n#### git\n\nIf the library is hosted at a git repository, e.g.https://github.com/GIT_USER_ID/GIT_REPO_ID\nthen install it via:\n\n```shell\n    npm install GIT_USER_ID/GIT_REPO_ID --save\n```\n\n### For browser\n\nThe library also works in the browser environment via npm and [browserify](http://browserify.org/). After following\nthe above steps with Node.js and installing browserify with `npm install -g browserify`,\nperform the following (assuming *main.js* is your entry file):\n\n```shell\nbrowserify main.js \u003e bundle.js\n```\n\nThen include *bundle.js* in the HTML pages.\n\n### Webpack Configuration\n\nUsing Webpack you may encounter the following error: \"Module not found: Error:\nCannot resolve module\", most certainly you should disable AMD loader. Add/merge\nthe following section to your webpack config:\n\n```javascript\nmodule: {\n  rules: [\n    {\n      parser: {\n        amd: false\n      }\n    }\n  ]\n}\n```\n\n## Getting Started\n\nPlease follow the [installation](#installation) instruction and execute the following JS code:\n\n```javascript\nvar PermifyApi = require('permify-javascript');\n\n\nvar api = new PermifyApi.BundleApi()\nvar tenantId = \"tenantId_example\"; // {String} Identifier of the tenant, if you are not using multi-tenancy (have only one tenant) use pre-inserted tenant \u003ccode\u003et1\u003c/code\u003e for this field. Required, and must match the pattern \\\\“[a-zA-Z0-9-,]+\\\\“, max 64 bytes.\nvar body = new PermifyApi.BundleDeleteBody(); // {BundleDeleteBody} \nvar callback = function(error, data, response) {\n  if (error) {\n    console.error(error);\n  } else {\n    console.log('API called successfully. Returned data: ' + data);\n  }\n};\napi.bundleDelete(tenantId, body, callback);\n\n```\n\n## Documentation for API Endpoints\n\nAll URIs are relative to *http://localhost*\n\nClass | Method | HTTP request | Description\n------------ | ------------- | ------------- | -------------\n*PermifyApi.BundleApi* | [**bundleDelete**](docs/BundleApi.md#bundleDelete) | **POST** /v1/tenants/{tenant_id}/bundle/delete | delete bundle\n*PermifyApi.BundleApi* | [**bundleRead**](docs/BundleApi.md#bundleRead) | **POST** /v1/tenants/{tenant_id}/bundle/read | read bundle\n*PermifyApi.BundleApi* | [**bundleWrite**](docs/BundleApi.md#bundleWrite) | **POST** /v1/tenants/{tenant_id}/bundle/write | write bundle\n*PermifyApi.DataApi* | [**bundleRun**](docs/DataApi.md#bundleRun) | **POST** /v1/tenants/{tenant_id}/data/run-bundle | run bundle\n*PermifyApi.DataApi* | [**dataAttributesRead**](docs/DataApi.md#dataAttributesRead) | **POST** /v1/tenants/{tenant_id}/data/attributes/read | read attributes\n*PermifyApi.DataApi* | [**dataDelete**](docs/DataApi.md#dataDelete) | **POST** /v1/tenants/{tenant_id}/data/delete | delete data\n*PermifyApi.DataApi* | [**dataRelationshipsRead**](docs/DataApi.md#dataRelationshipsRead) | **POST** /v1/tenants/{tenant_id}/data/relationships/read | read relationships\n*PermifyApi.DataApi* | [**dataWrite**](docs/DataApi.md#dataWrite) | **POST** /v1/tenants/{tenant_id}/data/write | write data\n*PermifyApi.DataApi* | [**relationshipsDelete**](docs/DataApi.md#relationshipsDelete) | **POST** /v1/tenants/{tenant_id}/relationships/delete | delete relationships\n*PermifyApi.DataApi* | [**relationshipsWrite**](docs/DataApi.md#relationshipsWrite) | **POST** /v1/tenants/{tenant_id}/relationships/write | write relationships\n*PermifyApi.PermissionApi* | [**permissionsCheck**](docs/PermissionApi.md#permissionsCheck) | **POST** /v1/tenants/{tenant_id}/permissions/check | check api\n*PermifyApi.PermissionApi* | [**permissionsExpand**](docs/PermissionApi.md#permissionsExpand) | **POST** /v1/tenants/{tenant_id}/permissions/expand | expand api\n*PermifyApi.PermissionApi* | [**permissionsLookupEntity**](docs/PermissionApi.md#permissionsLookupEntity) | **POST** /v1/tenants/{tenant_id}/permissions/lookup-entity | lookup entity\n*PermifyApi.PermissionApi* | [**permissionsLookupEntityStream**](docs/PermissionApi.md#permissionsLookupEntityStream) | **POST** /v1/tenants/{tenant_id}/permissions/lookup-entity-stream | lookup entity stream\n*PermifyApi.PermissionApi* | [**permissionsLookupSubject**](docs/PermissionApi.md#permissionsLookupSubject) | **POST** /v1/tenants/{tenant_id}/permissions/lookup-subject | lookup-subject\n*PermifyApi.PermissionApi* | [**permissionsSubjectPermission**](docs/PermissionApi.md#permissionsSubjectPermission) | **POST** /v1/tenants/{tenant_id}/permissions/subject-permission | subject permission\n*PermifyApi.SchemaApi* | [**schemasList**](docs/SchemaApi.md#schemasList) | **POST** /v1/tenants/{tenant_id}/schemas/list | list schema\n*PermifyApi.SchemaApi* | [**schemasPartialWrite**](docs/SchemaApi.md#schemasPartialWrite) | **PATCH** /v1/tenants/{tenant_id}/schemas/partial-write | partially update your authorization model\n*PermifyApi.SchemaApi* | [**schemasRead**](docs/SchemaApi.md#schemasRead) | **POST** /v1/tenants/{tenant_id}/schemas/read | read schema\n*PermifyApi.SchemaApi* | [**schemasWrite**](docs/SchemaApi.md#schemasWrite) | **POST** /v1/tenants/{tenant_id}/schemas/write | write schema\n*PermifyApi.TenancyApi* | [**tenantsCreate**](docs/TenancyApi.md#tenantsCreate) | **POST** /v1/tenants/create | create tenant\n*PermifyApi.TenancyApi* | [**tenantsDelete**](docs/TenancyApi.md#tenantsDelete) | **DELETE** /v1/tenants/{id} | delete tenant\n*PermifyApi.TenancyApi* | [**tenantsList**](docs/TenancyApi.md#tenantsList) | **POST** /v1/tenants/list | list tenants\n*PermifyApi.WatchApi* | [**watchWatch**](docs/WatchApi.md#watchWatch) | **POST** /v1/tenants/{tenant_id}/watch | watch changes\n\n\n## Documentation for Models\n\n - [PermifyApi.AbstractType](docs/AbstractType.md)\n - [PermifyApi.Any](docs/Any.md)\n - [PermifyApi.Argument](docs/Argument.md)\n - [PermifyApi.Attribute](docs/Attribute.md)\n - [PermifyApi.AttributeDefinition](docs/AttributeDefinition.md)\n - [PermifyApi.AttributeFilter](docs/AttributeFilter.md)\n - [PermifyApi.AttributeReadRequestMetadata](docs/AttributeReadRequestMetadata.md)\n - [PermifyApi.AttributeReadResponse](docs/AttributeReadResponse.md)\n - [PermifyApi.AttributeType](docs/AttributeType.md)\n - [PermifyApi.BundleDeleteBody](docs/BundleDeleteBody.md)\n - [PermifyApi.BundleDeleteResponse](docs/BundleDeleteResponse.md)\n - [PermifyApi.BundleReadBody](docs/BundleReadBody.md)\n - [PermifyApi.BundleReadResponse](docs/BundleReadResponse.md)\n - [PermifyApi.BundleRunResponse](docs/BundleRunResponse.md)\n - [PermifyApi.BundleWriteBody](docs/BundleWriteBody.md)\n - [PermifyApi.BundleWriteResponse](docs/BundleWriteResponse.md)\n - [PermifyApi.CheckBody](docs/CheckBody.md)\n - [PermifyApi.CheckResult](docs/CheckResult.md)\n - [PermifyApi.CheckedExpr](docs/CheckedExpr.md)\n - [PermifyApi.Child](docs/Child.md)\n - [PermifyApi.Comprehension](docs/Comprehension.md)\n - [PermifyApi.ComputedAttribute](docs/ComputedAttribute.md)\n - [PermifyApi.ComputedUserSet](docs/ComputedUserSet.md)\n - [PermifyApi.Constant](docs/Constant.md)\n - [PermifyApi.Context](docs/Context.md)\n - [PermifyApi.ContextAttribute](docs/ContextAttribute.md)\n - [PermifyApi.CreateList](docs/CreateList.md)\n - [PermifyApi.CreateStruct](docs/CreateStruct.md)\n - [PermifyApi.DataBundle](docs/DataBundle.md)\n - [PermifyApi.DataChange](docs/DataChange.md)\n - [PermifyApi.DataChangeOperation](docs/DataChangeOperation.md)\n - [PermifyApi.DataChanges](docs/DataChanges.md)\n - [PermifyApi.DataDeleteBody](docs/DataDeleteBody.md)\n - [PermifyApi.DataDeleteResponse](docs/DataDeleteResponse.md)\n - [PermifyApi.DataWriteBody](docs/DataWriteBody.md)\n - [PermifyApi.DataWriteRequestMetadata](docs/DataWriteRequestMetadata.md)\n - [PermifyApi.DataWriteResponse](docs/DataWriteResponse.md)\n - [PermifyApi.DeleteRelationshipsBody](docs/DeleteRelationshipsBody.md)\n - [PermifyApi.Entity](docs/Entity.md)\n - [PermifyApi.EntityDefinition](docs/EntityDefinition.md)\n - [PermifyApi.EntityDefinitionReference](docs/EntityDefinitionReference.md)\n - [PermifyApi.EntityFilter](docs/EntityFilter.md)\n - [PermifyApi.Entry](docs/Entry.md)\n - [PermifyApi.ExpandLeaf](docs/ExpandLeaf.md)\n - [PermifyApi.ExpandTreeNode](docs/ExpandTreeNode.md)\n - [PermifyApi.ExpandTreeNodeOperation](docs/ExpandTreeNodeOperation.md)\n - [PermifyApi.Expr](docs/Expr.md)\n - [PermifyApi.ExprCall](docs/ExprCall.md)\n - [PermifyApi.FunctionType](docs/FunctionType.md)\n - [PermifyApi.Ident](docs/Ident.md)\n - [PermifyApi.Leaf](docs/Leaf.md)\n - [PermifyApi.ListType](docs/ListType.md)\n - [PermifyApi.LookupEntityBody](docs/LookupEntityBody.md)\n - [PermifyApi.LookupEntityStreamBody](docs/LookupEntityStreamBody.md)\n - [PermifyApi.LookupSubjectBody](docs/LookupSubjectBody.md)\n - [PermifyApi.MapType](docs/MapType.md)\n - [PermifyApi.PartialWriteBody](docs/PartialWriteBody.md)\n - [PermifyApi.Partials](docs/Partials.md)\n - [PermifyApi.PermissionCheckRequestMetadata](docs/PermissionCheckRequestMetadata.md)\n - [PermifyApi.PermissionCheckResponse](docs/PermissionCheckResponse.md)\n - [PermifyApi.PermissionCheckResponseMetadata](docs/PermissionCheckResponseMetadata.md)\n - [PermifyApi.PermissionDefinition](docs/PermissionDefinition.md)\n - [PermifyApi.PermissionExpandBody](docs/PermissionExpandBody.md)\n - [PermifyApi.PermissionExpandRequestMetadata](docs/PermissionExpandRequestMetadata.md)\n - [PermifyApi.PermissionExpandResponse](docs/PermissionExpandResponse.md)\n - [PermifyApi.PermissionLookupEntityRequestMetadata](docs/PermissionLookupEntityRequestMetadata.md)\n - [PermifyApi.PermissionLookupEntityResponse](docs/PermissionLookupEntityResponse.md)\n - [PermifyApi.PermissionLookupEntityStreamResponse](docs/PermissionLookupEntityStreamResponse.md)\n - [PermifyApi.PermissionLookupSubjectRequestMetadata](docs/PermissionLookupSubjectRequestMetadata.md)\n - [PermifyApi.PermissionLookupSubjectResponse](docs/PermissionLookupSubjectResponse.md)\n - [PermifyApi.PermissionSubjectPermissionRequestMetadata](docs/PermissionSubjectPermissionRequestMetadata.md)\n - [PermifyApi.PermissionSubjectPermissionResponse](docs/PermissionSubjectPermissionResponse.md)\n - [PermifyApi.PrimitiveType](docs/PrimitiveType.md)\n - [PermifyApi.ReadAttributesBody](docs/ReadAttributesBody.md)\n - [PermifyApi.ReadRelationshipsBody](docs/ReadRelationshipsBody.md)\n - [PermifyApi.RelationDefinition](docs/RelationDefinition.md)\n - [PermifyApi.RelationReference](docs/RelationReference.md)\n - [PermifyApi.RelationshipDeleteResponse](docs/RelationshipDeleteResponse.md)\n - [PermifyApi.RelationshipReadRequestMetadata](docs/RelationshipReadRequestMetadata.md)\n - [PermifyApi.RelationshipReadResponse](docs/RelationshipReadResponse.md)\n - [PermifyApi.RelationshipWriteRequestMetadata](docs/RelationshipWriteRequestMetadata.md)\n - [PermifyApi.RelationshipWriteResponse](docs/RelationshipWriteResponse.md)\n - [PermifyApi.Rewrite](docs/Rewrite.md)\n - [PermifyApi.RewriteOperation](docs/RewriteOperation.md)\n - [PermifyApi.RuleDefinition](docs/RuleDefinition.md)\n - [PermifyApi.RunBundleBody](docs/RunBundleBody.md)\n - [PermifyApi.SchemaDefinition](docs/SchemaDefinition.md)\n - [PermifyApi.SchemaDefinitionReference](docs/SchemaDefinitionReference.md)\n - [PermifyApi.SchemaList](docs/SchemaList.md)\n - [PermifyApi.SchemaListBody](docs/SchemaListBody.md)\n - [PermifyApi.SchemaListResponse](docs/SchemaListResponse.md)\n - [PermifyApi.SchemaPartialWriteRequestMetadata](docs/SchemaPartialWriteRequestMetadata.md)\n - [PermifyApi.SchemaPartialWriteResponse](docs/SchemaPartialWriteResponse.md)\n - [PermifyApi.SchemaReadBody](docs/SchemaReadBody.md)\n - [PermifyApi.SchemaReadRequestMetadata](docs/SchemaReadRequestMetadata.md)\n - [PermifyApi.SchemaReadResponse](docs/SchemaReadResponse.md)\n - [PermifyApi.SchemaWriteBody](docs/SchemaWriteBody.md)\n - [PermifyApi.SchemaWriteResponse](docs/SchemaWriteResponse.md)\n - [PermifyApi.Select](docs/Select.md)\n - [PermifyApi.SourceInfo](docs/SourceInfo.md)\n - [PermifyApi.Status](docs/Status.md)\n - [PermifyApi.StreamResultOfPermissionLookupEntityStreamResponse](docs/StreamResultOfPermissionLookupEntityStreamResponse.md)\n - [PermifyApi.StreamResultOfWatchResponse](docs/StreamResultOfWatchResponse.md)\n - [PermifyApi.Subject](docs/Subject.md)\n - [PermifyApi.SubjectFilter](docs/SubjectFilter.md)\n - [PermifyApi.SubjectPermissionBody](docs/SubjectPermissionBody.md)\n - [PermifyApi.Subjects](docs/Subjects.md)\n - [PermifyApi.Tenant](docs/Tenant.md)\n - [PermifyApi.TenantCreateRequest](docs/TenantCreateRequest.md)\n - [PermifyApi.TenantCreateResponse](docs/TenantCreateResponse.md)\n - [PermifyApi.TenantDeleteResponse](docs/TenantDeleteResponse.md)\n - [PermifyApi.TenantListRequest](docs/TenantListRequest.md)\n - [PermifyApi.TenantListResponse](docs/TenantListResponse.md)\n - [PermifyApi.Tuple](docs/Tuple.md)\n - [PermifyApi.TupleFilter](docs/TupleFilter.md)\n - [PermifyApi.TupleSet](docs/TupleSet.md)\n - [PermifyApi.TupleToUserSet](docs/TupleToUserSet.md)\n - [PermifyApi.V1Call](docs/V1Call.md)\n - [PermifyApi.V1Expand](docs/V1Expand.md)\n - [PermifyApi.V1Operation](docs/V1Operation.md)\n - [PermifyApi.V1alpha1Reference](docs/V1alpha1Reference.md)\n - [PermifyApi.V1alpha1Type](docs/V1alpha1Type.md)\n - [PermifyApi.Values](docs/Values.md)\n - [PermifyApi.WatchBody](docs/WatchBody.md)\n - [PermifyApi.WatchResponse](docs/WatchResponse.md)\n - [PermifyApi.WellKnownType](docs/WellKnownType.md)\n - [PermifyApi.WriteRelationshipsBody](docs/WriteRelationshipsBody.md)\n\n\n## Documentation for Authorization\n\n\nAuthentication schemes defined for the API:\n### ApiKeyAuth\n\n\n- **Type**: API key\n- **API key parameter name**: Authorization\n- **Location**: HTTP header\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpermify%2Fpermify-javascript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpermify%2Fpermify-javascript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpermify%2Fpermify-javascript/lists"}