Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Just testing Links action on PR #789

Open
wants to merge 131 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
131 commits
Select commit Hold shift + click to select a range
92e9665
wip
MongoCaleb Jul 1, 2024
5077c77
testing netlify url structure
MongoCaleb Jul 8, 2024
397f28c
fix variable assingment and concat
MongoCaleb Jul 8, 2024
e559db7
Merge branch 'master' of github.com:mongodb/docs-app-services into li…
MongoCaleb Jul 8, 2024
f0283bc
namer-only issue
MongoCaleb Jul 8, 2024
b83c514
bad substitution error
MongoCaleb Jul 8, 2024
97b9301
more concat work
MongoCaleb Jul 8, 2024
a03c117
variable assignment issue
MongoCaleb Jul 8, 2024
5a91026
simplifying
MongoCaleb Jul 8, 2024
4fe8e37
found it?
MongoCaleb Jul 8, 2024
38843ae
not yet
MongoCaleb Jul 8, 2024
40a2f84
doh
MongoCaleb Jul 8, 2024
6b7918e
dd
MongoCaleb Jul 8, 2024
7841564
error getting PR number
MongoCaleb Jul 8, 2024
e3d3984
now it works.
MongoCaleb Jul 8, 2024
9738930
git diff in a pr requires ^HEAD
MongoCaleb Jul 8, 2024
f43fe42
try again
MongoCaleb Jul 8, 2024
f3d65c1
simplify
MongoCaleb Jul 8, 2024
38ecdb0
wrap gh command
MongoCaleb Jul 8, 2024
8738d5a
adding token
MongoCaleb Jul 8, 2024
ba868db
git access tokens are weird
MongoCaleb Jul 8, 2024
f27fb22
simplify more
MongoCaleb Jul 8, 2024
7cd5cb5
more "
MongoCaleb Jul 8, 2024
6214887
still trying to get the right token
MongoCaleb Jul 8, 2024
7c4b71f
reverting to use diff
MongoCaleb Jul 8, 2024
eb24b67
HEAD is not recognized
MongoCaleb Jul 8, 2024
33df7ed
messing around
MongoCaleb Jul 8, 2024
364564c
try before and after variables
MongoCaleb Jul 8, 2024
65b7a99
bad object == need to fetch
MongoCaleb Jul 8, 2024
4843cfa
back to using gh
MongoCaleb Jul 8, 2024
ec00264
more tests of token auth
MongoCaleb Jul 8, 2024
308236e
remove login that requies browser
MongoCaleb Jul 8, 2024
b1d53f1
major revision to narrow down auth problem
MongoCaleb Jul 8, 2024
d9a0692
not a git repo
MongoCaleb Jul 8, 2024
04bd8fb
grr
MongoCaleb Jul 8, 2024
28b95e3
that worked. adding back in gh
MongoCaleb Jul 8, 2024
708e86b
pull requires rebase, which is...
MongoCaleb Jul 8, 2024
e3f63d5
ok try rebase
MongoCaleb Jul 8, 2024
32f8841
specify branch
MongoCaleb Jul 8, 2024
115679b
specify master
MongoCaleb Jul 8, 2024
8e0c41f
specify upstream
MongoCaleb Jul 8, 2024
5a33224
origin=>master
MongoCaleb Jul 8, 2024
d50e160
use gh checkout
MongoCaleb Jul 8, 2024
695e9c7
specify branch
MongoCaleb Jul 8, 2024
1ae8c68
digging deeper
MongoCaleb Jul 8, 2024
3f4c843
full ref;
MongoCaleb Jul 8, 2024
9d20734
seems to be a problem with fork
MongoCaleb Jul 8, 2024
4472de9
try specifying default repo
MongoCaleb Jul 8, 2024
fe4502e
remove reference;
MongoCaleb Jul 8, 2024
8ac0759
specify master
MongoCaleb Jul 8, 2024
32c7965
change to local branch name
MongoCaleb Jul 8, 2024
486d7b2
many things to try...
MongoCaleb Jul 8, 2024
ad8b390
add fetch and gco
MongoCaleb Jul 8, 2024
9dab368
ahhh
MongoCaleb Jul 8, 2024
18f7765
nope;
MongoCaleb Jul 8, 2024
b08e7f9
DOCSP-41048: Add release notes for w/e July 5 (#790)
cbullinger Jul 9, 2024
b9b7dc6
Removed from aggregation pipeline stage list
osharaf-mdb Jul 10, 2024
f3ac4cb
DOCSP-40111: Add screenshot to help users navigate to the Schemas scr…
cbullinger Jul 10, 2024
196ea41
DOCSP-41342: Update redirects for realm-cli pages (#792)
cbullinger Jul 10, 2024
13b705b
removed extra files
osharaf-mdb Jul 10, 2024
238fb88
Merge branch 'master' into DOCSP-38782-admin-db-usage
osharaf-mdb Jul 10, 2024
bbc9a0c
add note about UI-downloaded zip not working (always) on windows (#794)
MongoCaleb Jul 10, 2024
deed9bf
DOCSP-38782: removed $currentOp from aggregation pipeline stage list …
osharaf-mdb Jul 10, 2024
66cb31f
Update unsyncable behavior from pause to stop sync (#798)
MongoCaleb Jul 10, 2024
5ee42bb
wip
MongoCaleb Jul 1, 2024
c51a678
testing netlify url structure
MongoCaleb Jul 8, 2024
e04ce08
fix variable assingment and concat
MongoCaleb Jul 8, 2024
b36c8c4
namer-only issue
MongoCaleb Jul 8, 2024
3ec63fd
bad substitution error
MongoCaleb Jul 8, 2024
3b966ee
more concat work
MongoCaleb Jul 8, 2024
c52395f
variable assignment issue
MongoCaleb Jul 8, 2024
562372c
simplifying
MongoCaleb Jul 8, 2024
7c95848
found it?
MongoCaleb Jul 8, 2024
2c4c825
not yet
MongoCaleb Jul 8, 2024
a6fce06
doh
MongoCaleb Jul 8, 2024
badcc7e
dd
MongoCaleb Jul 8, 2024
df1f58d
error getting PR number
MongoCaleb Jul 8, 2024
6084454
now it works.
MongoCaleb Jul 8, 2024
c8121af
git diff in a pr requires ^HEAD
MongoCaleb Jul 8, 2024
34f214e
try again
MongoCaleb Jul 8, 2024
854d01f
simplify
MongoCaleb Jul 8, 2024
2785f5c
wrap gh command
MongoCaleb Jul 8, 2024
e7fce37
adding token
MongoCaleb Jul 8, 2024
7d392ea
git access tokens are weird
MongoCaleb Jul 8, 2024
1d9ef92
simplify more
MongoCaleb Jul 8, 2024
4981ead
more "
MongoCaleb Jul 8, 2024
196fcb5
still trying to get the right token
MongoCaleb Jul 8, 2024
6e251b6
reverting to use diff
MongoCaleb Jul 8, 2024
8fa6918
HEAD is not recognized
MongoCaleb Jul 8, 2024
fd42c2b
messing around
MongoCaleb Jul 8, 2024
7d95465
try before and after variables
MongoCaleb Jul 8, 2024
882f294
bad object == need to fetch
MongoCaleb Jul 8, 2024
9d1433c
back to using gh
MongoCaleb Jul 8, 2024
98043f7
more tests of token auth
MongoCaleb Jul 8, 2024
e42525c
remove login that requies browser
MongoCaleb Jul 8, 2024
3c52fd8
major revision to narrow down auth problem
MongoCaleb Jul 8, 2024
f8982fc
not a git repo
MongoCaleb Jul 8, 2024
099887f
grr
MongoCaleb Jul 8, 2024
1ad41be
that worked. adding back in gh
MongoCaleb Jul 8, 2024
a95d0f2
pull requires rebase, which is...
MongoCaleb Jul 8, 2024
845f905
ok try rebase
MongoCaleb Jul 8, 2024
16aa006
specify branch
MongoCaleb Jul 8, 2024
0c576d5
specify master
MongoCaleb Jul 8, 2024
fed5156
specify upstream
MongoCaleb Jul 8, 2024
784abbf
origin=>master
MongoCaleb Jul 8, 2024
2d93fed
use gh checkout
MongoCaleb Jul 8, 2024
499dbb9
specify branch
MongoCaleb Jul 8, 2024
1ee9151
digging deeper
MongoCaleb Jul 8, 2024
44c7869
full ref;
MongoCaleb Jul 8, 2024
f1e8819
seems to be a problem with fork
MongoCaleb Jul 8, 2024
57189c6
try specifying default repo
MongoCaleb Jul 8, 2024
bdb1112
remove reference;
MongoCaleb Jul 8, 2024
1783737
specify master
MongoCaleb Jul 8, 2024
4451229
change to local branch name
MongoCaleb Jul 8, 2024
4fdc401
many things to try...
MongoCaleb Jul 8, 2024
dac975d
add fetch and gco
MongoCaleb Jul 8, 2024
84e0727
ahhh
MongoCaleb Jul 8, 2024
02ab37d
nope;
MongoCaleb Jul 8, 2024
ef4aa38
WIP
MongoCaleb Jul 10, 2024
12e992a
still trying to get changed files in PR
MongoCaleb Jul 10, 2024
b256cca
merge
MongoCaleb Jul 10, 2024
d96e3d8
switch to current branch
MongoCaleb Jul 10, 2024
32b45ea
specify remote
MongoCaleb Jul 10, 2024
f42b223
need to fetch first
MongoCaleb Jul 10, 2024
818d268
branch does not exist on origin
MongoCaleb Jul 10, 2024
38643e7
re-add fetch
MongoCaleb Jul 10, 2024
935b060
gh pr diff showing no prs?
MongoCaleb Jul 10, 2024
e6576fc
trying different gh pr commands
MongoCaleb Jul 10, 2024
a33d74d
update permission settings
MongoCaleb Jul 10, 2024
e25188f
works on local repo, but not upstream. trying diff key
MongoCaleb Jul 11, 2024
d34d407
fix merge issue and add extra env
MongoCaleb Jul 23, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .github/workflows/add-preview-links.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
on:
workflow_call:
pull_request:

env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} # setting GH_TOKEN for the entire workflow

jobs:
get-pr-changes:
runs-on: ubuntu-latest
permissions:
issues: write
contents: write
pull-requests: write
repository-projects: write
steps:
- uses: actions/checkout@v3
- run: |
git remote -v
echo ${{ github.head_ref }}
echo ${{ github.base_ref }}
echo ${{github.ref}}
git fetch origin
git checkout master
git status
gh pr status
gh pr list
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
75 changes: 39 additions & 36 deletions config/redirects
Original file line number Diff line number Diff line change
Expand Up @@ -268,42 +268,45 @@ raw: ${prefix}/sync/app-builder/tiered-device-sync/index -> ${base}/edge-server/
raw: ${prefix}/sync/app-builder/edge-server/ -> ${base}/edge-server/

# realm-cli -> appservices-cli
raw: ${prefix}/cli/realm-cli-accessList-create -> ${base}/realm-cli/realm-cli-accessList-create/
raw: ${prefix}/cli/realm-cli-accessList-delete -> ${base}/realm-cli/realm-cli-accessList-delete/
raw: ${prefix}/cli/realm-cli-accessList-list -> ${base}/realm-cli/realm-cli-accessList-list/
raw: ${prefix}/cli/realm-cli-accessList-update -> ${base}/realm-cli/realm-cli-accessList-update/
raw: ${prefix}/cli/realm-cli-accessList -> ${base}/realm-cli/realm-cli-accessList/
raw: ${prefix}/cli/realm-cli-apps-create -> ${base}/realm-cli/realm-cli-apps-create/
raw: ${prefix}/cli/realm-cli-apps-delete -> ${base}/realm-cli/realm-cli-apps-delete/
raw: ${prefix}/cli/realm-cli-apps-describe -> ${base}/realm-cli/realm-cli-apps-describe/
raw: ${prefix}/cli/realm-cli-apps-diff -> ${base}/realm-cli/realm-cli-apps-diff/
raw: ${prefix}/cli/realm-cli-apps-init -> ${base}/realm-cli/realm-cli-apps-init/
raw: ${prefix}/cli/realm-cli-apps-list -> ${base}/realm-cli/realm-cli-apps-list/
raw: ${prefix}/cli/realm-cli-apps -> ${base}/realm-cli/realm-cli-apps/
raw: ${prefix}/cli/realm-cli-function-run -> ${base}/realm-cli/realm-cli-function-run/
raw: ${prefix}/cli/realm-cli-function -> ${base}/realm-cli/realm-cli-function/
raw: ${prefix}/cli/realm-cli-login -> ${base}/realm-cli/realm-cli-login/
raw: ${prefix}/cli/realm-cli-logout -> ${base}/realm-cli/realm-cli-logout/
raw: ${prefix}/cli/realm-cli-logs-list -> ${base}/realm-cli/realm-cli-logs-list/
raw: ${prefix}/cli/realm-cli-logs -> ${base}/realm-cli/realm-cli-logs/
raw: ${prefix}/cli/realm-cli-pull -> ${base}/realm-cli/realm-cli-pull/
raw: ${prefix}/cli/realm-cli-push -> ${base}/realm-cli/realm-cli-push/
raw: ${prefix}/cli/realm-cli-reference-v1 -> ${base}/realm-cli/realm-cli-reference-v1/
raw: ${prefix}/cli/realm-cli-schema-datamodels -> ${base}/realm-cli/realm-cli-schema-datamodels/
raw: ${prefix}/cli/realm-cli-schema -> ${base}/realm-cli/realm-cli-schema/
raw: ${prefix}/cli/realm-cli-secrets-create -> ${base}/realm-cli/realm-cli-secrets-create/
raw: ${prefix}/cli/realm-cli-secrets-delete -> ${base}/realm-cli/realm-cli-secrets-delete/
raw: ${prefix}/cli/realm-cli-secrets-list -> ${base}/realm-cli/realm-cli-secrets-list/
raw: ${prefix}/cli/realm-cli-secrets-update -> ${base}/realm-cli/realm-cli-secrets-update/
raw: ${prefix}/cli/realm-cli-secrets -> ${base}/realm-cli/realm-cli-secrets/
raw: ${prefix}/cli/realm-cli-users-create -> ${base}/realm-cli/realm-cli-users-create/
raw: ${prefix}/cli/realm-cli-users-delete -> ${base}/realm-cli/realm-cli-users-delete/
raw: ${prefix}/cli/realm-cli-users-disable -> ${base}/realm-cli/realm-cli-users-disable/
raw: ${prefix}/cli/realm-cli-users-enable -> ${base}/realm-cli/realm-cli-users-enable/
raw: ${prefix}/cli/realm-cli-users-list -> ${base}/realm-cli/realm-cli-users-list/
raw: ${prefix}/cli/realm-cli-users-revoke -> ${base}/realm-cli/realm-cli-users-revoke/
raw: ${prefix}/cli/realm-cli-users -> ${base}/realm-cli/realm-cli-users/
raw: ${prefix}/cli/realm-cli-whoami -> ${base}/realm-cli/realm-cli-whoami/
# (DOCSP-41342): Fix broken realm-cli redirects to point to /v2 directory
raw: ${prefix}/cli/realm-cli-accessList-create -> ${base}/realm-cli/v2/realm-cli-accessList-create/
raw: ${prefix}/cli/realm-cli-accessList-delete -> ${base}/realm-cli/v2/realm-cli-accessList-delete/
raw: ${prefix}/cli/realm-cli-accessList-list -> ${base}/realm-cli/v2/realm-cli-accessList-list/
raw: ${prefix}/cli/realm-cli-accessList-update -> ${base}/realm-cli/v2/realm-cli-accessList-update/
raw: ${prefix}/cli/realm-cli-accessList -> ${base}/realm-cli/v2/realm-cli-accessList/
raw: ${prefix}/cli/realm-cli-apps-create -> ${base}/realm-cli/v2/realm-cli-apps-create/
raw: ${prefix}/cli/realm-cli-apps-delete -> ${base}/realm-cli/v2/realm-cli-apps-delete/
raw: ${prefix}/cli/realm-cli-apps-describe -> ${base}/realm-cli/v2/realm-cli-apps-describe/
raw: ${prefix}/cli/realm-cli-apps-diff -> ${base}/realm-cli/v2/realm-cli-apps-diff/
raw: ${prefix}/cli/realm-cli-apps-init -> ${base}/realm-cli/v2/realm-cli-apps-init/
raw: ${prefix}/cli/realm-cli-apps-list -> ${base}/realm-cli/v2/realm-cli-apps-list/
raw: ${prefix}/cli/realm-cli-apps -> ${base}/realm-cli/v2/realm-cli-apps/
raw: ${prefix}/cli/realm-cli-function-run -> ${base}/realm-cli/v2/realm-cli-function-run/
raw: ${prefix}/cli/realm-cli-function -> ${base}/realm-cli/v2/realm-cli-function/
raw: ${prefix}/cli/realm-cli-login -> ${base}/realm-cli/v2/realm-cli-login/
raw: ${prefix}/cli/realm-cli-logout -> ${base}/realm-cli/v2/realm-cli-logout/
raw: ${prefix}/cli/realm-cli-logs-list -> ${base}/realm-cli/v2/realm-cli-logs-list/
raw: ${prefix}/cli/realm-cli-logs -> ${base}/realm-cli/v2/realm-cli-logs/
raw: ${prefix}/cli/realm-cli-pull -> ${base}/realm-cli/v2/realm-cli-pull/
raw: ${prefix}/cli/realm-cli-push -> ${base}/realm-cli/v2/realm-cli-push/
raw: ${prefix}/cli/realm-cli-schema-datamodels -> ${base}/realm-cli/v2/realm-cli-schema-datamodels/
raw: ${prefix}/cli/realm-cli-schema -> ${base}/realm-cli/v2/realm-cli-schema/
raw: ${prefix}/cli/realm-cli-secrets-create -> ${base}/realm-cli/v2/realm-cli-secrets-create/
raw: ${prefix}/cli/realm-cli-secrets-delete -> ${base}/realm-cli/v2/realm-cli-secrets-delete/
raw: ${prefix}/cli/realm-cli-secrets-list -> ${base}/realm-cli/v2/realm-cli-secrets-list/
raw: ${prefix}/cli/realm-cli-secrets-update -> ${base}/realm-cli/v2/realm-cli-secrets-update/
raw: ${prefix}/cli/realm-cli-secrets -> ${base}/realm-cli/v2/realm-cli-secrets/
raw: ${prefix}/cli/realm-cli-users-create -> ${base}/realm-cli/v2/realm-cli-users-create/
raw: ${prefix}/cli/realm-cli-users-delete -> ${base}/realm-cli/v2/realm-cli-users-delete/
raw: ${prefix}/cli/realm-cli-users-disable -> ${base}/realm-cli/v2/realm-cli-users-disable/
raw: ${prefix}/cli/realm-cli-users-enable -> ${base}/realm-cli/v2/realm-cli-users-enable/
raw: ${prefix}/cli/realm-cli-users-list -> ${base}/realm-cli/v2/realm-cli-users-list/
raw: ${prefix}/cli/realm-cli-users-revoke -> ${base}/realm-cli/v2/realm-cli-users-revoke/
raw: ${prefix}/cli/realm-cli-users -> ${base}/realm-cli/v2/realm-cli-users/
raw: ${prefix}/cli/realm-cli-whoami -> ${base}/realm-cli/v2/realm-cli-whoami/

raw: ${prefix}/cli/realm-cli-reference-v1 -> ${base}/realm-cli/v1/
raw: ${prefix}/cli/realm-cli-reference-v1/index -> ${base}/realm-cli/v1/

# Return to using tutorials instead of get started
raw: ${prefix}/get-started -> ${base}/tutorials/
35 changes: 33 additions & 2 deletions docs-release-notes.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,34 @@
# July 5, 2024

## Data API

- Data API Endpoints: Add note indicating that private endpoints do not support Data API Endpoints.
- Custom HTTPS Endpoints: Add note indicating that private endpoints do not support HTTPS Endpoints.

## Authenticate & Manage Users

- Define User Metadata: Fix typo and update references using "Realm" to "Atlas Device SDK."

## Secure Your App

- Use a VPC Private Endpoint (Preview): Remove guidance on migrating to HTTPS endpoints and Data API.

## Reference

- Billing:

- Update formatting of free tier thresholds to represent independent threshold
model.
- Update page with new billing practice, including new daily free tier limits.

## Release Notes

- Update external changelog with release notes for the CLI, Edge Server, Atlas Events, and more.

## Internal

- Add files for Netlify workflow.

# June 28, 2024

## Device Sync
Expand All @@ -6,7 +37,7 @@

## Connect to MongoDB Data Sources

- CRUD & Aggregation APIs: Add `distinct` and `explain` to the list of unsupported database commands. Update descriptions for the `$search` and `$out` aggregation pipeline stages.
- CRUD & Aggregation APIs: Add `distinct` and `explain` to the list of unsupported database commands. Update descriptions for the `$search` and `$out` aggregation pipeline stages.

# June 21, 2024

Expand Down Expand Up @@ -47,7 +78,7 @@
- Update "Example" section to demonstrate nested collections of mixed data.
- Update "Geospatial" section with content moved from Schema Types page.
- Technical Details
- Conflict Resolution:
- Conflict Resolution:
- Add new "Dictionaries" section to clarify how Device Sync handles conflicts with dictionary keys.
- Add new "Nested Collections" section.

Expand Down
Binary file added source/images/schema-screen.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions source/includes/note-windows-zip.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.. note::

The default Windows ZIP utility may show the .zip file as empty. If you
encounter this, use one of the third-party zip programs that are
available.
3 changes: 0 additions & 3 deletions source/mongodb/crud-and-aggregation-apis.txt
Original file line number Diff line number Diff line change
Expand Up @@ -544,9 +544,6 @@ of an :ref:`application user <user-accounts>`.
* - :manual:`$collStats </reference/operator/aggregation/collStats/>`
-

* - :manual:`$currentOp </reference/operator/aggregation/currentOp/>`
-

* - :manual:`$facet </reference/operator/aggregation/facet/>`
-

Expand Down
5 changes: 3 additions & 2 deletions source/mongodb/internal-database-usage.txt
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,9 @@ Unsynced Documents

If a document in a :ref:`synced <sync>` collection does not conform to
the collection's schema, it cannot be synced to client apps. If there
are 100,000 or more unsyncable documents, App Services pauses sync
for the app.
are 100,000 or more unsyncable documents, App Services stops syncing
with the app. You need to manually resolve this by terminating sync,
fixing the unsyncable documents, and then re-enabling sync.

App Services stores a information about unsyncable documents in the
``__realm_sync.unsynced_documents`` collection.
Expand Down
60 changes: 31 additions & 29 deletions source/schemas/enforce-a-schema.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
Define & Enforce a Schema
=========================

.. meta::
.. meta::
:keywords: code example
:description: Learn how to create and deploy an Atlas App Services Schema and define validation rules to enforce it.

.. facet::
:name: genre
:values: reference
:values: tutorial

.. facet::
:name: programming_language
Expand All @@ -23,9 +23,6 @@ Define & Enforce a Schema
:depth: 1
:class: singlecol

Overview
--------

You can control the shape and contents of documents in a collection by defining
a :ref:`schema <schemas>`. Schemas let you require specific fields, control the
type of a field's value, and validate changes before committing write
Expand All @@ -40,38 +37,41 @@ Define a Schema
---------------

You can define a schema for a collection in the App Services UI or with the
App Services CLI.
App Services CLI.

When using the App Services UI, you can choose to:
When using the App Services UI, you can choose to:

- Generate a schema from existing data in the collection, and modify as needed.
- Define a schema manually by adding field-level schema definitions.

.. tabs-realm-admin-interfaces::

.. tab::
:tabid: ui

.. procedure::

.. step:: Navigate to the Collection Schema Screen
.. step:: Navigate to the Schema Screen

In the left navigation menu, click :guilabel:`Schema` beneath :guilabel:`Data
Access` to open the schema editor. Atlas App Services scans your linked cluster for
existing collections and lists them on the left side of the schema
editor.
In the left navigation menu, click :guilabel:`Schema` beneath
:guilabel:`Data Access` to open the schema editor. The Collections
configuration screen displays in the :guilabel:`Collections` tab.
Atlas App Services scans your linked cluster for existing
collections and lists them on the left side of the schema editor.

Find and select your collection from the menu to open the collection
configuration screen.
Find and select your collection from the menu to show the
collection configuration on the right side of the schema editor.

.. figure:: /images/schema-screen.png
:lightbox:
:alt: The Schema screen in the App Services UI

.. step:: Generate a Schema from Existing Data (Optional)

If you already have data in your collection, App Services can
sample a subset of the documents in the collection and generate a
schema for you based on the sample. If you
already have a schema or prefer to define one manually, skip this
step.
schema for you based on the sample. If you already have a schema or
prefer to define one manually, skip to the next step.

You can configure the number of documents to sample and use the
MongoDB query language to limit the sample to specific documents. By
Expand All @@ -80,7 +80,9 @@ When using the App Services UI, you can choose to:

To generate a schema from existing data:

1. Click the :guilabel:`Generate Schema` button to open the sample configuration screen.
1. From the collection configuration on the right side of the schema
editor, click :guilabel:`Generate Schema` to open the sample configuration
screen.

2. Specify the sample size, up to a maximum of 50,000 documents.

Expand All @@ -99,9 +101,9 @@ When using the App Services UI, you can choose to:
:alt: The Generate Schema sample size input in the App Services UI


.. step:: Define or Modify the Schema
You can define a schema manually or modify an existing schema by adding field-level schema definitions.
.. step:: Define or Modify the Schema

You can define a schema manually or modify an existing schema by adding field-level schema definitions.

You may define a single BSON schema for each collection. The root-level type
of each collection schema is an ``object`` schema that represents a document
Expand Down Expand Up @@ -261,10 +263,10 @@ When using the App Services UI, you can choose to:
:alt: The table that displays schema validation errors in the App Services UI
:lightbox:


.. tab::
:tabid: cli

.. procedure::

.. step:: Log In to MongoDB Cloud
Expand Down Expand Up @@ -387,8 +389,8 @@ When using the App Services UI, you can choose to:
Validate Null Types
-------------------

App Services's default behavior is to only accept a single type for each field.
Schema fields are not nullable by default because ``null`` is a unique
App Services's default behavior is to only accept a single type for each field.
Schema fields are not nullable by default because ``null`` is a unique
:manual:`BSON type </reference/bson-types/>`.

You can configure App Services to pass schema validation when you use ``null``
Expand All @@ -399,9 +401,9 @@ If you do not enable null type schema validation, App Services rejects ``null``
values passed to optional fields. Even if you enable null type validation,
required fields are never nullable.

To enable null type schema validation in the App Services UI:
To enable null type schema validation in the App Services UI:

#. In the left navigation menu below the :guilabel:`Manage` header, select :guilabel:`App Settings`.
#. On the :guilabel:`General` tab, navigate to the :guilabel:`Null Type Schema Validation`
section. Toggle the switch to :guilabel:`ON`.
#. Click the :guilabel:`Save` button.
#. Click the :guilabel:`Save` button.
2 changes: 2 additions & 0 deletions source/tutorial/dotnet.txt
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,8 @@ on it.
instructions to get the client code. For this tutorial, select the
:guilabel:`C# (.NET MAUI)` client code.

.. include:: /includes/note-windows-zip.rst

.. tab:: App Services CLI
:tabid: cli

Expand Down
2 changes: 2 additions & 0 deletions source/tutorial/flutter.txt
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,8 @@ on it.

Unzip the downloaded app, and you will see the Flutter app.

.. include:: /includes/note-windows-zip.rst

.. tab:: App Services CLI
:tabid: cli

Expand Down
2 changes: 2 additions & 0 deletions source/tutorial/kotlin.txt
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,8 @@ on it.
instructions to get the client code. For this tutorial, select the
:guilabel:`Kotlin (Android)` client code.

.. include:: /includes/note-windows-zip.rst

.. tab:: App Services CLI
:tabid: cli

Expand Down
2 changes: 2 additions & 0 deletions source/tutorial/react-native.txt
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,8 @@ on it.
instructions to get the client code. For this tutorial, select the
:guilabel:`JavaScript (React Native)` client code.

.. include:: /includes/note-windows-zip.rst

.. tab:: App Services CLI
:tabid: cli

Expand Down
2 changes: 2 additions & 0 deletions source/tutorial/swiftui.txt
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,8 @@ on it.
instructions to get the client code. For this tutorial, select the
:guilabel:`SwiftUI (iOS + SwiftUI)` client code.

.. include:: /includes/note-windows-zip.rst

.. tab:: App Services CLI
:tabid: cli

Expand Down
Loading