1"use strict";(self.webpackChunkembedded_workflow_builder_docs=self.webpackChunkembedded_workflow_builder_docs||[]).push([["230"],{37147(n,e,t){t.r(e),t.d(e,{metadata:()=>s,default:()=>a,frontMatter:()=>i,contentTitle:()=>h,toc:()=>c,assets:()=>o});var s=JSON.parse('{"id":"connectors/graphql","title":"GraphQL Connector","description":"Make GraphQL requests (queries and mutations) to a GraphQL-based API","source":"@site/docs/connectors/graphql.md","sourceDirName":"connectors","slug":"/connectors/graphql","permalink":"/connectors/graphql","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"title":"GraphQL Connector","sidebar_label":"GraphQL","description":"Make GraphQL requests (queries and mutations) to a GraphQL-based API"},"sidebar":"docs","previous":{"title":"GoTo Webinar","permalink":"/connectors/gotowebinar"},"next":{"title":"Greenhouse","permalink":"/connectors/greenhouse"}}'),r=t(74848),d=t(28453);let i={title:"GraphQL Connector",sidebar_label:"GraphQL",description:"Make GraphQL requests (queries and mutations) to a GraphQL-based API"},h,o={},c=[{value:"API Documentation",id:"api-documentation",level:2},{value:"Connections",id:"connections",level:2},{value:"API Key",id:"apikey",level:3},{value:"Basic Username/Password",id:"basic",level:3},{value:"OAuth 2.0 Authorization Code",id:"authorizationcode",level:3},{value:"OAuth 2.0 Client Credentials",id:"clientcredentials",level:3},{value:"Actions",id:"actions",level:2},{value:"GraphQL Request",id:"graphqlrequest",level:3}];function l(n){let e={a:"a",br:"br",code:"code",h2:"h2",h3:"h3",img:"img",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,d.R)(),...n.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(e.p,{children:[(0,r.jsx)(e.img,{alt:"GraphQL",src:t(42742).A+"#connector-icon",width:"32",height:"32"}),"\nThe ",(0,r.jsx)(e.strong,{children:"GraphQL"})," component allows you to make requests to a ",(0,r.jsx)(e.a,{href:"https://graphql.org/",children:"GraphQL"}),"-based API."]}),"\n",(0,r.jsx)(e.h2,{id:"api-documentation",children:"API Documentation"}),"\n",(0,r.jsxs)(e.p,{children:["For further information on GraphQL please refer to the following guide: ",(0,r.jsx)(e.a,{href:"https://graphql.org/learn/",children:"Introduction to GraphQL"})]}),"\n",(0,r.jsx)(e.h2,{id:"connections",children:"Connections"}),"\n",(0,r.jsx)(e.h3,{id:"apikey",children:"API Key"}),"\n",(0,r.jsx)(e.p,{children:"API Key connection"}),"\n",(0,r.jsxs)(e.p,{children:["If an API Key connection is supplied, an ",(0,r.jsx)(e.code,{children:"Authorization: Basic ${APIKEY}"})," header is used in the HTTP request."]}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(e.table,{children:[(0,r.jsx)(e.thead,{children:(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.th,{children:"Input"}),(0,r.jsx)(e.th,{children:"Comments"}),(0,r.jsx)(e.th,{children:"Default"})]})}),(0,r.jsxs)(e.tbody,{children:[(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"API Key"}),(0,r.jsx)(e.td,{children:"API Key"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Authentication Scheme"}),(0,r.jsx)(e.td,{children:"The authentication scheme to use"}),(0,r.jsx)(e.td,{children:"Basic"})]})]})]}),"\n",(0,r.jsx)(e.h3,{id:"basic",children:"Basic Username/Password"}),"\n",(0,r.jsx)(e.p,{children:"Basic Username and Password connection"}),"\n",(0,r.jsxs)(e.p,{children:["If a Basic Auth connection is supplied, an ",(0,r.jsx)(e.code,{children:"Authorization: Basic ${base64(USERNAME:PASSWORD)}"})," header is used in the HTTP request."]}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(e.table,{children:[(0,r.jsx)(e.thead,{children:(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.th,{children:"Input"}),(0,r.jsx)(e.th,{children:"Comments"}),(0,r.jsx)(e.th,{children:"Default"})]})}),(0,r.jsxs)(e.tbody,{children:[(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Username"}),(0,r.jsx)(e.td,{children:"Username"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Password"}),(0,r.jsx)(e.td,{children:"Password"}),(0,r.jsx)(e.td,{})]})]})]}),"\n",(0,r.jsx)(e.h3,{id:"authorizationcode",children:"OAuth 2.0 Authorization Code"}),"\n",(0,r.jsx)(e.p,{children:"OAuth 2.0 Authorization Code flow"}),"\n",(0,r.jsxs)(e.p,{children:["If an OAuth 2.0 connection are supplied, an ",(0,r.jsx)(e.code,{children:"Authorization: Bearer ${KEY}"})," header is used in the HTTP request, where ",(0,r.jsx)(e.code,{children:"KEY"})," is the client key that is fetched from the OAuth provider."]}),"\n",(0,r.jsxs)(e.p,{children:["This connection uses OAuth 2.0, a common authentication mechanism for integrations.\nRead about how OAuth 2.0 works ",(0,r.jsx)(e.a,{href:"/oauth2",children:"here"}),"."]}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(e.table,{children:[(0,r.jsx)(e.thead,{children:(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.th,{children:"Input"}),(0,r.jsx)(e.th,{children:"Comments"}),(0,r.jsx)(e.th,{children:"Default"})]})}),(0,r.jsxs)(e.tbody,{children:[(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Authorize URL"}),(0,r.jsx)(e.td,{children:"The OAuth 2.0 Authorization URL for the API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Token URL"}),(0,r.jsx)(e.td,{children:"The OAuth 2.0 Token URL for the API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Scopes"}),(0,r.jsx)(e.td,{children:"Space separated OAuth 2.0 permission scopes for the API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Client ID"}),(0,r.jsx)(e.td,{children:"Client Identifier of your app for the API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Client Secret"}),(0,r.jsx)(e.td,{children:"Client Secret of your app for the API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Headers"}),(0,r.jsx)(e.td,{children:"Additional header to supply to authorization requests"}),(0,r.jsx)(e.td,{})]})]})]}),"\n",(0,r.jsx)(e.h3,{id:"clientcredentials",children:"OAuth 2.0 Client Credentials"}),"\n",(0,r.jsx)(e.p,{children:"OAuth 2.0 Client Credentials flow"}),"\n",(0,r.jsxs)(e.p,{children:["This connection uses OAuth 2.0, a common authentication mechanism for integrations.\nRead about how OAuth 2.0 works ",(0,r.jsx)(e.a,{href:"/oauth2",children:"here"}),"."]}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(e.table,{children:[(0,r.jsx)(e.thead,{children:(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.th,{children:"Input"}),(0,r.jsx)(e.th,{children:"Comments"}),(0,r.jsx)(e.th,{children:"Default"})]})}),(0,r.jsxs)(e.tbody,{children:[(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Token URL"}),(0,r.jsx)(e.td,{children:"The OAuth 2.0 Token URL for the API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Scopes"}),(0,r.jsx)(e.td,{children:"Space separated OAuth 2.0 permission scopes for the API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Client ID"}),(0,r.jsx)(e.td,{children:"Client Identifier of your app for the API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Client Secret"}),(0,r.jsx)(e.td,{children:"Client Secret of your app for the API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Headers"}),(0,r.jsx)(e.td,{children:"Additional header to supply to token requests"}),(0,r.jsx)(e.td,{})]})]})]}),"\n",(0,r.jsx)(e.h2,{id:"actions",children:"Actions"}),"\n",(0,r.jsx)(e.h3,{id:"graphqlrequest",children:"GraphQL Request"}),"\n",(0,r.jsx)(e.p,{children:"Issue a generic GraphQL request"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(e.table,{children:[(0,r.jsx)(e.thead,{children:(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.th,{children:"Input"}),(0,r.jsx)(e.th,{children:"Comments"}),(0,r.jsx)(e.th,{children:"Default"})]})}),(0,r.jsxs)(e.tbody,{children:[(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Connection"}),(0,r.jsx)(e.td,{}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"GraphQL Endpoint"}),(0,r.jsx)(e.td,{children:"The endpoint of the GraphQL API"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Query or Mutation"}),(0,r.jsx)(e.td,{}),(0,r.jsxs)(e.td,{children:["query ($customerName: String!) {",(0,r.jsx)(e.br,{})," customers(name: $customerName) {",(0,r.jsx)(e.br,{})," nodes {",(0,r.jsx)(e.br,{})," id",(0,r.jsx)(e.br,{})," labels",(0,r.jsx)(e.br,{})," users {",(0,r.jsx)(e.br,{})," nodes {",(0,r.jsx)(e.br,{})," id",(0,r.jsx)(e.br,{})," email",(0,r.jsx)(e.br,{})," }",(0,r.jsx)(e.br,{})," }",(0,r.jsx)(e.br,{})," }",(0,r.jsx)(e.br,{})," }",(0,r.jsx)(e.br,{}),"}"]})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Variables"}),(0,r.jsx)(e.td,{children:"Variables to pass in to your query or mutation"}),(0,r.jsx)(e.td,{})]}),(0,r.jsxs)(e.tr,{children:[(0,r.jsx)(e.td,{children:"Headers"}),(0,r.jsx)(e.td,{children:"Custom headers to send along with your request"}),(0,r.jsx)(e.td,{})]})]})]})]})}function a(n={}){let{wrapper:e}={...(0,d.R)(),...n.components};return e?(0,r.jsx)(e,{...n,children:(0,r.jsx)(l,{...n})}):l(n)}},42742(n,e,t){t.d(e,{A:()=>s});let s="data:image/png;base64,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"},28453(n,e,t){t.d(e,{R:()=>i,x:()=>h});var s=t(96540);let r={},d=s.createContext(r);function i(n){let e=s.useContext(d);return s.useMemo(function(){return"function"==typeof n?n(e):{...e,...n}},[e,n])}function h(n){let e;return e=n.disableParentContext?"function"==typeof n.components?n.components(r):n.components||r:i(n.
1components),s.createElement(d.Provider,{value:e},n.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.