@if (editing.direction === 'OUT') {
OUT — the CBS calls the vendor: fill the request it sends and the response it expects.
} @else if (editing.mode === 'PULL') {
IN (pull) — the CBS asks the vendor for data on a schedule: fill the request it sends and the response it
reads.
} @else {
IN (push) — the vendor calls a CBS path: fill what the vendor sends us and what we answer.
}
Type everything in, or read it from a file with the import button — then check each tab.
@if (info) {
{{ info }}
}
@if (error) {
{{ error }}
}
@if (editorTab === 'basics') {
@if (editing.direction === 'IN') {
} @else {
}
Use {{ '{' }}name{{ '}' }} for a value that changes, e.g. /v21.0/{{ '{' }}senderId{{
'}'
}}/messages.
@if (preview(editing); as p) {
{{ outbound ? 'The call as it will go out' : 'The call the vendor will make to us' }}
(credentials masked)
Headers
— this API's own; the vendor's default headers and its authentication are added automatically
{{
outbound
? 'The constant parts of the payload; the mapping below puts CBS values into it.'
: 'A sample of what arrives; the mapping reads values out of it.'
}}
{{ mappingTitle('request') }}
· {{ matchedCount('request') }} of {{ editing.requestRows.length }} rows found in the sample
{{ 'request' === 'request' ? 'payload' : 'body' }}
{{ fromLabel('request') }}
{{ toLabel('request') }}
Transform
Fixed / default value
In the sample payload
Required
@let requestMatch = sampleMatches('request');
@for (r of editing.requestRows; track $index; let i = $index) {
Paste it or choose a file —
{{ outbound ? 'the request and the response' : 'what the vendor sends us and what we answer' }}. Any of these
works: a cURL command, a Postman collection or request, a HAR capture, an API definition
({{ '{' }} method, url, headers, query, body, status … {{ '}' }}), or just the JSON payload. The method, URL / path, query parameters, headers, content type, payload,
status code, response headers, bodies and a first CBS mapping are filled in for you. Passwords, keys and tokens
are never kept.