Examples
Here is just a short list of possible use cases. The source code can be found directly in the Github repository
Arbeitsagentur Jobbörse
HTTP
@job_clientId=c003a37f-024f-462a-b36d-b001be4cd24a
@job_clientSecret=32a39620-32b3-4307-9aa1-511e3d7f48a8
@job_tokenEndpoint=https://api-con.arbeitsagentur.de/oauth/gettoken_cc
@job_useAuthorizationHeader=false
###
GET https://api-con.arbeitsagentur.de/prod/jobboerse/jobsuche-service/pc/v2/app/jobs?FCT.AKTUALITAET=100&FCT.ANGEBOTSART=ARBEIT
Authorization: oauth2 client_credentials job
ArgoCD
HTTP
@host=http://argocd-server:8080
@app=testapp
@revision=master
@profile=dev
###
# @name session
POST {{host}}/argocd/api/v1/session
{
"username": "admin",
"password": "password"
}
###
# get applications
# @ref session
GET {{host}}/argocd/api/v1/applications
Authorization: Bearer {{session.token}}
###
# create application
# @ref session
POST {{host}}/argocd/api/v1/applications
Authorization: Bearer {{session.token}}
{
"metadata": {
"name": "{{app}}",
"namespace": "argocd"
},
"spec": {
"source": {
"repoURL": "https://github.com/httpyac/argocd.git",
"path": "argocd/{{app}}",
"targetRevision": "{{revision}}",
"helm": {
"valueFiles": ["values-{{profile}}.yaml","values.yaml"]
}
},
"destination": {
"server": "https://kubernetes.default.svc",
"namespace": "argocd"
},
"project": "default",
"syncPolicy": {
"automated":{}
}
}
}
Github GraphQL
HTTP
@git_api_key=???
###
fragment IOParts on Repository {
description
diskUsage
}
POST https://api.github.com/graphql
Content-Type: application/json
Authorization: Bearer {{git_api_key}}
query test($name: String!, $owner: String!) {
repository(name: $name, owner: $owner) {
name
fullName: nameWithOwner
...IOParts
forkCount
stargazers(first: 5) {
totalCount
nodes {
login
name
}
}
watchers {
totalCount
}
}
}
{
"name": "vscode-httpyac",
"owner": "AnWeber"
}
POST https://api.github.com/graphql
Content-Type: application/json
Authorization: Bearer {{git_api_key}}
gql foo < ./graphql.gql
{
"name": "vscode-httpyac",
"owner": "AnWeber"
}
gRPCb.in
HTTP
proto < ./proto
proto < ./grpcbin.proto
@host=grpc.postman-echo.com/
###
GRPC /HelloService/sayHello
{
"greeting": "world"
}
GRPC /HelloService/LotsOfReplies
{
"greeting": "world"
}
GRPC /HelloService/lotsOfGreetings
{
"greeting": "world."
}
{{@streaming
async function writeStream(){
await sleep(1000);
$requestClient.send({
greeting: 'How are you?',
});
await sleep(1000);
$requestClient.send({
greeting: 'I can stream.',
});
}
exports.waitPromise = writeStream();
}}
GRPC /HelloService/BidiHello
{
"greeting": "world"
}
{{@streaming
async function writeStream(){
await sleep(1000);
$requestClient.send({
greeting: ', how are you?',
});
await sleep(1000);
$requestClient.send({
greeting: ', I can stream.',
});
}
exports.waitPromise = writeStream();
}}
Httpbin
HTTP
/*
# httpbin.org (0.9.2)
> [ Base URL: httpbin.org/ ]
A simple HTTP Request & Response Service
**Run locally:** `$ docker run -p 80:80 kennethreitz/httpbin`
[the developer - Website](https://kennethreitz.org/)
[Send email to the developer](me@kennethreitz.org)
*/
/*
## Http Methods
Testing different HTTP verbs
*/
/*
## Status Codes
Generates responses with given status code
*/
DELETE https://httpbin.org/delete
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:00 GMT
content-type: application/json
content-length: 361
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
{
"args": {},
"data": "",
"files": {},
"form": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br",
"Host": "httpbin.org",
"User-Agent": "httpyac",
"X-Amzn-Trace-Id": "Root=1-60d0ea98-6446cd5e7dfa0a805da95cad"
},
"json": null,
"origin": "79.243.57.74",
"url": "https://httpbin.org/delete"
}
###
GET https://httpbin.org/get
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:05 GMT
content-type: application/json
content-length: 295
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
{
"args": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br",
"Host": "httpbin.org",
"User-Agent": "httpyac",
"X-Amzn-Trace-Id": "Root=1-60d0ea9d-3dfb873f497a9e6d50b2eccc"
},
"origin": "79.243.57.74",
"url": "https://httpbin.org/get"
}
###
PATCH https://httpbin.org/patch
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:07 GMT
content-type: application/json
content-length: 388
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
{
"args": {},
"data": "",
"files": {},
"form": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br",
"Content-Length": "0",
"Host": "httpbin.org",
"User-Agent": "httpyac",
"X-Amzn-Trace-Id": "Root=1-60d0ea9f-7e49d0a404e13ce7386fb746"
},
"json": null,
"origin": "79.243.57.74",
"url": "https://httpbin.org/patch"
}
###
POST https://httpbin.org/post
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:10 GMT
content-type: application/json
content-length: 387
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
{
"args": {},
"data": "",
"files": {},
"form": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br",
"Content-Length": "0",
"Host": "httpbin.org",
"User-Agent": "httpyac",
"X-Amzn-Trace-Id": "Root=1-60d0eaa2-3379384b530308d96e9ade95"
},
"json": null,
"origin": "79.243.57.74",
"url": "https://httpbin.org/post"
}
###
PUT https://httpbin.org/put
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:12 GMT
content-type: application/json
content-length: 386
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
{
"args": {},
"data": "",
"files": {},
"form": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br",
"Content-Length": "0",
"Host": "httpbin.org",
"User-Agent": "httpyac",
"X-Amzn-Trace-Id": "Root=1-60d0eaa4-1a5b7a7507929e2d412e650a"
},
"json": null,
"origin": "79.243.57.74",
"url": "https://httpbin.org/put"
}
###
DELETE https://httpbin.org/status/200
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:15 GMT
content-type: text/html; charset=utf-8
content-length: 0
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
###
GET https://httpbin.org/status/200
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:18 GMT
content-type: text/html; charset=utf-8
content-length: 0
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
###
PATCH https://httpbin.org/status/200
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:24 GMT
content-type: text/html; charset=utf-8
content-length: 0
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
###
POST https://httpbin.org/status/200
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:22 GMT
content-type: text/html; charset=utf-8
content-length: 0
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
###
PUT https://httpbin.org/status/200
HTTP/1.1 200 - OK
date: Mon, 21 Jun 2021 19:38:30 GMT
content-type: text/html; charset=utf-8
content-length: 0
connection: close
server: gunicorn/19.9.0
access-control-allow-origin: *
access-control-allow-credentials: true
Learn Webservices
HTTP
POST https://apps.learnwebservices.com/services/hello
Content-Type: application/xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<HelloRequest xmlns="http://learnwebservices.com/services/hello">
<Name>John Doe</Name>
</HelloRequest>
</soapenv:Body>
</soapenv:Envelope>
SpaceX
Rest API
HTTP
@host=https://api.spacexdata.com/v4
###
GET /launches/latest
GET /capsules
GraphQL API
HTTP
POST https://main--spacex-l4uc6p.apollographos.net/graphql
Content-Type: application/json
query launchesQuery($limit: Int!){
launchesPast(limit: $limit) {
mission_name
launch_date_local
launch_site {
site_name_long
}
rocket {
rocket_name
rocket_type
}
ships {
name
home_port
image
}
}
}
{
"limit": 10
}
Spring Boot Actuator
HTTP
@host=http://localhost:8080
###
GET /actuator/info
GET /actuator/env
GET /actuator/health
GET /actuator/health/liveness
GET /actuator/conditions
GET /actuator/scheduledtasks
GET /actuator/threaddump
GET /actuator/beans
GET /actuator/metrics
GET /actuator/configprops
GET /actuator/httptrace
GET /actuator/mappings