Titus Refunds API
The Refunds API from Titus — 1 operation(s) for refunds.
The Refunds API from Titus — 1 operation(s) for refunds.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/titus:titus-refunds-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Titus Refunds API
version: ''
servers:
- description: Titus API
url: https://api.gotitus.com
security:
- apiKey: []
tags:
- name: Refunds
paths:
/v1/refunds:
get:
summary: List refunds
description: Lists refunds across all of your checkouts, for reconciliation.
tags:
- Refunds
parameters:
- in: query
name: checkoutId
schema:
description: Filter to refunds for a single checkout.
type: string
format: uuid
pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
description: Filter to refunds for a single checkout.
- in: query
name: createdAt
schema:
description: Filter by creation time. ISO 8601, e.g. createdAt[gt]=2026-06-17T00:00:00Z.
type: object
properties:
gt:
description: After this time (exclusive).
type: string
gte:
description: At or after this time.
type: string
lt:
description: Before this time (exclusive).
type: string
lte:
description: At or before this time.
type: string
description: Filter by creation time. ISO 8601, e.g. createdAt[gt]=2026-06-17T00:00:00Z.
- in: query
name: updatedAt
schema:
description: Filter by last-updated time. ISO 8601, e.g. updatedAt[gt]=2026-06-17T00:00:00Z.
type: object
properties:
gt:
description: After this time (exclusive).
type: string
gte:
description: At or after this time.
type: string
lt:
description: Before this time (exclusive).
type: string
lte:
description: At or before this time.
type: string
description: Filter by last-updated time. ISO 8601, e.g. updatedAt[gt]=2026-06-17T00:00:00Z.
- in: query
name: limit
schema:
description: The number of objects to return.
default: 25
type: number
minimum: 1
maximum: 100
description: The number of objects to return.
- in: query
name: offset
schema:
description: The number of objects to skip.
default: 0
type: number
minimum: 0
description: The number of objects to skip.
- in: query
name: sort
schema:
description: The sort order of the objects, e.g. `createdAt` for ascending or `-createdAt` for descending.
default: -createdAt
type: string
enum:
- createdAt
- -createdAt
- updatedAt
- -updatedAt
description: The sort order of the objects, e.g. `createdAt` for ascending or `-createdAt` for descending.
responses:
'200':
description: '200'
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
type: object
properties:
id:
description: The unique id for this object
type: string
checkoutId:
description: The id of the checkout this refund belongs to.
type: string
format: uuid
pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
paymentMethod:
description: The payment method of the original checkout (`pay-now` or `pay-at-close`).
type: string
enum:
- pay-now
- pay-at-close
amount:
description: The refund amount in dollars.
type: number
status:
description: The current status of the refund. `pending` means the refund is in progress, `completed` means the funds have been returned, `failed` means the refund did not succeed.
type: string
enum:
- pending
- completed
- failed
createdAt:
description: The timestamp at which the object was created.
anyOf:
- type: string
- type: 'null'
updatedAt:
description: The timestamp at which the object was last updated.
anyOf:
- type: string
- type: 'null'
required:
- id
- checkoutId
- paymentMethod
- amount
- status
- createdAt
- updatedAt
additionalProperties: false
required:
- data
additionalProperties: false
'400':
description: '400'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Bad Request
message:
type: string
required:
- error
- message
additionalProperties: false
'401':
description: '401'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Unauthorized
message:
type: string
required:
- error
additionalProperties: false
'403':
description: '403'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Forbidden
message:
type: string
required:
- error
additionalProperties: false
'404':
description: '404'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Not Found
message:
type: string
required:
- error
additionalProperties: false
'409':
description: '409'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Conflict
message:
type: string
existingResourceId:
type: string
required:
- error
additionalProperties: false
'422':
description: '422'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Unprocessable Entity
message:
type: string
required:
- error
- message
additionalProperties: false
'429':
description: '429'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Too Many Requests
message:
type: string
required:
- error
additionalProperties: false
'500':
description: '500'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Internal Server Error
message:
type: string
required:
- error
additionalProperties: false
operationId: getV1Refunds
x-operation-id-source: derived
post:
summary: Refund a checkout
description: Create a refund for one of your checkouts. Supports both pay-now (card) and pay-at-close (disbursement) checkouts. If `amount` is omitted the full refundable amount is used.
tags:
- Refunds
parameters:
- in: header
name: idempotency-key
schema:
description: A unique client-chosen string (typically a UUID) that makes this request safe to retry. If the server has already processed a request with this key, the original response is replayed. See the API documentation for full semantics.
type: string
description: A unique client-chosen string (typically a UUID) that makes this request safe to retry. If the server has already processed a request with this key, the original response is replayed. See the API documentation for full semantics.
requestBody:
content:
application/json:
schema:
type: object
properties:
checkoutId:
description: The id of the checkout to refund.
type: string
format: uuid
pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
amount:
description: The amount to refund in dollars. If omitted, a full refund is created for the remaining refundable amount.
type: number
exclusiveMinimum: 0
required:
- checkoutId
responses:
'200':
description: '200'
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
id:
description: The unique id for this object
type: string
checkoutId:
description: The id of the checkout this refund belongs to.
type: string
format: uuid
pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
paymentMethod:
description: The payment method of the original checkout (`pay-now` or `pay-at-close`).
type: string
enum:
- pay-now
- pay-at-close
amount:
description: The refund amount in dollars.
type: number
status:
description: The current status of the refund. `pending` means the refund is in progress, `completed` means the funds have been returned, `failed` means the refund did not succeed.
type: string
enum:
- pending
- completed
- failed
createdAt:
description: The timestamp at which the object was created.
anyOf:
- type: string
- type: 'null'
updatedAt:
description: The timestamp at which the object was last updated.
anyOf:
- type: string
- type: 'null'
required:
- id
- checkoutId
- paymentMethod
- amount
- status
- createdAt
- updatedAt
additionalProperties: false
required:
- data
additionalProperties: false
'400':
description: '400'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Bad Request
message:
type: string
required:
- error
- message
additionalProperties: false
'401':
description: '401'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Unauthorized
message:
type: string
required:
- error
additionalProperties: false
'403':
description: '403'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Forbidden
message:
type: string
required:
- error
additionalProperties: false
'404':
description: '404'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Not Found
message:
type: string
required:
- error
additionalProperties: false
'409':
description: '409'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Conflict
message:
type: string
existingResourceId:
type: string
required:
- error
additionalProperties: false
'422':
description: '422'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Unprocessable Entity
message:
type: string
required:
- error
- message
additionalProperties: false
'429':
description: '429'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Too Many Requests
message:
type: string
required:
- error
additionalProperties: false
'500':
description: '500'
content:
application/json:
schema:
type: object
properties:
error:
type: string
const: Internal Server Error
message:
type: string
required:
- error
additionalProperties: false
operationId: postV1Refunds
x-operation-id-source: derived
components:
securitySchemes:
apiKey:
type: apiKey
in: header
name: x-api-key
description: API key for authentication