GraphQL Connection
In this article
See the Connector Marketplace topic. Please request your administrator to start a trial or subscribe to the Premium GraphQL connector.
GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data.
This topic describes how to authenticate to GraphQL and configure any necessary connection properties in the GraphQL connection connector.
Connection Configuration
Each connection property available in the GraphQL connector is explained below.
Connection Name
The name of the connection to be created should be provided. This is the name that will display on the list of available connections.
Auth Scheme
The type of authentication to use when connecting to GraphQL.
Possible Values
None: Uses no authentication.
Basic: Uses basic authentication with User and Password.
OAuth: Uses either OAuth1 or OAuth2.
OAuthPKCE: Uses OAuth2 with the authorization code grant type and PKCE extension.
URL
The URL of the GraphQL service.
Specify the URL of the GraphQL service.
Example: https://api.example.com/graphql
.
The fields that appear upon selection of different Auth Schemes are explained further.
Basic
If Basic
is selected, additional configuration parameter will get listed.
User
The GraphQL user account used to authenticate.
Password
The password used to authenticate the user.
OAuth
Set this to use OAuth1 or OAuth2 authentication.
If OAuth
is selected, additional configuration parameters will get listed.
OAuth Version
The version of OAuth being used. The following options are available:
Disabled
1.0
2.0
Client ID
The client ID assigned when you register your application with an OAuth authorization server.
Client Secret
The client secret assigned when you register your application with an OAuth authorization server.
Refresh Token
The OAuth refresh token for the corresponding OAuth access token.
OAuthPKCE
Set this to use OAuth2 authentication with the authorization code grant type and PKCE extension.
If OAuthPKCE
is selected, additional configuration parameters will get listed.
OAuth Version
The version of OAuth being used. The following options are available:
Disabled
1.0
2.0
Client ID
The client ID assigned when you register your application with an OAuth authorization server.
Client Secret
The client secret assigned when you register your application with an OAuth authorization server.
Refresh Token
The OAuth refresh token for the corresponding OAuth access token.
Enable SSL
Option to enable SSL. This field sets whether the connector will attempt to negotiate TLS/SSL connections to the server. By default, the connector checks the server’s certificate against the system’s trusted certificate store.
SSL Client Certificate
The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL).
The name of the certificate store for the client certificate.
If the store is password protected, specify the password in the SSL Client Cert Password field.
Designations of certificate stores are platform-dependent.
The following are designations of the most common User and Machine certificate stores in Windows:
Certificate Designation | Description |
---|---|
MY | A certificate store holding personal certificates with their associated private keys. |
CA | Certifying authority certificates. |
ROOT | Root certificates. |
SPC | Software publisher certificates. |
In Java, the certificate store normally is a file containing certificates and optional private keys.
When the certificate store type is PFXFile, this property must be set to the name of the file.
When the type is PFXBlob, the property must be set to the binary contents of a PFX file (for example, PKCS12 certificate store).
SSL Client Cert Type
The type of key store containing the TLS/SSL client certificate.
This property can be set to one of the following values:
Property Value | Description |
---|---|
USER - default | For Windows, this specifies that the certificate store is a certificate store owned by the current user. Note that this store type is not available in Java. |
MACHINE | For Windows, this specifies that the certificate store is a machine store. Note that this store type is not available in Java. |
PFXFILE | The certificate store is the name of a PFX (PKCS12) file containing certificates. |
PFXBLOB | The certificate store is a string (base-64-encoded) representing a certificate store in PFX (PKCS12) format. |
JKSFILE | The certificate store is the name of a Java key store (JKS) file containing certificates. Note that this store type is only available in Java. |
JKSBLOB | The certificate store is a string (base-64-encoded) representing a certificate store in JKS format. Note that this store type is only available in Java. |
PEMKEY_FILE | The certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate. |
PEMKEY_BLOB | The certificate store is a string (base64-encoded) that contains a private key and an optional certificate. |
PUBLIC_KEY_FILE | The certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate. |
PUBLIC_KEY_BLOB | The certificate store is a string (base-64-encoded) that contains a PEM- or DER-encoded public key certificate. |
SSHPUBLIC_KEY_FILE | The certificate store is the name of a file that contains an SSH-style public key. |
SSHPUBLIC_KEY_BLOB | The certificate store is a string (base-64-encoded) that contains an SSH-style public key. |
P7BFILE | The certificate store is the name of a PKCS7 file containing certificates. |
PPKFILE | The certificate store is the name of a file that contains a PuTTY Private Key (PPK). |
XMLFILE | The certificate store is the name of a file that contains a certificate in XML format. |
XMLBLOB | The certificate store is a string that contains a certificate in XML format. |
SSL Client Cert Password
If the certificate store is of a type that requires a password, this property is used to specify that password to open the certificate store.
SSL Client Cert Subject
The subject of the TLS/SSL client certificate.
When loading a certificate the subject is used to locate the certificate in the store.
If an exact match is not found, the store is searched for subjects containing the value of the property. If a match is still not found, the property is set to an empty string, and no certificate is selected.
The special value “*” picks the first certificate in the certificate store.
The certificate subject is a comma separated list of distinguished name fields and values. For example, “CN=www.server.com, OU=test, C=US, E=support@company.com”.
The common fields and their meanings are shown below.
Field | Meaning |
---|---|
CN | Common Name. This is commonly a host name like www.server.com. |
O | Organization |
OU | Organizational Unit |
L | Locality |
S | State |
C | Country |
E | Email Address |
Upload Keystore File
If SSL is enabled, a keystore file has to be uploaded using this option.
Add Configuration: Additional properties can be added using this option as key-value pairs.
After entering all the details, click on the TEST button.
If the connection service identification and authentication details are provided correctly, a success message stating “connection available” is generated.
Click on the CREATE button to save the changes.
If the details are incorrect or the server is down, you will get a message “Connection unavailable”.
If you have any feedback on Gathr documentation, please email us!