> For the complete documentation index, see [llms.txt](https://docs.coupler.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coupler.io/sources/category/other/cisco-meraki/best-practices.md).

# Best Practices

## Recommended setup

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Start with Organization devices</strong></td><td>This entity gives you the most actionable snapshot of your infrastructure. Use it as the foundation for your first report, then layer in networks and admins as needed.</td></tr><tr><td><strong>Use a read-only API key</strong></td><td>Generate a dedicated API key with read-only access specifically for Coupler.io. This limits exposure if the key is ever compromised and makes it easy to revoke without affecting other integrations.</td></tr><tr><td><strong>Join devices with networks</strong></td><td>The Organization devices entity contains a network_id field. Use Coupler.io's Join transformation to enrich it with network names and types from Organization networks — much more useful for reporting than raw IDs.</td></tr><tr><td><strong>Append across multiple organizations</strong></td><td>If you manage more than one Meraki organization, add multiple sources in a single data flow and use Append to build a unified device or admin inventory across all orgs.</td></tr></tbody></table>

## Data refresh and scheduling

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Sync API request logs daily</strong></td><td>Meraki has limited log retention for API requests. A daily refresh ensures you capture logs before they age out and disappear from the API response window.</td></tr><tr><td><strong>Sync device status hourly for uptime monitoring</strong></td><td>Device online/offline status is a point-in-time snapshot. If uptime tracking matters, schedule the Organization devices sync to run every hour so you catch outages before they go unnoticed.</td></tr><tr><td><strong>Sync admin and SAML data weekly</strong></td><td>Admin accounts and SAML configurations change infrequently. A weekly sync is usually enough for compliance reporting without putting unnecessary load on the Meraki API.</td></tr></tbody></table>

## Performance optimization

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Set a tight start date for API request logs</strong></td><td>The Organization API requests entity can return enormous volumes of data if the start date is set too far back. Start with a 7–30 day window and expand only if you need historical analysis.</td></tr><tr><td><strong>Split large orgs into separate data flows</strong></td><td>If you have organizations with thousands of devices, consider putting each org's entities in its own data flow. This avoids hitting Meraki's 5 requests/second rate limit mid-sync and makes failures easier to debug.</td></tr></tbody></table>

## Common pitfalls

{% hint style="danger" %}
**Don't use your personal admin API key in production.** If that account is ever removed from the organization, all syncs will immediately break. Always use a dedicated service account or a shared admin key.
{% endhint %}

{% columns %}
{% column %}
**Do**

* Enable API access at the org level before setting up your data flow
* Use a dedicated read-only API key for Coupler.io
* Join devices and networks by `network_id` for richer reports
* Set a specific start date to limit data volume on first sync
  {% endcolumn %}

{% column %}
**Don't**

* Use your personal Meraki admin key for automated syncs
* Set the start date years back on the API requests entity
* Expect device status to reflect real-time changes between syncs
* Assume a single API key has access to all orgs if you manage multiple
  {% endcolumn %}
  {% endcolumns %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.coupler.io/sources/category/other/cisco-meraki/best-practices.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
