B3 Contract API
The Contract API from B3 — 11 operation(s) for contract.
The Contract API from B3 — 11 operation(s) for contract.
openapi: 3.1.0
info:
description: Workflow management API for B3OS
title: B3OS Workflow Action Contract API
version: '1.0'
tags:
- name: Contract
paths:
/v1/contract:
post:
description: Create a new contract project
requestBody:
content:
application/json:
schema:
oneOf:
- type: object
- $ref: '#/components/schemas/internal_app_api_http_v1_contract.SaveProjectRequest'
summary: body
description: Project data
description: Project data
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/GetContractProjectSuccessResponse'
description: Created
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Bad Request
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Internal Server Error
tags:
- Contract
/v1/contract/chat/stream:
post:
description: Stream AI chat for smart contract development via SSE
requestBody:
content:
application/json:
schema:
oneOf:
- type: object
- $ref: '#/components/schemas/ContractChatParams'
summary: request
description: Contract chat request parameters
description: Contract chat request parameters
required: true
responses:
'200':
content:
text/event-stream:
schema:
type: string
description: SSE stream with contract events
'400':
content:
text/event-stream:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Bad Request
tags:
- Contract
/v1/contract/session/{sessionId}:
get:
description: Get a contract project by session ID
parameters:
- description: Session ID
in: path
name: sessionId
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/GetContractProjectSuccessResponse'
description: OK
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
tags:
- Contract
/v1/contract/{id}:
delete:
description: Delete a contract project by ID
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.SuccessResponse'
description: OK
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
tags:
- Contract
get:
description: Get a contract project by ID
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/GetContractProjectSuccessResponse'
description: OK
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
tags:
- Contract
put:
description: Update a contract project
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
oneOf:
- type: object
- $ref: '#/components/schemas/internal_app_api_http_v1_contract.SaveProjectRequest'
summary: body
description: Project data
description: Project data
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/GetContractProjectSuccessResponse'
description: OK
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Bad Request
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Internal Server Error
tags:
- Contract
/v1/contract/{id}/audit:
post:
description: Run audit for a contract project
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/GetContractProjectSuccessResponse'
description: OK
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Bad Request
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Internal Server Error
tags:
- Contract
/v1/contract/{id}/deploy/approve:
post:
description: Approve and initiate contract deployment to testnet or mainnet
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
oneOf:
- type: object
- $ref: '#/components/schemas/ApproveContractDeployParams'
summary: request
description: Deployment parameters
description: Deployment parameters
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ApproveContractDeploySuccessResponse'
description: OK
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Bad Request
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
tags:
- Contract
/v1/contract/{id}/download:
get:
description: Download contract project as Foundry ZIP
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/zip:
schema:
type: file
description: OK
'404':
content:
application/zip:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
'500':
content:
application/zip:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Internal Server Error
tags:
- Contract
/v1/contract/{id}/fix:
post:
description: Trigger AI auto-fix for a contract with failed tests
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/GetContractProjectSuccessResponse'
description: OK
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Bad Request
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Internal Server Error
tags:
- Contract
/v1/contract/{id}/plan/approve:
post:
description: Approve a contract plan to proceed with code generation
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
oneOf:
- type: object
- $ref: '#/components/schemas/ApproveContractPlanParams'
summary: request
description: Plan approval
description: Plan approval
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ApproveContractPlanSuccessResponse'
description: OK
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Bad Request
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
tags:
- Contract
/v1/contract/{id}/test:
post:
description: Run tests for a contract project
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/GetContractProjectSuccessResponse'
description: OK
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Bad Request
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Internal Server Error
tags:
- Contract
/v1/contract/{id}/verification-status:
get:
description: Check verification status for all deployments of a contract project
parameters:
- description: Contract project ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/CheckVerificationStatusResponse'
description: OK
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse'
description: Not Found
tags:
- Contract
components:
schemas:
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ConnectorReference:
description: nil if action doesn't need connector
properties:
id:
description: Connector ID (or subOrgId for turnkey)
type: string
type:
description: Connector type (e.g., "slack", "turnkey")
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.NodePosition:
properties:
x:
type: number
y:
type: number
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.WorkflowInput:
properties:
description:
type: string
key:
type: string
required:
type: boolean
type:
description: '"string", "number", "boolean", "object", "array"'
type: string
type: object
ApproveContractDeploySuccessResponse:
properties:
code:
example: 200
type: integer
data:
$ref: '#/components/schemas/ContractDeployApproval'
message:
example: success
type: string
requestId:
example: abc-123
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ContractProject:
properties:
allDeployments:
items:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.DeployResult'
type: array
uniqueItems: false
auditReport:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.AuditReport'
autoFixAttempts:
type: integer
compilationFixAttempts:
type: integer
createdAt:
type: string
currentStep:
type: integer
deployments:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.Deployments'
externalContractId:
type: string
id:
type: string
name:
type: string
organizationId:
type: string
planSummary:
type: string
sessionId:
type: string
source:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ContractSource'
status:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ContractProjectStatus'
testResults:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.TestResults'
updatedAt:
type: string
walletId:
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.CommentReply:
properties:
createdAt:
type: string
createdBy:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.StickyNoteUser'
id:
type: string
text:
type: string
updatedAt:
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.SuccessResponse:
allOf:
- $ref: '#/components/schemas/data'
properties:
code:
type: integer
data: {}
message:
type: string
requestId:
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.WorkflowNode:
properties:
branch:
description: '"then" or "else", only when parent is "if" node'
type: string
children:
items:
type: string
type: array
uniqueItems: false
connector:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ConnectorReference'
description:
description: AI-generated 1-sentence description
type: string
loopBody:
description: Loop body nodes (only for for-each nodes)
items:
type: string
type: array
uniqueItems: false
payload:
additionalProperties: {}
type: object
resultSchema:
additionalProperties: {}
description: 'ResultSchema describes the output structure of this node (populated dynamically for x402 endpoints).
This is used by the frontend to show available output variables in the variable picker.'
type: object
titleOverride:
description: AI-generated short title (2-6 words), only when more descriptive than default
type: string
type:
type: string
required:
- payload
- type
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.Comment:
properties:
createdAt:
type: string
createdBy:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.StickyNoteUser'
id:
type: string
nodeId:
type: string
position:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.NodePosition'
replies:
items:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.CommentReply'
type: array
uniqueItems: false
resolved:
type: boolean
text:
type: string
updatedAt:
type: string
type: object
internal_app_api_http_v1_contract.SaveProjectRequest:
properties:
name:
maxLength: 100
type: string
planSummary:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ContractPlanSummary'
sessionId:
description: For new projects
type: string
source:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ContractSource'
testResults:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.TestResults'
required:
- name
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ContractProjectStatus:
enum:
- planned
- generating
- code_generated
- testing
- tested
- auditing
- audited
- deploying
- testnet_deployed
- mainnet_deployed
- failed
type: string
x-enum-comments:
ContractStatusAuditing: Intermediate status during security audit
ContractStatusDeploying: Intermediate status during deployment
ContractStatusGenerating: Intermediate status during code generation
ContractStatusTesting: Intermediate status during test execution
x-enum-varnames:
- ContractStatusPlanned
- ContractStatusGenerating
- ContractStatusCodeGenerated
- ContractStatusTesting
- ContractStatusTested
- ContractStatusAuditing
- ContractStatusAudited
- ContractStatusDeploying
- ContractStatusTestnetDeployed
- ContractStatusMainnetDeployed
- ContractStatusFailed
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_app_api_http.ErrorResponse:
properties:
code:
type: integer
details:
items: {}
type: array
uniqueItems: false
message:
type: string
requestId:
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.PropSchema:
properties:
chainPropKey:
description: 'For tokenSelector: prop key providing chainId'
type: string
enum:
items: {}
type: array
uniqueItems: false
enumLabels:
items:
type: string
type: array
uniqueItems: false
inputType:
description: 'InputType is a UI rendering hint. The frontend uses it to pick a rich
selector component instead of a plain text input. Unknown values are
silently ignored (falls back to default input).
Valid values: chainSelector, tokenSelector, address, recipientAddress, email'
type: string
maximum:
type: number
minimum:
type: number
pattern:
type: string
placeholder:
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.StickyNote:
properties:
color:
type: string
createdAt:
type: string
createdBy:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.StickyNoteUser'
id:
type: string
position:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.NodePosition'
size:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.StickyNoteSize'
text:
type: string
updatedAt:
type: string
zIndex:
type: integer
type: object
ContractChatParams:
properties:
action:
$ref: '#/components/schemas/ContractChatAction'
contractId:
description: ContractID is the primary identifier (optional for first message - backend creates project)
type: string
message:
maxLength: 51200
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.AuditSummary:
properties:
critical:
type: integer
high:
type: integer
info:
type: integer
low:
type: integer
medium:
type: integer
overallRisk:
description: low, medium, high, critical
type: string
recommendation:
description: deployment recommendation
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.TemplateVisibility:
enum:
- org
- public
- org
- public
type: string
x-enum-comments:
TemplateVisibilityOrg: Only visible to organization members
TemplateVisibilityPublic: Visible to everyone
x-enum-varnames:
- TemplateVisibilityOrg
- TemplateVisibilityPublic
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.StickyNoteUser:
properties:
clientId:
type: string
name:
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.DeployResult:
properties:
address:
type: string
blockNumber:
type: integer
chainId:
type: integer
deployedAt:
type: string
deploymentMode:
description: standard, create2, or create3
type: string
gasUsed:
type: integer
isDeterministic:
description: Whether CREATE2/CREATE3 was used
type: boolean
networkType:
description: mainnet or testnet
type: string
predictedAddress:
description: Pre-computed address for deterministic deployments
type: string
salt:
description: CREATE2/CREATE3 salt for deterministic address
type: string
txHash:
type: string
verificationStatus:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.VerificationStatus'
verificationUrl:
description: URL to view verified contract on block explorer
type: string
verified:
description: Whether contract source is verified on block explorer
type: boolean
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.AuditReport:
properties:
findings:
items:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.AuditFinding'
type: array
uniqueItems: false
passes:
items:
type: string
type: array
uniqueItems: false
summary:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.AuditSummary'
timestamp:
type: string
type: object
CheckVerificationStatusResponse:
properties:
deployments:
items:
$ref: '#/components/schemas/DeploymentVerificationStatus'
type: array
uniqueItems: false
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.AuditFinding:
properties:
acknowledged:
type: boolean
category:
description: reentrancy, access-control, etc.
type: string
codeSnippet:
type: string
description:
type: string
location:
type: string
recommendation:
type: string
severity:
description: critical, high, medium, low, info
type: string
title:
type: string
type: object
ContractPlanApproval:
properties:
project:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ContractProject'
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.Template:
properties:
archived:
type: boolean
category:
description: 'Deprecated: Use Tags instead'
type: string
cooldownMs:
type: integer
createdAt:
type: string
createdBy:
type: string
definition:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.WorkflowDefinition'
description:
type: string
forkCount:
type: integer
id:
type: string
isPromoted:
type: boolean
maxRuns:
type: integer
name:
type: string
organizationDescription:
type: string
organizationId:
description: Fields for user-generated templates (nil for built-in templates)
type: string
organizationName:
type: string
organizationPhoto:
type: string
promotedAt:
type: string
promotedBy:
type: string
sourceWorkflowId:
description: Source workflow link (nil for built-in or legacy templates)
type: string
tags:
items:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.Tag'
type: array
uniqueItems: false
templateProps:
items:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.TemplateProp'
type: array
uniqueItems: false
uiMetadata:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.WorkflowUIMetadata'
updatedAt:
type: string
updatedBy:
type: string
version:
type: integer
visibility:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.TemplateVisibility'
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.WorkflowUIMetadata:
properties:
comments:
items:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.Comment'
type: array
uniqueItems: false
nodePositions:
additionalProperties:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.NodePosition'
type: object
stickyNotes:
items:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.StickyNote'
type: array
uniqueItems: false
type: object
GetContractProjectSuccessResponse:
properties:
code:
example: 200
type: integer
data:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.ContractProject'
message:
example: success
type: string
requestId:
example: abc-123
type: string
type: object
github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.WorkflowDefinition:
description: 'Definition is the full workflow graph to execute. Must contain a
"root" node with type "manual". All action nodes referenced in
children arrays must be present.'
properties:
inputSchema:
items:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.WorkflowInput'
type: array
uniqueItems: false
nodes:
additionalProperties:
$ref: '#/components/schemas/github_com_b3-fun_b3-mono_services_b3os-workflow_internal_pkg_entity.WorkflowNode'
type: object
sensitivePropKeys:
items:
type: string
type: array
uniqueItems: false
required:
- nodes
type: object
DeploymentVerificationStatus:
properties:
chainId:
type: integer
contractAddress:
type: string
explorerUrl:
type: string
verified:
type: boolean
type: object
github_com
# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/b3/refs/heads/main/openapi/b3-contract-api-openapi.yml