Guusto Gifts API (1.0)

Resources that enables seamless integration with Guusto’s recognition platform, allowing you to send gifts, track gift statuses, manage recipient details and many more with ease.

Languages
Servers
Mock server
https://docs.guusto.com/_mock/version/openapi/
Demo Test Environment
https://api-demo.guusto.io/
Production Environment
https://api.guusto.com/

Account Budget

Operation for querying Workspace account budget

Operations

Order Gift

Operations for creating and managing gift orders

Operations

Create a gift order

Request

Send gift(s) by creating an order request.

Headers
X-Customer-Request-Idstring

Customer supplied request Id (optional)

Example: Gf3rf11-181e-443f9-aba5-aeasf32203e1
X-Workspace-idstringrequired

Workspace ID for authentication

Example: 444
Bodyapplication/jsonrequired
orderItemsArray of objects(OrderItemRequest)[ 1 .. 20 ] itemsrequired

Gift(s) being ordered. Minimum of 1 Gift. Max of 20 Gifts.

orderItems[].​messagestringrequired

Message to the recipient

Example: "Good job! Here's a little something on me"
orderItems[].​amountnumber[ 1 .. 10000 ]required

Amount of the gift. Limited to 10,000

Example: 25
orderItems[].​recipientobject(RecipientRequest)required

Recipient request object where either employeeNumber or email must be provided. In case both are present, email will take precedence.

orderItems[].​recipient.​firstNamestring

Recipient's first name

Example: "John"
orderItems[].​recipient.​lastNamestring

Recipient's last name

Example: "Doe"
orderItems[].​recipient.​employeeNumberstring

employee #

Example: "5462"
orderItems[].​recipient.​emailstring

Recipient's email address

Example: "john.doe@example.com"
currencystringrequired

Currency of gift

Enum"CAD""USD"
Example: "CAD"
languagestring

Preferred language for the message

Enum"ES_MX""FR_CA""EN_CA"
Example: "EN_CA"
curl -i -X POST \
  https://docs.guusto.com/_mock/version/openapi/api/v1/orders \
  -H 'Authorization: Bearer <YOUR_ApiToken_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-Customer-Request-Id: Gf3rf11-181e-443f9-aba5-aeasf32203e1' \
  -H 'X-Workspace-id: 444' \
  -d '{
    "orderItems": [
      {
        "message": "Awesome work! A little something from me",
        "amount": 10,
        "recipient": {
          "firstName": "John",
          "lastName": "Doe",
          "email": "johnDoe@guusto.com"
        }
      }
    ],
    "currency": "CAD",
    "language": "EN_CA"
  }'

Responses

Successful order request

Bodyapplication/json
requestIdstring

Order request Id, used for tracking your order request

Example: "c3c0029f-181e-41f9-aba5-ae99602203e1"
requestStatusstring

Status of a request

Enum"ACCEPTED""WAITING_PROCESSING""PROCESSING_IN_PROGRESS""COMPLETED""FAILED"
Example: "COMPLETED"
orderStepstring

Progression step of an order

Enum"PENDING""PRECHECK_ORDER""NORMALIZE_ACCOUNT""NORMALIZE_PAYMENT""CERTIFICATE_VALIDATION""COST_CENTER_VALIDATION""BUDGET_VALIDATION""BALANCE_VALIDATION""CREATE_ORDER""FUND_ACCOUNT_REQUEST"
Example: "COMPLETED"
orderIdinteger(int64)

Created order Id

Example: 444350
customerRequestIdstring

Customer specified request Id

Example: "Gf3rf11-181e-443f9-aba5-aeasf32203e1"
Response
application/json
{ "requestId": "c3c0029f-181e-41f9-aba5-ae99602203e1", "requestStatus": "ACCEPTED", "orderStep": "PENDING", "orderId": null, "customerRequestId": "Gf3rf11-181e-443f9-aba5-aeasf32203e1" }

Get order status

Request

Get status of an order by passing order request ID.

Path
requestIdstringrequired

Order request Id

Example: c3c0029f-181e-41f9-aba5-ae99602203e1
Headers
X-Workspace-idstringrequired

Workspace ID for authentication

