diff --git a/blog/conditional-tuples-announcement.md b/blog/conditional-tuples-announcement.md index 1ac5c0620..69d64c29c 100644 --- a/blog/conditional-tuples-announcement.md +++ b/blog/conditional-tuples-announcement.md @@ -60,7 +60,7 @@ You'll get the following results for the [ListObjects](https://openfga.dev/api/s Note that: -- `user:bob` will always get `allowed:true` as we has assigned as as viewer unconditionally. +- `user:bob` will always get `allowed:true` as we have assigned as viewer unconditionally. - `user:anne` will get `allowed:true` if the `current_time` is before the `grant_time` + `grant_duration` and `allowed:false` otherwise. - If you don't provide the `current_time` in the context, the Check and ListObjects operations will fail. diff --git a/docs/content/authorization-concepts.mdx b/docs/content/authorization-concepts.mdx index 729b373bd..1dc4af315 100644 --- a/docs/content/authorization-concepts.mdx +++ b/docs/content/authorization-concepts.mdx @@ -48,7 +48,7 @@ ReBAC also lets you natively solve for ABAC when attributes can be expressed in extends ReBAC by making it simpler to express additional ABAC scenarios using [Conditions](./modeling/conditions.mdx) or [Contextual Tuples](./modeling/token-claims-contextual-tuples.mdx). -ReBAC can also be consided PBAC, as authorization policies are centralized. +ReBAC can also be considered PBAC, as authorization policies are centralized. ## What is Zanzibar? diff --git a/docs/content/concepts.mdx b/docs/content/concepts.mdx index 0edc42f64..995e25eef 100644 --- a/docs/content/concepts.mdx +++ b/docs/content/concepts.mdx @@ -584,7 +584,7 @@ The list objects endpoint responds with a list of objects for a given type that For example, the following returns all the objects with document type for which `anne` of type user has a `viewer` relation with: -'s Configuration Language builds a representation of a system's , which informs on the in the system are and how they relate to each other. The Configuration Language describes the possible for an object of a given type and lists the conditions under which one is related to that object. +'s Configuration Language builds a representation of a system's , which informs on the in the system and how they relate to each other. The Configuration Language describes the possible for an object of a given type and lists the conditions under which one is related to that object. The Configuration Language can be presented in **DSL** or **JSON** syntax. The JSON syntax is accepted by the API and closely tracks the language in the [Zanzibar paper](https://research.google/pubs/pub48190/). The DSL adds syntactic sugar on top of JSON for ease of use, but compiles down to JSON before being sent to 's API. JSON syntax is used to call API directly or through the [SDKs](./getting-started), while DSL is used to interact with in the [Playground](https://play.fga.dev/), and they can be switched between throughout this documentation. @@ -388,7 +388,7 @@ Above, `document` 2. You have [installed the SDK](./install-sdk.mdx), [created the store](./create-store.mdx) and [setup the SDK client](./setup-sdk-client.mdx). -3. You have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +3. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. 1. 2. You have [installed the SDK](./install-sdk.mdx), [created the store](./create-store.mdx) and [setup the SDK client](./setup-sdk-client.mdx). -3. You have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +3. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. @@ -47,7 +47,7 @@ This article explains how to configure an 2. You have [installed the SDK](./install-sdk.mdx), [created the store](./create-store.mdx) and [setup the SDK client](./setup-sdk-client.mdx). -3. You have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +3. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. @@ -63,7 +63,7 @@ This article explains how to configure an 2. You have [installed the CLI](./install-sdk.mdx), [created the store](./create-store.mdx) and [setup your environment variables](./setup-sdk-client.mdx). -3. You have loaded `FGA_STORE_ID` and `FGA_SERVER_URL` as environment variables. +3. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. 1. -2. You have [created the store](./create-store.mdx) and have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +2. You have [created the store](./create-store.mdx) and have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. diff --git a/docs/content/getting-started/create-store.mdx b/docs/content/getting-started/create-store.mdx index 4f20611c5..dceb6bf04 100644 --- a/docs/content/getting-started/create-store.mdx +++ b/docs/content/getting-started/create-store.mdx @@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem'; A [store](../concepts.mdx#what-is-a-store) is a OpenFGA entity that contains your authorization data. You will need to create a store in OpenFGA before adding an [authorization model](../concepts.mdx#what-is-an-authorization-model) and [relationship tuples](../concepts.mdx#what-is-a-relationship-tuple) to it. -This article explains how to setup an OpenFGA store. +This article explains how to set up an OpenFGA store. ## Step By Step @@ -148,7 +148,7 @@ public class Example { fga store create --name "FGA Demo Store" # To create the store and directly put the Store ID into an env variable: -# export FGA_STORE_ID=$(fga store create --name "FGA Demo Store" | jq -r .id) +# export FGA_STORE_ID=$(fga store create --name "FGA Demo Store" | jq -r .store.id) ``` @@ -156,7 +156,7 @@ fga store create --name "FGA Demo Store" ```shell -curl -X POST $FGA_API_HOST/stores \ +curl -X POST $FGA_API_URL/stores \ -H "content-type: application/json" \ -d '{"name": "FGA Demo Store"}' ``` diff --git a/docs/content/getting-started/framework.mdx b/docs/content/getting-started/framework.mdx index bec01e8d2..670390d9b 100644 --- a/docs/content/getting-started/framework.mdx +++ b/docs/content/getting-started/framework.mdx @@ -34,7 +34,7 @@ This section will illustrate how to integrate @@ -43,7 +43,7 @@ This section will illustrate how to integrate diff --git a/docs/content/getting-started/immutable-models.mdx b/docs/content/getting-started/immutable-models.mdx index 7ca0bd803..c577553c4 100644 --- a/docs/content/getting-started/immutable-models.mdx +++ b/docs/content/getting-started/immutable-models.mdx @@ -25,7 +25,7 @@ You can list all the authorization models for a store using the [ReadAuthorizati Some endpoints relating to tuples ([Check](/api/service#/Relationship%20Queries/Check), [ListObjects](/api/service#/Relationship%20Queries/ListObjects), [Expand](/api/service#/Relationship%20Queries/Expand), [Write](/api/service#/Relationship%20Tuples/Write)) accept an `authorization_model_id`, which we strongly recommend passing, especially in production. -In practice, you would pin the authorization model ID alongside the store ID in your configuration management system. Your services would read this value and use it in their requests to FGA. This helps you ensure that your services are using the same consistent ID across all your applications, and that rollouts can be seemless. +In practice, you would pin the authorization model ID alongside the store ID in your configuration management system. Your services would read this value and use it in their requests to FGA. This helps you ensure that your services are using the same consistent ID across all your applications, and that rollouts can be seamless. ### Benefits of Passing in an Authorization Model ID diff --git a/docs/content/getting-started/overview.mdx b/docs/content/getting-started/overview.mdx index 7b8380cff..bf204a06b 100644 --- a/docs/content/getting-started/overview.mdx +++ b/docs/content/getting-started/overview.mdx @@ -9,7 +9,7 @@ import { DocumentationNotice, IntroCard, CardGrid, ProductName } from '@componen -The following will provide a step by step guide on how to get started with . +The following will provide a step-by-step guide on how to get started with . 2. You have [installed the SDK](./install-sdk.mdx). 3. You have [configured the _authorization model_](./configure-model.mdx) and [updated the _relationship tuples_](./update-tuples.mdx). -4. You have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +4. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. @@ -53,7 +53,7 @@ This section will illustrate how to perform a 2. You have [installed the SDK](./install-sdk.mdx). 3. You have [configured the _authorization model_](./configure-model.mdx) and [updated the _relationship tuples_](./update-tuples.mdx). -4. You have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +4. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. @@ -71,7 +71,7 @@ This section will illustrate how to perform a 2. You have [configured the _authorization model_](./configure-model.mdx). -3. You have loaded `FGA_STORE_ID` and `FGA_SERVER_URL` as environment variables. +3. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. @@ -87,7 +87,7 @@ This section will illustrate how to perform a 2. You have [installed the SDK](./install-sdk.mdx). 3. You have [configured the _authorization model_](./configure-model.mdx) and [updated the _relationship tuples_](./update-tuples.mdx). -4. You have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +4. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. @@ -44,7 +44,7 @@ This section will illustrate how to perform a 2. You have [installed the SDK](./install-sdk.mdx). 3. You have [configured the _authorization model_](./configure-model.mdx) and [updated the _relationship tuples_](./update-tuples.mdx). -4. You have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +4. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. @@ -62,7 +62,7 @@ This section will illustrate how to perform a 2. You have [installed the SDK](./install-sdk.mdx). 3. You have [configured the _authorization model_](./configure-model.mdx) and [updated the _relationship tuples_](./update-tuples.mdx). -4. You have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +4. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. @@ -79,7 +79,7 @@ This section will illustrate how to perform a 2. You have [configured the _authorization model_](./configure-model.mdx) and [updated the _relationship tuples_](./update-tuples.mdx). -3. You have loaded `FGA_STORE_ID` and `FGA_API_HOST` as environment variables. +3. You have loaded `FGA_STORE_ID` and `FGA_API_URL` as environment variables. @@ -145,7 +145,7 @@ To obtain the [access token](https://auth0.com/docs/get-started/authentication-a To return all documents that user `user:anne` has relationship `reader` with: -To learn how to run in in Docker, check our [Docker documentation](./docker-setup.mdx#pre-shared-key-authentication). +To learn how to run in Docker, check our [Docker documentation](./docker-setup.mdx#pre-shared-key-authentication). ### OIDC @@ -196,7 +196,7 @@ http: -To learn how to run in in Docker, check our [Docker documentation](./docker-setup.mdx#oidc-authentication). +To learn how to run in Docker, check our [Docker documentation](./docker-setup.mdx#oidc-authentication). ## Profiler (pprof) :::caution Warning @@ -232,7 +232,7 @@ OpenFGA is configured with an HTTP health check endpoint `/healthz` and a gRPC h ```shell -curl -X GET $FGA_API_HOST/healthz +curl -X GET $FGA_API_URL/healthz # {"status":"SERVING"} ``` @@ -243,7 +243,7 @@ curl -X GET $FGA_API_HOST/healthz ```shell # See https://github.com/fullstorydev/grpcurl#installation -grpcurl -plaintext $FGA_API_HOST grpc.health.v1.Health/Check +grpcurl -plaintext $FGA_API_URL grpc.health.v1.Health/Check # {"status":"SERVING"} ``` diff --git a/docs/content/getting-started/setup-openfga/overview.mdx b/docs/content/getting-started/setup-openfga/overview.mdx index 8c293a3fa..ef62e47a1 100644 --- a/docs/content/getting-started/setup-openfga/overview.mdx +++ b/docs/content/getting-started/setup-openfga/overview.mdx @@ -11,7 +11,7 @@ import { } from "@components/Docs"; # Setup OpenFGA -Follow the guides below to setup an OpenFGA server. +Follow the guides below to set up an OpenFGA server. diff --git a/docs/content/getting-started/setup-openfga/playground.mdx b/docs/content/getting-started/setup-openfga/playground.mdx index dc570b8ea..6ad7ab0d2 100644 --- a/docs/content/getting-started/setup-openfga/playground.mdx +++ b/docs/content/getting-started/setup-openfga/playground.mdx @@ -10,7 +10,7 @@ The Playground facilitates rapid development by allowing you to visualize and mo It is enabled on port 3000 by default and accessible at http://localhost:3000/playground. -The Playground is designed for early prototyping and learning. It has serveral limitations: +The Playground is designed for early prototyping and learning. It has several limitations: - It works by embedding the public [Playground website](https://play.fga.dev) in an `