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
Before Submitting This PR, Please Ensure You Have Completed The
Following:
1. [ ] Are internal links to wiki documents using [relative file
links](https://docusaurus.io/docs/markdown-features/links)?
2. [ ] Are all new documentation files lowercase, with dash separated
names (ex. unraid-os.mdx)?
3. [ ] Are all assets (images, etc), located in an assets/ subfolder
next to the .md/mdx files?
4. [ ] Have you checked to ensure there aren't other open [Pull
Requests](../../../pulls) for the same update/change?
5. [ ] Is the build succeeding?
The API includes several core types. Base types include `Node` (interface for objects with unique IDs; see [Object Identification](https://graphql.org/learn/global-object-identification/)), `JSON` (for complex JSON data), `DateTime` (for timestamp values), and `Long` (for 64-bit integers). Resource types include `Array` (%%array|array%% and disk management), `Docker` (container and network management), `Info` (system information), `Config` (server configuration), and `Connect` (remote access settings). Available roles are `admin` (full access), `connect` (remote access features), and `guest` (limited read access).
148
158
149
-
Use the Apollo Sandbox to explore the schema and test queries. Start with small queries and gradually add fields as needed. Monitor your query complexity to maintain performance, use appropriate roles and permissions for your API keys, and keep your API keys secure by rotating them periodically.
159
+
## Best practices
160
+
161
+
:::tip[Pro Tips]
162
+
163
+
1. Use [Apollo GraphQL Studio](https://studio.apollographql.com/graph/Unraid-API/variant/current/home) to view and explore the complete API schema and documentation
164
+
2. Start with small queries and gradually add fields as needed
165
+
3. Monitor your query complexity to maintain performance
166
+
4. Use appropriate roles and permissions for your API keys
167
+
5. Keep your API keys secure and rotate them periodically
168
+
169
+
:::
150
170
151
171
## Error handling and rate limiting
152
172
173
+
:::caution[Rate Limits]
174
+
175
+
The API implements rate limiting to prevent abuse. Ensure your applications handle rate limit responses appropriately.
176
+
177
+
:::
178
+
153
179
The API returns standard %%GraphQL|graphql%% errors in the following format:
154
180
155
181
```json
@@ -164,6 +190,18 @@ The API returns standard %%GraphQL|graphql%% errors in the following format:
164
190
}
165
191
```
166
192
167
-
The API implements rate limiting to prevent abuse. Ensure your applications handle rate limit responses appropriately. Use the Apollo Sandbox's schema explorer to browse all available types and fields, and check the documentation tab for detailed field descriptions. Monitor the API's health using `unraid-api status` and generate reports using `unraid-api report` for troubleshooting. For more information about specific commands and configuration options, refer to the [CLI documentation](cli.mdx) or run `unraid-api --help`. If you encounter issues, visit the [Unraid forums](https://forums.unraid.net/) for community support.
193
+
## Additional resources
194
+
195
+
:::info[Learn More]
196
+
197
+
- View the complete API schema and documentation using [Apollo GraphQL Studio](https://studio.apollographql.com/graph/Unraid-API/variant/current/home)
198
+
- Use the Apollo Sandbox's schema explorer to browse all available types and fields
199
+
- Check the documentation tab in Apollo Sandbox for detailed field descriptions
200
+
- Monitor the API's health using `unraid-api status`
201
+
- Generate reports using `unraid-api report` for troubleshooting
202
+
203
+
For more information about specific commands and configuration options, refer to the [CLI documentation](cli.mdx) or run `unraid-api --help`. If you encounter issues, visit the [Unraid forums](https://forums.unraid.net/) for community support.
0 commit comments