Example: 444
curl -i -X GET \
  https://docs.guusto.com/_mock/version/openapi/api/v1/orders/status/c3c0029f-181e-41f9-aba5-ae99602203e1 \
  -H 'Authorization: Bearer <YOUR_ApiToken_HERE>' \
  -H 'X-Workspace-id: 444'

Responses

Successful request

Bodyapplication/json
requestIdstring

Order request Id, used for tracking your order request

Example: "c3c0029f-181e-41f9-aba5-ae99602203e1"
requestStatusstring

Status of a request

Enum"ACCEPTED""WAITING_PROCESSING""PROCESSING_IN_PROGRESS""COMPLETED""FAILED"
Example: "COMPLETED"
orderStepstring

Progression step of an order

Enum"PENDING""PRECHECK_ORDER""NORMALIZE_ACCOUNT""NORMALIZE_PAYMENT""CERTIFICATE_VALIDATION""COST_CENTER_VALIDATION""BUDGET_VALIDATION""BALANCE_VALIDATION""CREATE_ORDER""FUND_ACCOUNT_REQUEST"
Example: "COMPLETED"
orderIdinteger(int64)

Created order Id

Example: 444350
customerRequestIdstring

Customer specified request Id

Example: "Gf3rf11-181e-443f9-aba5-aeasf32203e1"
Response
application/json
{ "requestId": "c3c0029f-181e-41f9-aba5-ae99602203e1", "requestStatus": "COMPLETED", "orderStep": "COMPLETED", "orderId": 444350, "customerRequestId": null }

Find order

Request

Find order details by passing order request ID. This supports pagination.

Path
requestIdstringrequired

Order request Id

Example: c3c0029f-181e-41f9-aba5-ae99602203e1
Query
pageinteger(int32)

View page

Default 0
Example: page=1
sizeinteger(int32)<= 100

Number of items per page

Default 10
Example: size=10
Headers
X-Workspace-idstringrequired

Workspace ID for authentication

Example: 444
curl -i -X GET \
  'https://docs.guusto.com/_mock/version/openapi/api/v1/orders/c3c0029f-181e-41f9-aba5-ae99602203e1?page=1&size=10' \
  -H 'Authorization: Bearer <YOUR_ApiToken_HERE>' \
  -H 'X-Workspace-id: 444'

Responses

Successful request

Bodyapplication/json
pageinteger(int32)

Selected page for viewing

Example: 1
sizeinteger(int32)

Size of results per page

Example: 50
totalElementsinteger(int64)

Total amount of elements within query

Example: 1
totalPagesinteger(int32)

Total amount of pages within query

Example: 1
idinteger(int64)

Order Id

Example: 444350
requestIdstring

Order request Id

Example: "c3c0029f-181e-41f9-aba5-ae99602203e1"
statestring

Progression step of an order

Enum"PENDING""PRECHECK_ORDER""NORMALIZE_ACCOUNT""NORMALIZE_PAYMENT""CERTIFICATE_VALIDATION""COST_CENTER_VALIDATION""BUDGET_VALIDATION""BALANCE_VALIDATION""CREATE_ORDER""FUND_ACCOUNT_REQUEST"
Example: "COMPLETED"
statusstring

Status of order

Enum"PENDING""AWAITING_APPROVAL""PAYMENT_PENDING""COMPLETE""CANCELLED""DECLINED""FAIL""REVERTED"
Example: "COMPLETE"
certificatesArray of objects(CertificateResponse)

List of Gifts Ordered

customerRequestIdstring

Customer specified Id

Example: "KKXJ3ka@1"
Response
application/json
{ "page": 1, "size": 1, "totalElements": 1, "totalPages": 1, "id": 444350, "requestId": "c3c0029f-181e-41f9-aba5-ae99602203e1", "state": "COMPLETED", "status": "COMPLETE", "certificates": [ { "id": 123123, "currency": "CAD", "senderName": "John Doe", "recipientUser": 2323, "amount": 10, "message": "Thank you for your hard work!", "longToken": "KNEJ89JkAJ2KJL82kJnIJ2", "shortToken": "JKNW2" } ] }

Reports

Operations for reporting insights and analytics

Operations