Skip to main content

Custom API Source Connector

The Custom API source connector in DataSync lets you connect to any programming interface (API) for data extraction and integration. This connector supports APIs by uploading an API Profile file (.apip) and/or table definitions (.rsd files), then specifying connection properties as needed.

To define an API, you only need to upload the API Profile file (.apip extension) and/or Tables (.rsd files) and specify the properties (connection strings) by manually adding them through the Additional Connection Properties section.

After creating all required source connections, configure your destination connection to finalize the setup.

note

You need to create API profiles (.apip or .rsd files) before you can configure a Custom API source connection. For details, see Understand API Profile Structure, and follow the steps in Build a Custom API Profile.

Create a source connection in DataSync

  1. Log in to DataSync.
  2. From the welcome screen, select Connections.
  3. Next to Source Connections, click New.
  4. Select Custom API.
  5. In the Connection Properties panel, enter the connection properties.
  6. (Optional) In the Additional Connection Properties panel, select Add property and enter the parameters for each property.
  7. In the Advanced Settings panel, configure the settings, including the Tracking Type and other values according to your requirements.
  8. Click Save.

Parameters

Connection properties

ParameterDescription
DescriptionUnique name for the API connection. Example: Custom API
Authentication TypeAuthentication method used by the API:

  • None – Public Web API with no authentication.
  • HTTP (Basic) – HTTP Basic authentication with a username and password.
  • OAuth2 – OAuth2 authentication. You can set it up using either the authorization code method (requires a CallbackURL) or the client credentials method (no callback).
Verbosity
  • 1 – Log queries, row counts, execution start/end, errors.
  • 2 – Includes level 1 plus cache queries, HTTP headers.
  • 3 – Includes level 2 plus request/response bodies.
  • 4 – Includes level 3 plus transport-level communication.
  • 5 – Includes level 4 plus all interface commands.
API ProfileUpload location for the API profile or table definitions. If you are using the client credentials method, see OAuth2 client credentials example.

HTTPS (Basic) additional connection properties

PropertyValue
OtherName-value pairs for additional provider options. Common examples:

  • DefaultColumnSize=number – Sets the default string length when metadata does not specify one. Default: 2000.
  • ConvertDateTimeToGMT=true – Converts date-time values to GMT instead of local time.
  • RecordToFile=file name – Logs socket data transfers to the specified file.
ProfileSettingsSemicolon-separated list of settings required by the data source.
(for example ProfileSettings='User=EmailId;Password=key';'Other=Domain=YourDomain').

OAuth2 (authorization code) additional connection properties

Use this method when a user signs in through a browser and the authorization server sends them back to your callback/redirect URL.

PropertyValue
OtherName-value pairs for additional provider options. Common examples:

  • DefaultColumnSize=number – Sets the default string length when metadata does not specify one. Default: 2000.
  • ConvertDateTimeToGMT=true – Converts date-time values to GMT instead of local time.
  • RecordToFile=file name – Logs socket data transfers to the specified file.
CallbackURLRedirect URL for OAuth2. Must match the callback/redirect URL configured in the OAuth app settings.
(for example https://.../OAuthCallback/CallbackUrl/...).
OAuthClientIdIdentifier assigned by the OAuth2 authorization server.
Example: OAuthClientId=Unique Identifier key.
OAuthClientSecretSecret value assigned by the OAuth2 authorization server. Store as Encrypted.
(for example OAuthClientSecret=password).
ScopeAction or permission scope for the application (for example Forms=Read).

OAuth2 (client credentials) additional connection properties

Use this method for system‑to‑system connections. It doesn't require a user to sign in, and a callback/redirect URL is not needed.

PropertyValue
OtherEnter OAuthIncludedCallbackURL=False.
AuthSchemeEnter OAuth.
OAuthClientIdIdentifier assigned by the OAuth2 authorization server.
OAuthClientSecretSecret value assigned by the OAuth2 authorization server. Store as Encrypted.
ScopeEnter the provider-specific scope employees.readonly.
InitiateOAuthEnter GETANDREFRESH.

Advanced settings

Advanced settings control how the Custom API connector tracks changes, handles regional and time configuration, and processes data batches during extraction. These options allow fine‑tuning for performance and accuracy, and should be configured according to your system environment and operational requirements.

SettingDescription
Tracking TypeMethod for tracking changes: None or Date.
RegionRegion setting for the connector, if required by your setup.
Time ZoneTime zone matching the Custom API application server. This must be identical to the profile time zone in Custom API to avoid data mismatches.
Time OffsetRefresh offset in seconds to compensate for timing issues in record selection. Minimum value is 0; maximum is 3600 seconds.
Batch SizeQuantity of records processed in each batch during extraction. Larger batch sizes increase memory usage but can improve performance up to a point. The default value is 2000 and the maximum should not exceed 10000 records. Adjust according to your network speed and disk performance; in most cases the default (2000) works best.