2023-03-28 17:47:34 +00:00
swagger : "2.0"
info :
2026-07-17 01:22:20 +00:00
version : 0.4 .0
2023-03-28 17:47:34 +00:00
title : "members"
description : "Membership Microservice"
termsOfService : "https://salesforcedevops.net/terms/"
contact :
2023-04-30 02:07:31 +00:00
email : "vern@salesforcedevops.net"
2023-03-28 17:47:34 +00:00
license :
2024-06-27 18:26:58 +00:00
name : "Proprietary - Copyright (c) 2018-2024 by Vernon Keenan"
2023-03-28 17:47:34 +00:00
securityDefinitions :
ApiKeyAuth :
type : "apiKey"
in : "header"
name : "X-API-Key"
2025-05-27 03:20:36 +00:00
kvSessionCookie :
name : Cookie
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
in : header
type : apiKey
description : "JWT session cookie passed as 'Cookie: kvSession=<jwt>'. HttpOnly, Secure, SameSite=None, Domain=.keenanvision.net"
2023-03-28 17:47:34 +00:00
schemes :
- "http"
basePath : "/v1"
host : "members.vernonkeenan.com:8080"
consumes :
- "application/json"
produces :
- "application/json"
parameters :
2026-07-17 01:22:20 +00:00
id :
name : id
in : query
type : string
format : uuid
brandId :
name : brandId
in : query
type : string
format : uuid
serviceId :
name : serviceId
in : query
type : string
format : uuid
planId :
name : planId
in : query
type : string
format : uuid
tenantId :
name : tenantId
in : query
type : string
format : uuid
description : Requested tenant; Members validates the session user membership.
userId :
name : userId
in : query
type : string
format : uuid
description : Optional user scope; must be the actor or authorized by tenant role.
status :
name : status
in : query
type : string
effectiveAt :
name : effectiveAt
in : query
type : string
format : date-time
description : UTC evaluation instant; defaults to the server's current instant.
clientType :
name : clientType
in : query
type : string
enum : [ mcp, api]
scope :
name : scope
in : query
type : string
includeInactive :
name : includeInactive
in : query
type : boolean
default : false
description : Includes revoked or expired metadata when authorized.
2026-07-18 23:18:59 +00:00
membershipAccessLevel :
name : accessLevel
in : query
type : string
enum : [ owner, manager, member, read_only]
membershipTenantId :
name : tenantId
in : query
type : string
minLength : 1
maxLength : 36
description : Tenant identifier; legacy Members tenant IDs are not all UUID formatted.
membershipStatus :
name : status
in : query
type : string
enum : [ active, suspended, revoked]
membershipEmail :
name : email
in : query
type : string
format : email
description : Exact normalized email filter; result scope remains actor-derived.
requestId :
name : X-Request-ID
in : header
type : string
maxLength : 120
description : Optional bounded correlation identifier stored with membership audit events.
2026-07-17 01:22:20 +00:00
limit :
name : limit
in : query
type : integer
format : int64
minimum : 1
maximum : 1000
default : 100
offset :
name : offset
in : query
type : integer
format : int64
minimum : 0
default : 0
2023-05-19 23:55:12 +00:00
Auth0UserIdHeader :
description : Auth0 User Id
in : header
name : X-Auth0-UserId
2023-08-25 20:59:50 +00:00
required : false
2023-05-19 23:55:12 +00:00
type : string
2023-03-28 17:47:34 +00:00
AttendeeRequest :
description : An array of new Attendee records
in : body
name : attendeeRequest
required : true
schema :
$ref : "#/definitions/AttendeeRequest"
CertificateRequest :
description : An array of new Certificate records
in : body
name : certificateRequest
required : true
schema :
$ref : "#/definitions/CertificateRequest"
CourseLessonRequest :
description : An array of new CourseLesson records
in : body
name : courselessonRequest
required : true
schema :
$ref : "#/definitions/CourseLessonRequest"
2023-04-07 18:00:15 +00:00
clusterIdQuery :
description : Record Id of a Cluster
in : query
name : clusterId
required : false
type : string
ClusterRequest :
description : An array of Cluster records
in : body
name : ClusterRequest
required : true
schema :
$ref : "#/definitions/ClusterRequest"
CourseRequest :
description : An array of new Course records
in : body
name : courseRequest
required : true
schema :
$ref : "#/definitions/CourseRequest"
2023-03-28 17:47:34 +00:00
CourseSectionRequest :
description : An array of new CourseSection records
in : body
name : coursesectionRequest
required : true
schema :
$ref : "#/definitions/CourseSectionRequest"
2023-04-17 22:11:43 +00:00
OutgoingEmailMessageRequest :
description : An array of new Outgoing Email Message records
in : body
name : OutgoingEmailMessageRequest
required : true
schema :
$ref : "#/definitions/OutgoingEmailMessageRequest"
2023-03-28 17:47:34 +00:00
EnrollmentRequest :
description : An array of new Enrollment records
in : body
name : enrollmentRequest
required : true
schema :
$ref : "#/definitions/EnrollmentRequest"
2023-04-07 18:00:15 +00:00
EventRequest :
description : An array of new Event records
2023-03-28 17:47:34 +00:00
in : body
2023-04-07 18:00:15 +00:00
name : eventRequest
2023-03-28 17:47:34 +00:00
required : true
schema :
2023-04-07 18:00:15 +00:00
$ref : "#/definitions/EventRequest"
2023-04-30 17:56:32 +00:00
EventCategoryRequest :
description : An array of new Event records
in : body
name : eventCategoryRequest
required : true
schema :
$ref : "#/definitions/EventCategoryRequest"
2023-03-28 17:47:34 +00:00
FavoriteRequest :
description : An array of new Favorite records
in : body
name : favoriteRequest
required : true
schema :
$ref : "#/definitions/FavoriteRequest"
InvoiceRequest :
description : An array of new Invoice records
in : body
name : invoiceRequest
required : true
schema :
$ref : "#/definitions/InvoiceRequest"
IssuedCertificateRequest :
description : An array of new IssuedCertificate records
in : body
2023-05-13 16:46:48 +00:00
name : issuedCertificateRequest
2023-03-28 17:47:34 +00:00
required : true
schema :
$ref : "#/definitions/IssuedCertificateRequest"
LessonProgressRequest :
description : An array of new LessonProgress records
in : body
name : lessonprogressRequest
required : true
schema :
$ref : "#/definitions/LessonProgressRequest"
OrderRequest :
description : An array of new Order records
in : body
name : orderRequest
required : true
schema :
$ref : "#/definitions/OrderRequest"
PaymentMethodRequest :
description : An array of new PaymentMethod records
in : body
2023-05-13 16:46:48 +00:00
name : paymentMethodRequest
2023-03-28 17:47:34 +00:00
required : true
schema :
$ref : "#/definitions/PaymentMethodRequest"
2023-06-04 23:54:48 +00:00
PromptRequest :
description : An array of new Prompt records
in : body
name : promptRequest
required : true
schema :
$ref : "#/definitions/PromptRequest"
PromptCategoryRequest :
description : An array of PromptCategory objects
name : promptCategoryRequest
required : true
in : body
schema :
$ref : "#/definitions/PromptCategoryRequest"
PromptTagRequest :
description : An array of PromptTag objects
name : promptTagRequest
required : true
in : body
schema :
$ref : "#/definitions/PromptTagRequest"
2023-06-17 01:24:46 +00:00
PromptAnswerRequest :
description : An array of PromptAnswer objects
name : promptAnswerRequest
required : true
in : body
schema :
$ref : "#/definitions/PromptAnswerRequest"
2023-03-28 17:47:34 +00:00
ResearchProjectCompanyRequest :
description : An array of new ResearchProjectCompany records
in : body
2023-05-13 16:46:48 +00:00
name : researchProjectCompanyRequest
2023-03-28 17:47:34 +00:00
required : true
schema :
$ref : "#/definitions/ResearchProjectCompanyRequest"
2023-05-13 16:46:48 +00:00
researchProjectProductRequest :
description : An array of new ResearchProjectProduct records
in : body
name : researchProjectProductRequest
required : true
schema :
$ref : "#/definitions/ResearchProjectProductRequest"
2023-05-28 16:22:37 +00:00
ResearchProjectServiceRequest :
description : An array of new ResearchProjectService records
in : body
name : researchProjectServiceRequest
required : true
schema :
$ref : "#/definitions/ResearchProjectServiceRequest"
2023-05-19 23:55:12 +00:00
ResearchProjectDocumentRequest :
description : An array of new ResearchProjectDocument records
in : body
name : researchProjectDocumentRequest
required : true
schema :
$ref : "#/definitions/ResearchProjectDocumentRequest"
2023-04-07 18:00:15 +00:00
ResearchProjectRequest :
description : An array of new ResearchProject records
in : body
2023-05-13 16:46:48 +00:00
name : researchProjectRequest
2023-04-07 18:00:15 +00:00
required : true
schema :
$ref : "#/definitions/ResearchProjectRequest"
2023-03-28 17:47:34 +00:00
ResearchProjectTopicRequest :
description : An array of new ResearchProjectTopic records
in : body
2023-05-13 16:46:48 +00:00
name : researchProjectTopicRequest
2023-03-28 17:47:34 +00:00
required : true
schema :
$ref : "#/definitions/ResearchProjectTopicRequest"
2023-04-07 18:00:15 +00:00
templateIdQuery :
description : Template ID
in : query
name : templateId
type : string
TemplateRequest :
description : An array of Template records
in : body
name : TemplateRequest
required : true
schema :
$ref : "#/definitions/TemplateRequest"
2023-04-30 02:07:31 +00:00
EmailMessageRequest :
description : An array of Email Message records
in : body
name : EmailMessageRequest
required : true
schema :
$ref : "#/definitions/EmailMessageRequest"
2023-06-04 23:54:48 +00:00
TenantRequest :
2023-04-07 18:00:15 +00:00
description : An array of Tenant records
in : body
name : TenantRequest
required : true
schema :
$ref : "#/definitions/TenantRequest"
2023-03-28 17:47:34 +00:00
TicketRequest :
description : An array of new Ticket records
in : body
name : ticketRequest
required : true
schema :
$ref : "#/definitions/TicketRequest"
TransactionRequest :
description : An array of new Transaction records
in : body
name : transactionRequest
required : true
schema :
$ref : "#/definitions/TransactionRequest"
2023-04-07 18:00:15 +00:00
UserRequest :
description : An array of User records
in : body
name : UserRequest
required : true
schema :
$ref : "#/definitions/UserRequest"
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
OnboardRequest :
description : Self-service onboarding request (single user)
2023-04-11 14:59:35 +00:00
in : body
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
name : onboardRequest
2023-04-11 14:59:35 +00:00
required : true
schema :
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
$ref : "#/definitions/OnboardRequest"
2023-04-07 18:00:15 +00:00
activeQuery :
description : Retrieve active records only?
in : query
name : active
required : false
type : boolean
auth0UserIdQuery :
description : External Auth0 User ID
in : query
name : auth0UserId
required : false
type : string
2023-04-11 14:59:35 +00:00
userIdQuery :
description : Internal User ID
in : query
name : userId
required : false
type : string
2023-05-14 21:32:28 +00:00
userIdQueryRequired :
description : Internal User ID
in : query
name : userId
required : true
type : string
2023-04-11 14:59:35 +00:00
contactIdQuery :
description : Internal Contact ID (links to Account)
in : query
name : contactId
required : false
type : string
2023-04-07 18:00:15 +00:00
databaseIdQuery :
description : Record Id of a Database
in : query
name : databaseId
type : string
required : true
databaseRequest :
description : An array of Database records
in : body
name : DatabaseRequest
required : true
schema :
$ref : "#/definitions/DatabaseRequest"
2023-05-19 23:55:12 +00:00
documentRequest :
description : An array of Document records
in : body
name : DocumentRequest
required : true
schema :
$ref : "#/definitions/DocumentRequest"
2023-04-17 22:11:43 +00:00
emailMessageIdQuery :
description : Email Message ID
in : query
name : emailMessageId
type : string
2023-04-07 18:00:15 +00:00
emailQuery :
description : Email address
in : query
name : email
required : false
type : string
idQuery :
description : Unique Record ID
in : query
name : id
required : false
type : string
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
nameQuery :
description : Name of the object
in : query
name : name
required : false
type : string
2023-04-07 18:00:15 +00:00
objectTypeQuery :
description : Object Type Name
in : query
name : objectType
type : string
isMasterQuery :
description : Is Master Template?
in : query
name : isMaster
type : boolean
limitQuery :
description : How many objects to return at one time
format : int64
in : query
name : limit
required : false
type : integer
offsetQuery :
description : How many objects to skip?
format : int64
in : query
name : offset
required : false
type : integer
2023-03-28 17:47:34 +00:00
responses :
2023-04-07 18:00:15 +00:00
AccessForbidden :
description : Access forbidden, account lacks access
headers :
Access-Control-Allow-Origin :
type : string
2023-04-15 14:27:18 +00:00
x-nullable : true
2023-04-07 18:00:15 +00:00
schema :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/error.yaml#/Error"
2023-03-28 17:47:34 +00:00
AttendeeResponse :
description : Attendee Response Object
schema :
$ref : "#/definitions/AttendeeResponse"
CertificateResponse :
description : Certificate Response Object
schema :
$ref : "#/definitions/CertificateResponse"
2023-04-07 18:00:15 +00:00
ClusterResponse :
description : Response with Cluster objects
2023-03-28 17:47:34 +00:00
schema :
2023-04-07 18:00:15 +00:00
$ref : "#/definitions/ClusterResponse"
2023-03-28 17:47:34 +00:00
CourseLessonResponse :
description : CourseLesson Response Object
schema :
$ref : "#/definitions/CourseLessonResponse"
2023-04-07 18:00:15 +00:00
CourseResponse :
description : Course Response Object
schema :
$ref : "#/definitions/CourseResponse"
2023-03-28 17:47:34 +00:00
CourseSectionResponse :
description : CourseSection Response Object
schema :
$ref : "#/definitions/CourseSectionResponse"
2023-04-07 18:00:15 +00:00
DatabaseResponse :
description : Response with Database objects
schema :
$ref : "#/definitions/DatabaseResponse"
2023-05-19 23:55:12 +00:00
DocumentResponse :
description : Document Response Object
schema :
$ref : "#/definitions/DocumentResponse"
2023-04-17 22:11:43 +00:00
EmailMessagesResponse :
description : "Array of Email Messages"
schema :
$ref : "#/definitions/EmailMessagesResponse"
2023-04-30 02:07:31 +00:00
OutgoingEmailMessagesResponse :
description : "Array of Outgoing Email Messages"
schema :
$ref : "#/definitions/OutgoingEmailMessagesResponse"
2023-03-28 17:47:34 +00:00
EnrollmentResponse :
description : Enrollment Response Object
schema :
$ref : "#/definitions/EnrollmentResponse"
2023-04-07 18:00:15 +00:00
EventResponse :
description : Event Response Object
2023-03-28 17:47:34 +00:00
schema :
2023-04-07 18:00:15 +00:00
$ref : "#/definitions/EventResponse"
2023-04-30 17:56:32 +00:00
EventCategoryResponse :
description : Event Response Object
schema :
$ref : "#/definitions/EventCategoryResponse"
2023-03-28 17:47:34 +00:00
FavoriteResponse :
description : Favorite Response Object
schema :
$ref : "#/definitions/FavoriteResponse"
InvoiceResponse :
description : Invoice Response Object
schema :
$ref : "#/definitions/InvoiceResponse"
IssuedCertificateResponse :
description : IssuedCertificate Response Object
schema :
$ref : "#/definitions/IssuedCertificateResponse"
LessonProgressResponse :
description : LessonProgress Response Object
schema :
$ref : "#/definitions/LessonProgressResponse"
2023-04-07 18:00:15 +00:00
NotFound :
description : Resource was not found
schema :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/error.yaml#/Error"
2023-03-28 17:47:34 +00:00
OrderResponse :
description : Order Response Object
schema :
$ref : "#/definitions/OrderResponse"
PaymentMethodResponse :
description : PaymentMethod Response Object
schema :
$ref : "#/definitions/PaymentMethodResponse"
2023-06-04 23:54:48 +00:00
PromptResponse :
description : Response with Prompt objects
schema :
$ref : "#/definitions/PromptResponse"
PromptCategoryResponse :
description : Response with PromptCategory objects
schema :
$ref : "#/definitions/PromptCategoryResponse"
2023-06-17 01:24:46 +00:00
PromptAnswerResponse :
description : Response with PromptAnswer objects
schema :
$ref : "#/definitions/PromptAnswerResponse"
2023-06-04 23:54:48 +00:00
PromptTagResponse :
description : Response with PromptTag objects
schema :
$ref : "#/definitions/PromptTagResponse"
2023-04-07 18:00:15 +00:00
ResearchProjectCompanyResponse :
description : ResearchProjectCompany Response Object
2023-03-28 17:47:34 +00:00
schema :
2023-04-07 18:00:15 +00:00
$ref : "#/definitions/ResearchProjectCompanyResponse"
2023-05-19 23:55:12 +00:00
ResearchProjectDocumentResponse :
description : ResearchProjectDocument Response Object
schema :
$ref : "#/definitions/ResearchProjectDocumentResponse"
2023-05-13 16:46:48 +00:00
ResearchProjectProductResponse :
description : ResearchProjectProduct Response Object
schema :
$ref : "#/definitions/ResearchProjectProductResponse"
2023-05-28 16:22:37 +00:00
ResearchProjectServiceResponse :
description : ResearchProjectService Response Object
schema :
$ref : "#/definitions/ResearchProjectServiceResponse"
2023-04-07 18:00:15 +00:00
ResearchProjectResponse :
description : ResearchProject Response Object
2023-03-28 17:47:34 +00:00
schema :
2023-04-07 18:00:15 +00:00
$ref : "#/definitions/ResearchProjectResponse"
2023-03-28 17:47:34 +00:00
ResearchProjectTopicResponse :
description : ResearchProjectTopic Response Object
schema :
$ref : "#/definitions/ResearchProjectTopicResponse"
2023-04-07 18:00:15 +00:00
ServerError :
description : Server Internal Error
schema :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/error.yaml#/Error"
2023-04-07 18:00:15 +00:00
TenantResponse :
description : Response with Tenant objects
schema :
$ref : "#/definitions/TenantResponse"
TemplateResponse :
description : Response with Template objects
schema :
$ref : "#/definitions/TemplateResponse"
2023-03-28 17:47:34 +00:00
TicketResponse :
description : Ticket Response Object
schema :
$ref : "#/definitions/TicketResponse"
TransactionResponse :
description : Transaction Response Object
schema :
$ref : "#/definitions/TransactionResponse"
2023-04-07 18:00:15 +00:00
Unauthorized :
description : Access Unauthorized, invalid API-KEY was used
schema :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/error.yaml#/Error"
2023-04-07 18:00:15 +00:00
UnprocessableEntity :
description : Unprocessable Entity, likely a bad parameter
schema :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/error.yaml#/Error"
2023-04-07 18:00:15 +00:00
UserResponse :
description : Response with User objects
schema :
$ref : "#/definitions/UserResponse"
2023-03-28 17:47:34 +00:00
paths :
2026-07-17 01:22:20 +00:00
/brands :
get :
operationId : getBrands
tags : [ PortalCatalog]
summary : List customer-facing brands
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/status"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Brand records, schema : {$ref : "#/definitions/BrandResponse" }}
400 : {description : Invalid brand filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the requested scope}
500 : {description : Server error}
security : &portalSecurity
- ApiKeyAuth : [ ]
kvSessionCookie : [ ]
post :
operationId : postBrands
tags : [ PortalCatalog]
summary : Create brands
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/BrandRequest" }
responses :
200 : {description: Created brands, schema : {$ref : "#/definitions/BrandResponse" }}
400 : {description : Invalid lifecycle or catalog data}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks catalog-management authority}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putBrands
tags : [ PortalCatalog]
summary : Update brands without deleting history
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/BrandRequest" }
responses :
200 : {description: Updated brands, schema : {$ref : "#/definitions/BrandResponse" }}
400 : {description : Invalid lifecycle or catalog data}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks catalog-management authority}
500 : {description : Server error}
security : *portalSecurity
/services :
get :
operationId : getServices
tags : [ PortalCatalog]
summary : List commercial member-facing capabilities
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/status"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Service records, schema : {$ref : "#/definitions/ServiceResponse" }}
400 : {description : Invalid service filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the requested scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postServices
tags : [ PortalCatalog]
summary : Create commercial services
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/ServiceRequest" }
responses :
200 : {description: Created services, schema : {$ref : "#/definitions/ServiceResponse" }}
400 : {description : Invalid service data}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks catalog-management authority}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putServices
tags : [ PortalCatalog]
summary : Update commercial services without deleting history
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/ServiceRequest" }
responses :
200 : {description: Updated services, schema : {$ref : "#/definitions/ServiceResponse" }}
400 : {description : Invalid service data}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks catalog-management authority}
500 : {description : Server error}
security : *portalSecurity
/servicescopes :
get :
operationId : getServiceScopes
tags : [ PortalCatalog]
summary : List controlled client scopes
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/serviceId"
- $ref : "#/parameters/status"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Service scope records, schema : {$ref : "#/definitions/ServiceScopeResponse" }}
400 : {description : Invalid service-scope filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the requested scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postServiceScopes
tags : [ PortalCatalog]
summary : Create controlled client scopes
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/ServiceScopeRequest" }
responses :
200 : {description: Created service scopes, schema : {$ref : "#/definitions/ServiceScopeResponse" }}
400 : {description : Invalid service scope data}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks catalog-management authority}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putServiceScopes
tags : [ PortalCatalog]
summary : Update controlled client scopes
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/ServiceScopeRequest" }
responses :
200 : {description: Updated service scopes, schema : {$ref : "#/definitions/ServiceScopeResponse" }}
400 : {description : Invalid service scope data}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks catalog-management authority}
500 : {description : Server error}
security : *portalSecurity
/brandservices :
get :
operationId : getBrandServices
tags : [ PortalCatalog]
summary : List brand catalog placements
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/brandId"
- $ref : "#/parameters/serviceId"
- $ref : "#/parameters/status"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Brand-service records, schema : {$ref : "#/definitions/BrandServiceResponse" }}
400 : {description : Invalid brand-service filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the requested scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postBrandServices
tags : [ PortalCatalog]
summary : Create brand catalog placements
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/BrandServiceRequest" }
responses :
200 : {description: Created brand-service records, schema : {$ref : "#/definitions/BrandServiceResponse" }}
400 : {description : Invalid catalog placement}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks catalog-management authority}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putBrandServices
tags : [ PortalCatalog]
summary : Update brand catalog placements
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/BrandServiceRequest" }
responses :
200 : {description: Updated brand-service records, schema : {$ref : "#/definitions/BrandServiceResponse" }}
400 : {description : Invalid catalog placement}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks catalog-management authority}
500 : {description : Server error}
security : *portalSecurity
/plans :
get :
operationId : getPlans
tags : [ PortalPlans]
summary : List immutable-version commercial plans
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/status"
- $ref : "#/parameters/effectiveAt"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Plan records, schema : {$ref : "#/definitions/PlanResponse" }}
400 : {description : Invalid plan filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the requested scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postPlans
tags : [ PortalPlans]
summary : Create plan versions
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/PlanRequest" }
responses :
200 : {description: Created plans, schema : {$ref : "#/definitions/PlanResponse" }}
400 : {description : Invalid plan data}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks plan-management authority}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putPlans
tags : [ PortalPlans]
summary : Update draft or lifecycle state; published versions are immutable
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/PlanRequest" }
responses :
200 : {description: Updated plans, schema : {$ref : "#/definitions/PlanResponse" }}
400 : {description : Invalid or immutable plan update}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks plan-management authority}
500 : {description : Server error}
security : *portalSecurity
/brandplans :
get :
operationId : getBrandPlans
tags : [ PortalPlans]
summary : List brand plan placements
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/brandId"
- $ref : "#/parameters/planId"
- $ref : "#/parameters/status"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Brand-plan records, schema : {$ref : "#/definitions/BrandPlanResponse" }}
400 : {description : Invalid brand-plan filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the requested scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postBrandPlans
tags : [ PortalPlans]
summary : Create brand plan placements
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/BrandPlanRequest" }
responses :
200 : {description: Created brand-plan records, schema : {$ref : "#/definitions/BrandPlanResponse" }}
400 : {description : Invalid plan placement}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks plan-management authority}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putBrandPlans
tags : [ PortalPlans]
summary : Update brand plan placements
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/BrandPlanRequest" }
responses :
200 : {description: Updated brand-plan records, schema : {$ref : "#/definitions/BrandPlanResponse" }}
400 : {description : Invalid plan placement}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks plan-management authority}
500 : {description : Server error}
security : *portalSecurity
/planservices :
get :
operationId : getPlanServices
tags : [ PortalPlans]
summary : List plan service grants and descriptive limits
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/planId"
- $ref : "#/parameters/serviceId"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Plan-service records, schema : {$ref : "#/definitions/PlanServiceResponse" }}
400 : {description : Invalid plan-service filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the requested scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postPlanServices
tags : [ PortalPlans]
summary : Add service grants and descriptive limits to plans
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/PlanServiceRequest" }
responses :
200 : {description: Created plan-service records, schema : {$ref : "#/definitions/PlanServiceResponse" }}
400 : {description : Invalid typed limit or plan grant}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks plan-management authority}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putPlanServices
tags : [ PortalPlans]
summary : Update draft plan service grants
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/PlanServiceRequest" }
responses :
200 : {description: Updated plan-service records, schema : {$ref : "#/definitions/PlanServiceResponse" }}
400 : {description : Invalid typed limit or immutable plan grant}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor lacks plan-management authority}
500 : {description : Server error}
security : *portalSecurity
/subscriptions :
get :
operationId : getSubscriptions
tags : [ PortalAccess]
summary : List tenant-scoped subscriptions
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/tenantId"
- $ref : "#/parameters/planId"
- $ref : "#/parameters/status"
- $ref : "#/parameters/effectiveAt"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Authorized subscription records, schema : {$ref : "#/definitions/SubscriptionResponse" }}
400 : {description : Invalid subscription filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not a member of or cannot manage the requested tenant}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postSubscriptions
tags : [ PortalAccess]
summary : Create tenant subscriptions
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/SubscriptionRequest" }
responses :
200 : {description: Created subscriptions, schema : {$ref : "#/definitions/SubscriptionResponse" }}
400 : {description : Invalid subscription lifecycle data}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor cannot manage the requested tenant}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putSubscriptions
tags : [ PortalAccess]
summary : Update, pause, cancel, or expire subscriptions
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/SubscriptionRequest" }
responses :
200 : {description: Updated subscriptions, schema : {$ref : "#/definitions/SubscriptionResponse" }}
400 : {description : Invalid subscription lifecycle transition}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor cannot manage the requested tenant}
500 : {description : Server error}
security : *portalSecurity
/entitlements :
get :
operationId : getEntitlements
tags : [ PortalAccess]
summary : List tenant- or user-scoped explicit grants
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/tenantId"
- $ref : "#/parameters/userId"
- $ref : "#/parameters/serviceId"
- $ref : "#/parameters/status"
- $ref : "#/parameters/effectiveAt"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Authorized entitlement records, schema : {$ref : "#/definitions/EntitlementResponse" }}
400 : {description : Invalid entitlement filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the tenant or user scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postEntitlements
tags : [ PortalAccess]
summary : Create explicit tenant or user grants
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/EntitlementRequest" }
responses :
200 : {description: Created entitlements, schema : {$ref : "#/definitions/EntitlementResponse" }}
400 : {description : Invalid or overlapping explicit grant}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor cannot manage grants for the tenant}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putEntitlements
tags : [ PortalAccess]
summary : Update, revoke, or expire explicit grants
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/EntitlementRequest" }
responses :
200 : {description: Updated entitlements, schema : {$ref : "#/definitions/EntitlementResponse" }}
400 : {description : Invalid or overlapping explicit grant}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor cannot manage grants for the tenant}
500 : {description : Server error}
security : *portalSecurity
/effectiveentitlements :
get :
operationId : getEffectiveEntitlements
tags : [ PortalAccess]
summary : Resolve effective commercial access at a UTC instant
parameters :
- $ref : "#/parameters/tenantId"
- $ref : "#/parameters/userId"
- $ref : "#/parameters/serviceId"
- $ref : "#/parameters/effectiveAt"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Effective grants with typed limits and provenance, schema : {$ref : "#/definitions/EffectiveEntitlementResponse" }}
400 : {description : Invalid or ambiguous effective-entitlement context}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the tenant or user scope}
500 : {description : Server error}
security : *portalSecurity
/authorizedclients :
get :
operationId : getAuthorizedClients
tags : [ PortalClients]
summary : List non-secret authorized-client connection metadata
parameters :
- $ref : "#/parameters/id"
- $ref : "#/parameters/tenantId"
- $ref : "#/parameters/userId"
- $ref : "#/parameters/status"
- $ref : "#/parameters/clientType"
- $ref : "#/parameters/scope"
- $ref : "#/parameters/includeInactive"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Authorized-client metadata without tokens or secrets, schema : {$ref : "#/definitions/AuthorizedClientResponse" }}
400 : {description : Invalid authorized-client filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the tenant or user scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postAuthorizedClients
tags : [ PortalClients]
summary : Register non-secret authorized-client metadata
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/AuthorizedClientRequest" }
responses :
200 : {description: Created client metadata, schema : {$ref : "#/definitions/AuthorizedClientResponse" }}
400 : {description : Invalid client metadata or tenant/user scope}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor cannot manage clients for the tenant}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putAuthorizedClients
tags : [ PortalClients]
summary : Update or idempotently revoke client metadata
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/AuthorizedClientRequest" }
responses :
200 : {description: Updated client metadata, schema : {$ref : "#/definitions/AuthorizedClientResponse" }}
400 : {description : Invalid client lifecycle transition}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor cannot manage clients for the tenant}
500 : {description : Server error}
security : *portalSecurity
/authorizedclientscopes :
get :
operationId : getAuthorizedClientScopes
tags : [ PortalClients]
summary : List approved scopes backed by effective entitlements
parameters :
- $ref : "#/parameters/id"
- name : authorizedClientId
in : query
type : string
format : uuid
- $ref : "#/parameters/serviceId"
- $ref : "#/parameters/scope"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Authorized-client scopes, schema : {$ref : "#/definitions/AuthorizedClientScopeResponse" }}
400 : {description : Invalid authorized-client-scope filter}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor is not authorized for the client tenant or user scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postAuthorizedClientScopes
tags : [ PortalClients]
summary : Approve scopes only when backed by effective entitlements
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/AuthorizedClientScopeRequest" }
responses :
200 : {description: Created authorized-client scopes, schema : {$ref : "#/definitions/AuthorizedClientScopeResponse" }}
400 : {description : Scope is not backed by an effective service entitlement}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor cannot manage scopes for the client}
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putAuthorizedClientScopes
tags : [ PortalClients]
summary : Update approved client scopes
parameters :
- in : body
name : request
required : true
schema : {$ref : "#/definitions/AuthorizedClientScopeRequest" }
responses :
200 : {description: Updated authorized-client scopes, schema : {$ref : "#/definitions/AuthorizedClientScopeResponse" }}
400 : {description : Scope is not backed by an effective service entitlement}
401 : {description : Missing or invalid server or session credential}
403 : {description : Actor cannot manage scopes for the client}
500 : {description : Server error}
security : *portalSecurity
2026-07-18 23:18:59 +00:00
/manageabletenants :
get :
operationId : getManageableTenants
tags : [ PortalMemberships]
summary : List tenant contexts the current actor may administer
parameters :
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Actor-derived manageable tenant contexts, schema : {$ref : "#/definitions/ManageableTenantResponse" }}
400 : {description : Invalid pagination}
401 : {description : Missing or invalid server or session credential}
500 : {description : Server error}
security : *portalSecurity
/tenantmemberships :
get :
operationId : getTenantMemberships
tags : [ PortalMemberships]
summary : List actor-visible tenant memberships
parameters :
- $ref : "#/parameters/membershipTenantId"
- $ref : "#/parameters/userId"
- $ref : "#/parameters/membershipEmail"
- $ref : "#/parameters/membershipAccessLevel"
- $ref : "#/parameters/membershipStatus"
- $ref : "#/parameters/limit"
- $ref : "#/parameters/offset"
responses :
200 : {description: Actor-scoped tenant memberships, schema : {$ref : "#/definitions/TenantMembershipListResponse" }}
400 : {description : Invalid membership filter}
401 : {description : Missing or invalid server or session credential}
404 : {description : Requested foreign or unavailable scope}
500 : {description : Server error}
security : *portalSecurity
post :
operationId : postTenantMembership
tags : [ PortalMemberships]
2026-07-18 23:20:56 +00:00
summary : Create a tenant link or return an exact desired-state match
2026-07-18 23:18:59 +00:00
parameters :
- $ref : "#/parameters/requestId"
- in : body
name : request
required : true
schema : {$ref : "#/definitions/TenantMembershipCreateRequest" }
responses :
2026-07-18 23:20:56 +00:00
200 : {description: Newly created membership or exact existing desired-state match, schema : {$ref : "#/definitions/TenantMembershipResponse" }}
2026-07-18 23:18:59 +00:00
400 : {description : Invalid identity selector or desired state}
401 : {description : Missing or invalid server or session credential}
404 : {description : "Target tenant, user, or authority is unavailable" }
2026-07-18 23:20:56 +00:00
409 : {description : "Self-change, owner, or existing-state conflict; use GET plus optimistic PUT for state changes" }
2026-07-18 23:18:59 +00:00
500 : {description : Server error}
security : *portalSecurity
/tenantmemberships/{membershipId}:
parameters :
- name : membershipId
in : path
required : true
type : string
format : uuid
get :
operationId : getTenantMembership
tags : [ PortalMemberships]
summary : Get one actor-visible tenant membership
responses :
200 : {description: Tenant membership, schema : {$ref : "#/definitions/TenantMembershipResponse" }}
401 : {description : Missing or invalid server or session credential}
404 : {description : "Membership is absent, foreign, or unauthorized" }
500 : {description : Server error}
security : *portalSecurity
put :
operationId : putTenantMembership
tags : [ PortalMemberships]
summary : Idempotently change membership access or lifecycle
parameters :
- $ref : "#/parameters/requestId"
- in : body
name : request
required : true
schema : {$ref : "#/definitions/TenantMembershipUpdateRequest" }
responses :
200 : {description: Current membership desired state, schema : {$ref : "#/definitions/TenantMembershipResponse" }}
400 : {description : Invalid desired state}
401 : {description : Missing or invalid server or session credential}
404 : {description : "Membership is absent, foreign, or unauthorized" }
409 : {description : "Optimistic, self-change, owner, or state conflict" }
500 : {description : Server error}
security : *portalSecurity
delete :
operationId : deleteTenantMembership
tags : [ PortalMemberships]
summary : Idempotently soft-revoke one membership
parameters :
- $ref : "#/parameters/requestId"
- name : lastModifiedDate
in : query
required : true
type : string
format : date-time
description : Optimistic concurrency token from the latest representation.
responses :
200 : {description: Revoked membership, schema : {$ref : "#/definitions/TenantMembershipResponse" }}
401 : {description : Missing or invalid server or session credential}
404 : {description : "Membership is absent, foreign, or unauthorized" }
409 : {description : "Optimistic, self-change, owner, or state conflict" }
500 : {description : Server error}
security : *portalSecurity
2025-05-27 03:20:36 +00:00
/sessions :
post :
tags : [ sessions]
summary : Create new session (sign-in)
operationId : createSession
parameters :
- in : body
name : credentials
required : true
schema :
$ref : "../../lib/swagger/defs/credentials.yaml#/Credentials"
responses :
200 :
description : Successful sign-in
headers :
Set-Cookie :
type : string
description : |
kvSession=<jwt>; HttpOnly; Secure; SameSite=None; Domain=.keenanvision.net; Path=/; Max-Age=5400
schema :
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
$ref : "../../lib/swagger/defs/user.yaml#/User"
2025-05-27 03:20:36 +00:00
401 :
$ref : "#/responses/Unauthorized"
429 :
$ref : "#/responses/ServerError"
/sessions/refresh :
post :
tags : [ sessions]
summary : Refresh session cookie
operationId : refreshSession
security :
- kvSessionCookie : [ ]
responses :
200 :
description : Token refreshed
headers :
Set-Cookie :
type : string
description : New kvSession cookie with updated expiry
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
schema :
$ref : "../../lib/swagger/defs/user.yaml#/User"
2025-05-27 03:20:36 +00:00
401 :
$ref : "#/responses/Unauthorized"
/sessions/current :
delete :
responses :
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
"204" :
2025-05-27 03:20:36 +00:00
description : Logged out; kvSession cookie cleared
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
headers :
Set-Cookie :
type : string
description : "kvSession=; HttpOnly; Secure; SameSite=None; Domain=.keenanvision.net; Path=/; Max-Age=0"
"401" :
description : Access Unauthorized, invalid API-KEY was used
schema :
$ref : "../../lib/swagger/defs/error.yaml#/Error"
security :
- kvSessionCookie : [ ]
tags :
- sessions
summary : Delete current session (log out)
operationId : deleteSession
2025-05-27 03:20:36 +00:00
/sessions/me :
get :
tags : [ sessions]
summary : Get current user
operationId : getMe
security :
- kvSessionCookie : [ ]
responses :
200 :
description : Current user profile
schema :
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
$ref : "../../lib/swagger/defs/user.yaml#/User"
2025-05-27 03:20:36 +00:00
401 :
$ref : "#/responses/Unauthorized"
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
/sessions/handoff/create :
post :
tags : [ sessions]
summary : Create handoff token for cross-domain authentication
operationId : createHandoff
security :
- kvSessionCookie : [ ]
- ApiKeyAuth : [ ]
parameters :
- name : handoffRequest
in : body
required : true
schema :
type : object
required :
- target_domain
- state
properties :
target_domain :
type : string
description : Target domain for handoff
example : "salesforcedevops.net"
state :
type : string
description : CSRF state parameter
example : "random-csrf-token-123"
responses :
200 :
description : Handoff token created successfully
schema :
type : object
properties :
handoff_token :
type : string
description : One-time handoff token
example : "hoff_1234567890abcdef"
expires_at :
type : string
format : date-time
description : Token expiration time
400 :
description : Invalid request parameters
schema :
$ref : "../../lib/swagger/defs/error.yaml#/Error"
401 :
$ref : "#/responses/Unauthorized"
403 :
description : Domain not allowed
schema :
$ref : "../../lib/swagger/defs/error.yaml#/Error"
500 :
$ref : "#/responses/ServerError"
/sessions/handoff/validate :
post :
tags : [ sessions]
summary : Validate and consume handoff token
operationId : validateHandoff
security :
- ApiKeyAuth : [ ]
parameters :
- name : handoffValidate
in : body
required : true
schema :
type : object
required :
- handoff_token
- domain
- state
properties :
handoff_token :
type : string
description : Handoff token to validate
example : "hoff_1234567890abcdef"
domain :
type : string
description : Requesting domain
example : "salesforcedevops.net"
state :
type : string
description : CSRF state parameter
example : "random-csrf-token-123"
client_ip :
type : string
description : Client IP address
example : "192.168.1.100"
responses :
200 :
description : Token validated successfully
schema :
type : object
properties :
user :
$ref : "../../lib/swagger/defs/user.yaml#/User"
session_ref :
type : string
description : Reference to central session
example : "sess_abcdef1234567890"
expires_at :
type : string
format : date-time
description : Session expiration time
400 :
description : Invalid request parameters
schema :
$ref : "../../lib/swagger/defs/error.yaml#/Error"
401 :
description : Invalid or expired token
schema :
$ref : "../../lib/swagger/defs/error.yaml#/Error"
403 :
description : Domain not authorized
schema :
$ref : "../../lib/swagger/defs/error.yaml#/Error"
500 :
$ref : "#/responses/ServerError"
2023-03-28 17:47:34 +00:00
/attendees :
get :
2023-05-13 16:46:48 +00:00
description : Return a list of Attendee records from the datastore
2023-03-28 17:47:34 +00:00
operationId : getAttendees
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/AttendeeResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Attendees
2023-04-07 18:00:15 +00:00
tags :
- Attendees
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create Attendees
operationId : postAttendees
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/AttendeeRequest"
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/AttendeeResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Attendees
2023-04-07 18:00:15 +00:00
tags :
- Attendees
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update Attendee
operationId : putAttendees
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/AttendeeRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/AttendeeResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update Attendee
2023-04-07 18:00:15 +00:00
tags :
2023-05-13 16:46:48 +00:00
- Attendees
/certificates :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of Certificate records from the datastore
2023-04-07 18:00:15 +00:00
operationId : getCertificates
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/CertificateResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Certificates
2023-04-07 18:00:15 +00:00
tags :
- Certificates
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create Certificates
operationId : postCertificates
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/CertificateRequest"
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/CertificateResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Certificates
2023-04-07 18:00:15 +00:00
tags :
- Certificates
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update Certificate
operationId : putCertificates
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/CertificateRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/CertificateResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update Certificate
2023-04-07 18:00:15 +00:00
tags :
- Certificates
/clusters :
2023-03-28 17:47:34 +00:00
get :
2023-04-07 18:00:15 +00:00
description : Return a list of Cluster records from the datastore
operationId : getClusters
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/clusterIdQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-04-07 18:00:15 +00:00
$ref : "#/responses/ClusterResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Clusters
tags :
- Clusters
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create Clusters
2023-04-07 18:00:15 +00:00
operationId : postClusters
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/ClusterRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-04-07 18:00:15 +00:00
"200" :
$ref : "#/responses/ClusterResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Clusters
tags :
- Clusters
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update Cluster
2023-04-07 18:00:15 +00:00
operationId : putClusters
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/ClusterRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-04-07 18:00:15 +00:00
$ref : "#/responses/ClusterResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update Clustera
tags :
- Clusters
/courselessons :
2023-03-28 17:47:34 +00:00
get :
2023-04-07 18:00:15 +00:00
operationId : getCourseLessons
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/CourseLessonResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
summary : Get a list of CourseLessons
tags :
2023-04-30 02:07:31 +00:00
- Courses
2023-03-28 17:47:34 +00:00
post :
2023-04-30 02:07:31 +00:00
operationId : postCourseLessons
security :
- ApiKeyAuth : [ ]
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/CourseLessonRequest"
responses :
2023-04-30 02:07:31 +00:00
"200" :
$ref : "#/responses/CourseLessonResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
summary : Create a new CourseLesson
tags :
2023-04-30 02:07:31 +00:00
- Courses
2023-03-28 17:47:34 +00:00
put :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
operationId : updateCourseLessons
2023-03-28 17:47:34 +00:00
parameters :
2023-04-30 02:07:31 +00:00
- $ref : "#/parameters/CourseLessonRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/CourseLessonResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
summary : Update an existing CourseLesson
tags :
- Courses
2023-04-30 02:07:31 +00:00
/courses :
2023-03-28 17:47:34 +00:00
get :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-04-07 18:00:15 +00:00
operationId : getCourses
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/CourseResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
summary : Get a list of Courses
tags :
- Courses
2023-03-28 17:47:34 +00:00
post :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
operationId : postCourses
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/CourseRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-04-30 02:07:31 +00:00
"200" :
$ref : "#/responses/CourseResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
summary : Create a new Course
tags :
- Courses
2023-03-28 17:47:34 +00:00
put :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
operationId : updateCourses
2023-03-28 17:47:34 +00:00
parameters :
2023-04-30 02:07:31 +00:00
- $ref : "#/parameters/CourseRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/CourseResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
summary : Update an existing Course
tags :
- Courses
/coursesections :
2023-03-28 17:47:34 +00:00
get :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-04-07 18:00:15 +00:00
operationId : getCourseSections
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/CourseSectionResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
summary : Get a list of CourseSections
tags :
2023-04-30 02:07:31 +00:00
- Courses
2023-03-28 17:47:34 +00:00
post :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
operationId : postCourseSections
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/CourseSectionRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-04-30 02:07:31 +00:00
"200" :
$ref : "#/responses/CourseSectionResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
summary : Create a new CourseSection
tags :
2023-04-30 02:07:31 +00:00
- Courses
2023-03-28 17:47:34 +00:00
put :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
operationId : updateCourseSections
2023-03-28 17:47:34 +00:00
parameters :
2023-04-30 02:07:31 +00:00
- $ref : "#/parameters/CourseSectionRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/CourseSectionResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
summary : Update an existing CourseSection
tags :
2023-04-30 02:07:31 +00:00
- Courses
2023-04-07 18:00:15 +00:00
/databases :
get :
description : Return a list of Database records from the datastore
operationId : getDatabases
parameters :
- $ref : "#/parameters/databaseIdQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
$ref : "#/responses/DatabaseResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Databases
tags :
- Databases
post :
2023-05-13 16:46:48 +00:00
description : Create Databases
2023-04-07 18:00:15 +00:00
operationId : postDatabases
parameters :
- $ref : "#/parameters/databaseRequest"
responses :
"200" :
$ref : "#/responses/DatabaseResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Databases
tags :
- Databases
put :
2023-05-13 16:46:48 +00:00
description : Update Database
2023-04-07 18:00:15 +00:00
operationId : putDatabases
parameters :
- $ref : "#/parameters/databaseRequest"
responses :
"200" :
$ref : "#/responses/DatabaseResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update Databases
tags :
- Databases
2023-05-19 23:55:12 +00:00
/documents :
get :
description : Return a list of Document records from the datastore
operationId : getDocuments
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
$ref : "#/responses/DocumentResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Documents
tags :
- Documents
post :
description : Create Documents
operationId : postDocuments
parameters :
- $ref : "#/parameters/documentRequest"
responses :
"200" :
$ref : "#/responses/DocumentResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Documents
tags :
- Documents
put :
description : Update Document
operationId : putDocuments
parameters :
- $ref : "#/parameters/documentRequest"
responses :
"200" :
$ref : "#/responses/DocumentResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update Documents
tags :
- Documents
2023-04-30 02:07:31 +00:00
/emailmessages :
2023-04-17 22:11:43 +00:00
get :
security :
- ApiKeyAuth : [ ]
summary : "Get email messages from data store"
operationId : getEmailMessages
description : "Retrieves email messages from workflow storage"
parameters :
- $ref : "#/parameters/emailMessageIdQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
tags :
- Emails
responses :
"200" :
$ref : "#/responses/EmailMessagesResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
post :
security :
- ApiKeyAuth : [ ]
summary : Add new email messages to the outgoing queue
2023-04-30 02:07:31 +00:00
operationId : postEmailMessages
2023-04-17 22:11:43 +00:00
description : Insert new email messages into workflow storage
parameters :
2023-04-30 02:07:31 +00:00
- $ref : "#/parameters/EmailMessageRequest"
2023-04-17 22:11:43 +00:00
responses :
"200" :
$ref : "#/responses/EmailMessagesResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
tags :
- Emails
2023-04-30 02:07:31 +00:00
/outgoingemailmessages :
2023-03-28 17:47:34 +00:00
get :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
summary : "Get email messages from data store"
operationId : getOutgoingEmailMessages
description : "Retrieves email messages from workflow storage"
2023-03-28 17:47:34 +00:00
parameters :
2023-04-30 02:07:31 +00:00
- $ref : "#/parameters/emailMessageIdQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-04-07 18:00:15 +00:00
tags :
2023-04-30 02:07:31 +00:00
- Emails
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/OutgoingEmailMessagesResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-03-28 17:47:34 +00:00
post :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
summary : Add new email messages to the outgoing queue
operationId : postOutgoingEmailMessages
description : Insert new email messages into workflow storage
2023-03-28 17:47:34 +00:00
parameters :
2023-04-30 02:07:31 +00:00
- $ref : "#/parameters/OutgoingEmailMessageRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/OutgoingEmailMessagesResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-07 18:00:15 +00:00
tags :
2023-04-30 02:07:31 +00:00
- Emails
/enrollments :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of Enrollment records from the datastore
2023-04-30 02:07:31 +00:00
operationId : getEnrollments
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/EnrollmentResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-05-13 16:46:48 +00:00
security :
- ApiKeyAuth : [ ]
summary : Get a list Enrollments
2023-04-07 18:00:15 +00:00
tags :
2023-04-30 02:07:31 +00:00
- Enrollments
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create Enrollments
operationId : postEnrollments
2023-03-28 17:47:34 +00:00
parameters :
2023-04-30 02:07:31 +00:00
- $ref : "#/parameters/EnrollmentRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/EnrollmentResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Enrollments
2023-04-07 18:00:15 +00:00
tags :
2023-04-30 02:07:31 +00:00
- Enrollments
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update Enrollment
operationId : putEnrollments
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/EnrollmentRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/EnrollmentResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update Enrollment
2023-04-07 18:00:15 +00:00
tags :
2023-04-30 02:07:31 +00:00
- Enrollments
2023-04-30 17:56:32 +00:00
/eventcategories :
2023-03-28 17:47:34 +00:00
get :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-04-30 17:56:32 +00:00
operationId : getEventCategories
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/idQuery"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-04-30 17:56:32 +00:00
$ref : "#/responses/EventCategoryResponse"
2023-04-30 02:07:31 +00:00
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 17:56:32 +00:00
summary : Get a list of Eventcategories
2023-04-07 18:00:15 +00:00
tags :
- Events
2023-03-28 17:47:34 +00:00
post :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-04-30 17:56:32 +00:00
operationId : postEventCategories
2023-03-28 17:47:34 +00:00
parameters :
2023-04-30 17:56:32 +00:00
- $ref : "#/parameters/EventCategoryRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-04-30 02:07:31 +00:00
"200" :
2023-04-30 17:56:32 +00:00
$ref : "#/responses/EventCategoryResponse"
2023-04-30 02:07:31 +00:00
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 17:56:32 +00:00
summary : Create a new EventCategory
2023-04-07 18:00:15 +00:00
tags :
- Events
2023-04-30 17:56:32 +00:00
/events :
get :
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-04-30 17:56:32 +00:00
operationId : getEvents
2023-03-28 17:47:34 +00:00
parameters :
2023-04-30 17:56:32 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/idQuery"
responses :
"200" :
2023-04-30 02:07:31 +00:00
$ref : "#/responses/EventResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 17:56:32 +00:00
summary : Get a list of Events
tags :
- Events
post :
security :
- ApiKeyAuth : [ ]
operationId : postEvents
parameters :
- $ref : "#/parameters/EventRequest"
responses :
"200" :
$ref : "#/responses/EventResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
summary : Create a new Event
2023-04-07 18:00:15 +00:00
tags :
- Events
/favorites :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of Favorite records from the datastore
2023-04-07 18:00:15 +00:00
operationId : getFavorites
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/FavoriteResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Favorites
2023-04-07 18:00:15 +00:00
tags :
- Favorites
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create Favorites
operationId : postFavorites
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/FavoriteRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/FavoriteResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Favorites
2023-04-07 18:00:15 +00:00
tags :
- Favorites
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update Favorite
operationId : putFavorites
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/FavoriteRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/FavoriteResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update Favorite
2023-04-07 18:00:15 +00:00
tags :
2023-05-13 16:46:48 +00:00
- Favorites
/invoices :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of Invoice records from the datastore
2023-04-07 18:00:15 +00:00
operationId : getInvoices
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/idQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/InvoiceResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Invoices
2023-04-07 18:00:15 +00:00
tags :
- Invoices
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create Invoices
operationId : postInvoices
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/InvoiceRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/InvoiceResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Create new Invoices
2023-04-07 18:00:15 +00:00
tags :
- Invoices
2023-05-13 16:46:48 +00:00
put :
description : Update Invoice
operationId : putInvoices
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/InvoiceRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/InvoiceResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update Invoice
tags :
- Invoices
/issuedcertificates :
get :
description : Return a list of IssuedCertificate records from the datastore
2023-04-07 18:00:15 +00:00
operationId : getIssuedCertificates
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/idQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/IssuedCertificateResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list IssuedCertificates
2023-04-07 18:00:15 +00:00
tags :
- IssuedCertificates
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create IssuedCertificates
operationId : postIssuedCertificates
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/IssuedCertificateRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/IssuedCertificateResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new IssuedCertificates
2023-04-07 18:00:15 +00:00
tags :
- IssuedCertificates
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update IssuedCertificate
operationId : putIssuedCertificates
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/IssuedCertificateRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/IssuedCertificateResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update IssuedCertificate
2023-04-07 18:00:15 +00:00
tags :
2023-05-13 16:46:48 +00:00
- IssuedCertificates
/lessonprogress :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of LessonProgress records from the datastore
operationId : getLessonProgresses
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/idQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/LessonProgressResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list LessonProgresses
2023-04-07 18:00:15 +00:00
tags :
- LessonProgress
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create LessonProgresses
operationId : postLessonProgresses
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/LessonProgressRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/LessonProgressResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new LessonProgresses
2023-04-07 18:00:15 +00:00
tags :
- LessonProgress
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update LessonProgress
operationId : putLessonProgresses
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/LessonProgressRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/LessonProgressResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update LessonProgress
2023-04-07 18:00:15 +00:00
tags :
2023-05-13 16:46:48 +00:00
- LessonProgress
/orders :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of Order records from the datastore
2023-04-07 18:00:15 +00:00
operationId : getOrders
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/idQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/OrderResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Orders
2023-04-07 18:00:15 +00:00
tags :
- Orders
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create Orders
operationId : postOrders
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/OrderRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/OrderResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Orders
2023-04-07 18:00:15 +00:00
tags :
- Orders
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update Order
operationId : putOrders
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/OrderRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/OrderResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update Order
2023-04-07 18:00:15 +00:00
tags :
2023-05-13 16:46:48 +00:00
- Orders
/paymentmethods :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of PaymentMethod records from the datastore
2023-04-07 18:00:15 +00:00
operationId : getPaymentMethods
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/idQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/PaymentMethodResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list PaymentMethods
2023-04-07 18:00:15 +00:00
tags :
- PaymentMethods
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create PaymentMethods
operationId : postPaymentMethods
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/PaymentMethodRequest"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/PaymentMethodResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new PaymentMethods
2023-04-07 18:00:15 +00:00
tags :
- PaymentMethods
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update PaymentMethod
operationId : putPaymentMethods
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/PaymentMethodRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/PaymentMethodResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update PaymentMethod
2023-04-07 18:00:15 +00:00
tags :
2023-05-13 16:46:48 +00:00
- PaymentMethods
2023-06-04 23:54:48 +00:00
/prompts :
get :
description : Return a list of Prompt records from the datastore
operationId : getPrompts
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
$ref : "#/responses/PromptResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list of Prompts
tags :
- Prompts
post :
description : Create Prompts
operationId : postPrompts
parameters :
- $ref : "#/parameters/PromptRequest"
responses :
"200" :
$ref : "#/responses/PromptResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Prompts
tags :
- Prompts
put :
description : Update Prompt
operationId : putPrompts
parameters :
- $ref : "#/parameters/PromptRequest"
responses :
"200" :
$ref : "#/responses/PromptResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update Prompts
tags :
- Prompts
2023-06-17 01:24:46 +00:00
/promptanswers :
get :
description : Return a list of PromptAnswers records from the datastore
operationId : getPromptAnswers
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
$ref : "#/responses/PromptAnswerResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list of PromptResponses
tags :
- Prompts
post :
description : Create PromptAnswers
operationId : postPromptAnswers
parameters :
- $ref : "#/parameters/PromptAnswerRequest"
responses :
"200" :
$ref : "#/responses/PromptAnswerResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new PromptResponses
tags :
- Prompts
put :
description : Update PromptAnswers
operationId : putPromptAnsweers
parameters :
- $ref : "#/parameters/PromptAnswerRequest"
responses :
"200" :
$ref : "#/responses/PromptAnswerResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update PromptResponse
tags :
- Prompts
2023-06-04 23:54:48 +00:00
/promptcategories :
get :
description : Return a list of PromptCategory records from the datastore
operationId : getPromptCategories
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
$ref : "#/responses/PromptCategoryResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list of PromptCategories
tags :
- Prompts
post :
description : Create PromptCategories
operationId : postPromptCategories
parameters :
- $ref : "#/parameters/PromptCategoryRequest"
responses :
"200" :
$ref : "#/responses/PromptCategoryResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new PromptCategories
tags :
- Prompts
put :
description : Update PromptCategory
operationId : putPromptCategories
parameters :
- $ref : "#/parameters/PromptCategoryRequest"
responses :
"200" :
$ref : "#/responses/PromptCategoryResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update PromptCategories
tags :
- Prompts
/prompttags :
get :
description : Return a list of PromptTag records from the datastore
operationId : getPromptTags
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
$ref : "#/responses/PromptTagResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list of PromptTags
tags :
2023-06-05 19:44:18 +00:00
- Prompts
2023-06-04 23:54:48 +00:00
post :
description : Create PromptTags in Taxnexus
operationId : postPromptTags
parameters :
- $ref : "#/parameters/PromptTagRequest"
responses :
"200" :
$ref : "#/responses/PromptTagResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new PromptTags
tags :
2023-06-05 19:44:18 +00:00
- Prompts
2023-06-04 23:54:48 +00:00
put :
description : Update PromptTag in Taxnexus
operationId : putPromptTags
parameters :
- $ref : "#/parameters/PromptTagRequest"
responses :
"200" :
$ref : "#/responses/PromptTagResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update PromptTags
tags :
2023-06-05 19:44:18 +00:00
- Prompts
2023-05-13 16:46:48 +00:00
/researchprojectcompanies :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of ResearchProjectCompany records from the datastore
2023-04-07 18:00:15 +00:00
operationId : getResearchProjectCompanies
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/idQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/ResearchProjectCompanyResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
2023-04-07 18:00:15 +00:00
summary : Get a list of ResearchProjectCompanies
tags :
2023-05-13 16:46:48 +00:00
- ResearchProjects
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create ResearchProjectCompanies in the system
operationId : postResearchProjectCompanies
2023-03-28 17:47:34 +00:00
parameters :
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/ResearchProjectCompanyRequest"
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/ResearchProjectCompanyResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
2023-04-30 02:07:31 +00:00
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Create new ResearchProjectCompanies
tags :
- ResearchProjects
put :
description : Update ResearchProjectCompany in the system
operationId : putResearchProjectCompanies
2023-03-28 17:47:34 +00:00
parameters :
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/ResearchProjectCompanyRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/ResearchProjectCompanyResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update ResearchProjectCompanies
2023-04-07 18:00:15 +00:00
tags :
- ResearchProjects
2023-05-19 23:55:12 +00:00
/researchprojectdocuments :
get :
description : Return a list of ResearchProjectDocument records from the datastore
operationId : getResearchProjectDocuments
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
- $ref : "#/parameters/Auth0UserIdHeader"
responses :
"200" :
$ref : "#/responses/ResearchProjectDocumentResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list of ResearchProjectDocuments
tags :
- ResearchProjects
post :
description : Create ResearchProjectDocuments in the system
operationId : postResearchProjectDocuments
parameters :
- $ref : "#/parameters/ResearchProjectDocumentRequest"
- $ref : "#/parameters/Auth0UserIdHeader"
responses :
"200" :
$ref : "#/responses/ResearchProjectDocumentResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new ResearchProjectDocuments
tags :
- ResearchProjects
put :
description : Update ResearchProjectDocument in the system
operationId : putResearchProjectDocuments
parameters :
- $ref : "#/parameters/ResearchProjectDocumentRequest"
- $ref : "#/parameters/Auth0UserIdHeader"
responses :
"200" :
$ref : "#/responses/ResearchProjectDocumentResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update ResearchProjectDocuments
tags :
- ResearchProjects
2023-05-28 16:22:37 +00:00
/researchprojectservices :
get :
description : Return a list of ResearchProjectService records from the datastore
operationId : getResearchProjectServices
parameters :
- $ref : "#/parameters/idQuery"
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
- $ref : "#/parameters/Auth0UserIdHeader"
responses :
"200" :
$ref : "#/responses/ResearchProjectServiceResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list of ResearchProjectServices
tags :
- ResearchProjects
post :
description : Create ResearchProjectServices in the system
operationId : postResearchProjectServices
parameters :
- $ref : "#/parameters/ResearchProjectServiceRequest"
- $ref : "#/parameters/Auth0UserIdHeader"
responses :
"200" :
$ref : "#/responses/ResearchProjectServiceResponse"
"201" :
$ref : "#/responses/ResearchProjectServiceResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new ResearchProjectServices
tags :
- ResearchProjects
put :
description : Update ResearchProjectService in the system
operationId : putResearchProjectServices
parameters :
- $ref : "#/parameters/ResearchProjectServiceRequest"
- $ref : "#/parameters/Auth0UserIdHeader"
responses :
"200" :
$ref : "#/responses/ResearchProjectServiceResponse"
"201" :
$ref : "#/responses/ResearchProjectServiceResponse"
"401" :
$ref : "#/responses/Unauthorized"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update ResearchProjectServices
tags :
- ResearchProjects
2023-05-13 16:46:48 +00:00
/researchprojectproducts :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of ResearchProjectProduct records from the datastore
operationId : getResearchProjectProducts
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/idQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/ResearchProjectProductResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list of ResearchProjectProducts
2023-04-07 18:00:15 +00:00
tags :
- ResearchProjects
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create ResearchProjectProducts in the system
operationId : postResearchProjectProducts
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/researchProjectProductRequest"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/ResearchProjectProductResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new ResearchProjectProducts
2023-04-07 18:00:15 +00:00
tags :
- ResearchProjects
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update ResearchProjectProduct in the system
operationId : putResearchProjectProducts
parameters :
- $ref : "#/parameters/researchProjectProductRequest"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-05-13 16:46:48 +00:00
responses :
"200" :
$ref : "#/responses/ResearchProjectProductResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update ResearchProjectProducts
tags :
- ResearchProjects
/researchprojects :
get :
description : Return a list of ResearchProject records from the datastore
operationId : getResearchProjects
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/idQuery"
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/ResearchProjectResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list of ResearchProjects
2023-04-07 18:00:15 +00:00
tags :
- ResearchProjects
2023-05-13 16:46:48 +00:00
post :
description : Create ResearchProjects in the system
operationId : postResearchProjects
parameters :
- $ref : "#/parameters/ResearchProjectRequest"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-05-13 16:46:48 +00:00
responses :
"200" :
$ref : "#/responses/ResearchProjectResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Create new ResearchProjects
tags :
- ResearchProjects
put :
description : Update ResearchProject in the system
operationId : putResearchProjects
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/ResearchProjectRequest"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-03-28 17:47:34 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/ResearchProjectResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update ResearchProjects
tags :
- ResearchProjects
/researchprojecttopics :
get :
description : Return a list of ResearchProjectTopic records from the datastore
2023-04-07 18:00:15 +00:00
operationId : getResearchProjectTopics
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/idQuery"
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-04-07 18:00:15 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/ResearchProjectTopicResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
2023-04-07 18:00:15 +00:00
summary : Get a list of ResearchProjectTopics
tags :
2023-05-13 16:46:48 +00:00
- ResearchProjects
2023-04-07 18:00:15 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create ResearchProjectTopics in the system
operationId : postResearchProjectTopics
2023-04-07 18:00:15 +00:00
parameters :
- $ref : "#/parameters/ResearchProjectTopicRequest"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-04-07 18:00:15 +00:00
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/ResearchProjectTopicResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Create new ResearchProjectTopics
tags :
- ResearchProjects
put :
description : Update ResearchProjectTopic in the system
operationId : putResearchProjectTopics
2023-04-07 18:00:15 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/ResearchProjectTopicRequest"
2023-05-19 23:55:12 +00:00
- $ref : "#/parameters/Auth0UserIdHeader"
2023-04-07 18:00:15 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/ResearchProjectTopicResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update ResearchProjectTopics
2023-04-07 18:00:15 +00:00
tags :
2023-05-13 16:46:48 +00:00
- ResearchProjects
2023-04-07 18:00:15 +00:00
/tenants :
get :
description : Return a list of Tenant records from the datastore
operationId : getTenants
parameters :
2023-06-04 23:54:48 +00:00
- $ref : "#/parameters/idQuery"
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
- $ref : "#/parameters/nameQuery"
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
$ref : "#/responses/TenantResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Tenants
tags :
- Tenants
post :
2023-05-13 16:46:48 +00:00
description : Create Tenants
2023-04-07 18:00:15 +00:00
operationId : postTenants
parameters :
2023-06-04 23:54:48 +00:00
- $ref : "#/parameters/TenantRequest"
2023-04-07 18:00:15 +00:00
responses :
"200" :
$ref : "#/responses/TenantResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Tenants
tags :
- Tenants
put :
2023-05-13 16:46:48 +00:00
description : Update Tenant
2023-04-07 18:00:15 +00:00
operationId : putTenants
parameters :
2023-06-04 23:54:48 +00:00
- $ref : "#/parameters/TenantRequest"
2023-04-07 18:00:15 +00:00
responses :
"200" :
$ref : "#/responses/TenantResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update Tenants
tags :
- Tenants
/templates :
get :
description : Return a list of Templates from the datastore
operationId : getTemplates
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/activeQuery"
- $ref : "#/parameters/templateIdQuery"
- $ref : "#/parameters/isMasterQuery"
- $ref : "#/parameters/objectTypeQuery"
responses :
"200" :
$ref : "#/responses/TemplateResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Templates
tags :
- Templates
post :
description : Create new Templates
operationId : postTemplates
parameters :
- $ref : "#/parameters/TemplateRequest"
responses :
"200" :
$ref : "#/responses/TemplateResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Templates
tags :
- Templates
/tickets :
get :
2023-05-13 16:46:48 +00:00
description : Return a list of Ticket records from the datastore
2023-03-28 17:47:34 +00:00
operationId : getTickets
2023-04-07 18:00:15 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/idQuery"
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/TicketResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Tickets
2023-04-07 18:00:15 +00:00
tags :
- Tickets
2023-03-28 17:47:34 +00:00
post :
2023-05-13 16:46:48 +00:00
description : Create Tickets
operationId : postTickets
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/TicketRequest"
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/TicketResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Tickets
2023-04-07 18:00:15 +00:00
tags :
- Tickets
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update Ticket
operationId : putTickets
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/TicketRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/TicketResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Update Ticket
2023-04-07 18:00:15 +00:00
tags :
2023-05-13 16:46:48 +00:00
- Tickets
/transactions :
2023-03-28 17:47:34 +00:00
get :
2023-05-13 16:46:48 +00:00
description : Return a list of Transaction records from the datastore
2023-04-07 18:00:15 +00:00
operationId : getTransactions
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/idQuery"
2023-03-28 17:47:34 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/TransactionResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
2023-04-30 02:07:31 +00:00
security :
- ApiKeyAuth : [ ]
2023-05-13 16:46:48 +00:00
summary : Get a list of Transactions
tags :
- Transactions
post :
description : Create Transactions
operationId : postTransactions
2023-03-28 17:47:34 +00:00
parameters :
- $ref : "#/parameters/TransactionRequest"
responses :
2023-05-13 16:46:48 +00:00
"200" :
$ref : "#/responses/TransactionResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Transactions
2023-04-07 18:00:15 +00:00
tags :
- Transactions
2023-03-28 17:47:34 +00:00
put :
2023-05-13 16:46:48 +00:00
description : Update Transaction
operationId : putTransactions
2023-03-28 17:47:34 +00:00
parameters :
2023-05-13 16:46:48 +00:00
- $ref : "#/parameters/TransactionRequest"
2023-03-28 17:47:34 +00:00
responses :
"200" :
2023-05-13 16:46:48 +00:00
$ref : "#/responses/TransactionResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update Transaction
2023-04-07 18:00:15 +00:00
tags :
- Transactions
2023-04-11 14:59:35 +00:00
/users/onboard :
post :
description : Async onboard new users
operationId : postUsersOnboard
parameters :
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
- $ref : "#/parameters/OnboardRequest"
2023-04-11 14:59:35 +00:00
responses :
"200" :
$ref : "#/responses/UserResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Async onboard new users
tags :
- Users
2023-04-07 18:00:15 +00:00
/users :
get :
description : Return a list of User records from the datastore
operationId : getUsers
2023-03-28 17:47:34 +00:00
parameters :
2023-04-07 18:00:15 +00:00
- $ref : "#/parameters/limitQuery"
- $ref : "#/parameters/offsetQuery"
- $ref : "#/parameters/emailQuery"
- $ref : "#/parameters/auth0UserIdQuery"
2023-04-11 14:59:35 +00:00
- $ref : "#/parameters/userIdQuery"
- $ref : "#/parameters/contactIdQuery"
2023-03-28 17:47:34 +00:00
responses :
2023-04-07 18:00:15 +00:00
"200" :
$ref : "#/responses/UserResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Get a list Users
tags :
- Users
post :
description : Create new Users
operationId : postUsers
parameters :
- $ref : "#/parameters/UserRequest"
responses :
"200" :
$ref : "#/responses/UserResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Create new Users
tags :
- Users
put :
description : Update existing users
operationId : putUsers
parameters :
- $ref : "#/parameters/UserRequest"
responses :
"200" :
$ref : "#/responses/UserResponse"
"401" :
$ref : "#/responses/Unauthorized"
"403" :
$ref : "#/responses/AccessForbidden"
"404" :
$ref : "#/responses/NotFound"
"422" :
$ref : "#/responses/UnprocessableEntity"
"500" :
$ref : "#/responses/ServerError"
security :
- ApiKeyAuth : [ ]
summary : Update existing users
tags :
- Users
2023-03-28 17:47:34 +00:00
definitions :
2026-07-17 01:22:20 +00:00
AuditFields :
type : object
properties :
id : {type: string, format: uuid, description : Server-generated on create; required in collection PUT bodies.}
createdById : {type: string, format: uuid, x-nullable: true, readOnly : true }
createdDate : {type: string, format: date-time, x-nullable: true, readOnly : true }
lastModifiedById : {type: string, format: uuid, x-nullable: true, readOnly : true }
lastModifiedDate : {type: string, format: date-time, x-nullable: true, readOnly : true }
Brand :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ brandKey, name, domain, status]
properties :
brandKey : {type: string, minLength: 1, maxLength : 80 }
name : {type: string, minLength: 1, maxLength : 255 }
domain : {type: string, minLength: 1, maxLength : 255 }
status : {type: string, enum : [ active, inactive, retired]}
Service :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ serviceKey, name, ownerSystem, status]
properties :
serviceKey : {type: string, minLength: 1, maxLength : 80 }
name : {type: string, minLength: 1, maxLength : 255 }
description : {type: string, x-nullable : true }
ownerSystem : {type: string, enum : [ members, crm, research, plex, external]}
contractRef : {type: string, maxLength: 255, x-nullable : true }
status : {type: string, enum : [ draft, active, retired]}
BrandService :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ brandId, serviceId, status]
properties :
brandId : {type: string, format : uuid}
serviceId : {type: string, format : uuid}
status : {type: string, enum : [ active, inactive]}
ServiceScope :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ serviceId, scopeKey, status]
properties :
serviceId : {type: string, format : uuid}
scopeKey : {type: string, minLength: 1, maxLength : 120 }
description : {type: string, x-nullable : true }
status : {type: string, enum : [ active, retired]}
Plan :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ planKey, version, name, status, currency, unitAmount, billingPeriod]
properties :
planKey : {type: string, minLength: 1, maxLength : 80 }
version : {type: integer, format: int32, minimum: 1, maximum : 2147483647 }
name : {type: string, minLength: 1, maxLength : 255 }
description : {type: string, x-nullable : true }
status : {type: string, enum : [ draft, active, retired]}
currency : {type: string, minLength: 3, maxLength : 3 }
unitAmount : {type: string, minLength: 1, maxLength: 13, pattern : '^(0|[1-9][0-9]{0,9})(\.[0-9]{1,2})?$' , description : "Exact decimal string matching SQL DECIMAL(12,2)." }
billingPeriod : {type: string, enum : [ none, month, year, custom]}
effectiveFrom : {type: string, format: date-time, x-nullable : true }
effectiveUntil : {type: string, format: date-time, x-nullable : true }
BrandPlan :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ brandId, planId, status]
properties :
brandId : {type: string, format : uuid}
planId : {type: string, format : uuid}
status : {type: string, enum : [ active, inactive]}
PlanService :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ planId, serviceId, grantMode, limitPeriod]
properties :
planId : {type: string, format : uuid}
serviceId : {type: string, format : uuid}
grantMode : {type: string, enum : [ included, metered]}
unit : {type: string, maxLength: 40, x-nullable : true }
limitQuantity : {type: string, minLength: 1, maxLength: 21, pattern : '^(0|[1-9][0-9]{0,13})(\.[0-9]{1,6})?$' , x-nullable: true, description : "Exact decimal string matching SQL DECIMAL(20,6); null means unlimited. This wave does not meter or decrement it." }
limitPeriod : {type: string, enum : [ none, day, month, billing_period, lifetime]}
Subscription :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ tenantId, planId, status, startsAt]
properties :
tenantId : {type: string, format : uuid}
planId : {type: string, format : uuid}
status : {type: string, enum : [ trialing, active, past_due, paused, canceled, expired]}
startsAt : {type: string, format : date-time}
currentPeriodStart : {type: string, format: date-time, x-nullable : true }
currentPeriodEnd : {type: string, format: date-time, x-nullable : true }
endsAt : {type: string, format: date-time, x-nullable : true }
cancelAtPeriodEnd : {type: boolean, default : false }
paymentMethodId : {type: string, format: uuid, x-nullable : true }
provider : {type: string, minLength: 1, maxLength: 80, x-nullable: true, description : Non-secret provider name; blank values are normalized to null.}
externalCustomerId : {type: string, minLength: 1, maxLength: 255, x-nullable: true, description : Non-secret provider reference; blank values are normalized to null.}
externalSubscriptionId : {type: string, minLength: 1, maxLength: 255, x-nullable: true, description : Non-secret provider reference; blank values are normalized to null.}
Entitlement :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ tenantId, serviceId, source, effect, status, effectiveFrom]
properties :
tenantId : {type: string, format : uuid}
userId : {type: string, format: uuid, x-nullable: true, description : Null means tenant-level; non-null must belong to the tenant.}
serviceId : {type: string, format : uuid}
subscriptionId : {type: string, format: uuid, x-nullable : true }
source : {type: string, enum : [ subscription, manual, trial, promotion]}
effect : {type: string, enum : [ allow, deny]}
status : {type: string, enum : [ scheduled, active, revoked, expired]}
effectiveFrom : {type: string, format : date-time}
effectiveUntil : {type: string, format: date-time, x-nullable : true }
unit : {type: string, maxLength: 40, x-nullable : true }
limitQuantity : {type: string, minLength: 1, maxLength: 21, pattern : '^(0|[1-9][0-9]{0,13})(\.[0-9]{1,6})?$' , x-nullable: true, description : "Exact decimal string matching SQL DECIMAL(20,6)." }
limitPeriod : {type: string, enum: [none, day, month, billing_period, lifetime], x-nullable : true }
revokedAt : {type: string, format: date-time, x-nullable: true, readOnly : true }
revokedById : {type: string, format: uuid, x-nullable: true, readOnly : true }
EffectiveEntitlement :
type : object
required : [ tenantId, serviceId, effect, provenance, evaluatedAt, limit]
properties :
tenantId : {type: string, format : uuid}
userId : {type: string, format: uuid, x-nullable : true }
serviceId : {type: string, format : uuid}
effect : {type: string, enum : [ allow, deny]}
effectiveFrom : {type: string, format: date-time, x-nullable : true }
effectiveUntil : {type: string, format: date-time, x-nullable : true }
evaluatedAt : {type: string, format : date-time}
provenance : {type: string, enum : [ user_entitlement, tenant_entitlement, subscription_plan]}
limit : {$ref : "#/definitions/DescriptiveLimit" }
DescriptiveLimit :
type : object
required : [ unlimited, period]
properties :
unlimited : {type : boolean}
unit : {type: string, maxLength: 40, x-nullable : true }
quantity : {type: string, minLength: 1, maxLength: 21, pattern : '^(0|[1-9][0-9]{0,13})(\.[0-9]{1,6})?$' , x-nullable: true, description : "Exact decimal string matching SQL DECIMAL(20,6)." }
period : {type: string, enum : [ none, day, month, billing_period, lifetime]}
enforced : {type: boolean, default: false, description : Always false in this wave; usage accounting is deferred.}
AuthorizedClient :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ tenantId, clientIdentifier, clientType, displayName, status]
description : Non-secret connection metadata. Token, secret, API-key, and cookie properties are deliberately absent.
properties :
tenantId : {type: string, format : uuid}
userId : {type: string, format: uuid, x-nullable: true, description : Null means tenant-level; non-null must belong to the tenant.}
clientIdentifier : {type: string, minLength: 1, maxLength : 255 }
clientType : {type: string, enum : [ mcp, api]}
displayName : {type: string, minLength: 1, maxLength : 255 }
softwareId : {type: string, maxLength: 255, x-nullable : true }
softwareVersion : {type: string, maxLength: 80, x-nullable : true }
clientUri : {type: string, maxLength: 2048, x-nullable : true }
externalConnectionId : {type: string, maxLength: 255, x-nullable: true, description : Non-secret external reference.}
status : {type: string, enum : [ pending, active, revoked, expired]}
approvedAt : {type: string, format: date-time, x-nullable: true, readOnly : true }
lastUsedAt : {type: string, format: date-time, x-nullable: true, readOnly : true }
expiresAt : {type: string, format: date-time, x-nullable : true }
revokedAt : {type: string, format: date-time, x-nullable: true, readOnly : true }
revokedById : {type: string, format: uuid, x-nullable: true, readOnly : true }
AuthorizedClientScope :
allOf :
- $ref : "#/definitions/AuditFields"
- type : object
required : [ authorizedClientId, serviceScopeId]
properties :
authorizedClientId : {type: string, format : uuid}
serviceScopeId : {type: string, format : uuid}
2026-07-18 23:18:59 +00:00
TenantMembership :
allOf :
- $ref : "#/definitions/TenantMembershipAuditFields"
- type : object
required : [ tenantId, userId, email, accessLevel, status]
properties :
tenantId : {type: string, minLength: 1, maxLength : 36 }
userId : {type: string, format : uuid}
email : {type: string, format: email, readOnly : true }
fullName : {type: string, x-nullable: true, readOnly : true }
accessLevel : {type: string, enum : [ owner, manager, member, read_only]}
status : {type: string, enum : [ active, suspended, revoked]}
TenantMembershipAuditFields :
type : object
required : [ id, createdDate, lastModifiedDate]
properties :
id : {type: string, format: uuid, description : Server-generated membership identifier.}
createdById : {type: string, format: uuid, x-nullable: true, readOnly : true }
createdDate : {type: string, format: date-time, description : Server-owned UTC creation timestamp.}
lastModifiedById : {type: string, format: uuid, x-nullable: true, readOnly : true }
lastModifiedDate : {type: string, format: date-time, description : Server-owned optimistic concurrency token.}
TenantMembershipCreate :
type : object
required : [ tenantId, accessLevel]
description : Exactly one of userId or email is required; Members validates the exclusive selector transactionally.
properties :
tenantId : {type: string, minLength: 1, maxLength : 36 }
userId : {type: string, format: uuid, x-nullable : true }
email : {type: string, format: email, x-nullable : true }
accessLevel : {type: string, enum : [ owner, manager, member, read_only]}
status : {type: string, enum: [active, suspended, revoked], default : active}
TenantMembershipUpdate :
type : object
required : [ lastModifiedDate]
properties :
accessLevel : {type: string, enum: [owner, manager, member, read_only], x-nullable : true }
status : {type: string, enum: [active, suspended, revoked], x-nullable : true }
lastModifiedDate : {type: string, format: date-time, description : Optimistic concurrency token from the latest representation.}
ManageableTenant :
type : object
required : [ id, tenantName, actorAccessLevel]
properties :
id : {type: string, minLength: 1, maxLength : 36 }
tenantName : {type : string}
tenantType : {type: string, x-nullable : true }
status : {type: string, x-nullable : true }
active : {type: boolean, x-nullable : true }
actorAccessLevel : {type: string, enum : [ estate_administrator, owner, manager]}
2026-07-17 01:22:20 +00:00
PortalMeta :
type : object
properties :
operationId : {type : string}
serverTimestamp : {type: string, format : date-time}
limit : {type: integer, format : int64}
offset : {type: integer, format : int64}
BrandRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/Brand" }}}}
BrandResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/Brand" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
ServiceRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/Service" }}}}
ServiceResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/Service" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
BrandServiceRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/BrandService" }}}}
BrandServiceResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/BrandService" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
ServiceScopeRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/ServiceScope" }}}}
ServiceScopeResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/ServiceScope" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
PlanRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/Plan" }}}}
PlanResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/Plan" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
BrandPlanRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/BrandPlan" }}}}
BrandPlanResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/BrandPlan" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
PlanServiceRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/PlanService" }}}}
PlanServiceResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/PlanService" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
SubscriptionRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/Subscription" }}}}
SubscriptionResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/Subscription" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
EntitlementRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/Entitlement" }}}}
EntitlementResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/Entitlement" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
EffectiveEntitlementResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/EffectiveEntitlement" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
AuthorizedClientRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/AuthorizedClient" }}}}
AuthorizedClientResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/AuthorizedClient" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
AuthorizedClientScopeRequest : {type: object, required: [Data], properties : {Data : {type: array, items : {$ref : "#/definitions/AuthorizedClientScope" }}}}
AuthorizedClientScopeResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/AuthorizedClientScope" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
2026-07-18 23:18:59 +00:00
TenantMembershipCreateRequest : {type: object, required: [Data], properties : {Data : {$ref : "#/definitions/TenantMembershipCreate" }}}
TenantMembershipUpdateRequest : {type: object, required: [Data], properties : {Data : {$ref : "#/definitions/TenantMembershipUpdate" }}}
TenantMembershipResponse : {type: object, required: [Data, Meta], properties : {Data : {$ref : "#/definitions/TenantMembership" }, Meta : {$ref : "#/definitions/PortalMeta" }}}
TenantMembershipListResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/TenantMembership" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
ManageableTenantResponse : {type: object, required: [Data, Meta], properties : {Data : {type: array, items : {$ref : "#/definitions/ManageableTenant" }}, Meta : {$ref : "#/definitions/PortalMeta" }}}
regen: refresh all sibling clients (go-swagger v0.35.0)
Runs scripts/release.sh regen against current origin/main specs for
auth, crm, stash, sf-gate, research, members, and plex. Picks up:
- members PaymentMethod: processor_token/tenant_id replace card_* columns
(go/db v0.7.3, ADR-KV-014 first exercise) — generated model now carries
ProcessorToken/TenantID with no Card* fields.
- sf-gate: PUT /researchprojectservices now has a tags: entry (sf-gate #3),
so its operation generates into the research_projects package under
--client-package instead of falling back to an untagged operations
package that broke the build.
- members: session handoff endpoints and onboard_request model (current
members spec); webhooks/clerk endpoints removed (retired upstream).
Also bumps go-openapi/runtime v0.26.2 -> v0.32.4 (go mod tidy) — go-swagger
v0.35.0 client templates reference runtime.ContextualTransport, which
v0.26.2 doesn't have; this is a genuine dependency floor bump, not the
known untagged-operation issue documented in release.sh (that issue is
resolved by sf-gate #3 and no longer reproduces here).
go build ./..., go vet ./..., and go test ./... all pass on the
regenerated tree.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 07:22:01 +00:00
OnboardRequest :
description : Self-service onboarding request. The plaintext password is hashed server-side with the members pepper; it is never stored or logged in plaintext.
type : object
required :
- email
- password
properties :
email :
description : Login email (stored lowercased)
type : string
format : email
password :
description : Plaintext password; hashed server-side as bcrypt(password+pepper)
type : string
format : password
minLength : 12
firstName :
description : First name
type : string
lastName :
description : Last name
type : string
companyName :
description : Company name
type : string
2023-04-07 18:00:15 +00:00
AttendeeRequest :
2023-03-28 17:47:34 +00:00
description : An array of Attendee objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/attendee.yaml#/Attendee"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
AttendeeResponse :
2023-03-28 17:47:34 +00:00
description : An array of Attendee objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/attendee.yaml#/Attendee"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
CertificateRequest :
2023-03-28 17:47:34 +00:00
description : An array of Certificate objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/certificate.yaml#/Certificate"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
CertificateResponse :
2023-03-28 17:47:34 +00:00
description : An array of Certificate objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/certificate.yaml#/Certificate"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-30 02:07:31 +00:00
ClusterRequest :
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/cluster.yaml#/Cluster"
2023-04-30 02:07:31 +00:00
type : array
type : object
ClusterResponse :
description : An array of cluster objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/cluster.yaml#/Cluster"
2023-04-30 02:07:31 +00:00
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
2023-04-07 18:00:15 +00:00
CourseLessonRequest :
2023-03-28 17:47:34 +00:00
description : An array of CourseLesson objects
properties :
Data :
items :
2023-04-30 02:07:31 +00:00
$ref : "../../lib/swagger/defs/course-lesson.yaml#/CourseLesson"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
CourseLessonResponse :
2023-03-28 17:47:34 +00:00
description : An array of CourseLesson objects
properties :
Data :
items :
2023-04-30 02:07:31 +00:00
$ref : "../../lib/swagger/defs/course-lesson.yaml#/CourseLesson"
2023-04-07 18:00:15 +00:00
type : array
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
CourseRequest :
description : An array of Course objects
properties :
Data :
items :
2023-04-30 02:07:31 +00:00
$ref : "../../lib/swagger/defs/course.yaml#/Course"
2023-04-07 18:00:15 +00:00
type : array
type : object
CourseResponse :
description : An array of Course objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-04-07 18:00:15 +00:00
Data :
items :
2023-04-30 02:07:31 +00:00
$ref : "../../lib/swagger/defs/course.yaml#/Course"
2023-04-07 18:00:15 +00:00
type : array
type : object
CourseSectionRequest :
2023-03-28 17:47:34 +00:00
description : An array of CourseSection objects
properties :
Data :
items :
2023-04-30 02:07:31 +00:00
$ref : "../../lib/swagger/defs/course-section.yaml#/CourseSection"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
CourseSectionResponse :
2023-03-28 17:47:34 +00:00
description : An array of CourseSection objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-04-30 02:07:31 +00:00
$ref : "../../lib/swagger/defs/course-section.yaml#/CourseSection"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
DatabaseRequest :
description : An array of Database objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/database.yaml#/Database"
2023-04-07 18:00:15 +00:00
type : array
type : object
DatabaseResponse :
description : An array of Database objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/database.yaml#/Database"
2023-04-07 18:00:15 +00:00
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
2023-05-19 23:55:12 +00:00
DocumentRequest :
description : An array of Document objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/document.yaml#/Document"
type : array
type : object
DocumentResponse :
description : An array of Document objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/document.yaml#/Document"
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
2023-04-17 22:11:43 +00:00
EmailMessageRequest :
2023-06-04 23:54:48 +00:00
description : An array Send Email Message objects
2023-04-17 22:11:43 +00:00
properties :
data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/email-message.yaml#/EmailMessage"
2023-04-17 22:11:43 +00:00
type : array
meta :
$ref : "#/definitions/RequestMeta"
type : object
EmailMessagesResponse :
2023-06-04 23:54:48 +00:00
description : An array user objects
2023-04-17 22:11:43 +00:00
properties :
data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/email-message.yaml#/EmailMessage"
2023-04-17 22:11:43 +00:00
type : array
meta :
$ref : "#/definitions/ResponseMeta"
type : object
2023-04-07 18:00:15 +00:00
EnrollmentRequest :
2023-03-28 17:47:34 +00:00
description : An array of Enrollment objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/enrollment.yaml#/Enrollment"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
EnrollmentResponse :
2023-03-28 17:47:34 +00:00
description : An array of Enrollment objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/enrollment.yaml#/Enrollment"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
EventRequest :
description : An array of Event objects
2023-03-28 17:47:34 +00:00
properties :
Data :
items :
2023-04-30 02:07:31 +00:00
$ref : "../../lib/swagger/defs/event.yaml#/Event"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
EventResponse :
description : An array of Event objects
2023-03-28 17:47:34 +00:00
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-04-30 02:07:31 +00:00
$ref : "../../lib/swagger/defs/event.yaml#/Event"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-30 17:56:32 +00:00
EventCategoryRequest :
description : An array of EventCategory objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/event-category.yaml#/EventCategory"
type : array
type : object
EventCategoryResponse :
description : An array of EventCategory objects
properties :
Meta :
$ref : "#/definitions/ResponseMeta"
Data :
items :
$ref : "../../lib/swagger/defs/event-category.yaml#/EventCategory"
type : array
type : object
2023-04-07 18:00:15 +00:00
FavoriteRequest :
2023-03-28 17:47:34 +00:00
description : An array of Favorite objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/favorite.yaml#/Favorite"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
FavoriteResponse :
2023-03-28 17:47:34 +00:00
description : An array of Favorite objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/favorite.yaml#/Favorite"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-05-13 16:46:48 +00:00
InvoiceRequest :
description : An array of Invoice objects
2023-03-28 17:47:34 +00:00
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/invoice.yaml#/Invoice"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
InvoiceResponse :
2023-03-28 17:47:34 +00:00
description : An array of Invoice objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/invoice.yaml#/Invoice"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
IssuedCertificateRequest :
2023-03-28 17:47:34 +00:00
description : An array of IssuedCertificate objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/issued-certificate.yaml#/IssuedCertificate"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
IssuedCertificateResponse :
2023-03-28 17:47:34 +00:00
description : An array of IssuedCertificate objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/issued-certificate.yaml#/IssuedCertificate"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
LessonProgressRequest :
2023-03-28 17:47:34 +00:00
description : An array of LessonProgress objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/lesson-progress.yaml#/LessonProgress"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
LessonProgressResponse :
2023-03-28 17:47:34 +00:00
description : An array of LessonProgress objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/lesson-progress.yaml#/LessonProgress"
2023-04-17 22:11:43 +00:00
type : array
type : object
OutgoingEmailMessageRequest :
2023-06-04 23:54:48 +00:00
description : An array New Email Message objects
2023-04-30 02:07:31 +00:00
properties :
data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/outgoing-email-message.yaml#/OutgoingEmailMessage"
2023-04-30 02:07:31 +00:00
type : array
type : object
OutgoingEmailMessagesResponse :
2023-06-04 23:54:48 +00:00
description : An array New Email Message objects
2023-04-17 22:11:43 +00:00
properties :
data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/outgoing-email-message.yaml#/OutgoingEmailMessage"
2023-04-17 22:11:43 +00:00
type : array
meta :
2023-04-30 02:07:31 +00:00
$ref : "#/definitions/ResponseMeta"
2023-04-17 22:11:43 +00:00
type : object
2023-04-07 18:00:15 +00:00
OrderRequest :
2023-03-28 17:47:34 +00:00
description : An array of Order objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/order.yaml#/Order"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
OrderResponse :
2023-03-28 17:47:34 +00:00
description : An array of Order objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/order.yaml#/Order"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
Pagination :
properties :
Limit :
format : int64
type : integer
POffset :
format : int64
type : integer
PageSize :
format : int64
type : integer
SetSize :
format : int64
type : integer
type : object
PaymentMethodRequest :
2023-03-28 17:47:34 +00:00
description : An array of PaymentMethod objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/payment-method.yaml#/PaymentMethod"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
PaymentMethodResponse :
2023-03-28 17:47:34 +00:00
description : An array of PaymentMethod objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/payment-method.yaml#/PaymentMethod"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-06-17 01:24:46 +00:00
PromptAnswerRequest :
description : An array of Prompt objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/prompt-answer.yaml#/PromptAnswer"
type : array
type : object
PromptAnswerResponse :
description : An array of PromptResponse objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/prompt-answer.yaml#/PromptAnswer"
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
2023-06-04 23:54:48 +00:00
PromptRequest :
description : An array of Prompt objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/prompt.yaml#/Prompt"
type : array
type : object
PromptResponse :
description : An array of Prompt objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/prompt.yaml#/Prompt"
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
PromptCategoryRequest :
description : An array of PromptCategory objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/prompt-category.yaml#/PromptCategory"
type : array
type : object
PromptCategoryResponse :
description : An array of PromptCategory objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/prompt-category.yaml#/PromptCategory"
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
PromptTagRequest :
description : An array of PromptTag objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/prompt-tag.yaml#/PromptTag"
type : array
type : object
PromptTagResponse :
description : An array of PromptTag objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/prompt-tag.yaml#/PromptTag"
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
2023-04-07 18:00:15 +00:00
RequestMeta :
2023-03-28 17:47:34 +00:00
properties :
2023-06-04 23:54:48 +00:00
ExternalAccount :
2023-04-07 18:00:15 +00:00
description : Account Number of the Reseller or OEM
2023-03-28 17:47:34 +00:00
type : string
2023-04-15 14:27:18 +00:00
x-nullable : true
2023-04-07 18:00:15 +00:00
required :
2023-06-04 23:54:48 +00:00
- ExternalAccount
2023-04-07 18:00:15 +00:00
type : object
ResearchProjectCompanyRequest :
2023-03-28 17:47:34 +00:00
description : An array of ResearchProjectCompany objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/research-project-company.yaml#/ResearchProjectCompany"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
ResearchProjectCompanyResponse :
2023-03-28 17:47:34 +00:00
description : An array of ResearchProjectCompany objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/research-project-company.yaml#/ResearchProjectCompany"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
ResearchProjectRequest :
description : An array of ResearchProject objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/research-project.yaml#/ResearchProject"
2023-04-07 18:00:15 +00:00
type : array
type : object
ResearchProjectResponse :
description : An array of ResearchProject objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-04-07 18:00:15 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/research-project.yaml#/ResearchProject"
2023-04-07 18:00:15 +00:00
type : array
2023-05-19 23:55:12 +00:00
type : object
ResearchProjectDocumentRequest :
description : An array of ResearchProjectDocumentRequest objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/research-project-document.yaml#/ResearchProjectDocument"
type : array
type : object
ResearchProjectDocumentResponse :
description : An array of ResearchProjectDocumentResponse objects
properties :
Meta :
$ref : "#/definitions/ResponseMeta"
Data :
items :
$ref : "../../lib/swagger/defs/research-project-document.yaml#/ResearchProjectDocument"
type : array
2023-04-07 18:00:15 +00:00
type : object
2023-05-13 16:46:48 +00:00
ResearchProjectProductRequest :
description : An array of ResearchProjectProduct objects
2023-03-28 17:47:34 +00:00
properties :
2023-05-13 16:46:48 +00:00
Data :
items :
$ref : "../../lib/swagger/defs/research-project-product.yaml#/ResearchProjectProduct"
type : array
type : object
ResearchProjectProductResponse :
description : An array of ResearchProjectProduct objects
properties :
Meta :
$ref : "#/definitions/ResponseMeta"
Data :
items :
$ref : "../../lib/swagger/defs/research-project-product.yaml#/ResearchProjectProduct"
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-05-28 16:22:37 +00:00
ResearchProjectServiceResponse :
description : An array of ResearchProjectService objects
properties :
Meta :
$ref : "#/definitions/ResponseMeta"
Data :
items :
$ref : "../../lib/swagger/defs/research-project-service.yaml#/ResearchProjectService"
type : array
type : object
ResearchProjectServiceRequest :
description : An array of ResearchProjectService objects
properties :
Data :
items :
$ref : "../../lib/swagger/defs/research-project-service.yaml#/ResearchProjectService"
type : array
type : object
2023-04-07 18:00:15 +00:00
ResearchProjectTopicRequest :
2023-03-28 17:47:34 +00:00
description : An array of ResearchProjectTopic objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/research-project-topic.yaml#/ResearchProjectTopic"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
ResearchProjectTopicResponse :
2023-03-28 17:47:34 +00:00
description : An array of ResearchProjectTopic objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/research-project-topic.yaml#/ResearchProjectTopic"
2023-04-07 18:00:15 +00:00
type : array
type : object
ResponseMeta :
properties :
Contact :
description : Microservice Contact Info
type : string
Copyright :
description : Copyright Info
type : string
License :
description : License Information and Restrictions
type : string
OperationID :
description : Operation ID
type : string
Pagination :
$ref : "#/definitions/Pagination"
RequestIP :
description : Request IP Address
type : string
RequestType :
description : Request Type
type : string
RequestURL :
description : Request URL
type : string
ServerInfo :
description : Data Server Info
type : string
ServerResponseTime :
description : Data Server Response Time (ms)
type : string
ServerTimestamp :
description : Backend Server Timestamp
type : string
2023-06-04 23:54:48 +00:00
ExternalAccount :
2023-04-07 18:00:15 +00:00
description : Account Number used for recording transactions
type : string
type : object
2023-05-13 16:46:48 +00:00
RoleRequest :
description : An array of Role objects
2023-04-07 18:00:15 +00:00
properties :
Date :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/role.yaml#/Role"
2023-04-07 18:00:15 +00:00
type : array
type : object
RoleResponse :
description : An array of Role objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/role.yaml#/Role"
2023-04-07 18:00:15 +00:00
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
TemplateRequest :
description : An array of Templates
2023-03-28 17:47:34 +00:00
properties :
2023-04-07 18:00:15 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/template.yaml#/Template"
2023-04-07 18:00:15 +00:00
type : array
type : object
TemplateResponse :
description : An array of Templates
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/template.yaml#/Template"
2023-04-07 18:00:15 +00:00
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
TenantRequest :
description : An array of Tenant objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/tenant.yaml#/Tenant"
2023-04-07 18:00:15 +00:00
type : array
type : object
TenantResponse :
description : An array of Tenant objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/tenant.yaml#/Tenant"
2023-04-07 18:00:15 +00:00
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object
TicketRequest :
2023-03-28 17:47:34 +00:00
description : An array of Ticket objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/ticket.yaml#/Ticket"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
TicketResponse :
2023-03-28 17:47:34 +00:00
description : An array of Ticket objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/ticket.yaml#/Ticket"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
TransactionRequest :
2023-03-28 17:47:34 +00:00
description : An array of Transaction objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/transaction.yaml#/Transaction"
2023-04-07 18:00:15 +00:00
type : array
2023-03-28 17:47:34 +00:00
type : object
2023-04-07 18:00:15 +00:00
TransactionResponse :
2023-03-28 17:47:34 +00:00
description : An array of Transaction objects
properties :
2023-04-30 02:07:31 +00:00
Meta :
$ref : "#/definitions/ResponseMeta"
2023-03-28 17:47:34 +00:00
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/transaction.yaml#/Transaction"
2023-04-07 18:00:15 +00:00
type : array
type : object
UserRequest :
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/user.yaml#/User"
2023-04-07 18:00:15 +00:00
type : array
type : object
UserResponse :
description : An array of Print-Ready ingest Objects
properties :
Data :
items :
2023-05-13 16:46:48 +00:00
$ref : "../../lib/swagger/defs/user.yaml#/User"
2023-04-07 18:00:15 +00:00
type : array
Meta :
$ref : "#/definitions/ResponseMeta"
type : object