{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"GRC Connector","siteUrl":"https://docs.synqly.com","lang":"en-US","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"grc-connector","__idx":0},"children":["GRC Connector"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Connects your application to your customers' Governance, Risk, and Compliance (GRC) platforms. Synqly supports reading compliance frameworks, controls, tests, evidence, and the compliance state of devices and personnel from the GRC platform."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The GRC Connector connects your application to your customers' compliance"," ","platforms, such as Secureframe and Vanta. It normalizes each vendor's"," ","compliance data into a single API so your integration works the same way"," ","regardless of which platform your customer uses."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"frameworks-controls-and-tests","__idx":1},"children":["Frameworks, controls, and tests"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["framework"]}," is a compliance standard the organization is tracking (SOC 2,"," ","ISO 27001, and so on). A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["control"]}," is a specific requirement within one or"," ","more frameworks. A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["test"]}," is an automated check that validates a control and"," ","carries a current pass/fail status. Controls carry their framework mappings in"," ","the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["standards"]}," field."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"devices-and-personnel","__idx":2},"children":["Devices and personnel"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/devices"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/personnel"]}," operations return the compliance ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["state"]}," of"," ","every device and person the platform tracks — compliant entities included — as"," ","OCSF Compliance Findings. Each finding carries the per-control verdicts in"," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["compliance.checks"]},", with the device or person as the finding's subject."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A check the platform did not report is ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not"]}," reported as a failure. OCSF"," ","reserves ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status_id"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["2"]}," (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Warning"]},") for a check that \"did not yield a result"," ","due to missing information\", which is exactly an unevaluated control, while"," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["3"]}," (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Fail"]},") asserts that a control was evaluated and failed. Such a check"," ","therefore appears in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["compliance.checks"]}," as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Warning"]},", and the finding's"," ","overall ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["compliance.status_id"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Fail"]}," if any check actually failed,"," ","otherwise ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Warning"]}," if any check was unevaluated, otherwise ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Pass"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"pagination","__idx":3},"children":["Pagination"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The GRC connector implements pagination using a cursor. Responses return a"," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cursor"]}," field which can be included in the next request to retrieve the next"," ","page of results. When the end is reached, an empty string is returned. The"," ","number of results is controlled with the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["limit"]}," query parameter, defaulting"," ","to 100."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"provider-coverage","__idx":4},"children":["Provider coverage"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Not every provider supports every field. For example, control status is"," ","available on the control detail endpoint but not always on the list endpoint,"," ","and requirement-level mapping is exposed by some providers but not others."," ","Consult the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://docs.synqly.com/api-reference/management/capabilities"},"children":["capabilities API"]}," ","to determine what a given provider supports."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"api-reference","__idx":5},"children":["API Reference"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For full API documentation see the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/connectors/grc"},"children":["GRC API Reference"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To create an integration with the GRC connector, use the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/management/integrations/integrations_create"},"children":["Create Integration API"]}," endpoint, using one of the provider configs below."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"supported-providers","__idx":6},"children":["Supported Providers"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Secureframe (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["grc_secureframe"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"supported-operators-by-provider","__idx":7},"children":["Supported Operators by Provider"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"API"},"children":["API"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Secureframe"},"children":["Secureframe"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["get_control"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_controls"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["get_device"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_devices"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_evidence"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_frameworks"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["get_personnel"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_personnel"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["get_test"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_tests"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"apis-with-filters","__idx":8},"children":["APIs with Filters"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"API"},"children":["API"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Secureframe"},"children":["Secureframe"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_controls"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅ [",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/connectors/grc/query-filters#secureframe-filters-for-query_controls"},"children":["docs"]},"]"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_devices"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅ [",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/connectors/grc/query-filters#secureframe-filters-for-query_devices"},"children":["docs"]},"]"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_evidence"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅ [",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/connectors/grc/query-filters#secureframe-filters-for-query_evidence"},"children":["docs"]},"]"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_personnel"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅ [",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/connectors/grc/query-filters#secureframe-filters-for-query_personnel"},"children":["docs"]},"]"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query_tests"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["✅ [",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/connectors/grc/query-filters#secureframe-filters-for-query_tests"},"children":["docs"]},"]"]}]}]}]}]}]},"headings":[{"value":"GRC Connector","id":"grc-connector","depth":1},{"value":"Frameworks, controls, and tests","id":"frameworks-controls-and-tests","depth":2},{"value":"Devices and personnel","id":"devices-and-personnel","depth":2},{"value":"Pagination","id":"pagination","depth":2},{"value":"Provider coverage","id":"provider-coverage","depth":2},{"value":"API Reference","id":"api-reference","depth":2},{"value":"Supported Providers","id":"supported-providers","depth":2},{"value":"Supported Operators by Provider","id":"supported-operators-by-provider","depth":2},{"value":"APIs with Filters","id":"apis-with-filters","depth":2}],"frontmatter":{"seo":{"title":"GRC Connector"},"slug":"/guides/connectors/grc/overview","redirects":{"/grc-connector-overview":{}},"title":"GRC Connector","category":"6578eb2cf8c19404008add64","hidden":false,"order":0},"lastModified":"2026-09-11T04:14:33.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/connectors/grc/overview","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}