Files
openapi-types/tests/3.0/callback-example.ts

89 lines
2.7 KiB
TypeScript

import type { Specification } from "../../3.0";
export const callbackExample: Specification = {
openapi: "3.0.0",
info: {
title: "Callback Example",
version: "1.0.0",
},
paths: {
"/streams": {
post: {
description: "subscribes a client to receive out-of-band data",
parameters: [
{
name: "callbackUrl",
in: "query",
required: true,
description:
"the location where data will be sent. Must be network accessible\nby the source server\n",
schema: {
type: "string",
format: "uri",
example: "https://tonys-server.com",
},
},
],
responses: {
"201": {
description: "subscription successfully created",
content: {
"application/json": {
schema: {
description: "subscription information",
required: ["subscriptionId"],
properties: {
subscriptionId: {
description:
"this unique identifier allows management of the subscription",
type: "string",
example: "2531329f-fb09-4ef7-887e-84e648214436",
},
},
},
},
},
},
},
callbacks: {
onData: {
"{$request.query.callbackUrl}/data": {
post: {
requestBody: {
description: "subscription payload",
content: {
"application/json": {
schema: {
type: "object",
properties: {
timestamp: {
type: "string",
format: "date-time",
},
userData: {
type: "string",
},
},
},
},
},
},
responses: {
"202": {
description:
"Your server implementation should return this HTTP status code\nif the data was received successfully\n",
},
"204": {
description:
"Your server should return this HTTP status code if no longer interested\nin further updates\n",
},
},
},
},
},
},
},
},
},
};