You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|:no_entry:**DO NOT** use redundant words in names. |- **Right:** /places/{id}/**type** and /phones/{id}/**number** <BR> - **Wrong** /places/{id}/*placeType* and /phones/{id}/**phoneNumber**|
@@ -165,7 +168,7 @@ understand. Therefore you should follow the rules in the table below:
165
168
A Uniform Resource Locator (URL) is how developers access the resources of your
166
169
API.
167
170
168
-
Navigation path to Graph resources generally broken into multiple segments:
171
+
Navigation path to the Microsoft Graph resources generally broken into multiple segments:
169
172
170
173
**{scheme}://{host}/{version}/{category}/{resourcePath}[?{query}]** where
171
174
@@ -177,7 +180,7 @@ Navigation path to Graph resources generally broken into multiple segments:
177
180
-**category** segment is modeled as an entity set or a singleton representing
178
181
logical top-level API category;
179
182
180
-
-**resourcePath segment** can address an entity, collection of entities,
183
+
-**resourcePath** segment can address an entity, collection of entities,
181
184
property or operation available for an entity. Structure of the resource
182
185
path is covered in detail in the [OData Version 4.01. Part 2: URL
@@ -186,9 +189,8 @@ Navigation path to Graph resources generally broken into multiple segments:
186
189
and is covered in [Query](#query) section.
187
190
188
191
While HTTP defines no constraints on how different resources are related
189
-
together, it does encourage the use of URL path segment hierarchies to convey a
190
-
relationship. In Microsoft Graph lifetime relationships between resources
191
-
supported by the notions of singletons, entitySets, entities, complex types and
192
+
together, it does encourage the use of URL path segment hierarchies to convey relationships. In Microsoft Graph lifetime relationships between resources are
193
+
supported by the OData concepts of singletons, entitySets, entities, complex types and
192
194
navigation properties.
193
195
194
196
#### Category
@@ -212,8 +214,7 @@ enterprise perspectives and represents one of the following:
212
214
- For example: /loadTestEntities
213
215
>>
214
216
Top-level API categories are aligned with documentation, developer tools, and in
215
-
general are relatively stable. If a new category needs to be created, it requires an API REview and an API Council approval.
216
-
217
+
general are relatively stable. If a new category needs to be created, it requires an API Review and an API Council approval.
217
218
### Query Support
218
219
219
220
Microsoft Graph APIs should support basic query options in conformance with
@@ -238,10 +239,7 @@ Limitations of \$query requests made to Microsoft Graph:
238
239
239
240
The query options part of an OData URL can be quite long, potentially exceeding
240
241
the maximum length of URLs supported by components involved in transmitting or
241
-
processing the request. One way to avoid this is wrapping the request in a batch
242
-
request, which has the penalty of needing to construct a well-formed batch
243
-
request body. An easier alternative for GET requests is to append /\$query to
244
-
the resource path of the URL, use the POST verb instead of GET, and pass the
242
+
processing the request. One way to avoid this is to use the POST verb instead of GET, and pass the
245
243
query options part of the URL in the request body as described in the chapter
@@ -277,7 +275,7 @@ of properties are three most often used patterns in Microsoft Graph today:
277
275
also defines properties that are required/meaningful for the variant given
278
276
by the type property. [Modelling with Flat Bag Pattern](./Modelling%20with%20Flat%20Bag%20Pattern.md)
279
277
280
-
The following table describes shows summary of main qualities for each pattern
278
+
The following table shows summary of main qualities for each pattern
281
279
and will help to select a pattern preferred for your use case.
282
280
283
281
| API qualities Patterns | Properties and behavior described in metadata | Suited for strongly typed languages | Simple query construction | Syntactical backward compatible |
@@ -288,8 +286,6 @@ and will help to select a pattern preferred for your use case.
288
286
289
287
## Behavior Modeling
290
288
291
-
#### HTTP Operations
292
-
293
289
The HTTP operations dictate how your API behaves. The URL of an API, along with
294
290
its request/response bodies, establishes the overall contract that developers
295
291
have with your service. As an API provider, how you manage the overall request /
@@ -395,14 +391,14 @@ In general, making changes to the API contract for existing elements is
395
391
considered breaking. Adding new elements is allowed and not considered a
396
392
breaking change.
397
393
398
-
:heavy_check_mark:**DO use not-breaking changes:**
394
+
** Non-breaking changes:**
399
395
* Addition of an annotation OpenType="true" Addition of properties that are nullable or have a default value
400
396
* Addition of a member to an evolvable enumeration 1. Removal, rename, or change to the type of an open extension
401
397
* Removal, rename, or change to the type of an annotation *Introduction of paging to existing collections
402
398
* Changes to error codes Changes to the order of properties
403
399
* Changes to the length or format of opaque strings, such as resource IDs
404
400
405
-
:no_entry:**DO NOT use breaking changes:**
401
+
** Breaking changes:**
406
402
* Changes to the URL or fundamental request/response associated with a resource
407
403
* Changing semantics of resource representation
408
404
* Removal, rename, or change to the type of a declared property
0 commit comments