It is very simple to Connect to Xero. In the Starfish Cloud Designer go to Connections and choose New Connection.
Sets the Xero organization to connect to. Can be a name or tenant ID.
string
""
Xero apps may be authorized by for multiple organizations at once. By default the provider will connect to the first available tenant. To control which organization your are connected to, set this option.
This option can be set to either the name of your organization or to the tenant ID. If you have multiple organizations with the same name, then you must use the tenant ID. You can find the tenant ID by connecting with this option unset and then querying the Tenants view.
Define any connection strings
Auth Scheme |
The type of authentication to use when connecting to Xero. |
Auto Cache |
Automatically caches the results of SELECT queries into a cache database specified by either CacheLocation or both of CacheConnection and CacheProvider . |
Auto Expand Details |
Set this property to true automatically include extra details on BankTransfers, ContactGroups, ExpenseClaims, ExpenseClaimPayments, ExpenseClaimReceipts and Receipts. |
Cache Connection |
The connection string for the cache database. This property is always used in conjunction with CacheProvider . Setting both properties will override the value set for CacheLocation for caching data. |
Cache Location |
Specifies the path to the cache when caching to a file. |
Cache Metadata |
This property determines whether or not to cache the table metadata to a file store. |
Cache Provider |
The name of the provider to be used to cache data. |
Cache Tolerance |
The tolerance for stale data in the cache specified in seconds when using AutoCache . |
Callback URL |
The OAuth callback URL to return to when authenticating. This value must match the callback URL you specify in your app settings. |
Connection Life Time |
The maximum lifetime of a connection in seconds. Once the time has elapsed, the connection object is disposed. |
Firewall Password |
A password used to authenticate to a proxy-based firewall. |
Firewall Port |
The TCP port for a proxy-based firewall. |
Firewall Server |
The name or IP address of a proxy-based firewall. |
Firewall Type |
The protocol used by a proxy-based firewall. |
Firewall User |
The user name to use to authenticate with a proxy-based firewall. |
Include Archived |
Set this property to include archived records. |
Initiate OAuth |
Set this property to initiate the process to obtain or refresh the OAuth access token when you connect. |
Location |
A path to the directory that contains the schema files defining tables, views, and stored procedures. |
Logfile |
A filepath which designates the name and location of the log file. |
Log Modules |
Core modules to be included in the log file. |
Max Log File Count |
A string specifying the maximum file count of log files. 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. |
Max Log File Size |
A string specifying the maximum size in bytes for a log file (for example, 10 MB). When the limit is hit, a new log is created in the same folder with the date and time appended to the end. |
Max Rows |
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. |
OAuth Access Token |
The access token for connecting using OAuth. |
OAuth Access Token Secret |
The OAuth access token secret for connecting using OAuth. |
OAuth Client Id |
The client ID assigned when you register your application with an OAuth authorization server. |
OAuth Client Secret |
The client secret assigned when you register your application with an OAuth authorization server. |
OAuth Expires In |
The lifetime in seconds of the OAuth AccessToken. |
OAuth Refresh Token |
The OAuth refresh token for the corresponding OAuth access token. |
OAuth Settings Location |
The location of the settings file where OAuth values are saved when InitiateOAuth is set to GETANDREFRESH or REFRESH. Alternatively, this can be held in memory by specifying a value starting with memory://. |
OAuth Token Timestamp |
The Unix epoch timestamp in milliseconds when the current Access Token was created. |
OAuth Verifier |
The verifier code returned from the OAuth authorization URL. |
Offline |
Use offline mode to get the data from the cache instead of the live source. |
Other |
These hidden properties are used only in specific use cases. |
Pool Idle Timeout |
The allowed idle time for a connection before it is closed. |
Pool Max Size |
The maximum connections in the pool. |
Pool Min Size |
The minimum number of connections in the pool. |
Pool Wait Time |
The max seconds to wait for an available connection. |
Proxy Auth Scheme |
The authentication type to use to authenticate to the ProxyServer proxy. |
Proxy Auto Detect |
This indicates whether to use the system proxy settings or not. This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings. |
Proxy Exceptions |
A semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer . |
Proxy Password |
A password to be used to authenticate to the ProxyServer proxy. |
Proxy Port |
The TCP port the ProxyServer proxy is running on. |
Proxy Server |
The hostname or IP address of a proxy to route HTTP traffic through. |
Proxy SSL Type |
The SSL type to use when connecting to the ProxyServer proxy. |
Proxy User |
A user name to be used to authenticate to the ProxyServer proxy. |
Pseudo Columns |
This property indicates whether or not to include pseudo columns as columns to the table. |
Readonly |
You can use this property to enforce read-only access to Xero from the provider. |
Retry Wait Time |
How long to wait when a request hits the Xero API limit, in milliseconds. |
RTK |
The runtime key used for licensing. |
Schema |
The Xero API you want to access as a database schema. |
Scope |
This determines the scopes that the OAuth application requests from Xero. |
SSL Server Cert |
The certificate to be accepted from the server when connecting using TLS/SSL. |
Support Enhanced SQL |
This property enhances SQL functionality beyond what can be supported through the API directly, by enabling in-memory client-side processing. |
Tables |
This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC. |
Tenant |
Sets the Xero organization to connect to. Can be a name or tenant ID. |
Timeout |
The value in seconds until the timeout error is thrown, canceling the operation. |
Use Connection Pooling |
This property enables connection pooling. |
Verbosity |
The verbosity level that determines the amount of detail included in the log file. |
Views |
Restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC. |
There is a daily limit of 5000 API calls against a single Xero organization in a rolling 24-hour period.
In addition to the daily limit, a single access token can only be used up to 60 times in a rolling 60-second period.
If you encounter a rate limit, the Xero API will return an HTTP 503 (Service Unavailable) error, with the following message: "oauth_problem=rate limit exceeded".
Note: If you encounter a rate limit, do not continue to make requests, as this may continue to add to your limitation. If necessary, you may need to queue requests.
When working with the provider, some operations may result in multiple requests to the API. For example, updating an existing record will result in two requests: one to get the current record, and one to submit changes.