diff --git a/src/content/graphos/basics/api-keys.mdx b/src/content/graphos/basics/api-keys.mdx index ad928a69c..58d765723 100644 --- a/src/content/graphos/basics/api-keys.mdx +++ b/src/content/graphos/basics/api-keys.mdx @@ -1,12 +1,14 @@ --- title: API keys -description: In GraphOS +description: For Apollo GraphOS --- import ObtainGraphApiKey from '../../shared/obtain-graph-api-key.mdx'; import ObtainPersonalApiKey from '../../shared/obtain-personal-api-key.mdx'; -Every application that sends data to Apollo GraphOS must use an **API key** to do so. Apollo Studio enables you to create and manage two types of API keys: **graph API keys** and **personal API keys**. Every system that _isn't_ running as part of your local development setup should always use a graph API key. +Every system that communicates with Apollo GraphOS must use an **API key** to do so. [GraphOS Studio](https://studio.apollographql.com/?referrer=docs-content) enables you to create and manage two types of API keys: **graph API keys** and **personal API keys**. + +Any system that _isn't_ running as part of your local development setup should always use a graph API key. ## Graph API keys @@ -28,6 +30,6 @@ You can't change a graph API key's role after it's created. Instead, create a ne A personal API key provides partial access to **every graph in every organization you belong to**. Specifically, it has the same permissions that your user account has in each of those organizations. -Personal API keys are useful for local development tools (like the [Rover CLI](/rover/) and the Apollo [VS Code extension](/devtools/editor-plugins/)) to load schemas and other data from Studio. +Personal API keys are useful for local development tools (like the [Rover CLI](/rover/) and the Apollo [VS Code extension](/devtools/editor-plugins/)) to load schemas and other data from GraphOS. diff --git a/src/content/graphos/basics/index.mdx b/src/content/graphos/basics/index.mdx index a98c61c55..142125400 100644 --- a/src/content/graphos/basics/index.mdx +++ b/src/content/graphos/basics/index.mdx @@ -5,22 +5,26 @@ description: The GraphQL developer platform import {Link} from 'gatsby'; -**Apollo GraphOS** is the cloud platform for building, growing, and collaborating on your organization's **supergraph**, an organization-wide data layer powered by GraphQL. +**Apollo GraphOS** is the platform for building, managing, and scaling a **supergraph**: a network of your microservices and their data sources—all composed into a unified GraphQL API. ```mermaid flowchart LR; clients("GraphQL
Clients"); subgraph "Apollo GraphOS"; registry(["Schema
Registry"]); - router(["Supergraph
Router"]); + router(["Graph
Router"]); studio(["Studio UI"]); end; subgraph "Your infrastructure"; products["GraphQL API
A"]; reviews["GraphQL API
B"]; - router --- products & reviews + router -->|Sub-query| products & reviews + dbA[( )]; + dbB[( )]; + products --- dbA; + reviews --- dbB; end; - clients -.- router; + clients -.->|Query| router; class clients secondary; ``` diff --git a/src/content/graphos/delivery/index.mdx b/src/content/graphos/delivery/index.mdx index 627c77fe3..34b5cb83d 100644 --- a/src/content/graphos/delivery/index.mdx +++ b/src/content/graphos/delivery/index.mdx @@ -12,9 +12,11 @@ Whenever you make changes to a graph's schema, you should **publish** those chan ## Subgraph schemas -Every supergraph in GraphOS includes one or more subgraphs. You _individually_ publish each subgraph's schema to Apollo with `rover subgraph publish`: +Every supergraph in GraphOS includes one or more **subgraphs**. These are the individual GraphQL-powered microservices in your organization. -```bash +You _individually_ publish each subgraph's schema to Apollo with `rover subgraph publish`: + +```bash title="Example command" rover subgraph publish --schema ./products.graphql --name products docs-example-graph@current --routing-url https://products.example.com ``` @@ -32,7 +34,7 @@ graph LR; **To publish a subgraph schema to Apollo:** -1. Identify the name of the subgraph you're publishing to. You can view the names of your existing subgraphs from your variant's **Subgraphs** page in Apollo Studio. +1. Identify the name of the subgraph you're publishing to. You can view the names of your existing subgraphs from your variant's **Subgraphs** page in [GraphOS Studio](https://studio.apollographql.com/?referrer=docs-content). 2. **If you're publishing a subgraph for the first time,** _also_ obtain the **routing URL** for that subgraph. This is the URL that your router will use to communicate with the subgraph. @@ -64,7 +66,7 @@ graph TB; If this composition succeeds, your router is updated with the result. This enables clients to query any newly added fields, and it _prevents_ them from querying any _removed_ fields. -> You can manually fetch your router's latest supergraph schema with the `rover supergraph fetch` command, or retrieve it from your supergraph's **Schema > SDL** page in Apollo Studio. +> You can manually fetch your router's latest supergraph schema with the `rover supergraph fetch` command, or retrieve it from your supergraph's **Schema > SDL** page in GraphOS Studio. ## Publishing with continuous delivery diff --git a/src/content/graphos/explorer/embed-explorer.mdx b/src/content/graphos/explorer/embed-explorer.mdx index 0b8c393b2..135ec4dce 100644 --- a/src/content/graphos/explorer/embed-explorer.mdx +++ b/src/content/graphos/explorer/embed-explorer.mdx @@ -2,7 +2,7 @@ title: Embedding the Explorer --- -You can embed the [Apollo Studio Explorer](./) in a webpage that you can then provide to your graph's consumers. This enables those consumers to test out operations from your own website. +You can embed the [GraphOS Studio Explorer](./) in a webpage that you can then provide to your graph's consumers. This enables those consumers to test out operations from your own website. For example, here's an embedded Explorer for an Apollo example graph. Try it out! @@ -37,9 +37,7 @@ For more information, see the [landing page plugin API reference](/apollo-server ## Embedding on an arbitrary webpage -1. - Go to Apollo Studio - and open the variant you want to use with the embedded Explorer. +1. [Open GraphOS Studio](https://studio.apollographql.com/?referrer=docs-content) and select the graph variant you want to use with the embedded Explorer. 2. Go to the variant's Explorer page. diff --git a/src/content/graphos/explorer/index.mdx b/src/content/graphos/explorer/index.mdx index 5e2ea7743..53c424109 100644 --- a/src/content/graphos/explorer/index.mdx +++ b/src/content/graphos/explorer/index.mdx @@ -9,6 +9,8 @@ The GraphOS Studio Explorer is a powerful web IDE for creating, running, and man The Explorer is free for all GraphOS organizations. It supports all GraphQL operation types (`Query`, `Mutation`, and [`Subscription`](./subscriptions-explorer/)). +> The Explorer is also available in a [sandbox mode](./sandbox/) that doesn't require an Apollo account. + ## Setup To get started with the Explorer, [create a graph](../quickstart/cloud/#2-create-your-first-supergraph) in Apollo Studio and then navigate to that graph's Explorer page: @@ -19,8 +21,6 @@ To get started with the Explorer, [create a graph](../quickstart/cloud/#2-create alt="The default Explorer view for a new supergraph" /> -> The Explorer also provides a [sandbox mode](./sandbox/) that doesn't require an Apollo account. - ## Building a query Here's an example [embedded Explorer](./embed-explorer/) you can use to try out the query-building features described below! diff --git a/src/content/graphos/explorer/operation-collections.mdx b/src/content/graphos/explorer/operation-collections.mdx index ede9b218f..a9064dc34 100644 --- a/src/content/graphos/explorer/operation-collections.mdx +++ b/src/content/graphos/explorer/operation-collections.mdx @@ -3,7 +3,7 @@ title: Operation collections in the Explorer description: Save and share frequently used GraphQL operations --- -You can create **operation collections** in the Apollo Studio Explorer, enabling you to save, organize, and share your organization's frequently used GraphQL operations: +You can create **operation collections** in the GraphOS Studio Explorer, enabling you to save, organize, and share your organization's frequently used GraphQL operations: Organization members with the [**Consumer** role](../org/members/#organization-wide-member-roles) cannot run schema checks. @@ -115,9 +115,9 @@ You can use Sandbox _without_ an internet connection if you're querying a graph ### Reconnecting -Sandbox automatically reconnects whenever your internet connection is restored. When it does, it might display a notification that your Apollo Studio application version is stale by at least 24 hours. You can click the notification to update _all_ of your browser's open Apollo Studio tabs to the latest version. +Sandbox automatically reconnects whenever your internet connection is restored. When it does, it might display a notification that your GraphOS Studio application version is stale by at least 24 hours. You can click the notification to update _all_ of your browser's open Studio tabs to the latest version. -> This notification indicates only that the Apollo Studio _UI_ is out of date. Your Studio _data_ is always kept up to date. +> This notification indicates only that the GraphOS Studio _UI_ is out of date. Your Studio _data_ is always kept up to date. ## Operation collections in Sandbox @@ -138,7 +138,7 @@ The following URL parameters are supported: For example, the following URL sets all supported parameters: -``` +```text title="Example URL" https://studio.apollographql.com/sandbox/explorer?endpoint=http://localhost:4200&document=query hello($name: String!) { hello(name: $name)}&variables={"name": "Sandbox User"}&headers={"Cache-Control": "no-cache"} ``` @@ -181,7 +181,7 @@ You can embed Sandbox on your own website. This can be useful for interacting wi width="600" /> -3. Within the dialog, use the tabs to select the code snippet for your use case: +3. In the dialog, use the tabs to select the code snippet for your use case: * Use **React** for React apps where you can `npm install` the `@apollo/sandbox` package. * Use **JavaScript** for non-React JavaScript apps where you can `npm install` the `@apollo/sandbox` package. diff --git a/src/content/graphos/metrics/field-usage.mdx b/src/content/graphos/metrics/field-usage.mdx index 5e7c98ece..767017adf 100644 --- a/src/content/graphos/metrics/field-usage.mdx +++ b/src/content/graphos/metrics/field-usage.mdx @@ -1,11 +1,11 @@ --- -title: Measuring field usage in Apollo Studio +title: Measuring field usage with GraphOS Studio description: Understand which fields your clients use --- -> For details on setting up field metrics reporting to Apollo Studio, see [Reporting field usage](#reporting-field-usage). +> For details on setting up field metrics reporting to GraphOS Studio, see [Reporting field usage](#reporting-field-usage). -In Apollo Studio, your graph's **Fields** page can display a table of basic usage metrics for each field in your schema: +In [GraphOS Studio](https://studio.apollographql.com/?referrer=docs-content), your graph's **Fields** page can display a table of basic usage metrics for each field in your schema: ⚠️ Before continuing, make sure you've configured your Apollo Gateway or individual GraphQL server to [push metrics to GraphOS](./sending-operation-metrics/). +> ⚠️ Before continuing, make sure you've configured your router or individual GraphQL server to [push metrics to GraphOS](./sending-operation-metrics/). -To report each type of field usage metric to Apollo, make sure your graph meets the prerequisites for that metric: +To report each type of field usage metric to GraphOS, make sure your graph meets the prerequisites for that metric: #### Requesting operations To report metrics for requesting operations, your GraphQL server must run Apollo Server 3.6 or later. -If you have a [federated graph](https://apollographql.com/docs/federation), your _gateway_ must run Apollo Server 3.6 or later, but there are no requirements for your subgraphs. +If you have a [federated graph](/federation), your _gateway_ must run Apollo Server 3.6 or later, but there are no requirements for your subgraphs. #### Field executions diff --git a/src/content/graphos/metrics/index.mdx b/src/content/graphos/metrics/index.mdx index f2e511da7..09dd23446 100644 --- a/src/content/graphos/metrics/index.mdx +++ b/src/content/graphos/metrics/index.mdx @@ -11,7 +11,7 @@ In addition, you can configure your subgraphs to include [resolver-level traces] ## Viewing metrics -You can visualize operation metrics in Apollo Studio, from any variant's **Operations** page: +You can visualize operation metrics in [GraphOS Studio](https://studio.apollographql.com/?referrer=docs-content), from any variant's **Operations** page: Build status notifications require an [Enterprise plan](https://www.apollographql.com/pricing/). They are currently in preview. -You can [configure Apollo Studio](./notification-setup) to notify your team via webhook whenever Apollo attempts to build a new supergraph schema for your [federated graph](/federation/). The notification indicates whether the build succeeded and provides a temporary URL to the new supergraph schema if so. +You can [configure GraphOS](./notification-setup) to notify your team via webhook whenever GraphOS attempts to build a new supergraph schema for your [federated graph](/federation/). The notification indicates whether the build succeeded and provides a temporary URL to the new supergraph schema if so. You can configure separate change notifications for each [variant](../../graphs/#variants) of your graph. ## Setup -See [Setting up Studio Notifications](./notification-setup). +See [Setting up GraphOS Notifications](./notification-setup). ## Webhook format diff --git a/src/content/graphos/metrics/notifications/daily-reports.md b/src/content/graphos/metrics/notifications/daily-reports.md index 5df4bc710..c97166aa4 100644 --- a/src/content/graphos/metrics/notifications/daily-reports.md +++ b/src/content/graphos/metrics/notifications/daily-reports.md @@ -2,7 +2,7 @@ title: Daily reports from Apollo Studio --- -You can [configure Apollo Studio](./notification-setup/) to send your team a daily summary of your graph's activity over the last 24 hours: +You can [configure GraphOS](./notification-setup/) to send your team a daily summary of your graph's activity over the last 24 hours: Slack daily report @@ -10,7 +10,7 @@ When you configure daily reports, you can specify what time you want to receive ## Setup -See [Setting up Studio Notifications](./notification-setup). +See [Setting up GraphOS Notifications](./notification-setup). ## Acting on report data diff --git a/src/content/graphos/metrics/notifications/notification-setup.md b/src/content/graphos/metrics/notifications/notification-setup.md index ebe10f464..ce35948b0 100644 --- a/src/content/graphos/metrics/notifications/notification-setup.md +++ b/src/content/graphos/metrics/notifications/notification-setup.md @@ -1,21 +1,21 @@ --- -title: Setting up Apollo Studio notifications +title: Setting up GraphOS notifications --- -Apollo Studio can notify your team about changes to your graph and its performance. These notifications help you stay up to date and address issues as they arise. +GraphOS can notify your team about changes to your graph and its performance. These notifications help you stay up to date and address issues as they arise. -> If you don't have an Apollo Studio organization yet, [get started](../../quickstart/cloud/). +> If you don't have a GraphOS organization yet, [get started](../../quickstart/cloud/). ## Supported notifications and channels -Studio can send your team the following notification types: +GraphOS can send your team the following notification types: - [Daily reports](./daily-reports) of your graph's request rate, error rate, and latency - [Schema change notifications](./schema-change-integration) whenever your graph's schema is updated - [Performance alerts](./performance-alerts) whenever a metric such as error percentage or request latency exceeds a particular threshold (this experimental feature requires a [paid plan](https://www.apollographql.com/pricing/)) - [Build status notifications](./build-status-notification) whenever Apollo attempts to compose a supergraph schema for your federated graph (this preview feature is [enterprise only](https://www.apollographql.com/pricing/)) -Currently, Studio can send each of these notification types to the channel(s) indicated: +Currently, GraphOS can send each of these notification types to the channel(s) indicated: | Notification Type | Slack | Pagerduty | Custom Webhook | | :------------------------------------------- | :---: | :-------: | :------------: | @@ -28,7 +28,7 @@ Currently, Studio can send each of these notification types to the channel(s) in > For performance alerts, see [Performance alerts setup](./performance-alerts/#setup). -1. Go to your graph's Settings page in [Apollo Studio](https://studio.apollographql.com/). +1. Go to your graph's Settings page in [GraphOS Studio](https://studio.apollographql.com/?referrer=docs-content). 2. Select the **Reporting** tab. 3. Click **Add notification** in the upper right: Add new alert button diff --git a/src/content/graphos/metrics/notifications/performance-alerts.md b/src/content/graphos/metrics/notifications/performance-alerts.md index f5b2d6e91..5e0f016b5 100644 --- a/src/content/graphos/metrics/notifications/performance-alerts.md +++ b/src/content/graphos/metrics/notifications/performance-alerts.md @@ -4,7 +4,7 @@ title: Performance alerts from Apollo Studio > Performance alerts require a [paid plan](https://www.apollographql.com/pricing/). They are currently experimental. -Apollo Studio can notify your team's Slack workspace or Pagerduty instance whenever a particular metric (such as error rate) for a particular GraphQL operation exceeds a defined threshold. This is useful for detecting anomalies, especially following a release. +GraphOS can notify your team's Slack workspace or Pagerduty instance whenever a particular metric (such as error rate) for a particular GraphQL operation exceeds a defined threshold. This is useful for detecting anomalies, especially following a release. Performance alert @@ -22,7 +22,7 @@ Each performance alert you define can apply to either **a specific operation** o ## Setup -1. Go to your graph's Settings page in [Apollo Studio](https://studio.apollographql.com/). +1. Go to your graph's Settings page in [GraphOS Studio](https://studio.apollographql.com/?referrer=docs-content). 2. Select the **Reporting** tab. 3. Find the Performance Alerts card and click **Add a new alert**. diff --git a/src/content/graphos/metrics/notifications/schema-change-integration.md b/src/content/graphos/metrics/notifications/schema-change-integration.md index a17c19c94..d00f4556e 100644 --- a/src/content/graphos/metrics/notifications/schema-change-integration.md +++ b/src/content/graphos/metrics/notifications/schema-change-integration.md @@ -2,7 +2,7 @@ title: Schema change notifications --- -You can [configure Apollo Studio](./notification-setup) to notify your team whenever any changes (additions, deprecations, removals, etc.) are made to your graph's registered schema: +You can [configure GraphOS](./notification-setup) to notify your team whenever any changes (additions, deprecations, removals, etc.) are made to your graph's registered schema: Schema notification Slack message. @@ -10,7 +10,7 @@ You can configure separate change notifications for each [variant](../../graphs/ ## Setup -See [Setting up Studio Notifications](./notification-setup). +See [Setting up GraphOS Notifications](./notification-setup). ## Webhook format diff --git a/src/content/graphos/org/index.mdx b/src/content/graphos/org/index.mdx index c00ce6108..d95226b4a 100644 --- a/src/content/graphos/org/index.mdx +++ b/src/content/graphos/org/index.mdx @@ -10,7 +10,7 @@ All data in GraphOS (graphs, schemas, metrics, etc.) is associated with a partic You create your first organization as part of the [account creation process](../quickstart/cloud/), unless you've been invited to an existing organization by another Apollo user. -You can create additional organizations by clicking **Create a new organization** at the bottom of your organization dropdown in [Apollo Studio](https://studio.apollographql.com): +You can create additional organizations by clicking **Create a new organization** at the bottom of your organization dropdown in [GraphOS Studio](https://studio.apollographql.com?referrer=docs-content):