openapi: 3.0.0 info: title: 'Fax API' version: '1.1' servers: - url: 'https://fax.sendfax.to/faxapi/v1' description: 'Autogenerated OpenAPI Documentation' paths: /dids: get: summary: 'Get all DIDs' responses: default: description: 'All DIDs' content: application/json: schema: $ref: '#/components/schemas/GetDidsResponse' security: - api_key: [] '/fax/{uuid}': get: summary: 'Get details of specific fax' parameters: - name: uuid in: path description: 'UUID of Fax' required: true schema: type: string responses: default: description: 'Fax Data' content: application/json: schema: $ref: '#/components/schemas/FaxDetails' security: - api_key: [] '/fax/{uuid}.pdf': get: summary: 'Get the PDF of a specific fax' parameters: - name: uuid in: path description: 'UUID of Fax' required: true schema: type: string responses: default: description: 'Fax in PDF Format' content: application/pdf: schema: $ref: '#/components/schemas/PDFResponse' security: - api_key: [] '/fax/{uuid}.png': get: summary: 'Get a PNG Thumbnail of the first page of a specific fax' parameters: - name: uuid in: path description: 'UUID of Fax' required: true schema: type: string responses: default: description: 'Fax Thumbnail' content: image/png: schema: $ref: '#/components/schemas/ThumbnailResponse' security: - api_key: [] /fax: post: summary: 'Send a new fax' requestBody: description: 'Fax Params' content: multipart/form-data: schema: $ref: '#/components/schemas/PostFax' responses: default: description: 'Fax Submission Result' content: application/json: schema: $ref: '#/components/schemas/PostFaxResponse' security: - api_key: [] components: schemas: PostFax: description: 'Fax Creation' required: - to - from - file - callbackurl properties: to: description: "The destination of the fax\n\nMust be in e164 format, without leading +'s" type: string example: - '12125551234' - '61298987676' - '441830121234' from: description: "CallerID to send fax from\n\nMust be in e164 format, without leading +" type: string example: '12125554321' stationid: description: "Local Station ID to present to the remote device (Optional)\n\nASCII Characters only, maximum length of 16. Defaults to the source caller ID.\nCharacters not matching the pattern \"[A-Za-z0-9\\+_\\-\\(\\) ]\" are removed" type: string example: 'Fax Service Name' file: description: "PDF File to be faxed.\n\nCan not exceed 20MB in size." type: string format: binary resolution: description: "Resolution of fax\n\nSets the fax resolution. Defaults to 'standard'" type: string enum: - standard - fine - superfine callbackurl: description: 'Callback URL for status updates (Must be https)' type: string callbackinvalidcert: description: 'Allow invalid SSL Certificate on Callback URL' type: boolean failureemail: description: 'Optional email address if Callback URL fails' type: string type: object DidInformation: description: 'DID Information' properties: e164number: description: 'Did in E164 Format' type: string billingregion: description: 'Billing Region for this DID' type: string regionalnumber: description: 'Regionally Formatted DID' type: string cansendfax: description: 'Can this DID Send a fax' type: boolean sipacct: description: 'SIP Account to be billed' type: string name: description: 'Descriptive name' type: string type: object FaxDetails: description: 'Fax Details' properties: uuid: description: 'UUID of Fax' type: string state: description: 'State of Fax' type: string enum: - sent - received - inprogress - sleep - failed - waitingresp result: description: 'Fax Result' type: string resultstr: description: 'Verbose Result String' type: string pdfurl: description: 'URL to pick up the PDF of the fax' type: string thumbnailurl: description: 'URL to pick up a thumbnail of the first page of the fax' type: string srccid: description: 'Source CID of the Fax in e164 format' type: string destcid: description: 'Destination CID of the fax in e164 format' type: string remotename: description: 'Remote fax identity' type: string localname: description: 'Local fax identity' type: string startutime: description: 'Fax start utime' type: integer endutime: description: 'Fax end utime' type: integer sessiontime: description: 'Fax transmission time in seconds' type: integer pages: description: 'Page count of fax' type: integer source: description: 'Source of Fax' type: string type: object GetDidsResponse: description: 'GetDids Response' properties: dids: description: 'An array of DIDs' type: array items: $ref: '#/components/schemas/DidInformation' type: object PDFResponse: description: 'Complete fax in PDF Format' type: string format: binary PostFaxResponse: description: 'Reponse when POSTing a new Fax' properties: uuid: description: 'The UUID of the fax' type: string format: string callbackurl: description: 'Callback URL that will be sent updates' type: string allowinvalidcallbackcert: description: 'Allow invalid SSL Certificate on callback URL' type: boolean stationid: description: 'The Station ID that will be used to deliver the fax' type: string format: string sourcecid: description: 'The Source CID that will be used when sending the fax' type: string format: string destnum: description: 'The Destination number of the Fax' type: string format: string type: object ThumbnailResponse: description: 'Thumbnail in PNG Format' type: string format: binary securitySchemes: api_key: type: apiKey name: Token in: header