diff --git a/openapi.yaml b/openapi.yaml index 34f54de1..bb23b252 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -228,6 +228,75 @@ paths: type: object additionalProperties: true + /bird/voice/calls/test-outbound: + post: + tags: + - Bird + summary: Place a test outbound call and hang up when accepted + operationId: birdTestOutboundVoiceCall + description: Calls +45 42 33 11 28 and hangs up when the call reaches accepted/ongoing state. + parameters: + - in: query + name: workspaceId + schema: + type: string + required: true + description: Bird Workspace identifier + - in: query + name: channelId + schema: + type: string + required: true + description: Bird Channel identifier + requestBody: + required: false + content: + application/json: + schema: + type: object + additionalProperties: true + properties: + from: + type: string + description: Caller E.164 number to use for the test call + example: "+4599988877" + pollIntervalSeconds: + type: integer + minimum: 1 + description: Poll interval while waiting for accepted status + example: 2 + maxPollSeconds: + type: integer + minimum: 5 + description: Max time to wait before timing out + example: 30 + hangupCause: + type: string + description: Optional hangup cause passed through to Bird + responses: + '200': + description: Test call created and either hung up or timed out + content: + application/json: + schema: + type: object + additionalProperties: true + properties: + call_id: + type: string + nullable: true + hangup_sent: + type: boolean + final_status: + type: string + nullable: true + to: + type: string + example: "+45 42 33 11 28" + to_e164: + type: string + example: "+4542331128" + # Bird Numbers /bird/numbers: get: @@ -255,6 +324,46 @@ paths: type: object additionalProperties: true + /bird/numbers/{id}: + get: + tags: + - Bird + summary: Get a number by ID + operationId: birdGetNumber + parameters: + - in: path + name: id + required: true + schema: + type: string + responses: + '200': + description: Number details + content: + application/json: + schema: + type: object + additionalProperties: true + delete: + tags: + - Bird + summary: Delete/release a number by ID + operationId: birdDeleteNumber + parameters: + - in: path + name: id + required: true + schema: + type: string + responses: + '200': + description: Number deletion/release accepted + content: + application/json: + schema: + type: object + additionalProperties: true + # Bird Voice Flash Calling /bird/voice/flash-calls: post: