# Granite Sync API

**Canonical:** https://apis.io/apis/granite-md/granite-md-sync-api/  
**Provider:** Granite — https://apis.io/providers/granite-md/  
**Base URL:** https://api.granite.md  
**Documentation:** https://docs.granite.md/

Granite Sync API is one of 19 APIs that [Granite](https://apis.io/providers/granite-md/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification. Tagged areas include Sync. The published artifact set on APIs.io includes an OpenAPI specification.

The sync protocol (PLAN.md Appendix B).

## Operations (14)

| Method | Path | Summary |
|---|---|---|
| GET | `/v1/vaults/{vault_id}/tree` | Snapshot of the vault's files |
| GET | `/v1/vaults/{vault_id}/changes` | Changes after a sequence number |
| GET | `/v1/vaults/{vault_id}/files/{file_id}/info` | Who created and last changed a note, and who can open it |
| POST | `/v1/vaults/{vault_id}/commit` | Apply a batch of changes atomically |
| POST | `/v1/vaults/{vault_id}/blobs/check` | Which blobs still need uploading |
| PUT | `/v1/vaults/{vault_id}/blobs/{hash}` | Upload a blob (up to 8 MiB) |
| GET | `/v1/vaults/{vault_id}/blobs/{hash}` | Download a blob |
| POST | `/v1/vaults/{vault_id}/uploads` | Start a resumable upload |
| GET | `/v1/vaults/{vault_id}/uploads/{upload_id}` | How much of an upload arrived |
| PATCH | `/v1/vaults/{vault_id}/uploads/{upload_id}` | Send the next part (up to 16 MiB) |
| POST | `/v1/vaults/{vault_id}/uploads/{upload_id}/finish` | Finish an upload |
| GET | `/v1/vaults/{vault_id}/files/{file_id}/versions` | A file's version history, newest first |
| GET | `/v1/vaults/{vault_id}/files/{file_id}/versions/{version_id}` | One version |
| POST | `/v1/vaults/{vault_id}/files/{file_id}/versions/{version_id}/restore` | Make an old version current again |

## Machine-readable artifacts (1)

- **OpenAPI** — https://artifacts.apis.io/granite-md/openapi/granite-md-sync-api-openapi.yml

## Other Granite APIs (12)

- [Granite Auth API](https://apis.io/apis/granite-md/granite-md-auth-api/)
- [Granite Billing API](https://apis.io/apis/granite-md/granite-md-billing-api/)
- [Granite Comments API](https://apis.io/apis/granite-md/granite-md-comments-api/)
- [Granite Drive API](https://apis.io/apis/granite-md/granite-md-drive-api/)
- [Granite Folders API](https://apis.io/apis/granite-md/granite-md-folders-api/)
- [Granite knowledge base API](https://apis.io/apis/granite-md/granite-md-knowledge-base-api/)
- [Granite Me API](https://apis.io/apis/granite-md/granite-md-me-api/)
- [Granite Meta API](https://apis.io/apis/granite-md/granite-md-meta-api/)
- [Granite Note Shares API](https://apis.io/apis/granite-md/granite-md-note-shares-api/)
- [Granite Notes API](https://apis.io/apis/granite-md/granite-md-notes-api/)
- [Granite OAuth API](https://apis.io/apis/granite-md/granite-md-oauth-api/)
- [Granite Publish API](https://apis.io/apis/granite-md/granite-md-publish-api/)

## Tags

Sync

---

Profiled by [API Evangelist](https://apievangelist.com) and published on [APIs.io](https://apis.io/apis/granite-md/granite-md-sync-api/). The API's provider profile, Kin Score and agent-readiness rating are at https://apis.io/providers/granite-md/.
