# Nylas API

Source: https://developer.nylas.com/docs/reference/api/

The Nylas API is designed using the [REST](https://en.wikipedia.org/wiki/Representational_State_Transfer) ideology to provide simple and predictable URIs to access and modify objects. Requests support [standard HTTP methods](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html) like `GET`, `PUT`, `POST`, and `DELETE`, and [standard status codes](https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html). Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.

You can use the [Nylas Postman collection](https://www.postman.com/trynylas/workspace/nylas-api/overview) to quickly start using the Nylas APIs. For more information, check out the [Nylas Postman collection documentation](/docs/v3/api-references/postman/).

[<img src="https://run.pstmn.io/button.svg" alt="Run In Postman" style="width: 128px; height: 32px;">](https://god.gw.postman.com/run-collection/21157315-b864762a-ddbb-4e08-bcc5-e87bb51a825a?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D21157315-b864762a-ddbb-4e08-bcc5-e87bb51a825a%26entityType%3Dcollection%26workspaceId%3De36cf1fc-a749-494d-9c8c-f3c28f18c342#?env%5Bv3%20Environment%5D=W3sia2V5IjoiYmFzZVVybCIsInZhbHVlIjoiaHR0cHM6Ly9hcGkudXMubnlsYXMuY29tIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6Ik55bGFzIEFQSSBiYXNlIFVSTC4gVXNlIGh0dHBzOi8vYXBpLmV1Lm55bGFzLmNvbSBmb3IgdGhlIEVVIHJlZ2lvbi4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6ImJlYXJlclRva2VuIiwidmFsdWUiOiIiLCJ0eXBlIjoic2VjcmV0IiwiZGVzY3JpcHRpb24iOiJZb3VyIE55bGFzIEFQSSBrZXkgZnJvbSB0aGUgRGFzaGJvYXJkIChodHRwczovL2Rhc2hib2FyZC12My5ueWxhcy5jb20pLiBVc2VkIGZvciBhbGwgYXV0aGVudGljYXRlZCByZXF1ZXN0cy4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6ImdyYW50X2lkIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiVGhlIGdyYW50IElEIHJlcHJlc2VudGluZyBhbiBlbmQgdXNlcidzIGNvbm5lY3RlZCBhY2NvdW50LiBSZXF1aXJlZCBmb3IgRUNDICYgU2NoZWR1bGVyIGNvbGxlY3Rpb25zLiBGaW5kIHRoaXMgaW4gdGhlIERhc2hib2FyZCB1bmRlciBHcmFudHMuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJhY2Nlc3NfdG9rZW4iLCJ2YWx1ZSI6IiIsInR5cGUiOiJzZWNyZXQiLCJkZXNjcmlwdGlvbiI6IkEgdXNlci1sZXZlbCBhY2Nlc3MgdG9rZW4gcmV0dXJuZWQgZnJvbSB0aGUgT0F1dGggZmxvdy4gQWx0ZXJuYXRpdmUgdG8gdXNpbmcgQVBJIGtleSArIGdyYW50X2lkIGZvciBwZXItdXNlciBhdXRoLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoiYXBwbGljYXRpb25faWQiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJZb3VyIE55bGFzIGFwcGxpY2F0aW9uIElELiBBdXRvLXNldCBieSB0aGUgJ1ZlcmlmeSBBUEkga2V5JyByZXF1ZXN0IGluIHRoZSBBZG1pbiBjb2xsZWN0aW9uLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoicHJvdmlkZXIiLCJ2YWx1ZSI6Imdvb2dsZSIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJBdXRoIHByb3ZpZGVyIGZvciBjb25uZWN0b3Igb3BlcmF0aW9uczogZ29vZ2xlLCBtaWNyb3NvZnQsIGltYXAsIG9yIHZpcnR1YWwtY2FsZW5kYXIuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJjYWxsYmFja19pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IlJlZGlyZWN0IFVSSSBJRC4gU2V0IGFmdGVyIGNyZWF0aW5nIGEgY2FsbGJhY2sgVVJJIGluIHRoZSBBZG1pbiBjb2xsZWN0aW9uLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoiY3JlZGVudGlhbF9pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IkNvbm5lY3RvciBjcmVkZW50aWFsIElEIGZvciBzZXJ2aWNlIGFjY291bnRzIG9yIGFwcCBwYXNzd29yZHMuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJ3ZWJob29rX2lkIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiV2ViaG9vayBkZXN0aW5hdGlvbiBJRC4gU2V0IGFmdGVyIGNyZWF0aW5nIGEgd2ViaG9vay4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6ImNoYW5uZWxfaWQiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJQdWIvU3ViIGNoYW5uZWwgSUQuIFNldCBhZnRlciBjcmVhdGluZyBhIGNoYW5uZWwuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJ3b3Jrc3BhY2VfaWQiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJXb3Jrc3BhY2UgSUQgZm9yIGdyYW50IGdyb3VwaW5nICYgb3JnYW5pemF0aW9uLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoiYXBpX2tleV9pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IkFQSSBrZXkgcmVzb3VyY2UgSUQgKG5vdCB0aGUga2V5IGl0c2VsZikuIFVzZWQgZm9yIG1hbmFnaW5nIEFQSSBrZXlzIHZpYSB0aGUgQWRtaW4gQVBJLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoibnlsYXNfY2xpZW50X2lkIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiWW91ciBOeWxhcyBhcHBsaWNhdGlvbidzIGNsaWVudCBJRC4gVXNlZCBpbiBob3N0ZWQgT0F1dGggYXV0aG9yaXphdGlvbiBVUkxzLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoibnlsYXNfY2xpZW50X3NlY3JldCIsInZhbHVlIjoiIiwidHlwZSI6InNlY3JldCIsImRlc2NyaXB0aW9uIjoiWW91ciBOeWxhcyBhcHBsaWNhdGlvbidzIGNsaWVudCBzZWNyZXQuIFVzZWQgaW4gdGhlIE9BdXRoIHRva2VuIGV4Y2hhbmdlIHN0ZXAuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJyZWRpcmVjdF91cmkiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJPQXV0aCBjYWxsYmFjayBVUkwgcmVnaXN0ZXJlZCB3aXRoIHlvdXIgTnlsYXMgYXBwbGljYXRpb24uIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJyZXNwb25zZV90eXBlIiwidmFsdWUiOiJjb2RlIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6Ik9BdXRoIHJlc3BvbnNlIHR5cGUuIFVzZSAnY29kZScgZm9yIHNlcnZlci1zaWRlIGF1dGggKHJlY29tbWVuZGVkKSBvciAndG9rZW4nIGZvciBjbGllbnQtc2lkZS4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6ImNvZGUiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJBdXRob3JpemF0aW9uIGNvZGUgcmV0dXJuZWQgZnJvbSBob3N0ZWQgT0F1dGguIFVzZWQgdG8gZXhjaGFuZ2UgZm9yIGFuIGFjY2VzcyB0b2tlbi4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6ImlkX3Rva2VuIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiSUQgdG9rZW4gZm9yIGN1c3RvbSBhdXRoZW50aWNhdGlvbiBmbG93cy4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6ImVtYWlsIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiRW1haWwgYWRkcmVzcyB1c2VkIGFzIGxvZ2luX2hpbnQgaW4gT0F1dGggZmxvd3MuIFByZS1maWxscyB0aGUgcHJvdmlkZXIgc2lnbi1pbiBwYWdlLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoiZ29vZ2xlX2NsaWVudF9pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IllvdXIgR29vZ2xlIE9BdXRoIGNsaWVudCBJRC4gVXNlZCB3aGVuIGNyZWF0aW5nIGEgR29vZ2xlIGNvbm5lY3Rvci4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6Imdvb2dsZV9jbGllbnRfc2VjcmV0IiwidmFsdWUiOiIiLCJ0eXBlIjoic2VjcmV0IiwiZGVzY3JpcHRpb24iOiJZb3VyIEdvb2dsZSBPQXV0aCBjbGllbnQgc2VjcmV0LiBVc2VkIHdoZW4gY3JlYXRpbmcgYSBHb29nbGUgY29ubmVjdG9yLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoiY2FsZW5kYXJfaWQiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJDYWxlbmRhciBJRC4gQ2FuIGJlIHRoZSBncmFudCdzIGVtYWlsIGFkZHJlc3Mgb3IgJ3ByaW1hcnknIGZvciB0aGUgZGVmYXVsdCBjYWxlbmRhci4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6ImV2ZW50X2lkIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiRXZlbnQgSUQuIEF1dG8tc2V0IGJ5IHRlc3Qgc2NyaXB0cyB3aGVuIGNyZWF0aW5nIG9yIGxpc3RpbmcgZXZlbnRzLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoibWVzc2FnZV9pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6Ik1lc3NhZ2UgSUQuIEF1dG8tc2V0IGJ5IHRlc3Qgc2NyaXB0cyB3aGVuIGxpc3Rpbmcgb3Igc2VuZGluZyBtZXNzYWdlcy4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6InRocmVhZF9pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IlRocmVhZCBJRC4gQXV0by1zZXQgYnkgdGVzdCBzY3JpcHRzIHdoZW4gbGlzdGluZyB0aHJlYWRzLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoiZHJhZnRfaWQiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJEcmFmdCBJRC4gQXV0by1zZXQgYnkgdGVzdCBzY3JpcHRzIHdoZW4gY3JlYXRpbmcgZHJhZnRzLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoiZm9sZGVyX2lkIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiRm9sZGVyIG9yIGxhYmVsIElELiBBdXRvLXNldCBieSB0ZXN0IHNjcmlwdHMgd2hlbiBsaXN0aW5nIGZvbGRlcnMuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJhdHRhY2htZW50X2lkIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiQXR0YWNobWVudCBJRC4gQXV0by1zZXQgYnkgdGVzdCBzY3JpcHRzIHdoZW4gbGlzdGluZyBtZXNzYWdlIGF0dGFjaG1lbnRzLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoiY29udGFjdF9pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IkNvbnRhY3QgSUQuIEF1dG8tc2V0IGJ5IHRlc3Qgc2NyaXB0cyB3aGVuIGxpc3Rpbmcgb3IgY3JlYXRpbmcgY29udGFjdHMuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJub3RldGFrZXJfaWQiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJOb3RldGFrZXIgSUQuIFNldCBhZnRlciBpbnZpdGluZyBhIG5vdGV0YWtlciBib3QgdG8gYSBtZWV0aW5nLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoidGVtcGxhdGVfaWQiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJNZXNzYWdlIHRlbXBsYXRlIElELiBBdXRvLXNldCBieSB0ZXN0IHNjcmlwdHMgd2hlbiBjcmVhdGluZyB0ZW1wbGF0ZXMuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJ3b3JrZmxvd19pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IldvcmtmbG93IElELiBBdXRvLXNldCBieSB0ZXN0IHNjcmlwdHMgd2hlbiBjcmVhdGluZyB3b3JrZmxvd3MuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJzY2hlZHVsZV9pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IlNjaGVkdWxlIElEIGZvciBFeHRyYWN0QUkgb3BlcmF0aW9ucy4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6ImRvbWFpbl9uYW1lIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiRG9tYWluIG5hbWUgZm9yIGN1c3RvbSBkb21haW4gb3BlcmF0aW9ucy4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6ImNvbmZpZ3VyYXRpb25faWQiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJTY2hlZHVsZXIgY29uZmlndXJhdGlvbiBJRC4gQXV0by1zZXQgYnkgdGVzdCBzY3JpcHRzIHdoZW4gY3JlYXRpbmcgYSBjb25maWd1cmF0aW9uLiIsImVuYWJsZWQiOnRydWV9LHsia2V5Ijoic2Vzc2lvbl9pZCIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IlNjaGVkdWxlciBzZXNzaW9uIElELiBBdXRvLXNldCBieSB0ZXN0IHNjcmlwdHMgd2hlbiBjcmVhdGluZyBhIHNlc3Npb24uIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJib29raW5nX2lkIiwidmFsdWUiOiIiLCJ0eXBlIjoiZGVmYXVsdCIsImRlc2NyaXB0aW9uIjoiQm9va2luZyBJRC4gQXV0by1zZXQgYnkgdGVzdCBzY3JpcHRzIHdoZW4gY3JlYXRpbmcgYSBib29raW5nLiIsImVuYWJsZWQiOnRydWV9LHsia2V5IjoiZ3JvdXBfZXZlbnRfaWQiLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJHcm91cCBldmVudCBJRCBmb3IgY29sbGFib3JhdGl2ZSBzY2hlZHVsaW5nIHdpdGggbXVsdGlwbGUgcGFydGljaXBhbnRzLiIsImVuYWJsZWQiOnRydWV9LHsia2V5Ijoic2NoZWR1bGVyU2Vzc2lvblRva2VuIiwidmFsdWUiOiIiLCJ0eXBlIjoic2VjcmV0IiwiZGVzY3JpcHRpb24iOiJTaG9ydC1saXZlZCBzZXNzaW9uIHRva2VuIGZvciBwdWJsaWMtZmFjaW5nIFNjaGVkdWxlciBlbmRwb2ludHMgKEF2YWlsYWJpbGl0eSwgQm9va2luZ3MpLiBDcmVhdGVkIHZpYSB0aGUgU2Vzc2lvbnMgZW5kcG9pbnQuIiwiZW5hYmxlZCI6dHJ1ZX0seyJrZXkiOiJ2Ml9zY2hlZHVsZXJfc2x1ZyIsInZhbHVlIjoiIiwidHlwZSI6ImRlZmF1bHQiLCJkZXNjcmlwdGlvbiI6IlNsdWcgZnJvbSBhIHYyIFNjaGVkdWxlciBwYWdlLiBVc2VkIGZvciBtaWdyYXRpbmcgdjIgc2NoZWR1bGluZyBwYWdlcyB0byB2MyBjb25maWd1cmF0aW9ucy4iLCJlbmFibGVkIjp0cnVlfSx7ImtleSI6InBhZ2VfdG9rZW4iLCJ2YWx1ZSI6IiIsInR5cGUiOiJkZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJQYWdpbmF0aW9uIGN1cnNvci4gUGFzcyB0aGUgbmV4dF9jdXJzb3IgdmFsdWUgZnJvbSBhIGxpc3QgcmVzcG9uc2UgdG8gZ2V0IHRoZSBuZXh0IHBhZ2Ugb2YgcmVzdWx0cy4iLCJlbmFibGVkIjp0cnVlfV0=)

## Enable compression to optimize performance

The Email, Calendar, Contacts, and Scheduler APIs return gzip-compressed responses when your request includes the [`Accept-Encoding: gzip`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding) header. Most HTTP libraries negotiate and decompress gzip responses automatically. With curl, use `--compressed`. Nylas skips compression for responses under about 200 bytes.

Compression pairs well with [query parameters](#query-parameters) that limit the number of objects returned and [field selection](#reduce-response-size-with-field-selection) that limits which fields come back in each object. For the full walkthrough, including webhook, Pub/Sub, and SNS compression, see [Reducing payload size with compression](/docs/dev-guide/best-practices/compression/).

## Query parameters

Nylas allows you to include query parameters in `GET` requests that return a list of results. Query parameters let you narrow the results Nylas returns, meaning fewer requests to the provider and less data for your application to sift through. For more information, see [Rate limits in Nylas](/docs/dev-guide/platform/rate-limits/).

The table below shows the query parameters you can use for the `GET` requests in the Email, Calendar, Contacts, and Notetaker APIs.

| Endpoint                                                                                          | Query parameters                                                                                                                                                                                                                                                                               |
| :------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [`GET /v3/grants/<NYLAS_GRANT_ID>/calendars`](/docs/reference/api/calendar/get-all-calendars/)    | `limit`, `page_token`, `metadata_pair`, `select`                                                                                                                                                                                                                                               |
| [`GET /v3/grants/<NYLAS_GRANT_ID>/events`](/docs/reference/api/events/get-all-events/)            | `calendar_id` (required), `limit`, `page_token`, `show_cancelled`, `title`, `description`, `ical_uid`, `location`, `start`, `end`, `master_event_id`, `metadata_pair`, `busy`, `updated_before`, `updated_after`, `attendees`, `event_type`, `expand_recurring`, `tentative_as_busy`, `select` |
| [`GET /v3/grants/<NYLAS_GRANT_ID>/drafts`](/docs/reference/api/drafts/get-drafts/)                | `limit`, `page_token`, `subject`, `any_email`, `to`, `cc`, `bcc`, `starred`, `thread_id`, `has_attachment`, `query_imap`, `select`                                                                                                                                                             |
| [`GET /v3/grants/<NYLAS_GRANT_ID>/messages`](/docs/reference/api/messages/get-messages/)          | `limit`, `page_token`, `subject`, `any_email`, `to`, `from`, `cc`, `bcc`, `in`, `unread`, `starred`, `thread_id`, `received_before`, `received_after`, `has_attachment`, `fields`, `search_query_native`, `metadata_pair`, `query_imap`, `shared_from`, `select`                               |
| [`GET /v3/grants/<NYLAS_GRANT_ID>/threads`](/docs/reference/api/threads/get-threads/)             | `limit`, `page_token`, `subject`, `any_email`, `to`, `from`, `cc`, `bcc`, `in`, `unread`, `starred`, `latest_message_before`, `latest_message_after`, `has_attachment`, `search_query_native`, `earliest_message_date`, `shared_folder_id`, `shared_from`, `select`                            |
| [`GET /v3/grants/<NYLAS_GRANT_ID>/folders`](/docs/reference/api/folders/get-folder/)              | `limit`, `page_token`, `parent_id`, `include_hidden_folders`, `shared_from`, `single_level`, `select`                                                                                                                                                                                          |
| [`GET /v3/grants/<NYLAS_GRANT_ID>/contacts`](/docs/reference/api/contacts/list-contact/)          | `limit`, `page_token`, `email`, `phone_number`, `source`, `group`, `recurse`, `select`                                                                                                                                                                                                         |
| [`GET /v3/grants/<NYLAS_GRANT_ID>/notetakers`](/docs/reference/api/notetaker/get-all-notetakers/) | `limit`, `page_token`, `prev_page_token`, `join_time_start`, `join_time_end`, `state`, `order_by`, `order_direction`                                                                                                                                                                           |

You can use the `limit` parameter to set the maximum number of results Nylas returns for your request. Nylas recommends setting a lower `limit` if you encounter rate limits on the provider. For more information, see [Avoiding rate limits in Nylas](/docs/dev-guide/best-practices/rate-limits/).

Nylas supports case-insensitive partial matches for some query parameters:

- `description`, `location`, and `title` in [Get all Events requests](/docs/reference/api/events/get-all-events/).
- `subject` in [Get all Messages](/docs/reference/api/messages/get-messages/), [Get all Drafts](/docs/reference/api/drafts/get-drafts/), and [Get all Threads](/docs/reference/api/threads/get-threads/) requests.

If the specified field contains the query term, Nylas matches it regardless of the case. For example, if you set the `subject` query parameter to `march` in a Get all Messages request, Nylas might return the following messages:

- "Company **March** Meeting"
- "Today in history: Mussolini's **march** on Rome"
- "Your coupon code: **mARch**"

Since Nylas matches keywords, it won't return the following messages:

- "Confirmation code: abc**March**123"
- "**M**cDonald's golden **arch**es"

## Pagination

Nylas might return multiple pages of data when you make a "Get all" request (for example, [Get all Events](/docs/reference/api/events/get-all-events/)). When this happens, Nylas includes the `next_cursor` field in its response. You can pass the value of `next_cursor` as the `page_token` query parameter in your next request to get the next page of results.

You can use the `limit` parameter to specify the maximum number of results you want in one page of data. If you see rate limits from the provider, try using a smaller `limit` value.

| Query Parameter | Type    | Description                                                                                                                       |
| :-------------- | :------ | :-------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer | The number of objects to return, up to a maximum of `200` (defaults to `50`).                                                     |
| `page_token`    | string  | An identifier that specifies which page of data to return. This value should be taken from the `next_cursor` response body field. |

## Updating objects

`PUT` and `PATCH` requests behave similarly in Nylas: when you make a request, Nylas replaces all data in the nested object with the information you define. Because of this, your request might fail if you don't include all mandatory fields.

Nylas doesn't erase the data from fields that you don't include in your request, so you can define only the mandatory fields and any that you want to update.

## /me/ syntax for API calls

Nylas includes the `/me/` syntax which you can use in access-token authorized API calls instead of specifying a user's grant ID (for example, `GET /v3/grants/me/messages`).

The `/me/` syntax looks up the grant associated with the request's access token, and uses the `grant_id` as a locator. You can use this syntax for API requests that access account data only, and only if you use access tokens to authorize requests. You can't use this syntax if you're using API key authorization, because there is no grant associated with an API key.

## Metadata

You can use the `metadata` object to add a list of key-value pairs to Calendar, Event, Message, and Draft objects so you can store custom data with them. Both keys and values can be any string. If you want to filter on metadata, however, you must write values to one of the five [Nylas-specific keys](#metadata-keys-and-filtering).

For more information, see the [Metadata documentation](/docs/dev-guide/metadata/).

### Metadata keys and filtering

Nylas reserves five metadata keys (`key1`, `key2`, `key3`, `key4`, `key5`) and indexes their contents. Nylas uses `key5` to identify events that count towards the `max-fairness` round-robin calculation for event availability. For more information, see [Group availability and booking best practices](/docs/v3/calendar/group-booking/#round-robin-max-fairness-groups).

You can add values to each of these reserved keys, and reference them in a query to filter the objects that Nylas returns. You can also add these filters as query parameters, as in the following examples:

- `https://api.us.nylas.com/calendar?metadata_pair=key1:on-site`
- `https://api.us.nylas.com/events?calendar_id=<CALENDAR_ID>&metadata_pair=key1:on-site`

You can't create a query that includes both a provider and metadata filter, other than `calendar_id`. For example, `https://api.us.nylas.com/calendar?metadata_pair=key1:plan-party&title=Birthday` returns an error.

## Reduce response size with field selection

Field selection allows you to use the `select` query parameter to specify which fields you want Nylas to include in the response.

You can use field selection for all Nylas API endpoints, _except_ the following:

- All `DELETE` endpoints.
- All Attachments endpoints.
- All Smart Compose endpoints.
- The Send Message endpoint.
- The Create a Draft endpoint.

Field selection helps to reduce the size of the response, improves latency, and helps you avoid rate limiting issues. You can also use it in cases where you want to avoid working with information from your users that you think might be sensitive.

Field selection can evaluate top-level object fields only. You cannot use it to return only nested fields.

<div id="admonition-info">📝 <b>Note</b>: Nylas strongly suggests you always use field selection, so you only get the data that you need.</div>

For example, the following request specifies Nylas should return only the `id` and `name` fields of the Calendar object.

```bash
curl --request GET \
  --url 'https://api.us.nylas.com/v3/grants/me/calendars?select=id,name'
```

The response payload includes only the `id` and `name` fields in the `data` object, as in the example below.

```json
{
  "request_id": "5fa64c92-e840-4357-86b9-2aa364d35b88",
  "data": [
    {
      "id": "5d3qmne77v32r8l4phyuksl2x",
      "name": "My Calendar"
    },
    {
      "id": "5d3qmne77v32r23aphyuksl2x",
      "name": "My Calendar 2"
    }
  ]
}
```

## Nylas encoding

Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.


## Endpoints

### [Authentication APIs](https://developer.nylas.com/docs/reference/api/authentication-apis/)

- **GET** `/v3/connect/auth` - [Hosted OAuth - Authorization Request](https://developer.nylas.com/docs/reference/api/authentication-apis/get_oauth2_flow/)
- **POST** `/v3/connect/token` - [Hosted OAuth - Token exchange](https://developer.nylas.com/docs/reference/api/authentication-apis/exchange_oauth2_token/)
- **POST** `/v3/connect/revoke` - [Hosted OAuth - Revoke OAuth token](https://developer.nylas.com/docs/reference/api/authentication-apis/revoke_oauth2_token_and_grant/)
- **GET** `/v3/connect/tokeninfo` - [OAuth Token Info](https://developer.nylas.com/docs/reference/api/authentication-apis/info_oauth2_token/)

### [Manage Grants](https://developer.nylas.com/docs/reference/api/manage-grants/)

- **POST** `/v3/connect/custom` - [Bring Your Own Authentication](https://developer.nylas.com/docs/reference/api/manage-grants/byo_auth/)
- **GET** `/v3/grants` - [Return all grants](https://developer.nylas.com/docs/reference/api/manage-grants/get-all-grants/)
- **GET** `/v3/grants/{grantId}` - [Get a grant](https://developer.nylas.com/docs/reference/api/manage-grants/get_grant_by_id/)
- **PATCH** `/v3/grants/{grantId}` - [Update a grant](https://developer.nylas.com/docs/reference/api/manage-grants/patch_grant_by_id/)
- **DELETE** `/v3/grants/{grantId}` - [Delete a grant](https://developer.nylas.com/docs/reference/api/manage-grants/delete_grant_by_id/)
- **GET** `/v3/grants/me` - [Get current grant](https://developer.nylas.com/docs/reference/api/manage-grants/get_grant_by_access_token/)

### [Messages](https://developer.nylas.com/docs/reference/api/messages/)

- **GET** `/v3/grants/{grant_id}/messages` - [Return all Messages](https://developer.nylas.com/docs/reference/api/messages/get-messages/)
- **GET** `/v3/grants/{grant_id}/messages/{message_id}` - [Return a Message](https://developer.nylas.com/docs/reference/api/messages/get-messages-id/)
- **PUT** `/v3/grants/{grant_id}/messages/{message_id}` - [Update message attributes](https://developer.nylas.com/docs/reference/api/messages/put-messages-id/)
- **DELETE** `/v3/grants/{grant_id}/messages/{message_id}` - [Delete a message](https://developer.nylas.com/docs/reference/api/messages/delete-message/)
- **PUT** `/v3/grants/{grant_id}/messages/clean` - [Clean messages](https://developer.nylas.com/docs/reference/api/messages/clean-messages/)
- **POST** `/v3/grants/{grant_id}/messages/send` - [Send a Message](https://developer.nylas.com/docs/reference/api/messages/send-message/)
- **GET** `/v3/grants/{grant_id}/messages/schedules` - [Return scheduled messages](https://developer.nylas.com/docs/reference/api/messages/get-schedules/)
- **GET** `/v3/grants/{grant_id}/messages/schedules/{scheduleId}` - [Return a scheduled message](https://developer.nylas.com/docs/reference/api/messages/get-schedule-by-id/)
- **DELETE** `/v3/grants/{grant_id}/messages/schedules/{scheduleId}` - [Cancel a scheduled message](https://developer.nylas.com/docs/reference/api/messages/delete-a-scheduled-message/)

### [Threads](https://developer.nylas.com/docs/reference/api/threads/)

- **GET** `/v3/grants/{grant_id}/threads` - [Return all threads](https://developer.nylas.com/docs/reference/api/threads/get-threads/)
- **GET** `/v3/grants/{grant_id}/threads/{thread_id}` - [Return a thread](https://developer.nylas.com/docs/reference/api/threads/get-threads-id/)
- **PUT** `/v3/grants/{grant_id}/threads/{thread_id}` - [Update a thread](https://developer.nylas.com/docs/reference/api/threads/put-threads-id/)
- **DELETE** `/v3/grants/{grant_id}/threads/{thread_id}` - [Delete a thread](https://developer.nylas.com/docs/reference/api/threads/delete-threads-id/)

### [Drafts](https://developer.nylas.com/docs/reference/api/drafts/)

- **GET** `/v3/grants/{grant_id}/drafts` - [Return all Drafts](https://developer.nylas.com/docs/reference/api/drafts/get-drafts/)
- **POST** `/v3/grants/{grant_id}/drafts` - [Create a Draft](https://developer.nylas.com/docs/reference/api/drafts/post-draft/)
- **GET** `/v3/grants/{grant_id}/drafts/{draft_id}` - [Return a Draft](https://developer.nylas.com/docs/reference/api/drafts/get-draft-id/)
- **POST** `/v3/grants/{grant_id}/drafts/{draft_id}` - [Send a Draft](https://developer.nylas.com/docs/reference/api/drafts/send-draft-id/)
- **PUT** `/v3/grants/{grant_id}/drafts/{draft_id}` - [Update a draft](https://developer.nylas.com/docs/reference/api/drafts/put-drafts-id/)
- **DELETE** `/v3/grants/{grant_id}/drafts/{draft_id}` - [Delete a Draft](https://developer.nylas.com/docs/reference/api/drafts/delete-drafts-id/)

### [Folders](https://developer.nylas.com/docs/reference/api/folders/)

- **GET** `/v3/grants/{grant_id}/folders` - [Return all folders](https://developer.nylas.com/docs/reference/api/folders/get-folder/)
- **POST** `/v3/grants/{grant_id}/folders` - [Create a Folder](https://developer.nylas.com/docs/reference/api/folders/post-folder/)
- **GET** `/v3/grants/{grant_id}/folders/{folder_id}` - [Return a Folder](https://developer.nylas.com/docs/reference/api/folders/get-folders-id/)
- **PUT** `/v3/grants/{grant_id}/folders/{folder_id}` - [Update a folder](https://developer.nylas.com/docs/reference/api/folders/put-folders-id/)
- **DELETE** `/v3/grants/{grant_id}/folders/{folder_id}` - [Delete a Folder](https://developer.nylas.com/docs/reference/api/folders/delete-folders-id/)

### [Smart compose](https://developer.nylas.com/docs/reference/api/smart-compose/)

- **POST** `/v3/grants/{grant_id}/messages/smart-compose` - [Compose a message](https://developer.nylas.com/docs/reference/api/smart-compose/post-smart-compose/)
- **POST** `/v3/grants/{grant_id}/messages/{message_id}/smart-compose` - [Compose a reply](https://developer.nylas.com/docs/reference/api/smart-compose/post-smart-compose-reply/)

### [Attachments](https://developer.nylas.com/docs/reference/api/attachments/)

- **GET** `/v3/grants/{grant_id}/attachments/{attachment_id}` - [Return Attachment metadata](https://developer.nylas.com/docs/reference/api/attachments/get-attachments-id/)
- **GET** `/v3/grants/{grant_id}/attachments/{attachment_id}/download` - [Download an Attachment](https://developer.nylas.com/docs/reference/api/attachments/get-attachments-id-download/)
- **POST** `/v3/grants/{grant_id}/attachment-uploads` - [Create an attachment upload session](https://developer.nylas.com/docs/reference/api/attachments/create-attachment-upload-session/)
- **POST** `/v3/grants/{grant_id}/attachment-uploads/{attachment_id}/complete` - [Complete an attachment upload session](https://developer.nylas.com/docs/reference/api/attachments/complete-attachment-upload-session/)

### [Transactional send](https://developer.nylas.com/docs/reference/api/transactional-send/)

- **POST** `/v3/domains/{domain_name}/messages/send` - [Send a transactional email](https://developer.nylas.com/docs/reference/api/transactional-send/send-transactional-email/)

### [Signatures](https://developer.nylas.com/docs/reference/api/signatures/)

- **GET** `/v3/grants/{grant_id}/signatures` - [Return all signatures](https://developer.nylas.com/docs/reference/api/signatures/list-signatures/)
- **POST** `/v3/grants/{grant_id}/signatures` - [Create a signature](https://developer.nylas.com/docs/reference/api/signatures/post-signature/)
- **GET** `/v3/grants/{grant_id}/signatures/{signature_id}` - [Return a signature](https://developer.nylas.com/docs/reference/api/signatures/get-signature/)
- **PUT** `/v3/grants/{grant_id}/signatures/{signature_id}` - [Update a signature](https://developer.nylas.com/docs/reference/api/signatures/put-signature/)
- **DELETE** `/v3/grants/{grant_id}/signatures/{signature_id}` - [Delete a signature](https://developer.nylas.com/docs/reference/api/signatures/delete-signature/)

### [Calendar](https://developer.nylas.com/docs/reference/api/calendar/)

- **GET** `/v3/grants/{grant_id}/calendars` - [Return all calendars](https://developer.nylas.com/docs/reference/api/calendar/get-all-calendars/)
- **POST** `/v3/grants/{grant_id}/calendars` - [Create a calendar](https://developer.nylas.com/docs/reference/api/calendar/create-calendar/)
- **GET** `/v3/grants/{grant_id}/calendars/{calendar_id}` - [Return a calendar](https://developer.nylas.com/docs/reference/api/calendar/get-calendars-id/)
- **PUT** `/v3/grants/{grant_id}/calendars/{calendar_id}` - [Update a calendar](https://developer.nylas.com/docs/reference/api/calendar/put-calendars-id/)
- **DELETE** `/v3/grants/{grant_id}/calendars/{calendar_id}` - [Delete a calendar](https://developer.nylas.com/docs/reference/api/calendar/delete-calendars-id/)
- **POST** `/v3/calendars/availability` - [Get availability](https://developer.nylas.com/docs/reference/api/calendar/post-availability/)
- **POST** `/v3/grants/{grant_id}/calendars/free-busy` - [Get free/busy schedule](https://developer.nylas.com/docs/reference/api/calendar/post-calendars-free-busy/)

### [Events](https://developer.nylas.com/docs/reference/api/events/)

- **GET** `/v3/grants/{grant_id}/events` - [Return all events](https://developer.nylas.com/docs/reference/api/events/get-all-events/)
- **POST** `/v3/grants/{grant_id}/events` - [Create an event](https://developer.nylas.com/docs/reference/api/events/create-event/)
- **GET** `/v3/grants/{grant_id}/events/import` - [Import events](https://developer.nylas.com/docs/reference/api/events/import-events/)
- **GET** `/v3/grants/{grant_id}/events/{event_id}` - [Return an event](https://developer.nylas.com/docs/reference/api/events/get-events-id/)
- **PUT** `/v3/grants/{grant_id}/events/{event_id}` - [Update an event](https://developer.nylas.com/docs/reference/api/events/put-events-id/)
- **DELETE** `/v3/grants/{grant_id}/events/{event_id}` - [Delete an event](https://developer.nylas.com/docs/reference/api/events/delete-events-id/)
- **POST** `/v3/grants/{grant_id}/events/{event_id}/send-rsvp` - [Send RSVP](https://developer.nylas.com/docs/reference/api/events/send-rsvp/)

### [Room resources](https://developer.nylas.com/docs/reference/api/room-resources/)

- **GET** `/v3/grants/{grant_id}/resources` - [Return room resource information](https://developer.nylas.com/docs/reference/api/room-resources/list-room-resources/)

### [Contacts](https://developer.nylas.com/docs/reference/api/contacts/)

- **GET** `/v3/grants/{grant_id}/contacts` - [Return all contacts](https://developer.nylas.com/docs/reference/api/contacts/list-contact/)
- **POST** `/v3/grants/{grant_id}/contacts` - [Create contact](https://developer.nylas.com/docs/reference/api/contacts/post-contact/)
- **GET** `/v3/grants/{grant_id}/contacts/{contact_id}` - [Return a contact](https://developer.nylas.com/docs/reference/api/contacts/get-contact/)
- **PUT** `/v3/grants/{grant_id}/contacts/{contact_id}` - [Update a contact](https://developer.nylas.com/docs/reference/api/contacts/put-contact/)
- **DELETE** `/v3/grants/{grant_id}/contacts/{contact_id}` - [Delete a contact](https://developer.nylas.com/docs/reference/api/contacts/delete-contact/)
- **GET** `/v3/grants/{grant_id}/contacts/groups` - [Return all Contact Groups](https://developer.nylas.com/docs/reference/api/contacts/list-contact-groups/)

### [Configurations](https://developer.nylas.com/docs/reference/api/configurations/)

- **GET** `/v3/grants/{grant_id}/scheduling/configurations` - [Return all Configuration objects](https://developer.nylas.com/docs/reference/api/configurations/get-configurations/)
- **POST** `/v3/grants/{grant_id}/scheduling/configurations` - [Create Configuration](https://developer.nylas.com/docs/reference/api/configurations/post-configurations/)
- **GET** `/v3/grants/{grant_id}/scheduling/configurations/{configuration_id}` - [Return a Configuration](https://developer.nylas.com/docs/reference/api/configurations/get-configurations-id/)
- **PUT** `/v3/grants/{grant_id}/scheduling/configurations/{configuration_id}` - [Update Configuration](https://developer.nylas.com/docs/reference/api/configurations/put-configurations-id/)
- **DELETE** `/v3/grants/{grant_id}/scheduling/configurations/{configuration_id}` - [Delete a Configuration](https://developer.nylas.com/docs/reference/api/configurations/delete-configurations-id/)

### [Sessions](https://developer.nylas.com/docs/reference/api/sessions/)

- **POST** `/v3/scheduling/sessions` - [Create a session](https://developer.nylas.com/docs/reference/api/sessions/post-sessions/)
- **DELETE** `/v3/scheduling/sessions/{session_id}` - [Delete a session](https://developer.nylas.com/docs/reference/api/sessions/delete-session/)

### [Bookings](https://developer.nylas.com/docs/reference/api/bookings/)

- **POST** `/v3/scheduling/bookings` - [Book an event](https://developer.nylas.com/docs/reference/api/bookings/post-bookings/)
- **GET** `/v3/scheduling/bookings/{booking_id}` - [Return a booking](https://developer.nylas.com/docs/reference/api/bookings/get-bookings-id/)
- **PUT** `/v3/scheduling/bookings/{booking_id}` - [Confirm a booking](https://developer.nylas.com/docs/reference/api/bookings/put-bookings-id/)
- **PATCH** `/v3/scheduling/bookings/{booking_id}` - [Reschedule a booking](https://developer.nylas.com/docs/reference/api/bookings/patch-bookings-id/)
- **DELETE** `/v3/scheduling/bookings/{booking_id}` - [Delete a booking](https://developer.nylas.com/docs/reference/api/bookings/delete-bookings-id/)

### [Availability](https://developer.nylas.com/docs/reference/api/availability/)

- **GET** `/v3/scheduling/availability` - [Get availability](https://developer.nylas.com/docs/reference/api/availability/get-availability/)

### [Group Events](https://developer.nylas.com/docs/reference/api/group-events/)

- **GET** `/v3/grants/{grant_id}/scheduling/configurations/{configuration_id}/group-events` - [Get all group events](https://developer.nylas.com/docs/reference/api/group-events/get-group-events/)
- **POST** `/v3/grants/{grant_id}/scheduling/configurations/{configuration_id}/group-events` - [Create group event](https://developer.nylas.com/docs/reference/api/group-events/create-group-event/)
- **PUT** `/v3/grants/{grant_id}/scheduling/configurations/{configuration_id}/group-events/{event_id}` - [Update a group event](https://developer.nylas.com/docs/reference/api/group-events/put-group-event/)
- **DELETE** `/v3/grants/{grant_id}/scheduling/configurations/{configuration_id}/group-events/{event_id}` - [Delete a group event](https://developer.nylas.com/docs/reference/api/group-events/delete-group-event/)
- **POST** `/v3/scheduling/configurations/{configuration_id}/import-group-events` - [Import group events](https://developer.nylas.com/docs/reference/api/group-events/import-group-events/)
- **POST** `/v3/scheduling/configurations/{configuration_id}/group-events/validate-timeslot` - [Validate time slot](https://developer.nylas.com/docs/reference/api/group-events/validate-time-slot/)

### [Notetaker](https://developer.nylas.com/docs/reference/api/notetaker/)

- **GET** `/v3/grants/{grant_id}/notetakers` - [Return all Notetakers](https://developer.nylas.com/docs/reference/api/notetaker/get-all-notetakers/)
- **POST** `/v3/grants/{grant_id}/notetakers` - [Invite Notetaker to meeting](https://developer.nylas.com/docs/reference/api/notetaker/invite-notetaker/)
- **GET** `/v3/grants/{grant_id}/notetakers/{notetaker_id}` - [Return a Notetaker](https://developer.nylas.com/docs/reference/api/notetaker/get-notetaker/)
- **PATCH** `/v3/grants/{grant_id}/notetakers/{notetaker_id}` - [Update scheduled Notetaker](https://developer.nylas.com/docs/reference/api/notetaker/update-notetaker/)
- **DELETE** `/v3/grants/{grant_id}/notetakers/{notetaker_id}` - [Delete a Notetaker](https://developer.nylas.com/docs/reference/api/notetaker/delete-notetaker/)
- **GET** `/v3/grants/{grant_id}/notetakers/{notetaker_id}/history` - [Return Notetaker history](https://developer.nylas.com/docs/reference/api/notetaker/get-notetaker-history/)
- **DELETE** `/v3/grants/{grant_id}/notetakers/{notetaker_id}/cancel` - [Cancel scheduled Notetaker](https://developer.nylas.com/docs/reference/api/notetaker/cancel-notetaker/)
- **POST** `/v3/grants/{grant_id}/notetakers/{notetaker_id}/leave` - [Remove Notetaker from meeting](https://developer.nylas.com/docs/reference/api/notetaker/post-notetaker-leave/)
- **GET** `/v3/grants/{grant_id}/notetakers/{notetaker_id}/media` - [Return Notetaker media links](https://developer.nylas.com/docs/reference/api/notetaker/get-notetaker-media/)

### [Standalone Notetaker](https://developer.nylas.com/docs/reference/api/standalone-notetaker/)

- **GET** `/v3/notetakers` - [Return all standalone Notetakers](https://developer.nylas.com/docs/reference/api/standalone-notetaker/get-all-standalone-notetakers/)
- **POST** `/v3/notetakers` - [Invite standalone Notetaker to meeting](https://developer.nylas.com/docs/reference/api/standalone-notetaker/invite-standalone-notetaker/)
- **GET** `/v3/notetakers/{notetaker_id}` - [Return a standalone Notetaker](https://developer.nylas.com/docs/reference/api/standalone-notetaker/get-standalone-notetaker/)
- **PATCH** `/v3/notetakers/{notetaker_id}` - [Update standalone Notetaker](https://developer.nylas.com/docs/reference/api/standalone-notetaker/update-standalone-notetaker/)
- **DELETE** `/v3/notetakers/{notetaker_id}` - [Delete a standalone Notetaker](https://developer.nylas.com/docs/reference/api/standalone-notetaker/delete-standalone-notetaker/)
- **GET** `/v3/notetakers/{notetaker_id}/history` - [Return standalone Notetaker history](https://developer.nylas.com/docs/reference/api/standalone-notetaker/get-standalone-notetaker-history/)
- **DELETE** `/v3/notetakers/{notetaker_id}/cancel` - [Cancel standalone Notetaker](https://developer.nylas.com/docs/reference/api/standalone-notetaker/cancel-standalone-notetaker/)
- **POST** `/v3/notetakers/{notetaker_id}/leave` - [Remove standalone Notetaker from meeting](https://developer.nylas.com/docs/reference/api/standalone-notetaker/post-standalone-notetaker-leave/)
- **GET** `/v3/notetakers/{notetaker_id}/media` - [Return standalone Notetaker media links](https://developer.nylas.com/docs/reference/api/standalone-notetaker/get-standalone-notetaker-media/)

### [Webhook Notifications](https://developer.nylas.com/docs/reference/api/webhook-notifications/)

- **GET** `/v3/webhooks` - [Get destinations for an application](https://developer.nylas.com/docs/reference/api/webhook-notifications/get-webhook-destinations-application/)
- **POST** `/v3/webhooks` - [Create a webhook destination](https://developer.nylas.com/docs/reference/api/webhook-notifications/post-webhook-destinations/)
- **GET** `/v3/webhooks/{id}` - [Get the destinations for an application by webhook ID](https://developer.nylas.com/docs/reference/api/webhook-notifications/get-webhook-by-id/)
- **PUT** `/v3/webhooks/{id}` - [Update a webhook destination](https://developer.nylas.com/docs/reference/api/webhook-notifications/put-webhook-by-id/)
- **DELETE** `/v3/webhooks/{id}` - [Delete a webhook destination](https://developer.nylas.com/docs/reference/api/webhook-notifications/delete-webhook-by-id/)
- **POST** `/v3/webhooks/rotate-secret/{id}` - [Rotate a webhook secret](https://developer.nylas.com/docs/reference/api/webhook-notifications/post-new-secret/)
- **POST** `/v3/webhooks/mock-payload` - [Get mock notification payload](https://developer.nylas.com/docs/reference/api/webhook-notifications/get_mock_webhook_payload/)
- **POST** `/v3/webhooks/send-test-event` - [Send test event](https://developer.nylas.com/docs/reference/api/webhook-notifications/send_test_event/)

### [Pub/Sub Notifications](https://developer.nylas.com/docs/reference/api/pubsub-notifications/)

- **GET** `/v3/channels/pubsub` - [Get Pub/Sub channels for an application](https://developer.nylas.com/docs/reference/api/pubsub-notifications/get-pubsub-channels/)
- **POST** `/v3/channels/pubsub` - [Create a Pub/Sub channel](https://developer.nylas.com/docs/reference/api/pubsub-notifications/create-pubsub-channel/)
- **GET** `/v3/channels/pubsub/{id}` - [Get a specific Pub/Sub channel](https://developer.nylas.com/docs/reference/api/pubsub-notifications/get-pubsub-by-id/)
- **PUT** `/v3/channels/pubsub/{id}` - [Update a Pub/Sub channel](https://developer.nylas.com/docs/reference/api/pubsub-notifications/put-pubsub-by-id/)
- **DELETE** `/v3/channels/pubsub/{id}` - [Delete a specific Pub/Sub channel](https://developer.nylas.com/docs/reference/api/pubsub-notifications/delete-pubsub-by-id/)

### [Amazon SNS Notifications](https://developer.nylas.com/docs/reference/api/amazon-sns-notifications/)

- **GET** `/v3/channels/sns` - [Get Amazon SNS channels for an application](https://developer.nylas.com/docs/reference/api/amazon-sns-notifications/get-sns-channels/)
- **POST** `/v3/channels/sns` - [Create an Amazon SNS channel](https://developer.nylas.com/docs/reference/api/amazon-sns-notifications/create-sns-channel/)
- **GET** `/v3/channels/sns/{id}` - [Get a specific Amazon SNS channel](https://developer.nylas.com/docs/reference/api/amazon-sns-notifications/get-sns-by-id/)
- **PUT** `/v3/channels/sns/{id}` - [Update an Amazon SNS channel](https://developer.nylas.com/docs/reference/api/amazon-sns-notifications/put-sns-by-id/)
- **DELETE** `/v3/channels/sns/{id}` - [Delete a specific Amazon SNS channel](https://developer.nylas.com/docs/reference/api/amazon-sns-notifications/delete-sns-by-id/)

### [Application-level templates](https://developer.nylas.com/docs/reference/api/application-level-templates/)

- **GET** `/v3/templates` - [Return all templates](https://developer.nylas.com/docs/reference/api/application-level-templates/list-app-level-templates/)
- **POST** `/v3/templates` - [Create a template](https://developer.nylas.com/docs/reference/api/application-level-templates/create-app-level-template/)
- **GET** `/v3/templates/{template_id}` - [Return a template](https://developer.nylas.com/docs/reference/api/application-level-templates/get-app-level-template/)
- **PUT** `/v3/templates/{template_id}` - [Update a template](https://developer.nylas.com/docs/reference/api/application-level-templates/update-app-level-template/)
- **DELETE** `/v3/templates/{template_id}` - [Delete a template](https://developer.nylas.com/docs/reference/api/application-level-templates/delete-app-level-template/)
- **POST** `/v3/templates/render` - [Render template as HTML](https://developer.nylas.com/docs/reference/api/application-level-templates/render-template-html/)
- **POST** `/v3/templates/{template_id}/render` - [Render a template](https://developer.nylas.com/docs/reference/api/application-level-templates/render-app-level-template/)

### [Grant-level templates](https://developer.nylas.com/docs/reference/api/grant-level-templates/)

- **GET** `/v3/grants/{grant_id}/templates` - [Return all templates](https://developer.nylas.com/docs/reference/api/grant-level-templates/get-grant-level-templates/)
- **POST** `/v3/grants/{grant_id}/templates` - [Create a template](https://developer.nylas.com/docs/reference/api/grant-level-templates/create-grant-level-template/)
- **GET** `/v3/grants/{grant_id}/templates/{template_id}` - [Return a template](https://developer.nylas.com/docs/reference/api/grant-level-templates/get-grant-level-template/)
- **PUT** `/v3/grants/{grant_id}/templates/{template_id}` - [Update a template](https://developer.nylas.com/docs/reference/api/grant-level-templates/update-grant-level-template/)
- **DELETE** `/v3/grants/{grant_id}/templates/{template_id}` - [Delete a template](https://developer.nylas.com/docs/reference/api/grant-level-templates/delete-grant-level-template/)
- **POST** `/v3/grants/{grant_id}/templates/{template_id}/render` - [Render a template](https://developer.nylas.com/docs/reference/api/grant-level-templates/render-grant-level-template/)
- **POST** `/v3/grants/{grant_id}/templates/render` - [Render template as HTML](https://developer.nylas.com/docs/reference/api/grant-level-templates/render-grant-level-template-html/)

### [Application-level workflows](https://developer.nylas.com/docs/reference/api/application-level-workflows/)

- **GET** `/v3/workflows` - [Return all workflows](https://developer.nylas.com/docs/reference/api/application-level-workflows/list-workflows/)
- **POST** `/v3/workflows` - [Create a workflow](https://developer.nylas.com/docs/reference/api/application-level-workflows/create-workflow/)
- **GET** `/v3/workflows/{workflow_id}` - [Return a workflow](https://developer.nylas.com/docs/reference/api/application-level-workflows/get-workflow/)
- **PUT** `/v3/workflows/{workflow_id}` - [Update a workflow](https://developer.nylas.com/docs/reference/api/application-level-workflows/update-workflow/)
- **DELETE** `/v3/workflows/{workflow_id}` - [Delete a workflow](https://developer.nylas.com/docs/reference/api/application-level-workflows/delete-workflow/)

### [Grant-level workflows](https://developer.nylas.com/docs/reference/api/grant-level-workflows/)

- **GET** `/v3/grants/{grant_id}/workflows` - [Return all workflows](https://developer.nylas.com/docs/reference/api/grant-level-workflows/list-grant-workflows/)
- **POST** `/v3/grants/{grant_id}/workflows` - [Create a workflow](https://developer.nylas.com/docs/reference/api/grant-level-workflows/create-grant-workflow/)
- **GET** `/v3/grants/{grant_id}/workflows/{workflow_id}` - [Get a workflow](https://developer.nylas.com/docs/reference/api/grant-level-workflows/get-grant-workflow/)
- **PUT** `/v3/grants/{grant_id}/workflows/{workflow_id}` - [Update a workflow](https://developer.nylas.com/docs/reference/api/grant-level-workflows/update-grant-workflow/)
- **DELETE** `/v3/grants/{grant_id}/workflows/{workflow_id}` - [Delete a workflow](https://developer.nylas.com/docs/reference/api/grant-level-workflows/delete-grant-workflow/)

### [Applications](https://developer.nylas.com/docs/reference/api/applications/)

- **GET** `/v3/applications` - [Get application](https://developer.nylas.com/docs/reference/api/applications/get_application/)
- **PATCH** `/v3/applications` - [Update an application](https://developer.nylas.com/docs/reference/api/applications/update_application/)
- **GET** `/v3/applications/redirect-uris` - [Get an application's callback URIs](https://developer.nylas.com/docs/reference/api/applications/get_all_callback_uris/)
- **POST** `/v3/applications/redirect-uris` - [Add callback URI to application](https://developer.nylas.com/docs/reference/api/applications/add_callback_uri/)
- **GET** `/v3/applications/redirect-uris/{id}` - [Return a callback URI](https://developer.nylas.com/docs/reference/api/applications/get_application_callback_uri/)
- **PATCH** `/v3/applications/redirect-uris/{id}` - [Update a callback URI](https://developer.nylas.com/docs/reference/api/applications/update_callback_uri/)
- **DELETE** `/v3/applications/redirect-uris/{id}` - [Delete a callback URI](https://developer.nylas.com/docs/reference/api/applications/delete_callback_uri/)

### [Connectors (Integrations)](https://developer.nylas.com/docs/reference/api/connectors-integrations/)

- **GET** `/v3/connectors` - [List connectors](https://developer.nylas.com/docs/reference/api/connectors-integrations/get_connector_all/)
- **POST** `/v3/connectors` - [Create a connector](https://developer.nylas.com/docs/reference/api/connectors-integrations/create_connector/)
- **GET** `/v3/connectors/{provider}` - [Get connector](https://developer.nylas.com/docs/reference/api/connectors-integrations/get_connector_by_provider/)
- **PATCH** `/v3/connectors/{provider}` - [Update a connector](https://developer.nylas.com/docs/reference/api/connectors-integrations/update_connector_by_provider/)
- **DELETE** `/v3/connectors/{provider}` - [Delete a connector](https://developer.nylas.com/docs/reference/api/connectors-integrations/delete_connector_by_provider/)
- **POST** `/v3/providers/detect` - [Detect provider](https://developer.nylas.com/docs/reference/api/connectors-integrations/detect_provider_by_email/)

### [Connector credentials](https://developer.nylas.com/docs/reference/api/connector-credentials/)

- **GET** `/v3/connectors/{provider}/creds` - [List credentials](https://developer.nylas.com/docs/reference/api/connector-credentials/get_credential_all/)
- **POST** `/v3/connectors/{provider}/creds` - [Create a credential](https://developer.nylas.com/docs/reference/api/connector-credentials/create_credential/)
- **GET** `/v3/connectors/{provider}/creds/{id}` - [Get credential](https://developer.nylas.com/docs/reference/api/connector-credentials/get_credential_by_id/)
- **PATCH** `/v3/connectors/{provider}/creds/{id}` - [Update a connector credential](https://developer.nylas.com/docs/reference/api/connector-credentials/patch_credential_by_id/)
- **DELETE** `/v3/connectors/{provider}/creds/{id}` - [Delete credential](https://developer.nylas.com/docs/reference/api/connector-credentials/delete_credential_by_id/)

### [Manage API keys](https://developer.nylas.com/docs/reference/api/manage-api-keys/)

- **GET** `/v3/admin/applications/{application_id}/api-keys` - [Get all API keys](https://developer.nylas.com/docs/reference/api/manage-api-keys/get-api-keys/)
- **POST** `/v3/admin/applications/{application_id}/api-keys` - [Create API key](https://developer.nylas.com/docs/reference/api/manage-api-keys/create-api-key/)
- **GET** `/v3/admin/applications/{application_id}/api-keys/{api_key_id}` - [Get API key](https://developer.nylas.com/docs/reference/api/manage-api-keys/get-api-key/)
- **DELETE** `/v3/admin/applications/{application_id}/api-keys/{api_key_id}` - [Delete API key](https://developer.nylas.com/docs/reference/api/manage-api-keys/delete-api-key/)

### [Manage Domains](https://developer.nylas.com/docs/reference/api/manage-domains/)

- **GET** `/v3/admin/domains` - [List domains](https://developer.nylas.com/docs/reference/api/manage-domains/list-domains/)
- **POST** `/v3/admin/domains` - [Create domain](https://developer.nylas.com/docs/reference/api/manage-domains/create-domain/)
- **GET** `/v3/admin/domains/{domain_id}` - [Get domain](https://developer.nylas.com/docs/reference/api/manage-domains/get-domain/)
- **PUT** `/v3/admin/domains/{domain_id}` - [Update domain](https://developer.nylas.com/docs/reference/api/manage-domains/update-domain/)
- **DELETE** `/v3/admin/domains/{domain_id}` - [Delete domain](https://developer.nylas.com/docs/reference/api/manage-domains/delete-domain/)
- **POST** `/v3/admin/domains/{domain_id}/info` - [Get domain info](https://developer.nylas.com/docs/reference/api/manage-domains/get-domain-info/)
- **POST** `/v3/admin/domains/{domain_id}/verify` - [Verify domain](https://developer.nylas.com/docs/reference/api/manage-domains/verify-domain/)

### [Workspaces](https://developer.nylas.com/docs/reference/api/workspaces/)

- **GET** `/v3/workspaces` - [Return all workspaces](https://developer.nylas.com/docs/reference/api/workspaces/get-all-workspaces/)
- **POST** `/v3/workspaces` - [Create a workspace](https://developer.nylas.com/docs/reference/api/workspaces/create-workspace/)
- **GET** `/v3/workspaces/{workspace_id}` - [Return a workspace](https://developer.nylas.com/docs/reference/api/workspaces/get-workspace/)
- **PATCH** `/v3/workspaces/{workspace_id}` - [Update a workspace](https://developer.nylas.com/docs/reference/api/workspaces/update-workspace/)
- **DELETE** `/v3/workspaces/{workspace_id}` - [Delete a workspace](https://developer.nylas.com/docs/reference/api/workspaces/delete-workspace/)
- **POST** `/v3/workspaces/auto-group` - [Automatically group grants into workspace](https://developer.nylas.com/docs/reference/api/workspaces/autogroup-workspace/)
- **POST** `/v3/workspaces/{workspace_id}/manual-assign` - [Update workplace assignments](https://developer.nylas.com/docs/reference/api/workspaces/manually-assign-workspace/)

### [Policies](https://developer.nylas.com/docs/reference/api/policies/)

- **GET** `/v3/policies` - [List policies](https://developer.nylas.com/docs/reference/api/policies/list-policies/)
- **POST** `/v3/policies` - [Create a policy](https://developer.nylas.com/docs/reference/api/policies/create-policy/)
- **GET** `/v3/policies/{policy_id}` - [Get a policy](https://developer.nylas.com/docs/reference/api/policies/get-policy/)
- **PUT** `/v3/policies/{policy_id}` - [Update a policy](https://developer.nylas.com/docs/reference/api/policies/update-policy/)
- **DELETE** `/v3/policies/{policy_id}` - [Delete a policy](https://developer.nylas.com/docs/reference/api/policies/delete-policy/)

### [Rules](https://developer.nylas.com/docs/reference/api/rules/)

- **GET** `/v3/rules` - [List rules](https://developer.nylas.com/docs/reference/api/rules/list-rules/)
- **POST** `/v3/rules` - [Create a rule](https://developer.nylas.com/docs/reference/api/rules/create-rule/)
- **GET** `/v3/rules/{rule_id}` - [Get a rule](https://developer.nylas.com/docs/reference/api/rules/get-rule/)
- **PUT** `/v3/rules/{rule_id}` - [Update a rule](https://developer.nylas.com/docs/reference/api/rules/update-rule/)
- **DELETE** `/v3/rules/{rule_id}` - [Delete a rule](https://developer.nylas.com/docs/reference/api/rules/delete-rule/)
- **GET** `/v3/grants/{grant_id}/rule-evaluations` - [List rule evaluations](https://developer.nylas.com/docs/reference/api/rules/list-rule-evaluations/)

### [Lists](https://developer.nylas.com/docs/reference/api/lists/)

- **GET** `/v3/lists` - [List lists](https://developer.nylas.com/docs/reference/api/lists/list-lists/)
- **POST** `/v3/lists` - [Create a list](https://developer.nylas.com/docs/reference/api/lists/create-list/)
- **GET** `/v3/lists/{list_id}` - [Get a list](https://developer.nylas.com/docs/reference/api/lists/get-list/)
- **PUT** `/v3/lists/{list_id}` - [Update a list](https://developer.nylas.com/docs/reference/api/lists/update-list/)
- **DELETE** `/v3/lists/{list_id}` - [Delete a list](https://developer.nylas.com/docs/reference/api/lists/delete-list/)
- **GET** `/v3/lists/{list_id}/items` - [List items in a list](https://developer.nylas.com/docs/reference/api/lists/list-list-items/)
- **POST** `/v3/lists/{list_id}/items` - [Add items to a list](https://developer.nylas.com/docs/reference/api/lists/add-list-items/)
- **DELETE** `/v3/lists/{list_id}/items` - [Remove items from a list](https://developer.nylas.com/docs/reference/api/lists/remove-list-items/)
