Skip to main content

REST API

The REST API North Connector enables OIBus to send data to any HTTP REST endpoint, making it ideal for integrating with custom APIs, webhooks, and cloud services that accept JSON payloads or file uploads.

OIBus can transmit:

  • Time-value payloads: Serialized as a JSON body or a JSON file sent via FormData.
  • Files: Forwarded as-is (compressed or uncompressed) via FormData.

Example Use Cases:

  • Custom API Integration: Push OIBus data directly to an internal or third-party REST API.
  • Webhook Delivery: Trigger external systems with event-driven HTTP calls.
  • Cloud Ingestion: Forward data to cloud platforms that expose an HTTP ingest endpoint.

Specific Settings

Connection Configuration

SettingDescriptionExample Value
HostBase URL of the REST API server. Must start with http:// or https://.https://api.example.com
Accept unauthorized certificateAccept self-signed or otherwise untrusted TLS certificates.Enabled/Disabled
MethodHTTP method used when sending data.POST, PUT, PATCH
EndpointPath appended to the host to form the full request URL./api/data
Request timeoutMaximum time (in seconds) to wait for a response before the request is considered failed.30
Send payload asHow the payload is sent: as a raw Body or as a File (FormData) multipart attachment.Body
Expected success codeHTTP status code that indicates a successful transmission.200
Send payload as
  • Body: The payload (JSON or file content) is sent directly as the request body. OIBus sets the Content-Type header automatically based on the file extension (.json, .xml, .txt, .csv).
  • File (FormData): The payload is attached as a file in a multipart/form-data request. Use this when the API expects a file upload rather than a raw body.

Authentication

SettingDescriptionExample Value
TypeAuthentication method.None, Basic (username/password), Bearer token, API key
UsernameUsername. Required for Basic authentication.api_user
PasswordPassword. Required for Basic authentication.••••••••
Bearer tokenToken sent in the Authorization: Bearer header. Required for Bearer token.••••••••
API keyName of the API key parameter. Required for API key authentication.X-API-Key
API valueValue of the API key. Required for API key authentication.••••••••
Add toWhere to attach the API key: Header or Query parameters. Required for API key.Header

Proxy Configuration

If your network infrastructure requires requests to pass through a proxy server to reach the target REST API, enable the Use proxy option and configure the proxy details below.

SettingDescriptionExample Value
Proxy URLURL of the proxy server.http://proxy.example.com:8080
Proxy usernameUsername for proxy authentication (if required).proxy_user
Proxy passwordPassword for proxy authentication (if required).••••••••

Query Parameters

Add static query parameters appended to every request URL. Each entry has a Key and a Value.

FieldDescriptionExample Value
KeyQuery parameter name.source
ValueQuery parameter value.oibus

Headers

Add custom HTTP headers sent with every request. Each entry has a key name and a value.

FieldDescriptionExample Value
HTTP header key nameHTTP header name.X-Custom-Header
HTTP header valueHTTP header value.my-value
Authentication headers

Headers set in the Headers section are merged with any headers generated by the authentication configuration. Authentication headers (e.g., Authorization) take precedence if the same header name is defined in both places.

Connection Test

Use the Connection Test section to verify connectivity before OIBus starts sending real data.

SettingDescriptionExample Value
MethodHTTP method used for the test request.GET
Test EndpointPath used for the test request (appended to the configured Host)./health
BodyJSON body sent with the test request. Only available when method is POST or PUT.{}
Expected success codeHTTP status code that indicates a successful test response.200

The test uses the same host, authentication, proxy, query parameters, and headers as the live configuration, so it reflects real connectivity conditions.