# README
public-api
A GraphQL public API for the demo app
Docker Image: https://hub.docker.com/repository/docker/hashicorpdemoapp/public-api
Creating a new release
The build pipeline is setup with Circle CI to build and create a new Docker image whenever a new tag is pushed to this repo. To create a new release execute the following commands:
# Use sem var for tags, i.e. v0.0.1
git tag [tag]
git push origin [tag]
Payments API interaction
You can interact with the graphql service using the ui which is accessible in your browser at the root path of the service.
Request
mutation {
pay(
details: {
name: "nic",
type: "mastercard",
number: "1234-1231-1231-2322"
expiry: "10/02",
cv2: 123,
amount: 10.23,
}
){
id,
card_plaintext,
card_ciphertext,
message
}
}
Response
{
"data": {
"pay": {
"id": "40487460-ae6b-4b02-92ae-01ab24f738a4",
"card_plaintext": "1234123-0123123",
"card_ciphertext": "Encryption Disabled",
"message": "Payment processed successfully, card details returned for demo purposes, not for production"
}
}
}
Or you can use cURL:
curl 'http://localhost:8080/api' \
-H 'Accept-Encoding: gzip, deflate, br' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Connection: keep-alive' \
-H 'DNT: 1' \
-H 'Origin: http://localhost:8080' \
--data-binary '{"query":"mutation{ pay(details:{ name: \"nic\", type: \"mastercard\", number: \"1234123-0123123\", expiry:\"10/02\", cv2: 1231, amount: 12.23 }){id, card_plaintext, card_ciphertext, message } }"}' --compressed
# Packages
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author