Custom Connector

Httpbin Connector

Global

The Httpbin Connector enables seamless integration with the Httpbin API — a simple HTTP Request & Response service for testing HTTP client implementations on GCP. It acts as a proxy across a wide range of endpoints for testing request/response cycles, authentication, cookies, redirects, status codes, and content encoding.

Type
Virtual machines, Single VM, BYOL
Runs on
Google Compute Engine
Last update
24 Oct 2024
Category
Integration
Overview

Integration Overview

This document groups the connector’s ~76 endpoints by area: HTTP-method echoes (GET/POST/PUT/PATCH/DELETE), authentication, cookies, redirects, status codes, response inspection, content formats, and encoding/streaming.

  • HTTP method echoes. getRequest / postRequest / putRequest / patchRequest / deleteRequest and the /anything variants echo request data.
  • Authentication. basicAuth, bearerAuth, digestAuth (+ algorithm, stale), and hiddenBasicAuth.
  • Cookies. getCookies, setCookies, setCookie, and deleteCookies.
  • Redirects. redirect, relativeRedirect, absoluteRedirect, and per-method redirectTo.
  • Status codes. getStatus / postStatus / putStatus / patchStatus / deleteStatus.
  • Response inspection. getIp, getHeaders, getUserAgent, getResponseHeaders, getUuid, getBase64.
  • Content formats. getJson, getHtml, getXml, getUtf8, getRobotsTxt, getDeny, getLinks, and images (PNG/JPEG/SVG/WEBP).
  • Encoding, caching & streaming. getGzip, getDeflate, getBrotli, getCache/setCacheControl, getEtag, getDelay, getDrip, getBytes/getRange, getStream/getStreamBytes.
Documentation

Detailed Integration Documentation

HTTP Method Echoes

ActionsgetRequest / postRequest / putRequest / patchRequest / deleteRequest · get/post/put/patch/deleteAnything (+ WithPath)
PurposeEchoes back the request — query parameters, headers, origin IP, URL, and (for write methods) the JSON body. The /anything variants accept any path.
ConfigurationEnsure the connector is configured with the base URL.
ParametersOptional:
anything (path) for the WithPath variants; show_env=1 (getRequest). Write methods accept an application/json body.
OutputSuccessful (200): JSON with request details and body. Failure: 400.
Workflow exampleExecute postAnything with a JSON body and verify the echoed data for request-handling tests.

Authentication

ActionsbasicAuth / bearerAuth / digestAuth / digestAuthWithAlgorithm / digestAuthWithStale / hiddenBasicAuth
PurposeTests HTTP Basic, Bearer, and Digest authentication (with algorithm and stale-nonce variants), plus hidden Basic auth (404 instead of 401).
ConfigurationProvide credentials via Basic/Bearer/Digest headers.
ParametersRequired:
user + passwd (Basic/Digest); qop (Digest: auth/auth-int); algorithm (MD5/SHA-256/SHA-512); stale_after. Bearer uses the Authorization header.
OutputSuccessful (200): {authenticated: true, user/token}. Failure (401/404): {authenticated: false}.
Workflow exampleExecute basicAuth with user=testuser and passwd=testpass to verify authentication.

Cookies

ActionsgetCookies / setCookies / setCookie / deleteCookies
PurposeRetrieves cookie data, sets cookies from the query string or a single named cookie, and deletes cookies — redirecting to /cookies.
ConfigurationEnsure the connector is configured with the base URL.
ParametersRequired (setCookie):
name + value. Optional:
cookies object (set/delete).
OutputSuccessful: {cookies: object}, or 302 redirect to /cookies with Set-Cookie. Failure: 400.
Workflow exampleExecute setCookie with name=session and value=abc123, then follow the redirect to verify.

Redirects

Actionsredirect / relativeRedirect / absoluteRedirect / getRedirectTo (+ post/put/patch/deleteRedirectTo)
PurposePerforms N 302 redirects (absolute or relative), and redirects to a specified URL with an optional status code, per HTTP method.
ConfigurationEnsure the connector is configured with the base URL.
ParametersRequired:
n (redirect count) or url (target). Optional:
status_code (301/302/303/307/308, default 302).
OutputSuccessful (301–308): redirect with Location header.
Workflow exampleExecute getRedirectTo with url=https://example.com to verify redirect handling.

Status Codes

ActionsgetStatus / postStatus / putStatus / patchStatus / deleteStatus
PurposeReturns a specified (or random from a list) HTTP status code for each method — for testing error handling.
ConfigurationEnsure the connector is configured with the base URL.
ParametersRequired:
codes (e.g. 404 or 200,404,500).
OutputSuccessful: the specified status code with a text body.
Workflow exampleExecute getStatus with codes=404 to verify 404 handling.

Response Inspection

ActionsgetIp / getHeaders / getUserAgent / getResponseHeaders (+ post) / getUuid / getBase64
PurposeRetrieves the client IP, request headers, and User-Agent; returns custom response headers; generates a UUID4; and decodes a base64url string.
ConfigurationEnsure the connector is configured with the base URL.
ParametersOptional:
headers object (response headers); value (base64 string).
OutputSuccessful (200): {origin}, {headers}, {user-agent}, {uuid}, or decoded text. Failure: 400.
Workflow exampleExecute getBase64 with value=SGVsbG8= to verify the decoded result (Hello).

Content Formats

ActionsgetJson / getHtml / getXml / getUtf8 / getRobotsTxt / getDeny / getLinks · getImage / getPngImage / getJpegImage / getSvgImage / getWebpImage
PurposeReturns documents in various formats (JSON, HTML, XML, UTF-8, robots.txt), a robots-denied page, a links page, and images by type or Accept header.
ConfigurationEnsure the connector is configured with the base URL.
ParametersOptional:
n + offset (getLinks); Accept header (getImage).
OutputSuccessful (200): the requested content type (application/json, text/html, image/*, etc.). Failure: 403 (getDeny).
Workflow exampleExecute getImage with Accept: image/png, or getPngImage directly, to verify image handling.

Encoding, Caching & Streaming

ActionsgetGzip / getDeflate / getBrotli · getCache / setCacheControl / getEtag · getDelay / getDrip · getBytes / getRange / getStreamBytes / getStream
PurposeReturns compressed content (GZip/Deflate/Brotli); tests caching (Cache-Control, ETag, 304); returns delayed and dripped responses; and generates or streams random bytes and JSON.
ConfigurationEnsure the connector is configured with the base URL.
ParametersOptional/required:
delay (0–10s); value (cache seconds / etag); n or numbytes; seed; chunk_size; duration; code.
OutputSuccessful (200): encoded content, cacheable responses (or 304), delayed/streamed bytes, or a streamed JSON array. Failure: 400.
Workflow exampleExecute getDelay with delay=5 for timeout testing, or getStreamBytes with n=1000 for streaming.

Example Workflow: Comprehensive HTTP Client Testing

Client identificationUse getIp and getUserAgent to log client details.
Requests & authExercise the method echoes and basic/bearer/digest auth actions.
Cookies & redirectsUse set/get/deleteCookies and the redirect actions to verify chains and status codes.
Content & encodingUse getJson/getHtml/getXml, images, and getGzip/Deflate/Brotli plus streaming for full coverage.
Support

For technical support, contact custom-connectors-support@isolutions.sa.

free consultation

Schedule a Free Consultation With Our Specialists

Book a free demo
request

Begin Your Adventure With Experienced Professionals

Send request
help desk

Do You Have Questions or Want More Information? Call Now.

Contact support