Skip to content

Endpoint Configuration

This section covers how to edit endpoint configurations, the inputs required for each event type, and how to parameterize URLs, bodies, and file names.

Edit Endpoint Configurations

Endpoint Data Source Tab

  1. Select Build > Data Hubs from the main menu.

  2. Select the appropriate Data Hub (A); then, select an Endpoint (B) to edit.

    Data Hub endpoint selection

  3. Ensure the Data Source tab (C) is selected.

  4. Select the appropriate Events tab (D) from the left column.

  5. Select the menu icon > Edit (E).

  6. Re-configure the Endpoint Action (F) as needed.

Edit and Save Endpoint Action

NOTE

The data required to configure an Endpoint Action is dependent on the action assigned (i.e. API Read, SQL Save, File Read, etc.). See the Endpoint Event Inputs section below for detailed descriptions on each protocol.

  1. For Read Actions, you can use the Test Request button in the modal footer to test the action directly without saving. This opens the Test Connector modal with the request pre-populated from your current configuration.

Edit Read Action Modal

  1. When finished, select Save (G).

NOTES

  • You will need to configure each Endpoint Action created (e.g. if Both was selected as the Endpoint Type, then you'll need to configure the Endpoint Action for both the On Save and Get Changes events).
  • When a save action is created, the Common Model will automatically create an interaction to the Key. Users can create as many interactions as needed associated with the save action.
  • The Read URL field is critical for successful Endpoint Mapping, which you will construct next. When Mapping Endpoints, it is critical to ensure the data from a particular location within the payload gets into the Common Model. For additional information on common protocols (e.g. JSONPath, XMLPath, etc.) see the Connectors Catalog.

Endpoint Event Inputs

Each event type is represented by an icon in the action tree indicating the protocol and operation:

IconEvent Type
API Read (Get Changes)
API Save (On Save)
API Delete
SQL Read (Get Changes)
SQL Save (On Save)
File Read
File Save

Each event type requires different configuration inputs. The tables below describe the fields for each protocol.

API Get Changes

InputDescription
TitleA freeform label you give to the Action.
Response SelectorJSON Path or XPath query that points to where the data is on the response.
Paging SelectorJSON Path or XPath query indicating where in the response to pull the URL of the next page.
Max PagesLimits the total number of pages that the action can return.
Read MethodThe HTTP verb required by the API.
Read URLThe HTTP address required by the API. This value is concatenated to the Base URL on the Connector. See Parameterizing below for additional information.
Read BodyNot required, but useful for advanced searching APIs. A POST is used in order to query, and in those cases an HTTP body is used in the request. See Parameterizing below. Examples include SuiteQL, SOQL, OData, and calling Select Stored Procedures (Date Last Polled and Parent-Child).

API On Save

InputDescription
TitleA freeform label you give to the Action.
Is BatchCan be toggled ON to save entities as a group (batch) instead of individually.
Create MethodThe HTTP verb required by the API to insert a new record. The default verb for a Create is a POST.
Create URLThe HTTP address required by the API to insert a new record.
Update MethodThe HTTP verb required by the API to update an existing record. The default method for an Update is a PATCH, but in some cases a PUT or POST can be used as well.
Update URLThe HTTP address required by the API to update existing data. The URL for an Update is usually parameterized with the ID of the record being updated.
Update Requires Full CopyOn update, this will pull a copy of the data from the API as a starting point, which the mapping then uses as the starting document (instead of a blank JSON document). This should be used when a Subscriber needs the full payload to update instead of just the changes.

API Delete

InputDescription
TitleA freeform label you give to the Action.
Delete MethodThe HTTP verb required by the API to delete a record. The default method for a Delete is DELETE.
Delete URLThe HTTP address required by the API to delete a record. The URL for a Delete is usually parameterized with the ID of the record being deleted.
Delete BodyOptional. A collapsible Body editor allows you to specify a request body for the DELETE operation. Uses the code editor with syntax highlighting for the connector's protocol (JSON/XML).

SQL Get Changes

InputDescription
TitleA freeform label you give to the Action.
Read Command TypeThe SQL Command can be a Stored Procedure or Text (Dynamic SQL).
Read CommandFor Stored Procedure, set this to the procedure name. On a Stored Procedure that can pull child items (e.g. Lines on an Order), it MUST have an input parameter called @ParentId. If it needs a date filter, the parameter should be called @DateLastPolled. For Text, an inline SQL code editor appears where you can write dynamic SQL queries with syntax highlighting.

TIP

When using Text command type, a Copy Params to Maps button is available that automatically detects @parameter names in your SQL and creates corresponding property maps.

SQL On Save

InputDescription
TitleA freeform label you give to the Action.
Create Command TypeThe SQL Command can be a Stored Procedure or Text (Dynamic SQL).
Create CommandFor Stored Procedure, the command is the procedure name. For Text, an inline SQL code editor appears for writing dynamic SQL with syntax highlighting.
Update Command TypeThe SQL Command can be a Stored Procedure or Text (Dynamic SQL).
Update CommandFor Stored Procedure, the command is the procedure name. For Text, the command is the parameterized query — use the inline SQL code editor with the Copy Params to Maps button to auto-generate property maps from @parameter names.

SQL Delete

InputDescription
TitleA freeform label you give to the Action.
Delete Command TypeThe SQL Command can be a Stored Procedure or Text (Dynamic SQL).
Delete CommandIf the SQL Command is Stored Procedure, then the command is the name of the Stored Procedure.

File Read / Save

InputDescription
TitleA freeform label you give to the Action.
LocationThe folder or container name.
File NameThe name of the file.
DelimiterThe character that is used to parse the file; the default value is a comma.

Additional Events Inputs

Receipt Replication Save

Receipt Replication allows the save status (success, failure, or both) to be written back to the publishing system, e.g. writing errors back to the source system instead of relying on the Error Logs.

InputDescription
TitleA freeform label you give to the Action.
Create MethodThe HTTP verb required by the API to insert a new record. The default verb for a Create is a POST.
Create URLThe HTTP address required by the API to insert a new record.
Receipt LevelDictates which receipts get processed and written back to the publishing system (error, success, or both).
Update Requires Full CopyOn update, this will pull a copy of the data from the API as a starting point, which the mapping then uses as the starting document (instead of a blank JSON document). This should be used when a Subscriber needs the full payload to update instead of just the changes.

Key Replication

InputDescription
TitleA freeform label you give to the Action.
Update MethodThe HTTP verb required by the API to update an existing record. The default method for an Update is a PATCH, but in some cases a PUT or POST can be used as well.
Update URLThe HTTP address required by the API to update existing data. The URL for an Update is usually parameterized with the ID of the record being updated.
Update Requires Full CopyOn update, this will pull a copy of the data from the API as a starting point, which the mapping then uses as the starting document (instead of a blank JSON document). This should be used when a Subscriber needs the full payload to update instead of just the changes.

Parameterizing

Parameterizing enables data to be dynamically passed into an action as a way of telling the mapping engine that some data needs to be injected, and potentially formatted, into the URL or Body of the API Request or a File Name. Parameterizing enables users to take the ID off the inbound message and append it to the Update message.

Instances where parameterizing can be used include:

  • Update and Delete a record
  • Query date last polled from URL
  • Query date last polled from Body
  • Add Variables to a Body

System Parameters

Data that comes internally to the system.

SyntaxDescriptionExample
SYS:CurrentDateTimeInjects the current date/time{SYS:CurrentDateTime}

Schema Parameters

Data that comes off another piece of data or message that is flowing through the system.

PrefixDescriptionExample
CD:{Name}Finds custom data with matching name and injects that value{CD:CustomFieldA}
PROP:{Name}Finds a property on the model with a matching name and injects that value{PROP:FirstName}
PK:{Name}Finds a Primary Key with the given Name for the processing system and injects that value{PK:Id}
FK:{Name}Finds a Foreign Key with the given Name for the processing System and injects that value{FK:CustomerId}

Variable Parameters

Enables users to set any static value and inject it into an action, such as a specific value within a file name or parameter within a URL.

SyntaxDescriptionExample
VAR:{Name}Finds a Variable with the given Name and injects that value{VAR:SomeVariable}

TIP

Optionally, formatting can be applied to the injected value by adding an additional :{format} to the placeholder, e.g. {VAR:CurrentDate:yyyy-MM-dd}.

See Also

Team Central Admin Web Documentation