Matillion ETL Data Model for Shopify
|
string
"OAuth"
string
""
AppId for the admin API.
string
""
The full URL of your Shopify shop.
string
""
The User and Password are together used to authenticate with the server.
string
"OFF"
The following options are available:
string
""
As part of registering an OAuth application, you will receive the OAuthClientId value, sometimes also called a consumer key, and a client secret, the OAuthClientSecret.
string
""
As part of registering an OAuth application, you will receive the OAuthClientId, also called a consumer key. You will also receive a client secret, also called a consumer secret. Set the client secret in the OAuthClientSecret property.
string
""
The OAuthAccessToken property is used to connect using OAuth. The OAuthAccessToken is retrieved from the OAuth server as part of the authentication process. It has a server-dependent timeout and can be reused between requests.
The access token is used in place of your user name and password. The access token protects your credentials by keeping them on the server.
string
"%APPDATA%\\CData\\Shopify Data Provider\\OAuthSettings.txt"
When InitiateOAuth is set to GETANDREFRESH or REFRESH, the driver saves OAuth values to avoid requiring the user to manually enter OAuth connection properties and allowing the credentials to be shared across connections or processes.
Alternatively to specifying a file path, memory storage can be used instead. Memory locations are specified by using a value starting with 'memory://' followed by a unique identifier for that set of credentials (ex: memory://user1). The identifier can be anything you choose but should be unique to the user. Unlike with the file based storage, you must manually store the credentials when closing the connection with memory storage to be able to set them in the connection when the process is started again. The OAuth property values can be retrieved with a query to the sys_connection_props system table. If there are multiple connections using the same credentials, the properties should be read from the last connection to be closed.
If left unspecified, the default location is "%APPDATA%\\CData\\Shopify Data Provider\\OAuthSettings.txt" with %APPDATA% being set to the user's configuration directory:
Platform | %APPDATA% |
Windows | The value of the APPDATA environment variable |
Mac | ~/Library/Application Support |
Linux | ~/.config |
string
""
During the authentication process, the OAuth authorization server redirects the user to this URL. This value must match the callback URL you specify in your app settings.
string
""
The verifier code returned from the OAuth authorization URL. This can be used on systems where a browser cannot be launched such as headless systems.
See Establishing a Connection to obtain the OAuthVerifier value.
Set OAuthSettingsLocation along with OAuthVerifier. When you connect, the driver exchanges the OAuthVerifier for the OAuth authentication tokens and saves them, encrypted, to the specified file. Set InitiateOAuth to GETANDREFRESH automate the exchange.
Once the OAuth settings file has been generated, you can remove OAuthVerifier from the connection properties and connect with OAuthSettingsLocation set.
To automatically refresh the OAuth token values, set OAuthSettingsLocation and additionally set InitiateOAuth to REFRESH.
string
""
Pair with OAuthTokenTimestamp to determine when the AccessToken will expire.
string
""
Pair with OAuthExpiresIn to determine when the AccessToken will expire.
string
""
If using a TLS/SSL connection, this property can be used to specify the TLS/SSL certificate to be accepted from the server. Any other certificate that is not trusted by the machine is rejected.
This property can take the following forms:
Description | Example |
A full PEM Certificate (example shortened for brevity) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
A path to a local file containing the certificate | C:\cert.cer |
The public key (example shortened for brevity) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
The MD5 Thumbprint (hex values can also be either space or colon separated) | ecadbdda5a1529c58a1e9e09828d70e4 |
The SHA1 Thumbprint (hex values can also be either space or colon separated) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
If not specified, any certificate trusted by the machine is accepted.
Certificates are validated as trusted by the machine based on the System's trust store. The trust store used is the 'javax.net.ssl.trustStore' value specified for the system. If no value is specified for this property, Java's default trust store is used (for example, JAVA_HOME\lib\security\cacerts).
Use '*' to signify to accept all certificates. Note that this is not recommended due to security concerns.
string
"NONE"
This property specifies the protocol that the driver will use to tunnel traffic through the FirewallServer proxy. Note that by default, the driver connects to the system proxy; to disable this behavior and connect to one of the following proxy types, set ProxyAutoDetect to false.
Type | Default Port | Description |
TUNNEL | 80 | When this is set, the driver opens a connection to Shopify and traffic flows back and forth through the proxy. |
SOCKS4 | 1080 | When this is set, the driver sends data through the SOCKS 4 proxy specified by FirewallServer and FirewallPort and passes the FirewallUser value to the proxy, which determines if the connection request should be granted. |
SOCKS5 | 1080 | When this is set, the driver sends data through the SOCKS 5 proxy specified by FirewallServer and FirewallPort. If your proxy requires authentication, set FirewallUser and FirewallPassword to credentials the proxy recognizes. |
To connect to HTTP proxies, use ProxyServer and ProxyPort. To authenticate to HTTP proxies, use ProxyAuthScheme, ProxyUser, and ProxyPassword.
string
""
This property specifies the IP address, DNS name, or host name of a proxy allowing traversal of a firewall. The protocol is specified by FirewallType: Use FirewallServer with this property to connect through SOCKS or do tunneling. Use ProxyServer to connect to an HTTP proxy.
Note that the driver uses the system proxy by default. To use a different proxy, set ProxyAutoDetect to false.
int
0
This specifies the TCP port for a proxy allowing traversal of a firewall. Use FirewallServer to specify the name or IP address. Specify the protocol with FirewallType.
string
""
The FirewallUser and FirewallPassword properties are used to authenticate against the proxy specified in FirewallServer and FirewallPort, following the authentication method specified in FirewallType.
string
""
This property is passed to the proxy specified by FirewallServer and FirewallPort, following the authentication method specified by FirewallType.
bool
false
This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.
NOTE: When this property is set to True, the proxy used is determined as follows:
To connect to an HTTP proxy, see ProxyServer. For other proxies, such as SOCKS or tunneling, see FirewallType.
string
""
The hostname or IP address of a proxy to route HTTP traffic through. The driver can use the HTTP, Windows (NTLM), or Kerberos authentication types to authenticate to an HTTP proxy.
If you need to connect through a SOCKS proxy or tunnel the connection, see FirewallType.
By default, the driver uses the system proxy. If you need to use another proxy, set ProxyAutoDetect to false.
int
80
The port the HTTP proxy is running on that you want to redirect HTTP traffic through. Specify the HTTP proxy in ProxyServer. For other proxy types, see FirewallType.
string
"BASIC"
This value specifies the authentication type to use to authenticate to the HTTP proxy specified by ProxyServer and ProxyPort.
Note that the driver will use the system proxy settings by default, without further configuration needed; if you want to connect to another proxy, you will need to set ProxyAutoDetect to false, in addition to ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.
The authentication type can be one of the following:
If you need to use another authentication type, such as SOCKS 5 authentication, see FirewallType.
string
""
The ProxyUser and ProxyPassword options are used to connect and authenticate against the HTTP proxy specified in ProxyServer.
You can select one of the available authentication types in ProxyAuthScheme. If you are using HTTP authentication, set this to the user name of a user recognized by the HTTP proxy. If you are using Windows or Kerberos authentication, set this property to a user name in one of the following formats:
user@domain domain\user
string
""
This property is used to authenticate to an HTTP proxy server that supports NTLM (Windows), Kerberos, or HTTP authentication. To specify the HTTP proxy, you can set ProxyServer and ProxyPort. To specify the authentication type, set ProxyAuthScheme.
If you are using HTTP authentication, additionally set ProxyUser and ProxyPassword to HTTP proxy.
If you are using NTLM authentication, set ProxyUser and ProxyPassword to your Windows password. You may also need these to complete Kerberos authentication.
For SOCKS 5 authentication or tunneling, see FirewallType.
By default, the driver uses the system proxy. If you want to connect to another proxy, set ProxyAutoDetect to false.
string
"AUTO"
This property determines when to use SSL for the connection to an HTTP proxy specified by ProxyServer. This value can be AUTO, ALWAYS, NEVER, or TUNNEL. The applicable values are the following:
AUTO | Default setting. If the URL is an HTTPS URL, the driver will use the TUNNEL option. If the URL is an HTTP URL, the component will use the NEVER option. |
ALWAYS | The connection is always SSL enabled. |
NEVER | The connection is not SSL enabled. |
TUNNEL | The connection is through a tunneling proxy. The proxy server opens a connection to the remote host and traffic flows back and forth through the proxy. |
string
""
The ProxyServer is used for all addresses, except for addresses defined in this property. Use semicolons to separate entries.
Note that the driver uses the system proxy settings by default, without further configuration needed; if you want to explicitly configure proxy exceptions for this connection, you need to set ProxyAutoDetect = false, and configure ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.
string
""
Once this property is set, the driver will populate the log file as it carries out various tasks, such as when authentication is performed or queries are executed. If the specified file doesn't already exist, it will be created.
Connection strings and version information are also logged, though connection properties containing sensitive information are masked automatically.
If a relative filepath is supplied, the location of the log file will be resolved based on the path found in the Location connection property.
For more control over what is written to the log file, you can adjust the Verbosity property.
Log contents are categorized into several modules. You can show/hide individual modules using the LogModules property.
To edit the maximum size of a single logfile before a new one is created, see MaxLogFileSize.
If you would like to place a cap on the number of logfiles generated, use MaxLogFileCount.
Java logging is also supported. To enable Java logging, set Logfile to:
Logfile=JAVALOG://myloggername
As in the above sample, JAVALOG:// is a required prefix to use Java logging, and you will substitute your own Logger.
The supplied Logger's getLogger method is then called, using the supplied value to create the Logger instance. If a logging instance already exists, it will reference the existing instance.
When Java logging is enabled, the Verbosity will now correspond to specific logging levels.
string
"1"
The verbosity level determines the amount of detail that the driver reports to the Logfile. Verbosity levels from 1 to 5 are supported. These are detailed in the Logging page.
string
""
Only the modules specified (separated by ';') will be included in the log file. By default all modules are included.
See the Logging page for an overview.
string
"100MB"
When the limit is hit, a new log is created in the same folder with the date and time appended to the end. The default limit is 100 MB. Values lower than 100 kB will use 100 kB as the value instead.
Adjust the maximum number of logfiles generated with MaxLogFileCount.
int
-1
When the limit is hit, a new log is created in the same folder with the date and time appended to the end and the oldest log file will be deleted.
The minimum supported value is 2. A value of 0 or a negative value indicates no limit on the count.
Adjust the maximum size of the logfiles generated with MaxLogFileSize.
string
"%APPDATA%\\CData\\Shopify Data Provider\\Schema"
The path to a directory which contains the schema files for the driver (.rsd files for tables and views, .rsb files for stored procedures). The folder location can be a relative path from the location of the executable. The Location property is only needed if you want to customize definitions (for example, change a column name, ignore a column, and so on) or extend the data model with new tables, views, or stored procedures.
Note: Given that this driver supports multiple schemas, the structure for Shopify custom schema files is as follows:
If left unspecified, the default location is "%APPDATA%\\CData\\Shopify Data Provider\\Schema" with %APPDATA% being set to the user's configuration directory:
Platform | %APPDATA% |
Windows | The value of the APPDATA environment variable |
Mac | ~/Library/Application Support |
Linux | ~/.config |
string
""
Listing the schemas from databases can be expensive. Providing a list of schemas in the connection string improves the performance.
string
""
Listing the tables from some databases can be expensive. Providing a list of tables in the connection string improves the performance of the driver.
This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.
Specify the tables you want in a comma-separated list. Each table should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.
Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.
string
""
Listing the views from some databases can be expensive. Providing a list of views in the connection string improves the performance of the driver.
This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.
Specify the views you want in a comma-separated list. Each view should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.
Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.
string
"REST"
Set this property to REST to use the Shopify REST API or GRAPHQL to use the Shopify GraphQL API.
bool
false
When AutoCache = true, the driver automatically maintains a cache of your table's data in the database of your choice. By default, the driver incrementally updates the cache, retrieving only changes since the last SELECT query was run if the length of time since the last run has exceeded the CacheTolerance. After the cache is updated, the query is executed against the cached data.
When AutoCache = true, the driver caches to a simple, file-based cache. You can configure its location or cache to a different database with the following properties:
string
""
You can cache to any database for which you have a JDBC driver, including CData JDBC drivers.
The cache database is determined based on the CacheDriver and CacheConnection properties. The CacheDriver is the name of the JDBC driver class that you want to use to cache data.
Note that you must also add the CacheDriver JAR file to the classpath.
The following examples show how to cache to several major databases. Refer to CacheConnection for more information on the JDBC URL syntax and typical connection properties.
The driver simplifies Derby configuration. Java DB is the Oracle distribution of Derby. The JAR file is shipped in the JDK. You can find the JAR file, derby.jar, in the db subfolder of the JDK installation. In most caching scenarios, you need to specify only the following, after adding derby.jar to the classpath:
jdbc:shopify:CacheLocation='c:/Temp/cachedir';InitiateOAuth=GETANDREFRESH;ShopUrl=https://yourshopname.myshopify.com;To customize the Derby JDBC URL, use CacheDriver and CacheConnection. For example, to cache to an in-memory database, use a JDBC URL like the following:
jdbc:shopify:CacheDriver=org.apache.derby.jdbc.EmbeddedDriver;CacheConnection='jdbc:derby:memory';InitiateOAuth=GETANDREFRESH;ShopUrl=https://yourshopname.myshopify.com;
The following is a JDBC URL for the SQLite JDBC driver:
jdbc:shopify:CacheDriver=org.sqlite.JDBC;CacheConnection='jdbc:sqlite:C:/Temp/sqlite.db';InitiateOAuth=GETANDREFRESH;ShopUrl=https://yourshopname.myshopify.com;
The following is a JDBC URL for the included CData JDBC Driver for MySQL:
jdbc:shopify:Cache Driver=cdata.jdbc.mysql.MySQLDriver;Cache Connection='jdbc:mysql:Server=localhost;Port=3306;Database=cache;User=root;Password=123456';InitiateOAuth=GETANDREFRESH;ShopUrl=https://yourshopname.myshopify.com;
The following JDBC URL uses the Microsoft JDBC Driver for SQL Server:
jdbc:shopify:Cache Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver;Cache Connection='jdbc:sqlserver://localhost\sqlexpress:7437;user=sa;password=123456;databaseName=Cache';InitiateOAuth=GETANDREFRESH;ShopUrl=https://yourshopname.myshopify.com;
The following is a JDBC URL for the Oracle Thin Client:
jdbc:shopify:Cache Driver=oracle.jdbc.OracleDriver;CacheConnection='jdbc:oracle:thin:scott/tiger@localhost:1521:orcldb';InitiateOAuth=GETANDREFRESH;ShopUrl=https://yourshopname.myshopify.com;
NOTE: If using a version of Oracle older than 9i, the cache driver will instead be oracle.jdbc.driver.OracleDriver .
The following JDBC URL uses the official PostgreSQL JDBC driver:
jdbc:shopify:CacheDriver=cdata.jdbc.postgresql.PostgreSQLDriver;CacheConnection='jdbc:postgresql:User=postgres;Password=admin;Database=postgres;Server=localhost;Port=5432;';InitiateOAuth=GETANDREFRESH;ShopUrl=https://yourshopname.myshopify.com;
string
""
The cache database is determined based on the CacheDriver and CacheConnection properties. Both properties are required to use the cache database. Examples of common cache database settings can be found below. For more information on setting the caching database's driver, refer to CacheDriver.
The connection string specified in the CacheConnection property is passed directly to the underlying CacheDriver. Consult the documentation for the specific JDBC driver for more information on the available properties. Make sure to include the JDBC driver in your application's classpath.
The driver simplifies caching to Derby, only requiring you to set the CacheLocation property to make a basic connection.
Alternatively, you can configure the connection to Derby manually using CacheDriver and CacheConnection. The following is the Derby JDBC URL syntax:
jdbc:derby:[subsubprotocol:][databaseName][;attribute=value[;attribute=value] ... ]
For example, to cache to an in-memory database, use the following:
jdbc:derby:memory
To cache to SQLite, you can use the SQLite JDBC driver. The following is the syntax of the JDBC URL:
jdbc:sqlite:dataSource
The installation includes the CData JDBC Driver for MySQL. The following is an example JDBC URL:
jdbc:mysql:User=root;Password=root;Server=localhost;Port=3306;Database=cache
The following are typical connection properties:
The JDBC URL for the Microsoft JDBC Driver for SQL Server has the following syntax:
jdbc:sqlserver://[serverName[\instance][:port]][;database=databaseName][;property=value[;property=value] ... ]
For example:
jdbc:sqlserver://localhost\sqlexpress:1433;integratedSecurity=true
The following are typical SQL Server connection properties:
To use integrated security, you will also need to add sqljdbc_auth.dll to a folder on the Windows system path. This file is located in the auth subfolder of the Microsoft JDBC Driver for SQL Server installation. The bitness of the assembly must match the bitness of your JVM.
The following is the conventional JDBC URL syntax for the Oracle JDBC Thin driver:
jdbc:oracle:thin:[userId/password]@[//]host[[:port][:sid]]
For example:
jdbc:oracle:thin:scott/tiger@myhost:1521:orcl
The following are typical connection properties:
Data Source: The connect descriptor that identifies the Oracle database. This can be a TNS connect descriptor, an Oracle Net Services name that resolves to a connect descriptor, or, after version 11g, an Easy Connect naming (the host name of the Oracle server with an optional port and service name).
The following is the JDBC URL syntax for the official PostgreSQL JDBC driver:
jdbc:postgresql:[//[host[:port]]/]database[[?option=value][[&option=value][&option=value] ... ]]
For example, the following connection string connects to a database on the default host (localhost) and port (5432):
jdbc:postgresql:postgres
The following are typical connection properties:
string
"%APPDATA%\\CData\\Shopify Data Provider"
The CacheLocation is a simple, file-based cache. The driver uses Java DB, Oracle's distribution of the Derby database. To cache to Java DB, you will need to add the Java DB JAR file to the classpath. The JAR file, derby.jar, is shipped in the JDK and located in the db subfolder of the JDK installation.
If left unspecified, the default location is "%APPDATA%\\CData\\Shopify Data Provider" with %APPDATA% being set to the user's configuration directory:
Platform | %APPDATA% |
Windows | The value of the APPDATA environment variable |
Mac | ~/Library/Application Support |
Linux | ~/.config |
int
600
The tolerance for stale data in the cache specified in seconds. This only applies when AutoCache is used. The driver checks with the data source for newer records after the tolerance interval has expired. Otherwise, it returns the data directly from the cache.
bool
false
When Offline = true, all queries execute against the cache as opposed to the live data source. In this mode, certain queries like INSERT, UPDATE, DELETE, and CACHE are not allowed.
bool
false
As you execute queries with this property set, table metadata in the Shopify catalog are cached to the file store specified by CacheLocation if set or the user's home directory otherwise. A table's metadata will be retrieved only once, when the table is queried for the first time.
The driver automatically persists metadata in memory for up to two hours when you first discover the metadata for a table or view and therefore, CacheMetadata is generally not required. CacheMetadata becomes useful when metadata operations are expensive such as when you are working with large amounts of metadata or when you have many short-lived connections.
int
0
When BatchSize is set to a value greater than 0, the batch operation will split the entire batch into separate batches of size BatchSize. The split batches will then be submitted to the server individually. This is useful when the server has limitations on the size of the request that can be submitted.
Setting BatchSize to 0 will submit the entire batch as specified.
int
0
The maximum lifetime of a connection in seconds. Once the time has elapsed, the connection object is disposed. The default is 0 which indicates there is no limit to the connection lifetime.
bool
false
When set to true, a connection will be made to Shopify when the connection is opened. This property enables the Test Connection feature available in various database tools.
This feature acts as a NOOP command as it is used to verify a connection can be made to Shopify and nothing from this initial connection is maintained.
Setting this property to false may provide performance improvements (depending upon the number of times a connection is opened).
bool
false
Set whether to include custom fields in the query to the Products table. When off, performance will increase, but you can not get and change Products custom fields.
string
"50"
The total cost of your queries cannot exceed 1,000 points at any given time, and that room is created in the app's bucket at a rate of 50 points per second.
int
-1
Limits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.
string
""
The properties listed below are available for specific use cases. Normal driver use cases and functionality should not require these properties.
Specify multiple properties in a semicolon-separated list.
CachePartial=True | Caches only a subset of columns, which you can specify in your query. |
QueryPassthrough=True | Passes the specified query to the cache database instead of using the SQL parser of the driver. |
DefaultColumnSize | Sets the default length of string fields when the data source does not provide column length in the metadata. The default value is 2000. |
ConvertDateTimeToGMT | Determines whether to convert date-time values to GMT, instead of the local time of the machine. |
RecordToFile=filename | Records the underlying socket data transfer to the specified file. |
int
60
The allowed idle time a connection can remain in the pool until the connection is closed. The default is 60 seconds.
int
100
The maximum connections in the pool. The default is 100. To disable this property, set the property value to 0 or less.
int
1
The minimum number of connections in the pool. The default is 1.
int
60
The max seconds to wait for a connection to become available. If a new connection request is waiting for an available connection and exceeds this time, an error is thrown. By default, new requests wait forever for an available connection.
string
""
This setting is particularly helpful in Entity Framework, which does not allow you to set a value for a pseudo column unless it is a table column. The value of this connection setting is of the format "Table1=Column1, Table1=Column2, Table2=Column3". You can use the "*" character to include all tables and all columns; for example, "*=*".
bool
false
If this property is set to true, the driver will allow only SELECT queries. INSERT, UPDATE, DELETE, and stored procedure queries will cause an error to be thrown.
int
50
The columns in a table must be determined by scanning table rows. This value determines the maximum number of rows that will be scanned.
Setting a high value may decrease performance. Setting a low value may prevent the data type from being determined properly, especially when there is null data.
string
""
The RTK property may be used to license a build. See the included licensing file to see how to set this property. The runtime key is only available if you purchased an OEM license.
bool
true
When SupportEnhancedSQL = true, the driver offloads as much of the SELECT statement processing as possible to Shopify and then processes the rest of the query in memory. In this way, the driver can execute unsupported predicates, joins, and aggregation.
When SupportEnhancedSQL = false, the driver limits SQL execution to what is supported by the Shopify API.
The driver determines which of the clauses are supported by the data source and then pushes them to the source to get the smallest superset of rows that would satisfy the query. It then filters the rest of the rows locally. The filter operation is streamed, which enables the driver to filter effectively for even very large datasets.
The driver uses various techniques to join in memory. The driver trades off memory utilization against the requirement of reading the same table more than once.
The driver retrieves all rows necessary to process the aggregation in memory.
int
60
If Timeout = 0, operations do not time out. The operations run until they complete successfully or until they encounter an error condition.
If Timeout expires and the operation is not yet complete, the driver throws an exception.
bool
false
This property enables connection pooling. The default is false. See Connection Pooling for information on using connection pools.
Create or view Application Charges for Billing.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM ApplicationCharges SELECT * FROM ApplicationCharges WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | False |
The Unique Identifier of the Application Charge |
Name | String | False |
The Order Number |
ApiClientId | Long | False |
The API Client ID |
Price | Decimal | False |
The price of the application charge |
Status | String | False |
The status of the application charge. Valid Values are: pending, active, declined, expired |
ReturnUrl | String | False |
The URL where the merchant is redirected after accepting a charge. |
Test | String | False |
Whether the application charge is a test transaction. Valid values:true,null |
CreatedAt | Datetime | False |
The date and time (ISO 8601 format) when the application charge was created. |
UpdatedAt | Datetime | False |
The date and time (ISO 8601 format) when the application charge was last updated. |
ChargeType | String | False |
The type of the application charge |
DecoratedReturnUrl | String | False |
The decorated return url |
Create or view Application Credit for Billing.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM ApplicationCredit SELECT * FROM ApplicationCredit WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | False |
The ID of the application credit. |
Amount | Decimal | False |
The amount refunded by the application credit. |
Description | String | False |
The description of the application credit. |
Test | String | False |
Whether the application credit is a test transaction. Valid values: true,null |
Create, read, update or delete articles
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM Articles SELECT * FROM Articles WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
The ID of the article. |
BlogId [KEY] | Long | False |
The ID of the blog containing the article. |
AdminGraphqlApiId | String | True |
Displays the Admin Graphql API id. |
Author | String | False |
The name of the author of the article. |
BodyHtml | String | False |
The text of the body of the article, complete with HTML markup. |
CreatedAt | Datetime | True |
The date and time (ISO 8601 format) when the article was created. |
Handle | String | False |
A human-friendly unique string for the article that's automatically generated from the article's title. The handle is used in the article's URL. |
Image.alt | String | False |
Alternative text that describes the image. |
Image.createdAt | Datetime | True |
The date and time when image is created. |
Image.height | Integer | False |
Height of the image. |
Image.src | String | False |
A source URL that specifies the location of the image. |
Image.width | Integer | False |
Width of the image. |
Image.attachment | String | False |
An image attached to article returned as Base64-encoded binary data. |
PublishedAt | Datetime | False |
The date and time (ISO 8601 format) when the article was published. |
SummaryHtml | String | False |
A summary of the article, complete with HTML markup. |
Tags | String | False |
Tags are additional short descriptors formatted as a string of comma-separated values. |
Template_suffix | String | False |
The name of the template an article is using if it's using an alternate template. If an article is using the default article.liquid template, then the value returned is null. |
Title | String | False |
The title of the article. |
UpdatedAt | Datetime | True |
The date and time (ISO 8601 format) when the article was last updated. |
UserId | Long | True |
A unique numeric identifier for the author of the article. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
published_status | String |
Filter articles by their publish status. Valid values are: published, unpublished and any ; default: any. |
Create, read, update or delete assets
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM Assets SELECT * FROM Assets WHERE Key='assets/abc.gif'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Key [KEY] | String | False |
The path to the asset within a theme. |
ThemeId | Long | True |
The ID for the theme that an asset belongs to. |
Attachment | String | False |
A base64-encoded image. |
Checksum | String | True |
The MD5 representation of the content, consisting of a string of 32 hexadecimal digits. May be null if an asset has not been updated recently. |
ContentType | String | True |
The MIME representation of the content, consisting of the type and subtype of the asset. |
CreatedAt | Datetime | True |
The date and time (ISO 8601 format) when the asset was created. |
PublicUrl | String | True |
The public-facing URL of the asset. |
Size | Integer | True |
The asset size in bytes. |
UpdatedAt | Datetime | True |
The date and time (ISO 8601 format) when an asset was last updated. |
Value | String | False |
The text content of the asset, such as the HTML and Liquid markup of a template file. |
Create, read, update or delete blogs
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM Blogs SELECT * FROM Blogs WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the blog. |
AdminGraphqlApiId | String | True |
Displays the Admin Graphql API id. |
Commentable | String | False |
Indicates whether readers can post comments to the blog and if comments are moderated or not. The allowed values are no, yes, moderate. The default value is no. |
CreatedAt | Datetime | True |
The date and time when the blog was created. |
Feedburner | String | False |
Feedburner is a web feed management provider and can be enabled to provide custom RSS feeds for Shopify bloggers. This property will default to blank or null unless feedburner is enabled through the shop admin. |
FeedburnerLocation | String | False |
URL to the feedburner location for blogs that have enabled feedburner through their store admin. This property will default to blank or null unless feedburner is enabled through the shop admin. |
Handle | String | False |
A human-friendly unique string for a blog automatically generated from its title. |
Metafields | String | True |
Attaches additional metadata to a store's resources. |
Tags | String | False |
Tags are additional short descriptors formatted as a string of comma-separated values. |
TemplateSuffix | String | False |
States the name of the template a blog is using if it is using an alternate template. If a blog is using the default blog.liquid template, the value returned is null. |
Title | String | False |
The title of the blog. |
UpdatedAt | Datetime | True |
The date and time when changes were last made to the blog's properties. |
Query and delete information regarding different collects.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM CollectionListings SELECT * FROM CollectionListings WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | False |
The Id of the collection this listing belongs to. |
Title | String | True |
The titke of the collection listing. |
BodyHtml | String | True |
The HTML body/description for this listing. |
DefaultProductImage | String | True |
The default product image in this listing. |
ImageCreatedAt | String | True |
The date and time the image for this listing was created at. |
ImageSource | String | True |
The source/link of the image for this listing. |
Handle | String | True |
The handle of this listing. |
UpdatedAt | Datetime | True |
The date and time when the collection listing was last modified. |
PublishedAt | Datetime | True |
The date and time when the collection listing was created. |
Query, insert, or delete information regarding different collects.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM Collects SELECT * FROM Collects WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the collect. |
CollectionId | Long | False |
The Id of the collection this collection is linked with. |
ProductId | Long | False |
The Id of the product this collection is linked with. |
Position | Int | True |
The position of this product in a manually sorted custom collection. The first position is 1. This value is applied only when the custom collection is sorted manually. |
SortValue | String | True |
This is the same value as position but padded with leading zeroes to make it alphanumeric-sortable. |
CreatedAt | Datetime | True |
The date and time when the collect was created. |
UpdatedAt | Datetime | True |
The date and time when the collect was last modified. |
Create, read, update and delete the comments.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM Comments SELECT * FROM Comments WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the comment. |
BlogId | Long | False |
A unique numeric identifier for the blog containing the article that the comment belongs to. |
ArticleId | Long | False |
A unique numeric identifier for the article that the comment belongs to. |
Author | String | False |
The name of the author of the comment. |
Body | String | False |
The basic Textile markup of a comment. |
BodyHtml | String | False |
The text of the comment, complete with HTML markup. |
CreatedAt | Datetime | True |
The date and time (ISO 8601 format) when the comment was created. |
String | False |
The email address of the author of the comment. | |
Ip | String | False |
The IP address from which the comment was posted. |
PublishedAt | String | False |
The date and time (ISO 8601 format) when the comment was published. |
Status | String | True |
The status of the comment. The allowed values are pending, approved, unapproved, spam, published, removed. |
UpdatedAt | Datetime | True |
The date and time (ISO 8601 format) when the comment was last modified. |
UserAgent | String | False |
The user agent string provided by the software used to create the comment. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
published_status | String |
Filter comments by their publish status. Valid values are: published, unpublished and any ; default: any. |
status | String |
Filter comments by their status. Valid values are: published, pending and unapproved |
Create, select, update, and delete information regarding countries.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM Countries SELECT * FROM Countries WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the country. |
Name | String | True |
The name of the country. |
Code | String | False |
The code of the country. |
Tax | Decimal | False |
The amount of tax which should be applied for this country. |
Provinces | String | False |
The sub-regions of a country, such as its provinces or states. Each sub-region has the following properties: code: The two letter province or state code, country_id: The ID for the country to which this sub-region belongs, id: The ID for the particular sub-region, name: The name of the sub-region, tax: The tax value in decimal format, tax_name: The name of the tax as it is referred to in the applicable sub-region. For example, in Canada, the sales tax in the province Ontario is referred to as HST, tax_type: The tax type. Valid values: null, normal, or harmonized. If the value is harmonized, then the tax is compounded of the provincial and federal sales taxes, tax_percentage: The tax value in percent format |
Query, insert, update, or delete information regarding different custom collections.
The driver uses the Shopify API to process search criteria that refer to the Id, ProductId, Title, Handle, PublishedStatus, UpdatedAt, and PublishedAt columns. The supported SQL operators are '=' and 'IN' for Id, '=' for the ProductId, Title, Handle, and PublishedStatus columns, and '>' and '<' for UpdatedAt and PublishedAt. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side.
SELECT * FROM CustomCollections SELECT * FROM CustomCollections WHERE Id='123' SELECT * FROM CustomCollections WHERE Id IN ('123','456') SELECT * FROM CustomCollections WHERE ProductId='123' SELECT * FROM CustomCollections WHERE Title='Ducks' SELECT * FROM CustomCollections WHERE Handle='frontpage' SELECT * FROM CustomCollections WHERE PublishedStatus='published' SELECT * FROM CustomCollections WHERE UpdatedAt > '2018-05-02' SELECT * FROM CustomCollections WHERE PublishedAt < '2017-08-15'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the custom collection. |
Title | String | False |
The title of the custom collection. |
BodyHtml | String | False |
The body/description of the custom collection. |
Image | String | False |
A JSON aggregate with information regarding the image of custom collection. |
Metafields | String | False |
Attaches additional metadata to a shop's resources: key: An identifier for the metafield. (maximum: 30 characters), namespace: A container for a set of metadata. Namespaces help distinguish between metadata created by different apps. (maximum: 20 characters), value: Information to be stored as metadata, value_type: The information type being stored. Valid values: string or integer, description (optional): Additional information about the metafield . |
Handle | String | False |
A human-friendly unique string for the custom collection automatically generated from its title. |
SortOrder | String | False |
The order in which products in the custom collection appear. |
TemplateSuffix | String | False |
The suffix of the liquid template being used. |
PublishedScope | String | False |
The sales channels in which the custom collection is visible. |
UpdatedAt | Datetime | True |
The date and time when the custom collection was last modified. |
PublishedAt | Datetime | True |
The date and time when the custom collection was published to the Online Store channel. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
ProductId | String |
Show custom collections that include a given product. |
PublishedStatus | String |
Show custom collection with a given published status: published: show only published custom collections, unpublished: show only unpublished custom collections, any: show custom collections of any published status. (default: any). |
Create, update, delete, and query customer addresses.
The driver uses the Shopify API to process WHERE clause conditions built with the following column and operator. The driver processes other filters client-side within the driver.
For example, the following queries are processed server side:
SELECT * FROM CustomerAddresses SELECT * FROM CustomerAddresses WHERE CustomerId='123' SELECT * FROM CustomerAddresses WHERE CustomerId IN ('123','456') SELECT * FROM CustomerAddresses WHERE CustomerUpdatedAt = '2018-05-04' SELECT * FROM CustomerAddresses WHERE FirstName='abc' SELECT * FROM CustomerAddresses WHERE LastName='xyz' SELECT * FROM CustomerAddresses WHERE Company='cdata' SELECT * FROM CustomerAddresses WHERE Address1='Electronic city' SELECT * FROM CustomerAddresses WHERE City='Bangalore' SELECT * FROM CustomerAddresses WHERE Country='India' SELECT * FROM CustomerAddresses WHERE Phone='9769879890'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the address. |
CustomerId [KEY] | Long | False |
A unique numeric identifier for the customer. |
CustomerUpdatedAt | Datetime | True |
The date and time when the customer information was last updated. |
Name | String | False |
The customer's name. |
FirstName | String | False |
The customer's first name. |
LastName | String | False |
The customer's last name. |
Company | String | False |
The customer's company. |
Address1 | String | False |
The customer's mailing address. |
Address2 | String | False |
An additional field for the customer's mailing address. |
City | String | False |
The customer's city. |
Province | String | False |
The customer's province or state name. |
Country | String | False |
The customer's country. |
Zip | String | False |
The customer's zip or postal code. |
Phone | String | False |
The customer's phone number for this mailing address. |
ProvinceCode | String | False |
The two-letter pcode for the customer's province or state. |
CountryCode | String | False |
The two-letter country code corresponding to the customer's country. |
CountryName | String | False |
The customer's normalized country name. |
Default | Boolean | True |
Indicates whether this address is the default address for the customer. |
Create, update, delete, and query customers.
The driver uses the Shopify API to process WHERE clause conditions built with the following column and operator. The driver processes other filters client-side within the driver.
SELECT * FROM Customers SELECT * FROM Customers WHERE Id = '123' SELECT * FROM Customers WHERE Id IN ('123', '456') SELECT * FROM Customers WHERE CreatedAt >= '2017-10-25' SELECT * FROM Customers WHERE CreatedAt <= '2017-10-25' SELECT * FROM Customers WHERE UpdatedAt <= '2017-10-25' SELECT * FROM Customers WHERE UpdatedAt >= '2017-10-25' SELECT * FROM Customers WHERE FirstName = 'abc' SELECT * FROM Customers WHERE LastName = 'xyz' SELECT * FROM Customers WHERE Email = 'abcxyz@gmail.com' SELECT * FROM Customers WHERE OrdersCount = 5 SELECT * FROM Customers WHERE Phone = '999999999' SELECT * FROM Customers WHERE VerifiedEmail = true SELECT * FROM Customers WHERE UpdatedAt = '2017-10-25'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the customer. |
LastOrderId | Long | True |
The id of the customer's last order. |
LastOrderName | String | True |
The name of the customer's last order. |
FirstName | String | False |
The customer's first name. |
LastName | String | False |
The customer's last name. |
String | False |
The unique email address of the customer. | |
Phone | String | False |
The unique phone number for this customer. |
TaxExempt | Boolean | False |
Indicates whether the customer should be charged taxes when placing orders. |
TotalSpent | Decimal | True |
The total amount of money that the customer has spent at the shop. |
OrdersCount | Integer | True |
The number of orders associated with this customer. |
AcceptsMarketing | Boolean | True |
Indicates whether the customer has consented to be sent marketing material via email. |
MultipassIdentifier | String | True |
The customer's identifier used with Multipass login. |
Note | String | False |
A note about the customer. |
State | String | True |
The state of the customer's account in a shop. |
Tags | String | False |
The tags for this customer. Separate with comma for multiple tags. |
VerifiedEmail | Boolean | True |
States whether or not the email address has been verified. |
CreatedAt | Datetime | True |
The date and time when the customer was created. |
UpdatedAt | Datetime | True |
The date and time when the customer information was updated. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
Password | String |
Password of the customer |
PasswordConfirmation | String |
Password confirmation of the customer. |
SendEmailWelcome | Boolean |
Whether to send a welcome email to the customer or not. |
SendEmailInvite | Boolean |
Whether to send an invite email to the customer or not. |
Create, select, update, and delete information regarding discount codes.
The driver uses the Shopify API to process search criteria that refer to the PriceRuleId and Id columns. The supported SQL operator is '='. The driver processes other filters client-side within the driver.
For example, the following queries are processed server side:
SELECT * FROM DiscountCodes SELECT * FROM DiscountCodes WHERE PriceRuleId='123' SELECT * FROM DiscountCodes WHERE PriceRuleId='123' AND Id='456'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false. The Shopify APIs require that queries filter on PriceRuleId, and search criteria that refer to other columns will cause an error.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the discount code. |
PriceRuleId [KEY] | Long | False |
The Id for the price rule that this discount code belongs to. |
Code | String | False |
The case-insensitive discount code that customers use at checkout. |
UsageCount | Int | True |
The number of times that the discount code has been redeemed. |
CreatedAt | Datetime | True |
The date and time when the discount code was created. |
UpdatedAt | Datetime | True |
The date and time when the discount code was last modified. |
Create, update, delete, and query draft orders.
The driver uses the Shopify API to process search criteria that refer to the Id, Status, and UpdatedAt columns. The supported SQL operators are "=" and "IN" for Id, "=" for Status, and ">" and "<" for UpdatedAt. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM DraftOrders SELECT * FROM DraftOrders WHERE Id='123' SELECT * FROM DraftOrders WHERE Id IN ('123', '456') SELECT * FROM DraftOrders WHERE Status='completed' SELECT * FROM DraftOrders WHERE UpdatedAt > '2018-02-05'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the order. |
CustomerId | Long | False |
A unique numeric identifier for the customer. |
Currency | String | False |
The three letter code (ISO 4217) for the currency used for the payment. |
String | False |
The customer's email address. | |
Name | String | True |
The customer's order name as represented by a number. |
TotalPrice | Decimal | True |
The sum of all the prices of all the items in the order, taxes and discounts included. |
SubtotalPrice | Decimal | True |
Price of the order before shipping and taxes. |
TotalTax | Decimal | False |
The sum of all the taxes applied to the order. |
TaxesIncluded | Boolean | False |
States whether or not taxes are included in the order subtotal. |
InvoiceSentAt | Datetime | True |
This auto-generated property is the date and time when the invoice was emailed to the customer. Only available for draft orders. |
Note | String | False |
The text of an optional note that a shop owner can attach to the order. |
Tags | String | False |
Additional short descriptors. |
InvoiceUrl | String | True |
The URL for the invoice. Only available for draft orders. |
TaxExempt | Boolean | True |
States whether or not taxes are exempt for this order. Only available for draft orders. |
Status | String | True |
The status of the order. Valid values: open: all open orders (default), invoice_sent: show only closed orders, completed: Show only cancelled orders. |
LineAggregate | String | False |
A JSON aggregate of line items associated with the draft order. |
BillingAddressFirstName | String | False |
The first name of the person associated with the payment method. |
BillingAddressLastName | String | False |
The last name of the person associated with the payment method. |
BillingAddressAddress1 | String | False |
The street address of the billing address. |
BillingAddressAddress2 | String | False |
An optional additional field for the street address of the billing address. |
BillingAddressPhone | String | False |
The phone number at the billing address. |
BillingAddressCity | String | False |
The city of the billing address. |
BillingAddressCompany | String | False |
The company of the person associated with the billing address. |
BillingAddressZip | String | False |
The zip or postal code of the billing address. |
BillingAddressProvince | String | False |
The name of the state or province of the billing address. |
BillingAddressCountry | String | False |
The name of the country of the billing address. |
BillingAddressLatitude | Double | False |
The latitude of the billing address. |
BillingAddressLongitude | Double | False |
The longitude of the billing address. |
BillingAddressName | String | False |
The full name of the person associated with the payment method. |
BillingAddressCountryCode | String | False |
The two-letter code for the country of the billing address. |
BillingAddressProvinceCode | String | False |
The two-letter abbreviation of the state or province of the billing address. |
BillingAddressDefault | Boolean | False |
Whether this address is the default one or not. |
ShippingAddressFirstName | String | False |
The first name of the person associated with the shipping method. |
ShippingAddressLastName | String | False |
The last name of the person associated with the shipping method. |
ShippingAddressAddress1 | String | False |
The street address of the shipping address. |
ShippingAddressAddress2 | String | False |
An optional additional field for the street address of the shipping address. |
ShippingAddressPhone | String | False |
The phone number at the shipping address. |
ShippingAddressCity | String | False |
The city of the shipping address. |
ShippingAddressCompany | String | False |
The company of the person associated with the shipping address. |
ShippingAddressZip | String | False |
The zip or postal code of the shipping address. |
ShippingAddressProvince | String | False |
The name of the state or province of the shipping address. |
ShippingAddressCountry | String | False |
The name of the country of the shipping address. |
ShippingAddressLatitude | Double | False |
The latitude of the shipping address. |
ShippingAddressLongitude | Double | False |
The longitude of the shipping address. |
ShippingAddressName | String | False |
The full name of the person associated with the shipping method. |
ShippingAddressCountryCode | String | False |
The two-letter code for the country of the shipping address. |
ShippingAddressProvinceCode | String | False |
The two-letter abbreviation of the state or province of the shipping address. |
ShippingAddressDefault | Boolean | False |
Whether this address is the default one or not. |
AppliedDiscountTitle | String | False |
The title of the applied discount for this order. Only available for draft orders. |
AppliedDiscountDescription | String | False |
The description of the applied discount for order. Only available for draft orders. |
AppliedDiscountValue | Decimal | False |
The value of the applied discount for this order. Only available for draft orders. |
AppliedDiscountValueType | String | False |
The value type of the applied discount for order. Only available for draft orders. |
AppliedDiscountAmount | Decimal | False |
The amount of the applied discount for this order. Only available for draft orders. |
CreatedAt | Datetime | True |
The date and time when the order was created. |
UpdatedAt | Datetime | True |
The date and time when the order was last modified. |
CompletedAt | Datetime | True |
The date and time when the order was completed at. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
UseCustomerDefaultAddress | Boolean |
Optional boolean that you can send as part of a draft order object to load customer shipping information. Valid values: true or false. |
Create, delete, and query information regarding fulfillment events.
The OrderId and FulfillmentId are required to query this table.
The driver uses the Shopify API to process search criteria that refer to the OrderId, FulfillmentId, and Id columns. The supported SQL operator is '='. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM FulfillmentEvents WHERE OrderId='123' AND FulfillmentId='456' SELECT * FROM FulfillmentEvents WHERE OrderId='123' AND FulfillmentId='456' AND Id='789'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A numeric unique identifier for the fulfillment event. |
OrderId [KEY] | Long | False |
The id of the order the fulfillment event belongs to. |
FulfillmentId [KEY] | Long | False |
A numeric unique identifier for the fulfillment to which the fulfillment event belongs. |
ShopId | Long | True |
A numeric unique identifier for the shop to which the fulfillment event belongs. |
Status | String | False |
The status of the fulfillment event. Valid values are: confirmed, in_transit, out_for_delivery, delivered, failure. |
EstimatedDeliveryAt | Datetime | False |
The status of the fulfillment event. Valid values are: confirmed, in_transit, out_for_delivery, delivered, failure. |
Message | String | False |
An arbitrary message describing the status. Can be provided by a shipping carrier. |
City | String | False |
The city in which the fulfillment event occurred. |
Province | String | False |
The province in which the fulfillment event occurred. |
Zip | String | False |
The zip code in the location in which the fulfillment event occurred. |
Country | String | False |
The country in which the fulfillment event occurred. |
Address1 | String | False |
The fulfillment event's street address. |
Latitude | Double | False |
Geographic coordinate specifying the north/south location of a fulfillment event. |
Longitude | Double | False |
Geographic coordinate specifying the east/west location of a fulfillment event. |
CreatedAt | Datetime | True |
The date and time when the fulfillment event was created. |
UpdatedAt | Datetime | True |
The date and time when the fulfillment event was updated. |
HappenedAt | Datetime | True |
The date and time when the fulfillment event occurred. |
Create, update, and query fulfillments.
The driver uses the Shopify API to process search criteria that refer to the Id, OrderId, CreatedAt, and UpdatedAt columns. The driver processes other filters client-side within the driver.
For example, the following queries are processed server side.
If you specify the unique identifier of the order, then this view will only list fulfillment information concerning that order. You can also retrieve a specific fulfillment by specifying OrderId and Id.
SELECT * FROM Fulfillments SELECT * FROM Fulfillments WHERE OrderId = '123' SELECT * FROM Fulfillments WHERE OrderId = '123' AND Id='567'
This view supports filtering by the CreatedAt and UpdatedAt columns on the server side.
SELECT * FROM Fulfillments WHERE CreatedAt > '2017-10-25'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the fulfillment. |
OrderId [KEY] | Long | False |
A unique numeric identifier for the order. |
LocationId [KEY] | Long | False |
A unique numeric identifier for the Location. |
NotifyCustomer | Boolean | False |
A flag indicating whether the customer should be notified |
Status | String | True |
The status of the fulfillment. |
Receipt | String | True |
Provides information about the receipt of this fulfillment. |
TrackingCompany | String | False |
The name of the tracking company. |
TrackingNumbers | String | False |
A list of comma-separated tracking numbers, provided by the shipping company. |
TrackingUrls | String | True |
The sum of all the prices of all the items in the fulfillment. |
VariantInventoryManagement | String | True |
States the name of the inventory management service. |
CreatedAt | Datetime | True |
The date and time when the fulfillment was created. |
UpdatedAt | Datetime | True |
The date and time when the fulfillment was last modified. |
LineAggregate | String | False |
A JSON aggregate of line items associated with the fulfillment. |
OrderUpdatedAt | Datetime | True |
The date and time when the order was last modified. |
OrderCreatedAt | Datetime | True |
The date and time when the order was last created. |
Operation | String | False |
An operation to apply to the fulfillment. Complete, Open, or Cancel. The allowed values are Complete, Open, Cancel. |
Query, create, update, and delete information regarding different fulfillment services.
The driver uses the Shopify API to process search criteria that refer to the Id column. The supported SQL operator is '='. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM FulfillmentServices SELECT * FROM FulfillmentServices WHERE Id='123'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the fulfillment service. |
LocationId | Long | True |
The unique identifier of the location tied to the fulfillment service. |
ProviderId | String | True |
A unique identifier for the fulfillment service provider. |
Name | String | False |
The name of the fulfillment service as seen by merchants and their customers. |
Handle | String | True |
A human-friendly unique string for the fulfillment service generated from its title. |
ServiceName | String | True |
The name of the fulfillment service. |
String | False |
The email of the fulfillment service. | |
IncludePendingStock | Boolean | False |
States if the fulfillment service includes a pending stock. |
RequiresShippingMethod | Boolean | False |
States if the fulfillment service requires products to be physically shipped. Valid values are 'true' and 'false'. |
TrackingSupport | Boolean | False |
States if the fulfillment service provides tracking numbers for packages. Valid values are |
InventoryManagement | Boolean | False |
States if the fulfillment service tracks product inventory and provides updates to Shopify. Valid values are |
FulfillmentOrdersOptIn | Boolean | True |
States if the fulfillment orders is opt in. |
CallbackUrl | String | False |
States the URL endpoint that Shopify needs to retrieve inventory and tracking updates. This field is necessary if either inventory_management or tracking_support is set to |
Format | String | False |
Specifies the format of the API output. Valid values are json and xml. |
Query and update information regarding different inventory items.
The driver uses the Shopify API to process search criteria that refer to the Id column. The supported SQL operators are '=' and 'IN'. The driver processes other filters client-side within the driver.
For example, the following queries are processed server side:
SELECT * FROM InventoryItems SELECT * FROM InventoryItems WHERE Id='123' SELECT * FROM InventoryItems WHERE Id IN ('123','456')You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false; the Shopify APIs require Id in the search criteria, and any other search criteria will cause an error.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the fulfillment. |
Cost | Decimal | False |
The unit cost of the inventory item. |
CountryCodeOfOrigin | String | False |
The two-digit code for the country where the inventory item was made. |
CountryHarmonizedSystemCodes | String | False |
An array of country-specific Harmonized System (HS) codes for the item. |
HarmonizedSystemCode | String | False |
The general Harmonized System (HS) code for the inventory item. Used if a country-specific HS code is not available. |
ProvinceCodeOfOrigin | String | False |
The two-digit code for the province where the inventory item was made. Used only if the shipping provider for the inventory item is Canada Post. |
SKU | String | False |
The unique SKU (stock keeping unit) of the inventory item. |
Tracked | Boolean | False |
Whether the inventory item is tracked. If true, then inventory quantity changes are tracked by Shopify. |
RequiresShipping | Boolean | True |
Whether a customer needs to provide a shipping address when placing an order containing the inventory item. |
CreatedAt | Datetime | True |
The date and time when the inventory item was created. |
UpdatedAt | Datetime | True |
The date and time when the inventory item was last updated. |
Query, create, and update information regarding different inventory levels.
To query this table InventoryItemId, LocationId or both should be specified. The supported SQL operators are '=' and 'IN'. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM InventoryLevels WHERE InventoryItemId='123' SELECT * FROM InventoryLevels WHERE InventoryItemId='123' AND LocationId='456' SELECT * FROM InventoryLevels WHERE InventoryItemId IN ('123','456) AND LocationId IN ('123','456')
Name | Type | ReadOnly | Description |
InventoryItemId [KEY] | Long | False |
The ID of the inventory item that the inventory level belongs to. |
LocationId [KEY] | Long | False |
The ID of the location that the inventory level belongs to. To find the ID of the location, use the Locations view. |
Available | Int | False |
The quantity of inventory items available for sale. Returns null if the inventory item is not tracked. |
UpdatedAt | Datetime | True |
The date and time (ISO 8601 format) when the inventory level was last modified. |
Operation | String | False |
An operation to apply to the InventoryLevel. Valid values for order: Adjust, Connect, Set. The allowed values are Adjust, Connect, Set. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
RelocateIfNecessary | Boolean |
Whether inventory for any previously connected locations will be relocated. This property is ignored when no fulfillment service location is involved. Used in insertions. |
DisconnectIfNecessary | Boolean |
Whether inventory for any previously connected locations will be set to 0 and the locations disconnected. This property is ignored when no fulfillment service is involved. Used in insertions. |
Create, update, delete, and query marketing events.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM MarketingEvents SELECT * FROM MarketingEvents WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the marketing event. |
RemoteId | String | False |
An optional remote identifier for a marketing event. |
BreadcrumbId | String | True |
An optional identifier for the breadcrumb of a marketing event. |
UTMCampaign | String | True |
A unique name for the UTM campaign. |
UTMSource | String | True |
The source of the UTM campaign. |
UTMMedium | String | True |
The medium of the UTM campaign. |
UTMContent | String | True |
The content of the UTM campaign. |
UTMTerm | String | True |
The term of the UTM campaign. |
EventTarget | String | True |
The target of the event. |
Description | String | True |
A description for the marketing event. |
MarketingChannel | String | False |
A broader marketing event type that is focused only on the channel. Must be one of the allowed values (`search`, `display`, `social`, `email`, `referral`). |
EventType | String | False |
The specific type of marketing event. Must be one of the allowed values (`ad`, `post`, `message`, `retargeting`, `transactional`, `affiliate`, `loyalty`, `newsletter`, `abandoned_cart`, `receipt`). |
Budget | Decimal | False |
The budget of the ad campaign. |
Paid | Boolean | False |
A boolean field to specify whether this event is paid or organic. |
BudgetType | String | False |
The type of the budget; must be either `daily` or `lifetime`. |
Currency | String | False |
The currency for the budget. |
ManageUrl | String | True |
A link to manage the marketing event, generally in the Shopify app's interface. |
PreviewUrl | String | True |
A link to view the live version of the post/ad, or to view a rendered preview of the post/ad/email in the Shopify app. |
ReferringDomain | String | False |
The destination domain of the marketing event. Required unless MarketingChannel is one of email/referral/display. |
MarketedResources | String | True |
A list of the items that were marketed in the marketing event. It's a list of dictionaries with type keys and id keys. Valid values for type are: (`product`, `collection`, `price_rule`, `page`, `article`, `homepage`). All types, other than homepage, also require an id. |
StartedAt | Datetime | False |
The timestamp when the marketing action was started, or when the email was sent, or when the Facebook post was made live, etc. |
EndedAt | Datetime | False |
For events with a duration, when the event actually ended. This may differ from ScheduledToEndAt, if the ad was stopped early, etc. |
ScheduledToEndAt | Datetime | False |
For events with a duration, when the event was supposed to end. |
Retrieves a list of metafields that belong to a resource.
The driver uses the Shopify API to process search criteria that refer to the Id, OwnerId and OwnerResource columns. The supported SQL operators are '=,IN' for the Id, OwnerResource and OwnerId columns. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM Metafields SELECT * FROM Metafields where Id = 721389482 Select * from Metafields where ID IN (Select Id from Customers) Select * from Metafields where ID IN (19422939054103,19422939185175,19422939250711,19431415152663,19431415185431) SELECT * FROM Metafields where OwnerId = 64146833431 and OwnerResource = 'product' SELECT * FROM Metafields where OwnerId = 64146833431 and OwnerResource IN ('product', 'customer') SELECT * FROM Metafields where OwnerId IN (64146833430, 64146833431) and OwnerResource = 'product' SELECT * FROM Metafields WHERE OwnerResource = 'customer' and OwnerId in (SELECT Id from Customers);
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
The unique ID of the metafield. |
Namespace | String | False |
A container for a set of metafields. You need to define a custom namespace for your metafields to distinguish them from the metafields used by other apps. |
Key | String | False |
The name of the metafield. |
Value | String | False |
The information to be stored as metadata. |
Type | String | False |
The metafield's information type. |
Description | String | False |
A description of the information that the metafield contains. |
OwnerId | Long | True |
The unique ID of the resource that the metafield is attached to. |
OwnerResource | String | True |
The type of resource that the metafield is attached to. |
CreatedAt | Datetime | True |
The date and time (ISO 8601 format) when the metafield was created. |
UpdatedAt | Datetime | True |
The date and time (ISO 8601 format) when the metafield was last updated. |
AdminGraphqlApiId | String | True |
The admin graphql api id |
Create, update, delete, and query order risks.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the order risk. |
CauseCancel | Boolean | False |
Whether this order risk is severe enough to force the cancellation of the order. |
CheckoutId | Long | True |
The ID of the checkout that the order risk belongs to. |
Display | Boolean | False |
Whether the order risk is displayed on the order details page in the Shopify admin. |
Message | String | False |
The message that's displayed to the merchant to indicate the results of the fraud check. |
OrderId | Long | True |
The ID of the order that the order risk belongs to. |
Recommendation | String | False |
The recommended action given to the merchant. The allowed values are cancel, investigate, accept. |
Score | Decimal | False |
For internal use only. A number between 0 and 1 that's assigned to the order. The closer the score is to 1, the more likely it is that the order is fraudulent. |
Source | String | False |
The source of the order risk. |
Create, update, delete, and query orders.
The driver uses the Shopify API to process search criteria that refer to the Id, CustomerId, FinancialStatus, FulfillmentStatus, CreatedAt, ProcessedAt and UpdatedAt columns. The supported SQL operators are '=' and 'IN' for Id, '=' for CustomerId, FinancialStatus, and FulfillmentStatus, and '>' and '<' for the CreatedAt, ProcessedAt, and UpdatedAt columns. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM Orders SELECT * FROM Orders WHERE Id='123' SELECT * FROM Orders WHERE CustomerId='123' SELECT * FROM Orders WHERE FinancialStatus = 'pending' SELECT * FROM Orders WHERE CreatedAt > '2017-10-25'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the order. |
Number | Long | True |
A unique identifier for the order, used by the shop owner and customer. |
CustomerId | Long | False |
A unique numeric identifier for the customer. |
CustomerFirstName | String | False |
The first name of the customer. |
CustomerLastName | String | False |
The last name of the customer. |
Currency | String | False |
The three letter code (ISO 4217) for the currency used for the payment. |
String | False |
The customer's email address. | |
Name | String | True |
The customer's order name as represented by a number. |
TotalDiscounts | Decimal | True |
The total amount of the discounts to be applied to the price of the order. |
TotalOrderItemsPrice | Decimal | True |
The sum of all the prices of all the items in the order. |
TotalPrice | Decimal | True |
The sum of all the prices of all the items in the order, taxes and discounts included. |
SubtotalPrice | Decimal | True |
Price of the order before shipping and taxes. |
TotalTax | Decimal | False |
The sum of all the taxes applied to the order. |
TotalWeight | Integer | True |
The sum of all the weights of the line items in the order, in grams. |
BrowserIp | String | True |
The IP address of the browser used by the customer when placing the order. |
BuyerAcceptsMarketing | Boolean | False |
Indicates whether or not the person who placed the order would like to receive email updates from the shop. |
CancelReason | String | True |
The reason why the order was canceled. |
CartToken | String | True |
Unique identifier for a particular cart that is attached to a particular order. |
OrderStatusUrl | String | True |
The URL pointing to the order status web page. |
Token | String | True |
Unique identifier for a particular order. |
TaxesIncluded | Boolean | False |
States whether or not taxes are included in the order subtotal. |
SourceName | String | True |
Where the order originated. |
ReferringSite | String | True |
The website that the customer clicked on to come to the shop. |
ProcessingMethod | String | True |
States the type of payment processing method. |
Phone | String | False |
The customer's phone number. |
Note | String | False |
The text of an optional note that a shop owner can attach to the order. |
LocationId | Long | True |
The unique numeric identifier for the physical location at which the order was processed. |
LandingSite | String | True |
The URL for the page where the buyer landed when entering the shop. |
Tags | String | False |
Additional short descriptors. |
FulfillmentStatus | String | False |
The fulfillment status of the order. |
FinancialStatus | String | False |
The financial status of the order. |
CustomerLocale | String | True |
The customer locale of the order. |
InvoiceSentAt | Datetime | True |
This auto-generated property is the date and time when the invoice was emailed to the customer. Only available for draft orders. |
InvoiceUrl | String | True |
The URL for the invoice. Only available for draft orders. |
TaxExempt | Boolean | True |
States whether or not taxes are exempt for this order. Only available for draft orders. |
DiscountCodes | String | True |
Applicable discount codes that can be applied to the order. |
LineAggregate | String | False |
A JSON aggregate of line items associated with the order. |
TaxAggregate | String | False |
A JSON aggregate of tax line items associated with the order. Note, these taxes are applied on the order, not on individual items. If you want them to be applied on individual items, use them in LineAggregate. Tax lines must be associated with either order or line item but not both. |
ShippingAggregate | String | False |
A JSON aggregate of shipping line items associated with the order. |
NoteAttributesAggregate | String | False |
A JSON aggregate of note attributes associated with the order. |
DiscountApplicationsAggregate | String | True |
An ordered list of stacked discount applications. |
BillingAddressFirstName | String | False |
The first name of the person associated with the payment method. |
BillingAddressLastName | String | False |
The last name of the person associated with the payment method. |
BillingAddressAddress1 | String | False |
The street address of the billing address. |
BillingAddressAddress2 | String | False |
An optional additional field for the street address of the billing address. |
BillingAddressPhone | String | False |
The phone number at the billing address. |
BillingAddressCity | String | False |
The city of the billing address. |
BillingAddressCompany | String | False |
The company of the person associated with the billing address. |
BillingAddressZip | String | False |
The zip or postal code of the billing address. |
BillingAddressProvince | String | False |
The name of the state or province of the billing address. |
BillingAddressCountry | String | False |
The name of the country of the billing address. |
BillingAddressLatitude | Double | False |
The latitude of the billing address. |
BillingAddressLongitude | Double | False |
The longitude of the billing address. |
BillingAddressName | String | False |
The full name of the person associated with the payment method. |
BillingAddressCountryCode | String | False |
The two-letter code for the country of the billing address. |
BillingAddressProvinceCode | String | False |
The two-letter abbreviation of the state or province of the billing address. |
BillingAddressDefault | Boolean | False |
Whether this address is the default one or not. |
ShippingAddressFirstName | String | False |
The first name of the person associated with the shipping method. |
ShippingAddressLastName | String | False |
The last name of the person associated with the shipping method. |
ShippingAddressAddress1 | String | False |
The street address of the shipping address. |
ShippingAddressAddress2 | String | False |
An optional additional field for the street address of the shipping address. |
ShippingAddressPhone | String | False |
The phone number at the shipping address. |
ShippingAddressCity | String | False |
The city of the shipping address. |
ShippingAddressCompany | String | False |
The company of the person associated with the shipping address. |
ShippingAddressZip | String | False |
The zip or postal code of the shipping address. |
ShippingAddressProvince | String | False |
The name of the state or province of the shipping address. |
ShippingAddressCountry | String | False |
The name of the country of the shipping address. |
ShippingAddressLatitude | Double | False |
The latitude of the shipping address. |
ShippingAddressLongitude | Double | False |
The longitude of the shipping address. |
ShippingAddressName | String | False |
The full name of the person associated with the shipping method. |
ShippingAddressCountryCode | String | False |
The two-letter code for the country of the shipping address. |
ShippingAddressProvinceCode | String | False |
The two-letter abbreviation of the state or province of the shipping address. |
ShippingAddressDefault | Boolean | False |
Whether this address is the default one or not. |
AppliedDiscountTitle | String | False |
The title of the applied discount for this order. Only available for draft orders. |
AppliedDiscountDescription | String | False |
The description of the applied discount for order. Only available for draft orders. |
AppliedDiscountValue | Decimal | False |
The value of the applied discount for this order. Only available for draft orders. |
AppliedDiscountValueType | String | False |
The value type of the applied discount for order. Only available for draft orders. |
AppliedDiscountAmount | Decimal | False |
The amount of the applied discount for this order. Only available for draft orders. |
PaymentTermsAmount | Long | True |
The amount that is owed according to the payment terms. |
PaymentTermsCurrency | String | True |
The presentment currency for the payment. |
PaymentTermsPaymentTermsName | String | True |
The name of the selected payment terms template for the order. |
PaymentTermsPaymentTermsType | String | True |
The type of selected payment terms template for the order. |
PaymentTermsDueInDays | Integer | True |
The number of days between the invoice date and due date that is defined in the selected payment terms template. |
PaymentTermsPaymentSchedules | String | True |
An array of schedules associated to the payment terms. |
ProcessedAt | Datetime | True |
The date and time when the order was imported, in ISO 8601 format. |
CreatedAt | Datetime | True |
The date and time when the order was created. |
ClosedAt | Datetime | True |
The date and time when the order was closed. |
CancelledAt | Datetime | True |
The date and time when the order was canceled. |
UpdatedAt | Datetime | True |
The date and time when the order was last modified. |
SendReceipt | Boolean | False |
Determines whether an order confirmation will be sent to the customer. The default value is false. |
SendFulfillmentReceipt | Boolean | False |
Determines whether a fulfillment confirmation will be sent to the customer. The default value is false. |
InventoryBehaviour | String | False |
Determines which inventory updating behavior is used. The following values are available: default, decrement_ignoring_policy, decrementobeying_policy The allowed values are default, decrement_ignoring_policy, decrementobeying_policy. The default value is default. |
Operation | String | False |
An operation to apply to the Order. Valid values for order: Close, Open, or Cancel. The allowed values are Close, Open, Cancel. |
TotalShippingPriceSetShopMoneyAmount | Double | True |
The amount of the shop money in the total shipping price set. |
TotalShippingPriceSetShopMoneyCurrencyCode | String | True |
The currency code of the shop money in the total shipping price set. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
Status | String |
Filter orders by their status. Valid values are: open: show only open orders, closed: show only closed orders, cancelled: show only canceled orders, any: show orders of any status,default: open. |
Create and query transactions.
The driver uses the Shopify API to process search criteria that refer to the OrderId column. The driver processes other filters client-side within the driver.
The Shopify APIs requires the search criteria to contain OrderId. For example, the following query is processed server side.
SELECT * FROM OrderTransactions WHERE OrderId = '123'When performing a query without a filter or a filter other then the OrderId column, the driver will retrieve the entire list of transactions and perform the filters client-side. The Shopify API requires that an OrderId be specified when retrieving transactions. Therefore to retrieve all the transactions, the driver will first retrieve all the OrderIds from the Orders table (essentially performing the query: SELECT Id FROM Orders). Once the OrderId values have been retrieved, the driver will issue individual requests to the Shopify API to retrieve all the transactions for each OrderId to build the result set.
SELECT * FROM OrderTransactions SELECT * FROM OrderTransactions WHERE Kind='Capture'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false. Other search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the transaction. |
OrderId | Long | False |
A unique numeric identifier for the order. |
UserId | Long | True |
The unique identifier for the user. |
LocationId | Long | True |
The ID of the physical location where the transaction was processed. |
Amount | Decimal | False |
The amount of money that the transaction was for. |
Authorization | String | True |
The authorization code associated with the transaction. |
Currency | String | True |
The three letter code (ISO 4217) for the currency used for the payment. |
DeviceId | String | True |
The unique identifier for the device. |
Gateway | String | False |
The name of the gateway the transaction was issued through. |
SourceName | String | True |
The origin of the transaction. |
Kind | String | False |
The kind of transaction. Can be any of the following: Authorization, Capture, Sale, Void, Refund. The allowed values are Authorization, Capture, Sale, Void, Refund. |
Message | String | True |
The message associated with this transaction. |
ErrorCode | String | True |
A standardized error code, independent of the payment provider. |
Status | String | False |
The status of the transaction. |
Test | Boolean | True |
The option to use the transaction for testing purposes. |
AVSResultCode | String | True |
The Response code from the address verification system. |
CreditCardBin | String | True |
The issuer identification number (IIN). |
CVVResultCode | String | True |
The Response code from the credit card company. |
CreditCardNumber | String | True |
The customer's credit card number, with most of the leading digits redacted with Xs. |
CreditCardCompany | String | True |
The name of the company who issued the customer's credit card. |
CreatedAt | Datetime | True |
The date and time when the customer was created. |
PaymentsRefundsAttributesStatus | String | True |
The current status of the refund The allowed values are pending, faliure, success, error. |
PaymentsRefundsAttributesAcquirerReferenceNumber | String | True |
A unique number associated with the transaction that can be used to track the refund. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
TransactionItemAmount | Decimal |
The amount of money that the transaction was for. Use this when inserting transactions into an order or refund. |
TransactionItemGateway | String |
The name of the gateway the transaction was issued through. Use this when inserting transactions into an order or refund. |
TransActionItemKind | String |
The kind of transaction. Can be any of the following: Authorization, Capture, Sale, Void, Refund. Use this when inserting transactions into an order or refund. The allowed values are Authorization, Capture, Sale, Void, Refund. |
TransactionItemStatus | String |
The status of the transaction. Use this when inserting transactions into an order or refund. |
TransactionItemParentId | String |
The parent id of the transaction. Use this when inserting transactions into a refund. |
UpdatedAt | Datetime |
The last time the order is updated. |
Create, read, update or delete pages
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM Pages SELECT * FROM Pages WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
The unique numeric identifier for the page. |
AdminGraphqlApiId | String | True |
Displays the Admin Graphql API id. |
Author | String | False |
The name of the person who created the page. |
BodyHtml | String | False |
The text content of the page, complete with HTML markup. |
CreatedAt | Datetime | True |
The date and time (ISO 8601 format) when the page was created. |
Handle | String | False |
A unique, human-friendly string for the page, generated automatically from its title. In online store themes, the Liquid templating language refers to a page by its handle. |
Metafields | String | True |
Additional information attached to the Page object. |
PublishedAt | Datetime | False |
The date and time (ISO 8601 format) when the page was published. Returns null when the page is hidden. |
ShopId | Long | True |
The ID of the shop to which the page belongs. |
TemplateSuffix | String | False |
The suffix of the Liquid template being used. |
Title | String | False |
The page's title. |
UpdatedAt | Datetime | True |
The date and time (ISO 8601 format) when the page was last updated. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
published_status | String |
Filter comments by their publish status. Valid values are: published, unpublished and any ; default: any. |
Create, update, delete, and query price rules.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM PriceRules SELECT * FROM PriceRules WHERE id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the price rule. |
AllocationMethod | String | False |
The allocation method of the price rule. Valid values: each: The discount is applied to each of the entitled items. across: The calculated discount amount will be applied across the entitled items. The allowed values are each, across. |
CustomerSelection | String | False |
The customer selection for the price rule. Valid values: all: The price rule is valid for all customers. prerequisite: The customer must either belong to one of the customer saved searches specified by PrerequisiteSavedSearchIds. The allowed values are all, prerequisite. |
EntitledCollectionIds | String | False |
A list of Ids of collections whose products will be eligible to the discount. It can be used only with TargetType set to line_item and TargetSelection set to entitled. It can't be used in combination with EntitledProductIds or EntitledVariantIds. |
EntitledCountryIds | String | False |
A list of Ids of shipping countries that will be entitled to the discount. It can be used only with TargetType set to shipping_line and TargetSelection set to entitled. |
EntitledProductIds | String | False |
A list of Ids of products that will be entitled to the discount. It can be used only with TargetType set to line_item and TargetSelection set to entitled. |
EntitledVariantIds | String | False |
A list of Ids of product variants that will be entitled to the discount. It can be used only with TargetType set to line_item and TargetSelection set to entitled. |
OncePerCustomer | Boolean | False |
Whether the generated discount code will be valid only for a single use per customer. This is tracked using customer Id. |
PrerequisiteCustomerIds | String | False |
A list of customer Ids which for the price rule to be applicable, the customer must match one of the specified customers. If PrerequisiteCustomerIds is populated, then PrerequisiteSavedSearchIds must be empty. |
PrerequisiteQuantityRange | String | False |
The minimum number of items for the price rule to be applicable. It has the following property: greater_than_or_equal_to: The quantity of an entitled cart item must be greater than or equal to this value. |
PrerequisiteSavedSearchIds | String | False |
A list of customer saved search Ids. For the price rule to be applicable, the customer must be in the group of customers matching a customer saved search. If PrerequisiteSavedSearchIds is populated, then PrerequisiteCustomerIds must be empty. |
PrerequisiteShippingPriceRange | String | False |
The maximum shipping price for the price rule to be applicable. It has the following property: less_than_or_equal_to: The shipping price must be less than or equal to this value. |
PrerequisiteSubtotalRange | String | False |
The minimum subtotal for the price rule to be applicable. It has the following property: greater_than_or_equal_to: The subtotal of the entitled cart items must be greater than or equal to this value for the discount to apply. |
TargetSelection | String | False |
The target selection method of the price rule. Valid values: all: The price rule applies the discount to all line items in the checkout, entitled: The price rule applies the discount to selected entitlements only. |
TargetType | String | False |
The target type that the price rule applies to. Valid values: line_item: The price rule applies to the cart's line items, shipping_line: The price rule applies to the cart's shipping lines. |
UsageLimit | Integer | False |
The maximum number of times the price rule can be used, per discount code. |
PrerequisiteProductIds | String | False |
List of product ids that will be a prerequisites for a Buy X Get Y type discount. The PrerequisiteProductIds can be used only with: TargetType set to line_item, TargetSelection set to entitled, AllocationMethod set to each and PrerequisiteToEntitlementQuantityRatio defined. Caution: If a product variant is included in PrerequisiteVariantIds, then PrerequisiteProductIds can't include the ID of the product associated with that variant. |
PrerequisiteVariantIds | String | False |
List of variant ids that will be a prerequisites for a Buy X Get Y type discount. The EntitledVariantIds can be used only with: TargetType set to line_item, TargetSelection set to entitled, AllocationMethod set to each and PrerequisiteToEntitlementQuantityRatio defined. Caution: If a product is included in PrerequisiteProductIds, then PrerequisiteVariantIds can't include the ID of any variants associated with that product. |
PrerequisiteCollectionIds | String | False |
List of collection ids that will be a prerequisites for a Buy X Get Y discount. The EntitledCollectionIds can be used only with: TargetType set to line_item, TargetSelection set to entitled, AllocationMethod set to each and PrerequisiteToEntitlementQuantityRatio defined. Cannot be used in combination with PrerequisiteProductIds or PrerequisiteVariantIds. |
Value | Decimal | False |
The value of the price rule. If if the value of target_type is shipping_line, then only -100 is accepted. The value must be negative. |
ValueType | String | False |
The value type of the price rule. Valid values: fixed_amount: Applies a discount of value as a unit of the store's currency. For example, if value is -30 and the store's currency is USD, then $30 USD is deducted when the discount is applied, percentage: Applies a percentage discount of value. For example, if value is -30, then 30% will be deducted when the discount is applied. If TargetType is shipping_line, then only percentage is accepted. |
PrerequisiteToEntitlementQuantityRatio | String | False |
Buy/Get ratio for a Buy X Get Y discount. prerequisite_quantity defines the necessary 'buy' quantity and entitled_quantity the offered 'get' quantity. The PrerequisiteToEntitlementQuantityRatio can be used only with: ValueType set to percentage, TargetType set to line_item, TargetSelection set to entitled, AllocationMethod set to each, PrerequisiteProductIds or PrerequisiteVariantIds or PrerequisiteCollectionIds defined and EntitledProductIds or EntitledVariantIds or EntitledCollectionIds defined. |
Images | String | False |
A list of image objects. |
ProductType | String | False |
A categorization that a product can be tagged with, commonly used for filtering and searching. |
Options | String | True |
Custom product property names. |
PublishedScope | String | False |
Indicates whether the product is published to the Point of Sale channel. |
Tags | String | False |
A categorization that a product can be tagged with. Use commas to separate categories. |
TemplateSuffix | String | True |
The suffix of the liquid template being used. |
Title | String | False |
The name of the product. |
Vendor | String | False |
The name of the vendor of the product. |
StartsAt | Datetime | False |
The date and time when the price rule starts. |
EndsAt | Datetime | False |
The date and time when the price rule ends. Must be after StartsAt. |
PublishedAt | Datetime | True |
The date and time when the product was published to the Online Store channel. |
CreatedAt | Datetime | True |
The date and time when the price rule was created. |
UpdatedAt | Datetime | True |
The date and time when the price rule was last modified. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
Published | Boolean |
Set to true to publish the product or to false to not publish it |
MetafieldsGlobalTitleTag | String |
The name of the product, to be used for SEO purposes. |
MetafieldsGlobalDescriptionTag | String |
The description of the product, to be used for SEO purposes. |
Query, Update and Delete Product Images
The driver uses the Shopify API to process search criteria that refer to the ProductId and ImageId. The supported SQL operators are '=' for ProductId and '=' for ImageId. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * FROM ProductImages WHERE ProductId = '123' SELECT * FROM ProductImages WHERE ProductId = '123' AND ImageId = '2342'
Name | Type | ReadOnly | Description |
ImageId [KEY] | Long | True |
A unique numeric identifier for the product image. |
ProductId | Long | True |
The id of the product associated with the image. |
VariantIds | String | False |
The array of variant ids associated with the image. |
Position | Integer | False |
The order of the product image in the list. |
FilePath | String | False |
Full path to the image. Can be locally or online. Example: http://example.com/rails_logo.gif. Either this or Base64Content are required. |
Width | Integer | True |
The width of the image. |
Height | Integer | True |
The height of the image. |
CreatedAt | Datetime | True |
The datetime when the image was created. |
UpdatedAt | Datetime | True |
The datetime when the image was updated. |
Alt | String | False |
The Alt content of the image. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
FileName | String |
The name that the image will be displayed in the application. |
Attachment | String |
Base64 encoded bytes of the image. Either this or FilePath are required. |
Query and delete product listings.
The driver uses the Shopify API to process search criteria that refer to the ProductId, UpdatedAt, and Handle columns. The supported SQL operators are '=' and 'IN' for ProductId, '=' for Handle, and '>' for the UpdatedAt column. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM ProductListings SELECT * FROM ProductListings WHERE ProductId='123' SELECT * FROM ProductListings WHERE ProductId IN ('123','456') SELECT * FROM ProductListings WHERE UpdatedAt>'2018-02-21' SELECT * FROM ProductListings WHERE Handle='ipod-nano'
Name | Type | ReadOnly | Description |
ProductId [KEY] | Long | False |
The unique identifer of the product this listing is for. The primary key for this resource. |
Title | String | False |
The name of the product. |
BodyHtml | String | False |
The description of the product, complete with HTML formatting. |
Handle | String | True |
A human-friendly unique string for the Product automatically generated from its title. |
Variants | String | True |
A list of variant objects, each one representing a slightly different version of the product. |
Images | String | False |
A list of image objects, each one representing an image associated with the product. |
ProductType | String | False |
A categorization that a product can be tagged with, commonly used for filtering and searching. |
Options | String | True |
Custom product property names like 'Size', 'Color', and 'Material'. |
Tags | String | False |
A categorization that a product can be tagged with, commonly used for filtering. |
Vendor | String | False |
The name of the vendor of the product. |
PublishedAt | Datetime | True |
The date and time when the product was published to the Online Store channel. |
CreatedAt | Datetime | True |
The date and time when the product was created. |
UpdatedAt | Datetime | True |
The date and time when the product was last modified. |
Create, update, delete, and query products.
The driver uses the Shopify API to process search criteria that refer to the following columns: Id, Title, Vendor, Handle, ProductType, PublishedStatus, CreatedAt, PublishedAt, and UpdatedAt. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side.
SELECT * FROM Products SELECT * FROM Products WHERE Id = '123' SELECT * FROM Products WHERE Id IN ('123','456') SELECT * FROM Products WHERE CreatedAt > '2017-10-25' SELECT * FROM Products WHERE Title = 'just a title' SELECT * FROM Products WHERE Vendor = 'just a vendor'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the product. |
BodyHtml | String | False |
The description of the product, complete with HTML formatting. |
Handle | String | True |
A human-friendly unique string for the Product automatically generated from its title. |
Images | String | False |
A list of image objects. |
ProductType | String | False |
A categorization that a product can be tagged with, commonly used for filtering and searching. |
Options | String | True |
Custom product property names. |
PublishedScope | String | False |
Indicates whether the product is published to the Point of Sale channel. |
Tags | String | False |
A categorization that a product can be tagged with. Use commas to separate categories. |
Status | String | False |
The status of the product. The allowed values are active, archived, draft. |
TemplateSuffix | String | True |
The suffix of the liquid template being used. |
Title | String | False |
The name of the product. |
Vendor | String | False |
The name of the vendor of the product. |
PublishedAt | Datetime | True |
The date and time when the product was published to the Online Store channel. |
CreatedAt | Datetime | True |
The date and time when the product was created. |
UpdatedAt | Datetime | True |
The date and time when the product was last modified. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
PublishedStatus | String |
Return products by their published status: published: show only published products;unpublished: show only unpublished products; any: show all products. |
Published | Boolean |
Set to true to publish the product or to false to not publish it |
MetafieldsGlobalTitleTag | String |
The name of the product, to be used for SEO purposes. |
MetafieldsGlobalDescriptionTag | String |
The description of the product, to be used for SEO purposes. |
Query and delete product listings.
The driver uses the Shopify API to process search criteria that refer to the Id and ProductId column. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side.
SELECT * FROM ProductVariants SELECT * FROM ProductVariants WHERE Id = '123' SELECT * FROM ProductVariants WHERE Id IN ('123','456) SELECT * FROM ProductVariants WHERE ProductId = '456'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the product variant. |
ProductId | Long | False |
A unique numeric identifier for the product this variant belongs to. |
InventoryItemId | String | False |
The unique identifier for the inventory item, which is used in the Inventory API to query for inventory information. |
ImageId | Long | False |
A unique numeric identifier for the image this variant belongs to. |
Price | Decimal | False |
The price of the product variant. |
CompareAtPrice | String | False |
The competitors prices for the same item. |
Title | String | False |
The name of the product. |
Grams | Integer | False |
The weight of the product variant in grams. |
Barcode | String | False |
A human-friendly unique string for the Product automatically generated from its title. |
Weight | Double | False |
The weight of the product variant in the unit system specified. |
WeightUnit | String | True |
The unit of measurement that applies to the product's variant weight. |
FulfillmentService | String | False |
Service which is doing the fulfillment. |
InventoryManagement | String | False |
Specifies whether or not Shopify tracks the number of items in stock for this product variant. |
InventoryPolicy | String | True |
Specifies whether or not customers are allowed to place an order for a product variant when it's out of stock. Valid values are deny or continue. |
InventoryQuantity | Integer | True |
The number of items in stock for this product variant. Default value 1. |
Option1 | String | False |
Custom properties that a shop owner can use to define product variants. |
Option2 | String | False |
Custom properties that a shop owner can use to define product variants. |
Option3 | String | False |
Custom properties that a shop owner can use to define product variants. |
Position | Integer | False |
The order of the product variant in the list of product variants. |
RequiresShipping | Boolean | False |
Specifies whether or not a customer needs to provide a shipping address when placing an order for this product variant. |
Sku | String | False |
A unique identifier for the product in the shop. |
Taxable | Boolean | False |
Specifies whether or not a tax is charged when the product variant is sold. |
CreatedAt | Datetime | True |
The date and time when the product variant was created. |
UpdatedAt | Datetime | True |
The date and time when the product was last modified. |
Query and update information regarding different provinces.
The driver uses the Shopify API to process search criteria that refer to the ProductId, UpdatedAt, and Handle columns. The supported SQL operators are '=' and 'IN' for ProductId, '=' for Handle, and '>' for the CreatedAt column. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refers to other columns will cause an error.
For example, the following queries are processed server side:
SELECT * FROM Provinces SELECT * FROM Provinces WHERE CountryId='123'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
The ID for the province. |
CountryId [KEY] | Long | True |
The ID for the country that the province belongs to. |
Name | String | False |
The full name of the province. |
Code | String | False |
The standard abbreviation for the province. |
Tax | Decimal | False |
The sales tax rate to be applied to orders made by customers from this province.. |
TaxPercentage | Double | False |
The province's tax in percent format. |
TaxName | String | False |
The name of the tax for this province. |
TaxType | String | False |
The tax type. Valid values: normal, null, or harmonized. If the value is harmonized, then the tax is compounded of the provincial and federal sales taxes. |
ShippingZoneId | Long | True |
The ID for the shipping zone that the province belongs to. |
Create, update, delete, and query Recurring Application Charges.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM RecurringApplicationCharges SELECT * FROM RecurringApplicationCharges WHERE Id = '123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | False |
The ID of the recurring application charge. |
Name | String | False |
The name of the recurring application charge. |
ApiClientId | String | False |
The API Client Id |
Price | Decimal | False |
The price of the recurring application charge. The maximum price is 10,000. |
Status | String | False |
The status of the recurring charge |
ReturnUrl | String | False |
The URL where the merchant is redirected after accepting the charge. |
BillingOn | Date | False |
The date and time (ISO 8601 format) when the customer was billed. |
Test | String | False |
Whether the application charge is a test transaction. |
CreatedAt | Datetime | False |
The date and time (ISO 8601 format) when the recurring application charge was created. |
UpdatedAt | Datetime | False |
The date and time (ISO 8601 format) when the recurring application charge was last updated. |
ActivatedOn | Datetime | False |
The date and time (ISO 8601 format) when the customer activated the recurring application charge. |
CancelledOn | Datetime | False |
The date and time (ISO 8601 format) when the merchant canceled their recurring application charge. |
TrialDays | Integer | False |
The number of days that the customer is eligible for a free trial. |
TrialEndsOn | Datetime | False |
The date and time (ISO 8601 format) when the free trial ends. |
DecoratedReturnUrl | String | False |
The decorated return url. |
CappedAmount | String | False |
The limit a customer can be charged for usage based billing. If this property is provided, then you must also provide the terms property. |
ConfirmationUrl | String | False |
The URL where the merchant accepts or declines the recurring application charge. |
Terms | String | False |
The terms and conditions of usage based billing charges. Must be present in order to create usage charges, |
Create, read, update or delete redirects.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM Redirects SELECT * FROM Redirects WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
The ID for the redirect. |
Path | String | False |
The old path to be redirected. |
Target | String | False |
The target location where the user will be redirected. |
Create and query refunds.
The driver uses the Shopify API to process search criteria that refer to the OrderId column. The driver processes other filters client-side within the driver.
For example, the following queries are processed server side.
If you specify the unique identifier of the Order, then this view will only list refund information concerning that order.
SELECT * FROM Refunds SELECT * FROM Refunds WHERE OrderId = '179098550295' SELECT * FROM Refunds WHERE OrderId='179098550295' AND Id='7382073367'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false. When SupportEnhancedSQL is false, you must specify at least OrderId. The Shopify APIs require that queries contain this filter. Search criteria that refers to other columns will cause an error.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
The unique identifier for the refund. |
OrderId | Long | False |
The id of the order. |
OrderUpdatedAt | Datetime | True |
The date and time when the order was last modified. |
Note | String | False |
The optional note attached to a refund. |
Restock | Boolean | True |
Whether or not the line items were added back to the store inventory. |
UserId | Long | True |
The unique identifier of the user who performed the refund. |
CreatedAt | Datetime | True |
The date and time when the refund was created. |
ProcessedAt | Datetime | True |
The date and time when the refund was imported. |
LineAggregate | String | False |
A JSON aggregate of line items associated with the refund. |
OrderTransactionAggregate | String | False |
A JSON aggregate of transactions associated with the refund. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
Notify | Boolean |
Whether or not to send a refund notification to the customer. |
DiscrepancyReason | String |
An optional comment, used if there is a discrepancy between calculated and actual refund amounts (one of: restock, damage, customer, other) |
ShippingAmount | Decimal |
Set specific amount of shipping to refund. Takes precedence over FullRefund. |
ShippingFullRefund | Boolean |
Whether or not to to refund all remaining shipping. |
CalculateRefund | Boolean |
Set to true to simply calculate the refund but not process it The default value is false. |
Create, read, update or delete script tags.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM ScriptTags SELECT * FROM ScriptTags WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
The ID for the script tag. |
Cache | Boolean | False |
Whether the Shopify CDN can cache and serve the script tag. |
CreatedAt | Datetime | True |
The date and time (ISO 8601) when the script tag was created. |
DisplayScope | String | False |
The page or pages on the online store where the script should be included. The allowed values are online_store, order_status, all. |
Event | String | False |
The DOM event that triggers the loading of the script. Valid values: onload. |
Src | String | False |
The URL of the remote script. |
UpdatedAt | Datetime | True |
The date and time (ISO 8601) when the script tag was last updated. |
Query, insert, update, or delete information regarding different smart collections.
The driver uses the Shopify API to process search criteria that refer to the Id, ProductId, Title, Handle, PublishedStatus, UpdatedAt, PublishedAt columns. The supported SQL operators are '=' and 'IN' for Id, '=' for the ProductId, Title, Handle, and PublishedStatus columns and '>' and '<' for the UpdatedAt and PublishedAt columns. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side.
SELECT * FROM SmartCollections SELECT * FROM SmartCollections WHERE Id='123' SELECT * FROM SmartCollections WHERE Id IN ('123','456') SELECT * FROM SmartCollections WHERE ProductId='123' SELECT * FROM SmartCollections WHERE Title='Ducks' SELECT * FROM SmartCollections WHERE Handle='frontpage' SELECT * FROM SmartCollections WHERE PublishedStatus='published' SELECT * FROM SmartCollections WHERE UpdatedAt > '2018-05-02' SELECT * FROM SmartCollections WHERE PublishedAt < '2017-08-15'
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
The ID of the smart collection. |
Title | String | False |
The name of the smart collection. Maximum length: 255 characters. |
BodyHtml | String | False |
The description of the smart collection. Includes HTML markup. Many shop themes display this on the smart collection page. |
Image | String | False |
A JSON aggregate with information regarding the image of smart collection. |
Rules | String | False |
A JSON aggregate with the list of rules that define what products go into the smart collection. Valid values for each rule field: column: tag, title, type, vendor, variant_price, variant_compare_at_price, variant_weight, variant_inventory, variant_title; relation: equals, greater_than, less_than, starts_with, ends_with, contains; condition: any string |
Handle | String | False |
A human-friendly unique string for the smart collection. Automatically generated from the title. Used in shop themes by the Liquid templating language to refer to the smart collection. (maximum: 255 characters) |
Disjunctive | Boolean | False |
Whether the product must match all the rules to be included in the smart collection. Valid values: true: products only need to match one or more of the rules to be included in the smart collection, false: products must match all of the rules to be included in the smart collection. |
SortOrder | String | False |
The order in which products in the smart collection appear. |
TemplateSuffix | String | False |
The suffix of the Liquid template that the shop uses. By default, the original template is called product.liquid, and additional templates are called product.suffix.liquid. |
PublishedScope | String | False |
Whether the smart collection is published to Point of Sale. Valid values: web: The smart collection is published to the shop's online channels and not published to the Point of Sale channel, global: The smart collection is published to both the online channels and the Point of Sale channel. |
UpdatedAt | Datetime | True |
The date and time when the smart collection was last modified. |
PublishedAt | Datetime | True |
The date and time when the smart collection was published. Returns null when the collection is hidden. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
ProductId | String |
Show smart collections that include a given product. |
PublishedStatus | String |
Show smart collection with a given published status: published: show only published smart collections, unpublished: show only unpublished smart collections, any: show all smart collections. (default: any). |
Create, read, update or delete themes
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM Themes SELECT * FROM Themes WHERE Id='123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | True |
A unique numeric identifier for the theme. |
AdminGraphqlApiId | String | True |
Displays the Admin Graphql API id. |
CreatedAt | Datetime | True |
The date and time (ISO 8601 format) when the theme was created. |
Name | String | False |
The name of the theme. |
Previewable | Boolean | True |
Whether the theme can currently be previewed. |
Processing | Boolean | True |
Whether files are still being copied into place for this theme. |
Role | String | False |
Specifies how the theme is being used within the shop. The allowed values are main, published, demo. |
ThemeStoreId | Long | True |
A unique identifier applied to Shopify-made themes that are installed from the Shopify Theme Store Theme Store. |
UpdatedAt | Datetime | True |
The date and time ( ISO 8601 format) when the theme was last updated. |
Create or view Usage Charges for Recurring Application Charges.
The driver processes all filters client-side within the driver. The following queries are the only ones processed server side:
SELECT * FROM UsageCharges SELECT * FROM UsageCharges WHERE Id = 123 SELECT * FROM UsageCharges WHERE RecurringApplicationId = 5569619 SELECT * FROM UsageCharges WHERE RecurringApplicationId = 5569619 and Id = 123You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | ReadOnly | Description |
Id [KEY] | Long | False |
The ID of the usage charge. |
Description | String | False |
The name of the usage charge. |
Price | Decimal | False |
The price of the usage charge. |
CreatedAt | Datetime | False |
The date and time (ISO 8601 format) when the usage charge was created. |
BillingOn | Date | False |
The date and time (ISO 8601 format) when the customer is billed. |
BalanceUsed | Decimal | False |
The used balance |
BalanceRemaining | Decimal | False |
The remaining balance |
RiskLevel | Integer | False |
The risk Level |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
RecurringApplicationId | Long |
The Id of the RecurringApplication Charge |
Query abandoned checkouts.
The driver uses the Shopify API to process search criteria that refer to the CreatedAt and UpdatedAt columns. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * FROM AbandonedCheckouts SELECT * FROM AbandonedCheckouts WHERE CreatedAt > '2017-10-25'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
Id | Long | The unique numeric identifier for the order. |
AbandonedCheckoutUrl | String | The full recovery URL to be sent to a customer to recover their abandoned checkout. |
BuyerAcceptsMarketing | Boolean | Indicates whether or not the person who placed the order would like to receive email updates from the shop. |
CancelReason | String | The reason why the order was cancelled. |
CartToken | String | Unique identifier for a particular cart that is attached to a particular order. |
Currency | String | The three letter code (ISO 4217) for the currency used for the payment. |
CustomerId | Long | A unique numeric identifier for the customer. |
DiscountCodes | String | Applicable discount codes that can be applied to the order. |
String | The customer's email address. | |
Note | String | The text of an optional note that a shop owner can attach to the order. |
LandingSite | String | The URL for the page where the buyer landed when entering the shop. |
ReferringSite | String | The website that the customer clicked on to come to the shop. |
SourceName | String | Where the order originated. |
SubtotalPrice | Decimal | Price of the order before shipping and taxes. |
TotalDiscounts | Decimal | The total amount of the discounts to be applied to the price of the order. |
TotalLineItemsPrice | Decimal | The sum of all the prices of all the items in the order. |
TotalPrice | Decimal | The sum of all the prices of all the items in the order, taxes and discounts included. |
TotalTax | Decimal | The sum of all the taxes applied to the order. |
TotalWeight | Double | The sum of all the weights of the line items in the order, in grams. |
TaxesIncluded | Boolean | States whether or not taxes are included in the order subtotal. |
Token | String | Unique identifier for a particular order. |
BillingAddressFirstName | String | The first name of the person associated with the payment method. |
BillingAddressLastName | String | The last name of the person associated with the payment method. |
BillingAddressAdress1 | String | The street address of the billing address. |
BillingAddressAdress2 | String | An optional additional field for the street address of the billing address. |
BillingAddressPhone | String | The phone number at the billing address. |
BillingAddressCity | String | The city of the billing address. |
BillingAddressCompany | String | The company of the person associated with the billing address. |
BillingAddressZip | String | The zip or postal code of the billing address. |
BillingAddressProvince | String | The name of the state or province of the billing address. |
BillingAddressCountry | String | The name of the country of the billing address. |
BillingAddressLatitude | Double | The latitude of the billing address. |
BillingAddressLongitude | Double | The longitude of the billing address. |
BillingAddressName | String | The full name of the person associated with the payment method. |
BillingAddressCountryCode | String | The two-letter code for the country of the billing address. |
BillingAddressProvinceCode | String | The two-letter abbreviation of the state or province of the billing address. |
BillingAddressDefault | Boolean | Whether this address is the default one or not. |
ShippingAddressFirstName | String | The first name of the person associated with the shipping address. |
ShippingAddressLastName | String | The last name of the person associated with the shipping address. |
ShippingAddressAdress1 | String | The street address of the shipping address. |
ShippingAddressAdress2 | String | An optional additional field for the street address of the shipping address. |
ShippingAddressPhone | String | The phone number at the shipping address. |
ShippingAddressCity | String | The city of the shipping address. |
ShippingAddressCompany | String | The company of the person associated with the shipping address. |
ShippingAddressZip | String | The zip or postal code of the shipping address. |
ShippingAddressProvince | String | The name of the state or province of the shipping address. |
ShippingAddressCountry | String | The name of the country of the shipping address. |
ShippingAddressLatitude | Double | The latitude of the shipping address. |
ShippingAddressLongitude | Double | The longitude of the shipping address. |
ShippingAddressName | String | The full name of the person associated with the shipping address. |
ShippingAddressCountryCode | String | The two-letter code for the country of the shipping address. |
ShippingAddressProvinceCode | String | The two-letter abbreviation of the state or province of the shipping address. |
ShippingAddressDefault | Boolean | Whether this address is the default one or not. |
ClosedAt | Datetime | The date and time when the order was closed. |
CompletedAt | Datetime | |
CreatedAt | Datetime | The date and time when the order was created. |
UpdatedAt | Datetime | The date and time when the order was last modified. |
Query abandoned checkouts items.
The driver uses the Shopify API to process search criteria that refer to the CreatedAt and UpdatedAt columns. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * FROM AbandonedCheckoutsItems SELECT * FROM AbandonedCheckoutsItems WHERE CreatedAt > '2017-10-25'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
AbandonedCheckoutId | Long | The unique numeric identifier for the order. |
ProductId | Long | The product ID od the item. |
ItemVariantId | Long | The product variant ID of item. |
ItemTitle | String | The title of the product. |
ItemQuantity | Integer | The number of products that were purchased. |
ItemPrice | Decimal | The price of the item in presentment currency. |
ItemGrams | Integer | The weight of the item in grams. |
SKU | String | A unique identifier for the item in the shop. |
VariantTitle | String | The title of the product variant. |
Vendor | String | The name of the item's supplier. |
FulFillmentsService | String | The fulfillment service provider for the item. |
CreatedAt | Datetime | The date and time when the order was created. |
UpdatedAt | Datetime | The date and time when the order was last modified. |
The AssignedFulfillmentOrder resource allows you to retrieve all the fulfillment orders that are assigned to an app at the shop level.
The driver uses the Shopify API to process search criteria that refer to the AssignedLocationId and RequestStatus columns. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * FROM AssignedFulfillmentOrders SELECT * from AssignedFulfillmentOrders where AssignedLocationId IN (1,2) SELECT * from AssignedFulfillmentOrders where RequestStatus='cancellation_requested'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
Id [KEY] | Long | The ID of the fulfillment order. |
ShopId | Long | The ID of the shop that's associated with the fulfillment order. |
OrderId | Long | The ID of the order that's associated with the fulfillment order. |
AssignedLocationId | Long | The ID of the location that has been assigned to do the work. |
FulfillmentServiceHandle | String | A unique numeric identifier for the order. |
RequestStatus | String | The status of the fulfillment. |
DestinationId | String | The ID of the fulfillment order destination. |
DestinationAddress1 | String | The first line of the address of the destination. |
DestinationAddress2 | String | The second line of the address of the destination. |
DestinationCity | String | The city of the destination. |
DestinationCompany | String | The company of the destination. |
DestinationFirstName | String | The first name of the customer at the destination. |
DestinationLastName | String | The last name of the customer at the destination. |
DestinationPhone | String | The phone number of the customer at the destination. |
LineItems | String | Represents line items belonging to a fulfillment order. |
Status | String | The status of the fulfillment order. |
Operation | String | An operation to apply to the fulfillment. Complete, Open, or Cancel.
The allowed values are Complete, Open, Cancel. |
Query note attributes belonging to an order or draft order.
The driver uses the Shopify API to process search criteria that refer to the OrderId and OrderUpdatedAt columns. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * from DiscountApplications SELECT * from DiscountApplications where OrderId='1' SELECT * from DiscountApplications where OrderId IN ('1', '2') SELECT * from DiscountApplications where OrderUpdatedAt <= '2020-07-20 08:28:03.0' SELECT * from DiscountApplications where OrderUpdatedAt > '2020-07-20 08:28:03.0'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
OrderId | Long | The id of the order. |
OrderUpdatedAt | Datetime | The date and time when the order was last modified. |
Type | String | The name of the note attribute. |
Title | String | The value of the note attribute. |
Description | String | The value of the note attribute. |
Value | String | The value of the note attribute. |
ValueType | String | The value of the note attribute. |
AllocationMethod | String | The value of the note attribute. |
TargetSelection | String | The value of the note attribute. |
TargetType | String | The value of the note attribute. |
Query order item properties.
The driver uses the Shopify API to process search criteria that refer to the DraftOrderId column. The supported SQL operators are '=' for DraftOrderId. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side.
SELECT * FROM DraftOrderItemProperties WHERE DraftOrderId = '123'
Name | Type | Description |
ItemId | Long | The id of the order item. |
DraftOrderId | Long | The id of the draft. |
Name | String | The name of the item property. |
Value | String | The value of the item property. |
Query draft order items.
The driver uses the Shopify API to process search criteria that refer to the DraftOrderId. The supported SQL operators are '=' for DraftOrderId. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side.
SELECT * FROM DraftOrderItems SELECT * FROM DraftOrderItems WHERE DraftOrderId = '123'
Name | Type | Description |
ItemId | Long | The id of the line item. |
DraftOrderId | Long | The id of the draft. |
ProductId | Long | The ID of the product corresponding to the line item product variant. |
Custom | Boolean | States whether this is a custom line item or a product variant line item |
FulfillableQuantity | Integer | The amount available to fulfill. |
FulFillmentsService | String | Service provider responsible for fulfillment. |
ItemGrams | Integer | The weight of the item in grams. |
ItemPrice | Decimal | The price of the item before discounts have been applied. |
ItemQuantity | Integer | The number of products that were purchased. |
RequiresShipping | Boolean | States whether or not the fulfillment requires shipping. |
SKU | String | A unique identifier of the item in the fulfillment. |
ItemTitle | String | The title of the product or variant. |
ItemVariantId | Long | The id of the product variant. |
VariantTitle | String | The title of the product variant. |
Vendor | String | The name of the supplier of the item. |
Name | String | The name of the product variant. |
GiftCard | Boolean | States whether or not the product is a gift card. |
Properties | String | Shows custom properties for this order item. |
Taxable | Boolean | States whether or not the product was taxable. |
TaxLines | String | Shows tax lines for this order item. |
AppliedDiscountTitle | String | The title of the applied discount for this order. Only available for draft orders. |
AppliedDiscountDescription | String | The description of the applied discount for order. Only available for draft orders. |
AppliedDiscountValue | Decimal | The value of the applied discount for this order. Only available for draft orders. |
AppliedDiscountValueType | String | The value type of the applied discount for order. Only available for draft orders. |
AppliedDiscountAmount | Decimal | The amount of the applied discount for this order. Only available for draft orders. |
Query draft order items tax lines.
Name | Type | Description |
ItemId | Long | The id of the draft line item. |
DraftOrderId | Long | The id of the draft. |
TaxTitle | String | The name of the tax. |
TaxRate | Decimal | The rate of tax to be applied. |
TaxPrice | Decimal | The amount of tax to be charged. |
Retrieve events which have happened in your shop.
The driver uses the Shopify API to process search criteria that refer to the Id, ProductId, OrderId, Verb, and CreatedAt columns. The supported SQL operators are '=' for the Id, ProductId, OrderId, and Verb columns and ">" and "<" for CreatedAt. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM Events SELECT * FROM Events WHERE Id='123' SELECT * FROM Events WHERE ProductId='123' SELECT * FROM Events WHERE OrderId='123' SELECT * FROM Events WHERE Verb='Confirmed' SELECT * FROM Events WHERE CreatedAt > '2018-05-02'
Name | Type | Description |
Id [KEY] | Long | The ID of the event. |
Description | String | A human readable description of the event. |
Message | String | A human readable description of the event. Can contain some HTML formatting. |
Body | String | A text field containing information about the event. |
Path | String | A relative URL to the resource the event is for, if applicable. |
SubjectId | Long | The ID of the resource that generated the event. |
SubjectType | String | he type of the resource that generated the event. Valid values: Article, Blog, Collection, Comment, Order, Page, Product, ApiPermission. |
Verb | String | The type of event that occurred. Different resources generate different types of event. |
Author | String | The author of the event. |
Arguments | String | Refers to a certain event and its resources. |
CreatedAt | Datetime | The date and time when the event was created. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
OrderId | Long | The ID of the Order to retrieve events from. |
ProductId | Long | The ID of the Product to retrieve events from. |
Query fulfillment orders.
The driver uses the Shopify API to process search criteria that refer to the OrderId and Id columns. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * from FulfillmentOrders where OrderId='1' SELECT * from FulfillmentOrders where Id='1'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
Id [KEY] | Long | An ID for the fulfillment order. |
ShopId | Long | The ID of the shop that's associated with the fulfillment order. |
OrderId [KEY] | Long | The ID of the order that's associated with the fulfillment order. |
AssignedLocationId | Long | The ID of the location that has been assigned to do the work. |
DestinationId | String | The ID of the fulfillment order destination. |
DestinationAddress1 | String | The first line of the address of the destination. |
DestinationAddress2 | String | The second line of the address of the destination. |
DestinationCity | String | The city of the destination. |
DestinationCompany | String | The company of the destination. |
DestinationFirstName | String | The first name of the customer at the destination. |
DestinationLastName | String | The last name of the customer at the destination. |
DestinationPhone | String | The phone number of the customer at the destination. |
FullfillAt | Datetime | The datetime (in UTC) when the fulfillment order is ready for fulfillment. |
LineItems | String | Represents line items belonging to a fulfillment order. |
RequestStatus | String | The status of the fulfillment. |
Status | String | The status of the fulfillment order. |
SupportedActions | String | The actions that can be performed on this fulfillment order. |
MerchantRequests | String | A list of requests sent by the merchant to the fulfillment service for this fulfillment order.. |
FulfillmentHolds | String | Represents the fulfillment holds applied on the fulfillment order. |
InternationalDuties | String | The international duties relevant to the fulfillment order. |
AssignedLocationAddress1 | String | The street address of the assigned location |
AssignedLocationAddress2 | String | An optional additional field for the street address of the assigned location. |
AssignedLocationCity | String | The city of the assigned location. |
AssignedLocationCountryCode | String | The two-letter code for the country of the assigned location |
AssignedLocationName | String | The name of the assigned location. |
AssignedLocationPhone | String | The phone number of the assigned location. |
Retrieve information regarding store locations.
The driver uses the Shopify API to process search criteria that refer to the Id column. The supported SQL operator is '='. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM Locations SELECT * FROM Locations WHERE Id='123'
Name | Type | Description |
Id [KEY] | Long | The ID for the location. |
Name | String | The name of the location. |
Legacy | Boolean | Whether this is a fulfillment service location. If true, then the location is a fulfillment service location. If false, then the location was created by the merchant and isn't tied to a fulfillment service. |
Address1 | String | The first line of the address. |
Address2 | String | The second line of the address. |
City | String | The city the location is in. |
Zip | String | The zip or postal code. |
Province | String | The province the location is in. |
Country | String | The country the location is in. |
Phone | String | The phone number of the location. This value can contain special characters like - and +. |
CountryCode | String | The two-letter code (ISO 3166-1 alpha-2 format) corresponding to country the location is in. |
CountryName | String | The name of the country the location is in. |
CreatedAt | Datetime | The date and time when the location was created. |
UpdatedAt | Datetime | The date and time when the location was last updated. |
DeletedAt | Datetime | The date and time when the location was deleted. |
Query note attributes belonging to an order or draft order.
The driver uses the Shopify API to process search criteria that refer to the OrderId and OrderUpdatedAt columns. The supported SQL operators are '=' for OrderId and '>' and '<' for OrderUpdatedAt. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * FROM NoteAttributes WHERE OrderId='123' SELECT * FROM NoteAttributes WHERE OrderUpdatedAt > '2018-05-05'
Name | Type | Description |
OrderId | Long | The id of the order. |
OrderUpdatedAt | Datetime | The date and time when the order was last modified. |
Name | String | The name of the note attribute. |
Value | String | The value of the note attribute. |
Query note attributes belonging to an order or draft order.
The driver uses the Shopify API to process search criteria that refer to the OrderId and OrderUpdatedAt columns. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * from OrderDiscountCodes SELECT * from OrderDiscountCodes where OrderId='1' SELECT * from OrderDiscountCodes where OrderId in ('1', '2') SELECT * from OrderDiscountCodes where OrderUpdatedAt <= '2019-05-13 09:23:06.0' SELECT * from OrderDiscountCodes where OrderUpdatedAt >= '2019-05-13 09:23:06.0'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
OrderId | Long | The id of the order. |
OrderUpdatedAt | Datetime | The date and time when the order was last modified. |
Code | String | The name of the note attribute. |
Amount | String | The value of the note attribute. |
Type | String | The value of the note attribute. |
Query order item discount allocations.
Name | Type | Description |
ItemId | Long | The id of the order item. Only available for orders. |
OrderId | Long | The id of the order. |
amount | String | The Amount of the item discount allocations. |
ApplicationIndex | Int | The ApplicationIndex of the item discount allocations. |
ShopMoneyAmount | Decimal | The ShopMoneyAmount of the item discount allocations. |
ShopMoneyCurrencyCode | String | The ShopMoneyCurrencyCode of the item discount allocations. |
PresentmentMoneyAmount | Decimal | The PresentmentMoneyAmount of the item discount allocations. |
PresentmentMoneyCurrencyCode | String | The PresentmentMoneyCurrencyCode of the item discount allocations. |
OrderUpdatedAt | Datetime | The date and time when the order was last modified. |
Query order item properties.
The driver uses the Shopify API to process search criteria that refer to the OrderId column. The supported SQL operators are '=' for OrderId. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side. You can set the Type pseudo column to "DraftOrder" to list order items belonging to draft orders instead of orders, or you can set Type to "AbandonedCheckout" to list order items belonging to abandoned checkouts.
SELECT * FROM OrderItemProperties WHERE OrderId = '123'
Name | Type | Description |
ItemId | Long | The id of the order item. Only available for orders. |
OrderId | Long | The id of the order. |
Name | String | The name of the item property. |
Value | String | The value of the item property. |
Query order items.
Name | Type | Description |
ItemId | Long | The id of the order item. Only available for orders. |
OrderId | Long | The id of the order. |
OrderUpdatedAt | Datetime | The date and time when the order was last modified. |
ProductId | Long | The id of the of the product beloning to the order item. |
ItemVariantId | Long | The id of the product variant. |
ItemTitle | String | The title of the product. |
Name | String | The name of the product variant. |
ItemQuantity | Integer | The number of products that were purchased. |
ItemPrice | Decimal | The price of the item before discounts have been applied. |
ItemGrams | Integer | The weight of the item in grams. |
SKU | String | A unique identifier of the item in the fulfillment. |
VariantTitle | String | The title of the product variant. |
Properties | String | Shows custom properties for this order item. |
Vendor | String | The name of the supplier of the item. |
FulFillmentsService | String | Service provider who is doing the fulfillment. |
RequiresShipping | Boolean | States whether or not the fulfillment requires shipping. |
Taxable | Boolean | States whether or not the product was taxable. |
GiftCard | Boolean | States whether or not the order item is a gift card. |
FulfillableQuantity | Integer | The amount available to fulfill. |
TotalDiscount | Decimal | The total discount amount applied to this order item. |
FulfillmentStatus | String | How far along an order is in terms order items fulfilled. |
AppliedDiscountTitle | String | The title of the applied discount for this order. Only available for draft orders. |
AppliedDiscountDescription | String | The description of the applied discount for order. Only available for draft orders. |
AppliedDiscountValue | Decimal | The value of the applied discount for this order. Only available for draft orders. |
AppliedDiscountValueType | String | The value type of the applied discount for order. Only available for draft orders. |
AppliedDiscountAmount | Decimal | The amount of the applied discount for this order. Only available for draft orders. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
Type | String | The type of order item, can be one of the following(Order, DraftOrder, AbandonedCheckout).
The allowed values are Order, DraftOrder, AbandonedCheckout. The default value is Order. |
Status | String | Filter orders by their status. Valid values are: open: show only open orders, closed: show only closed orders, cancelled: show only canceled orders, any: show orders of any status,default: open. |
Retrieves a list of all payouts ordered by payout date, with the most recent being first.
The driver uses the Shopify API to process search criteria that refer to the Id, Status and Date columns. The supported SQL operator is '=' for Id, Status and Date columns. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following queries are processed server side:
SELECT * FROM Payouts SELECT * FROM Payouts WHERE Id='123' SELECT * FROM Payouts WHERE Status='pending' SELECT * FROM Payouts WHERE Date = '2018-10-30'
Name | Type | Description |
Id [KEY] | Long | The unique identifier of the payout. |
Status | String | The transfer status of the payout. |
Currency | String | The ISO 4217 currency code of the payout. |
Amount | Decimal | The total amount of the payout, in a decimal formatted string. |
Date | Datetime | The date the payout was issued. |
Retrieves a list of all balance transactions ordered by processing time, with the most recent being first.
Name | Type | Description |
Id [KEY] | Long | The unique identifier of the transaction. |
Type | String | The type of the balance transaction. |
Test | Boolean | If the transaction was created for a test mode Order or payment. |
PayoutId | Long | The id of the payout the transaction was paid out in. |
PayoutStatus | String | The status of the payout the transaction was paid out in, or pending if the transaction has not yet been included in a payout. |
Currency | String | The ISO 4217 currency code of the transaction. |
Amount | Decimal | The gross amount of the transaction, in a decimal formatted string. |
Fee | Decimal | The total amount of fees deducted from the transaction amount. |
Net | Decimal | The net amount of the transaction. |
SourceId | Long | The id of the resource leading to the transaction. |
SourceType | String | The type of the resource leading to the transaction. |
SourceOrderTransactionId | String | The id of the Order Transaction that resulted in this balance transaction. |
SourceOrderId | String | The id of the Order that this transaction ultimately originated from. |
ProcessedAt | Datetime | The time the transaction was processed. |
Query product options.
The driver uses the Shopify API to process search criteria that refer to the ProductId and ProductUpdatedAt columns. The supported SQL operators are '=' for ProductId and '>' and '<' for ProductUpdatedAt. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * FROM ProductOptions SELECT * FROM ProductOptions WHERE ProductId='123' SELECT * FROM ProductOptions WHERE ProductUpdatedAt > '2018-05-10'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
Id [KEY] | Long | The id of the product option. |
ProductId | Long | The id of the product. |
ProductUpdatedAt | Datetime | The date and time when the product was last modified. |
Name | String | The name of the product option. |
Position | Integer | The position of the product option. |
Values | String | The values of the product option. |
Create and query transactions.
The driver uses the Shopify API to process search criteria that refer to the OrderId and RefundId column. The driver processes other filters client-side within the driver.
The Shopify APIs requires the search criteria to contain OrderId. For example, the following query is processed server side.
SELECT * FROM RefundAdjustments WHERE OrderId = '123'When performing a query without a filter or a filter other then the OrderId column, the driver will retrieve the entire list of refunds and perform the filters client-side. The Shopify API requires that an OrderId be specified when retrieving refunds. Therefore to retrieve all the refunds, the driver will first retrieve all the OrderIds from the Orders table (essentially performing the query: SELECT Id FROM Orders). Once the OrderId values have been retrieved, the driver will issue individual requests to the Shopify API to retrieve all the refunds for each OrderId to build the result set.
SELECT * FROM RefundAdjustments SELECT * FROM RefundAdjustments WHERE OrderId = '123' AND RefundId = '123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false. Other search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
Id [KEY] | Long | A unique numeric identifier for the refund adjustment. |
OrderId | Long | The unique identifier for the order that the order adjustment is associated with. |
RefundId | Long | The unique identifier for the refund that the order adjustment is associated with. |
Amount | Decimal | The value of the discrepancy between the calculated refund and the actual refund. |
TaxAmount | Decimal | The taxes that are added to amount, such as applicable shipping taxes added to a shipping refund. |
Kind | String | The order adjustment type. |
Reason | String | The reason for the order adjustment. |
AmountShopMoney | Decimal | The amount of the order adjustment in shop. |
AmountShopCurrency | String | The currency of the order adjustment in shop. |
AmountPresentmentMoney | Decimal | The amount of the order adjustment in presentment. |
AmountPresentmentCurrency | String | The currency of the order adjustment in presentment. |
TaxAmountShopMoney | Decimal | The tax amount of the order adjustment in shop. |
TaxAmountShopCurrency | String | The tax currency of the order adjustment in shop. |
TaxAmountPresentmentMoney | Decimal | The tax amount of the order adjustment in presentment. |
TaxAmountPresentmentCurrency | String | The tax currency of the order adjustment in presentment. |
Get data on OrdersItems that have been refunded.
Name | Type | Description |
ItemId [KEY] | Long | The id of the order item. Only available for orders. |
OrderID [KEY] | Long | The id of the refund this refunded item belongs to. |
RefundId [KEY] | Long | The id of the refund this refunded item belongs to. |
LocationId | Long | The unique identifier of the location tied to the refund item |
ProductId | Long | The id of the of the product beloning to the order item. |
ItemVariantId | Long | The id of the product variant. |
ItemTitle | String | The title of the product. |
Name | String | The name of the product variant. |
ItemQuantity | Integer | The number of products that were purchased. |
ItemPrice | Decimal | The price of the item before discounts have been applied. |
ItemGrams | Integer | The weight of the item in grams. |
SKU | String | A unique identifier of the item in the fulfillment. |
VariantTitle | String | The title of the product variant. |
Properties | String | Shows custom properties for this order item. |
Vendor | String | The name of the supplier of the item. |
FulFillmentsService | String | Service provider who is doing the fulfillment. |
RequiresShipping | Boolean | States whether or not the fulfillment requires shipping. |
Taxable | Boolean | States whether or not the product was taxable. |
GiftCard | Boolean | States whether or not the order item is a gift card. |
FulfillableQuantity | Integer | The amount available to fulfill. |
TotalDiscount | Decimal | The total discount amount applied to this order item. |
FulfillmentStatus | String | How far along an order is in terms order items fulfilled. |
RefundSubtotal | Decimal | The refunded amount for this item. This is calculated by multiplying ItemPrice with RefundQuantity. |
RefundQuantity | Integer | The quantity of the item refunded. |
RefundRestockType | String | The type of the restock action. |
RefundSubtotalPresentmentAmount | Decimal | The total amount of the presentment money. |
RefundSubtotalPresentmentCurrencyCode | String | The currency code of the presentment money. |
RefundSubtotalShopAmount | Decimal | The total amount of the shop money. |
RefundSubtotalShopCurrencyCode | String | The currency code of the shop money. |
RefundTotalTax | Decimal | Total tax for the refunded item. |
RefundTotalTaxPresentmentAmount | Decimal | Total tax amount for the presentment money. |
RefundTotalTaxPresentmentCurrencyCode | String | Currency code for the tax on presentment money. |
RefundTotalTaxShopAmount | Decimal | Total tax amount for the shop money. |
RefundTotalTaxShopCurrencyCode | String | Currency code for the tax on shop money. |
AppliedDiscountTitle | String | The title of the applied discount for this order. Only available for draft orders. |
AppliedDiscountDescription | String | The description of the applied discount for order. Only available for draft orders. |
AppliedDiscountValue | Decimal | The value of the applied discount for this order. Only available for draft orders. |
AppliedDiscountValueType | String | The value type of the applied discount for order. Only available for draft orders. |
AppliedDiscountAmount | Decimal | The amount of the applied discount for this order. Only available for draft orders. |
Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.
Name | Type | Description |
Status | String | Filter orders by their status. Valid values are: open: show only open orders, closed: show only closed orders, cancelled: show only canceled orders, any: show orders of any status,default: open. |
Query transactions for Refund Object.
The driver uses the Shopify API to process search criteria that refer to the OrderId and RefundId column. The driver processes other filters client-side within the driver.
The Shopify APIs requires the search criteria to contain OrderId. For example, the following query is processed server side.
SELECT * FROM RefundTransactions WHERE OrderId = '123'When performing a query without a filter or a filter other then the OrderId column, the driver will retrieve the entire list of refunds and perform the filters client-side. The Shopify API requires that an OrderId be specified when retrieving refunds. Therefore to retrieve all the refunds, the driver will first retrieve all the OrderIds from the Orders table (essentially performing the query: SELECT Id FROM Orders). Once the OrderId values have been retrieved, the driver will issue individual requests to the Shopify API to retrieve all the refunds for each OrderId to build the result set.
SELECT * FROM RefundTransactions SELECT * FROM RefundTransactions WHERE OrderId = '123' AND RefundId = '123'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false. Other search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
TransactionsId [KEY] | Long | The ID for the refund transaction. |
OrderId | Long | The ID for the order that the transaction is associated with. |
RefundId | Long | The unique identifier for the refund associated with. |
Amount | Decimal | The amount of money included in the transaction. |
Authorization | String | The authorization code associated with the transaction.. |
CreatedAt | Datetime | The date and time (ISO 8601 format) when the transaction was created. |
Currency | String | The three-letter code (ISO 4217 format) for the currency used for the payment. |
DeviceId | String | The ID for the device. |
ErrorCode | String | A standardized error code, independent of the payment provider. |
GraphqlAPIId | String | The order adjustment type. |
Gateway | String | The name of the gateway the transaction was issued through. |
Kind | String | The transaction's type. |
LocationId | String | The ID of the physical location where the transaction was processed. |
Message | String | A string generated by the payment provider with additional information about why the transaction succeeded or failed. |
ParentId | Long | The ID of an associated transaction.. |
ProcessedAt | Datetime | The date and time (ISO 8601 format) when a transaction was processed. |
Status | String | The status of the transaction. |
SourceName | String | The origin of the transaction. |
Test | Boolean | Whether the transaction is a test transaction. |
UserId | String | The ID for the user who was logged into the Shopify POS device when the order was processed, if applicable. |
To query all the Reports.
The driver uses the Shopify API to process search criteria that refer to the Id and UpdatedAt columns. The driver processes other filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refers to other columns will cause an error.
For example, the following queries are processed server side.
SELECT * FROM Reports SELECT * FROM Reports WHERE Id = '123' SELECT * FROM Reports WHERE UpdatedAt > '2017-10-25'
Name | Type | Description |
Id [KEY] | Long | The unique numeric identifier for the report. |
Name | String | The name of the report. |
ShopifyQl | String | The ShopifyQL query that generates the report. |
UpdatedAt | Datetime | The date and time (ISO 8601) when the report was last modified. |
Category | String | The category for the report. When you create a report, the API will return custom_app_reports. |
Query Shipping item discount allocations.
Name | Type | Description |
ItemId | Long | The id of the shipping item. Only available for orders. |
OrderId | Long | The id of the order. |
Amount | String | The Amount of the item discount allocations. |
ShopMoneyAmount | Decimal | The ShopMoneyAmount of the item discount allocations. |
ShopMoneyCurrencyCode | String | The ShopMoneyCurrencyCode of the item discount allocations. |
PresentmentMoneyAmount | Decimal | The PresentmentMoneyAmount of the item discount allocations. |
PresentmentMoneyCurrencyCode | String | The PresentmentMoneyCurrencyCode of the item discount allocations. |
DiscountApplicationIndex | Integer | The Discount application index for an order. |
OrderUpdatedAt | Datetime | The date and time when the order was last modified. |
Query order shipping.
The driver uses the Shopify API to process search criteria that refer to the OrderId and OrderUpdatedAt columns. The supported SQL operators are '=' for OrderId and '>' and '<' for OrderUpdatedAt. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * FROM ShippingItems SELECT * FROM ShippingItems WHERE OrderId='123' SELECT * FROM ShippingItems WHERE OrderUpdatedAt > '2018-05-05'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
Id [KEY] | Long | The id of the shipping item. |
OrderId [KEY] | Long | The id of the order. |
OrderUpdatedAt | Datetime | The date and time when the order was last modified. |
Price | Decimal | The price of this shipping method. |
Code | String | A reference to the shipping method. |
Title | String | The title of the shipping method. |
Source | String | The source of the shipping method. |
CarrierIdentifier | String | A reference to the carrier service that provided the rate. |
RequestedFulfillmentServiceId | String | A reference to the fulfillment service that is being requested for the shipping method. |
Retrieve information regarding shipping zones.
The driver processes all filters client-side within the driver. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
The following query is the only one processed server side:
SELECT * FROM ShippingZones
Name | Type | Description |
Id [KEY] | Long | The unique numeric identifier for the shipping zone. |
Name | String | The name of the shipping zone, specified by the user. |
ProfileId | String | The ID of the shipping zone's delivery profile. Shipping profiles allow merchants to create product-based or location-based shipping rates. |
LocationGroupId | String | The ID of the shipping zone's location group. Location groups allow merchants to create shipping rates that apply only to the specific locations in the group. |
Countries | String | A list of countries that belong to the shipping zone. |
CarrierShippingRateProviders | String | Information about carrier shipping providers and the rates used. |
PriceBasedShippingRates | String | Information about price based shipping rates used. |
WeightBasedShippingRates | String | Information about weight based shipping rates used. |
Contains general settings and information about the shop.
The driver processes the WHERE clause client-side within the driver for all queries to this table.
You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
For example, the following query is the only query processed server side:
SELECT * FROM Shop
Name | Type | Description |
Id | Long | A unique numeric identifier for the shop. |
Name | String | The name of the shop. |
String | The contact email address for the shop. | |
Address1 | String | The shop's street address. |
Address2 | String | The shop's additional street address (apt, suite, etc.). |
City | String | The city in which the shop is located. |
Country | String | The shop's country (by default equal to the two-letter country code). |
CountryCode | String | The two-letter country code corresponding to the shop's country. |
CountryName | String | The shop's normalized country name. |
CustomerEmail | String | The customer's email. |
Currency | String | The three-letter code for the currency that the shop accepts. |
Domain | String | The shop's domain. |
GoogleAppsDomain | String | The URL of the domain if the shop has a google apps domain. |
GoogleAppsLoginEnabled | String | Indicated whether the shop has google apps login enabled. |
Latitude | Double | Geographic coordinate specifying the north/south location of a shop. |
Longitude | Double | Geographic coordinate specifying the east/west location of a shop. |
MoneyFormat | String | A string representing the way currency is formatted when the currency isn't specified. |
MoneyWithCurrencyFormat | String | A string representing the way currency is formatted when the currency is specified. |
WeightUnit | String | A string representing the default unit of weight measurement for the shop. |
MyshopifyDomain | String | The shop's 'myshopify.com' domain. |
PlanName | String | The name of the Shopify plan the shop is on. |
HasDiscounts | Boolean | Indicates if any active discounts exist for the shop. |
HasGiftCards | Boolean | Indicates if any active gift cards exist for the shop. |
PlanDisplayName | String | The display name of the Shopify plan the shop is on. |
PasswordEnabled | Boolean | Indicates whether the Storefront password protection is enabled. |
Phone | String | The contact phone number for the shop. |
PrimaryLocale | String | The shop's primary locale. |
Province | String | The shop's normalized province or state name. |
ProvinceCode | String | The two-letter code for the shop's province or state. |
ShopOwner | String | The username of the shop owner. |
Source | String | |
ForceSSL | Boolean | Indicates whether the shop forces requests made to its resources to be made over SSL. |
TaxShipping | Boolean | Specifies whether or not taxes were charged for shipping. |
TaxesIncluding | Boolean | The setting for whether applicable taxes are included in product prices. |
CountryTaxes | Boolean | The setting for whether the shop is applying taxes on a per-county basis or not (US-only). |
Timezone | String | The name of the timezone the shop is in. |
IANATimezone | String | The named timezone assigned by the IANA. |
Zip | String | The zip or postal code of the shop's address. |
HasStorefront | Boolean | Indicates whether the shop has web-based storefront or not. |
CreatedAt | Datetime | The date and time when the shop was created. |
UpdatedAt | Datetime | The date and time when the shop was last updated. |
SetupRequired | Boolean | Indicates whether the shop has any outstanding setup steps or not. |
Query order taxes.
The driver uses the Shopify API to process search criteria that refer to the OrderId and OrderUpdatedAt columns. The supported SQL operators are '=' for OrderId and '>' and '<' for OrderUpdatedAt. The driver processes other filters client-side within the driver. For example, the following queries are processed server side.
SELECT * FROM TaxItems SELECT * FROM TaxItems WHERE OrderId = '123' SELECT * FROM TaxItems WHERE OrderUpdatedAt > '2018-05-21'You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria will be ignored and an unfiltered response will be returned.
Name | Type | Description |
OrderId | Long | The id of the order. |
OrderUpdatedAt | Datetime | The date and time when the order was last modified. |
ChannelLiable | Boolean | Whether the channel that submitted the tax line is liable for remitting. |
TaxItemPrice | Decimal | The amount of tax to be charged. |
TaxItemRate | Decimal | The rate of tax to be applied. |
TaxItemTitle | String | The name of the tax. |