---
openapi: 3.1.0
info:
  title: Barritel SMS
  description: |-
    API Documentation for Barritel SMS messages

    ## Field Formats
    ### msisdns (phone numbers)
    msisdns should be provided in E164 format. The leading “+” is optional but you may provide it if you wish. Any msisdns returned in responses will always have the leading “+”.
    eg, to provide UK phone number 07700 900999, you may specify this as 447700900999 or +447700900999. This will always be returned as +447700900999.


    ### Timestamps
    All date-time fields can be specified in the following formats:
    - 1717409122 (unix timestamp)
    - 2024-06-03 10:05:22 (no timezone - account default timezone [normally UTC] assumed)
    - 2024-06-03T10:05:22Z (ISO8601 format with “Z” (UTC) timezone specified)
    - 2024-06-03T07:05:22-0300 (ISO8601 format with UTC -3hrs timezone specified)

    ## Endpoints
    In addition to endpoint specific supported methods, every endpoint supports the OPTIONS HTTP method. This method returns a list of HTTP methods that the particular endpoint supports.

    ## Webhooks
    Webhooks are used to send delivery reports and inbound SMS messages. If we do not get a response or a response code of 429/5xx from the server we will try again. If we get a response code of 4xx or 3xx we will not reattempt to send the message.
  version: 1.0.0
servers:
- url: https://sms.apicontrol.co.uk/v1
paths:
  "/sms/message":
    post:
      tags:
      - Outbound SMS
      summary: Send a new SMS
      operationId: sendSms
      requestBody:
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/SendSmsRequest"
        required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/SendSms200Response"
        '201':
          description: Sms created
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/SendSmsResponse"
        '400':
          description: Invalid input
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error400Response"
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error401Response"
        '403':
          description: Invalid input
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error403Response"
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error404Response"
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error405Response"
      security:
      - api_key: []
  "/sms/messages":
    get:
      tags:
      - Outbound SMS
      summary: Get SMS messages
      operationId: indexOutboundSms
      parameters:
      - name: from
        in: query
        description: Filter based on the from msisdn
        schema:
          type: array
          items:
            type: string
      - name: ref
        in: query
        description: Filter based on the ref of the message; can be null to filter
          on messages without a reference
        schema:
          type: string
      - name: paused
        in: query
        description: Filter based on whether the message is paused or not
        schema:
          type: boolean
      - name: completed
        in: query
        description: Filter based on whether the message has finished/completed
        schema:
          type: boolean
      - name: messageID.min
        in: query
        description: Return messages whose messageID is greater than or equal to this
          value
        schema:
          type: integer
      - name: messageID.max
        in: query
        description: Return messages whose messageID is less than or equal to this
          value
        schema:
          type: integer
      - name: created_at.min
        in: query
        description: Return message created on or after this time; default is 24 hours
          ago
        schema:
          type: string
          format: date-time
      - name: created_at.max
        in: query
        description: Return message created on or before this time
        schema:
          type: string
          format: date-time
      - name: limit
        in: query
        description: Max number of messages to return (default 100, max 500)
        schema:
          type: integer
      - name: offset
        in: query
        description: Number of messages to skip (for pagination use)
        schema:
          type: integer
      - name: sort
        in: query
        description: Csv or array of sort field definitions, default is "-messageID"
          which means descending order of messageID, ie newest messages first
        schema:
          oneOf:
          - type: string
          - type: array
            items:
              type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/OutboundSmsIndexResponse"
        '400':
          description: Invalid input
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error401Response"
        '403':
          description: Invalid input
      security:
      - api_key: []
  "/sms/message/{messageID}":
    get:
      tags:
      - Outbound SMS
      summary: Get SMS message
      operationId: getOutboundSms
      parameters:
      - name: messageID
        in: path
        description: ID of message to return
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/GetOutboundSmsResponse"
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error401Response"
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error404Response"
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error405Response"
      security:
      - api_key: []
  "/sms/message/{messageID}/{options}":
    get:
      tags:
      - Outbound SMS
      summary: Get SMS message with options
      operationId: getOutboundSmsOptions
      parameters:
      - name: messageID
        in: path
        description: ID of message to return
        required: true
        schema:
          type: integer
          format: int64
      - name: options
        in: path
        description: Comma seperated list of additional data to include in the response
        required: true
        schema:
          type: array
          items:
            type: string
            enum:
            - meta
            - status
          minItems: 1
          maxItems: 2
          uniqueItems: true
        style: simple
        explode: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                oneOf:
                - "$ref": "#/components/schemas/GetOutboundSmsResponseMetaStatus"
                - "$ref": "#/components/schemas/GetOutboundSmsResponseMeta"
                - "$ref": "#/components/schemas/GetOutboundSmsResponseStatus"
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error401Response"
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error404Response"
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error405Response"
      security:
      - api_key: []
  "/sms/inbound":
    get:
      tags:
      - Inbound SMS
      summary: Get SMS messages
      operationId: indexInboundSms
      parameters:
      - name: from
        in: query
        description: Filter based on the from msisdn, can be either an array or comma
          separated list
        schema:
          oneOf:
          - type: string
          - type: array
            items:
              type: string
      - name: ref
        in: query
        description: Filter based on the ref of the message, can be empty to filter
          on messages without a reference
        schema:
          type: string
      - name: ref
        in: query
        description: Filter based on whether the message is paused or not
        schema:
          type: boolean
      - name: completed
        in: query
        description: Filter based on whether the message has finished/completed
        schema:
          type: boolean
      - name: messageID.min
        in: query
        description: Return messages whose messageID is greater than or equal to this
          value
        schema:
          type: integer
      - name: messageID.max
        in: query
        description: Return messages whose messageID is less than or equal to this
          value
        schema:
          type: integer
      - name: created_at.min
        in: query
        description: Return message created on or after this time; default is 24 hours
          ago
        schema:
          type: string
          format: date-time
      - name: created_at.max
        in: query
        description: Return message created on or before this time
        schema:
          type: string
          format: date-time
      - name: limit
        in: query
        description: Max number of messages to return (default 100, max 500)
        schema:
          type: integer
      - name: offset
        in: query
        description: Number of messages to skip (for pagination use)
        schema:
          type: integer
      - name: sort
        type: string
        in: query
        description: Csv of sort field definitions, default is "-messageID" which
          means descending order of messageID, ie newest messages first
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/InboundSmsIndexResponse"
        '400':
          description: Invalid input
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error401Response"
        '403':
          description: Invalid input
      security:
      - api_key: []
  "/sms/inbound/{messageID}":
    get:
      tags:
      - Inbound SMS
      summary: Get SMS message
      operationId: getInboundSms
      parameters:
      - name: messageID
        in: path
        description: ID of message to return
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/InboundSmsResponse"
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error401Response"
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error404Response"
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                "$ref": "#/components/schemas/Error405Response"
      security:
      - api_key: []
webhooks:
  Inbound SMS:
    post:
      tags:
      - Inbound SMS
      summary: Receive inbound SMS
      operationId: webhookInboundSms
      requestBody:
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/InboundSmsWebhookPayload"
      responses:
        '200':
          description: Successful operation
  Delivery Report:
    post:
      tags:
      - Delivery Report
      summary: Receive delivery notifications
      operationId: webhookDeliveryReport
      requestBody:
        content:
          application/json:
            schema:
              "$ref": "#/components/schemas/DeliveryReportCallbackPayload"
      responses:
        '200':
          description: Your server returns this code if it accepts the callback
components:
  schemas:
    SendSmsRequest:
      type: object
      required:
      - to
      - from
      - body
      properties:
        to:
          description: List of msisdns to whom the message is being sent
          type: array
          items:
            type: string
            examples:
            - - "+447700900111"
              - "+447700900122"
        from:
          description: The msisdn of the sender; this is who the recipient will see
            as the sender of the message
          type: string
          examples:
          - "+447700900001"
        body:
          type: string
          description: Message contents to send
          maxLength: 2000
          examples:
          - Message to send
        send_at:
          type: string
          format: date-time
          description: When to send the message; default is to send now
          examples:
          - '2024-06-03T10:05:22Z'
        expires_at:
          type: string
          format: date-time
          description: When the message should expire; any recipients not yet attempted
            will be abandoned (cannot be provided with ttl)
          examples:
          - '2024-06-04T10:05:22Z'
        ttl:
          type: string
          description: Alternative to expires_at - number of seconds after the send_at
            time after which the message will be considered expired (cannot be provided
            with expires_at)
          examples:
          - 60
        num_parts_max:
          type: integer
          description: Maximum number of message parts allowed; if the submitted message
            requires more than this many (due to length and/or required character
            encoding) then it will not be sent; an HTTP 200 response will be returned
            instead of the normal HTTP 201 for this method.
          examples:
          - 4
        ref:
          type: string
          description: Client reference; this will be included in any callbacks
          maxLength: 80
          examples:
          - d93b9ec9-4e0d-42b8-80c0-ef3036acdafc
        callbackURL:
          type: string
          format: uri
          description: URL that delivery reports should be sent to for this message;
            if not provided the account default will be used
          examples:
          - https://sms-callbacks.barbuck.com
        delivery_report:
          type: string
          enum:
          - summary
          - detailed
          - per_recipient_final
          - per_recipient
          description: |
            Delivery report type:
              * summary - One report for the message, sent when all recipients have been attempted or expired; shows a summary of the number of delivered, failed, expired etc recipients
              * details - One report for the message, sent when all recipients have been attempted or expired; shows statuses with a breakdown of recipients
              * per_recipient_final - Single delivery report will be sent for each recipient when the status is final (eg "delivered", "expired", "rejected")
              * per_recipient -  Report per recipient is sent for each change of status (eg "sent" meaning that the message has been submitted to the SMSC and  then the final status)

              If not provided the account default will be used, if set to null delivery reports will be disabled for this message
        paused:
          type: boolean
          default: false
          description: Whether to submit the message in a paused state (will not be
            sent until released)
    SendSmsResponse:
      type: object
      properties:
        messageID:
          type: integer
          description: The Id of the message
          examples:
          - 923934
        num_parts:
          type: integer
          description: The number of parts used to send the message
          examples:
          - 1
        num_recipients:
          type: integer
          description: The number of recipients the message was sent to
          examples:
          - 2
    SendSms200Response:
      type: object
      properties:
        num_parts:
          type: integer
          description: The number of parts used to send the message
          examples:
          - 2
        num_parts_max:
          type: integer
          description: The number of parts used to send the message
          examples:
          - 1
        info:
          type: string
          description: Error message
          examples:
          - Message not accepted because it would exceed the requested maximum number
            of message parts
    GetOutboundSmsResponseCommon:
      type: object
      properties:
        messageID:
          type: integer
          description: The Id of the message
          examples:
          - 923934
        from:
          description: The msisdn of the sender; this is who the recipient will see
            as the sender of the message
          type: string
          examples:
          - "+447700900001"
        body:
          type: string
          description: Message contents to send
          examples:
          - Message to send
        send_at:
          type: string
          format: date-time
          description: When to send the message; default is to send now
          examples:
          - '2024-06-03T10:05:22Z'
        expires_at:
          type: string
          format: date-time
          description: When the message should expire; any recipients not yet attempted
            will be abandoned
          examples:
          - '2024-06-04T10:05:22Z'
        ref:
          type: string
          description: Client reference; this will be included in any callbacks
          examples:
          - d93b9ec9-4e0d-42b8-80c0-ef3036acdafc
        callbackURL:
          type: string
          format: uri
          description: URL that delivery reports should be sent to for this message
          examples:
          - https://sms-callbacks.barbuck.com
        paused:
          type: boolean
          default: false
          description: Whether to submit the message in a paused state (will not be
            sent until released)
    GetOutboundSmsResponseMetaOnly:
      type: object
      properties:
        messageID:
          type: integer
          description: The ID of the message
          examples:
          - 123123
        created_at:
          type: string
          format: date-time
          description: When the message was created
          examples:
          - '2024-06-03T10:05:22Z'
        complete_at:
          type: string
          format: date-time
          description: When the message was completed
          examples:
          - '2024-06-03T10:06:22Z'
        num_parts:
          type: integer
          description: Number of parts the message was sent in
          examples:
          - 1
        balance_used:
          type: integer
          description: Total number of credits used to send all messages
          examples:
          - 3
    GetOutboundSmsResponseStatusOnly:
      type: object
      properties:
        status:
          type: object
          description: The status of the individual messages
          properties:
            pending:
              type: integer
              description: The number of messages pending delivery
              examples:
              - 0
            submitted:
              type: integer
              description: The number of messages submitted for delivery
              examples:
              - 0
            sent:
              type: integer
              description: The number of messages sent
              examples:
              - 0
            delivered:
              type: integer
              description: The number of messages delivered
              examples:
              - 2
            cancelled:
              type: integer
              description: The number of messages cancelled
              examples:
              - 0
            expired:
              type: integer
              description: The number of messages which have expired
              examples:
              - 0
            aborted:
              type: integer
              description: The number of messages aborted
              examples:
              - 0
            rejected:
              type: integer
              description: The number of messages rejected
              examples:
              - 0
            failed:
              type: integer
              description: The number of messages failed to deliver
              examples:
              - 1
            deleted:
              type: integer
              description: The number of messages deleted
              examples:
              - 0
            unknown:
              type: integer
              description: The number of messages in an unknown state
              examples:
              - 0
    GetOutboundSmsResponse:
      allOf:
      - type: object
        properties:
          to:
            description: List of msisdns to whom the message is being sent
            type: array
            items:
              type: string
              examples:
              - - "+447700900111"
                - "+447700900122"
      - "$ref": "#/components/schemas/GetOutboundSmsResponseCommon"
    GetOutboundSmsResponseMeta:
      allOf:
      - type: object
        properties:
          to:
            description: List of msisdns to whom the message is being sent
            type: array
            items:
              type: string
              examples:
              - - "+447700900111"
                - "+447700900122"
      - "$ref": "#/components/schemas/GetOutboundSmsResponseCommon"
      - "$ref": "#/components/schemas/GetOutboundSmsResponseMetaOnly"
    GetOutboundSmsResponseStatus:
      allOf:
      - type: object
        properties:
          to:
            type: object
            description: Object containing msisdns to status
            additionalProperties:
              type: string
              description: msisdn
            examples:
            - "+447700900111": delivered
              "+447700900122": delivered
              "+447700900133": pending
      - "$ref": "#/components/schemas/GetOutboundSmsResponseCommon"
      - "$ref": "#/components/schemas/GetOutboundSmsResponseStatusOnly"
    GetOutboundSmsResponseMetaStatus:
      allOf:
      - type: object
        properties:
          to:
            type: object
            description: Object containing msisdns to status
            additionalProperties:
              type: string
              description: msisdn
            examples:
            - "+447700900111": delivered
              "+447700900122": delivered
              "+447700900133": pending
      - "$ref": "#/components/schemas/GetOutboundSmsResponseCommon"
      - "$ref": "#/components/schemas/GetOutboundSmsResponseMetaOnly"
      - "$ref": "#/components/schemas/GetOutboundSmsResponseStatusOnly"
    InboundSmsCommon:
      type: object
      properties:
        messageID:
          type: integer
          description: The ID of the message
          examples:
          - 7
        from:
          type: string
          description: The msisdn the message was sent from
          examples:
          - "+447700900000"
        to:
          type: string
          description: The msisdn the message was sent to
          examples:
          - "+447700900999"
        body:
          type: string
          description: The message body
          examples:
          - Test inbound message
        ref:
          type: string
          description: Reference of the msisdn the message was sent to
          examples:
          - Oxford main office
    InboundSmsIndexResponse:
      type: object
      properties:
        data:
          type: array
          items:
            "$ref": "#/components/schemas/InboundSmsResponse"
        more_results:
          type: boolean
          description: Are there more results which have not been included
          examples:
          - false
    OutboundSmsIndexResponse:
      type: object
      properties:
        data:
          type: array
          items:
            "$ref": "#/components/schemas/GetOutboundSmsResponse"
        more_results:
          type: boolean
          description: Are there more results which have not been included
          examples:
          - false
    InboundSmsResponse:
      allOf:
      - "$ref": "#/components/schemas/InboundSmsCommon"
      - type: object
        properties:
          received_at:
            type: string
            description: The time at which the message was received
            format: timestamp
            examples:
            - '1718893029.000'
    InboundSmsWebhookPayload:
      allOf:
      - "$ref": "#/components/schemas/InboundSmsCommon"
      - type: object
        properties:
          tstamp:
            type: string
            description: The time at which the message was received
            format: date-time
            examples:
            - '2024-06-03T10:05:22Z'
          callback_type:
            type: string
            description: The type of the callback/webhook
            examples:
            - inbound_message
          message_type:
            type: string
            description: The type of the message
            examples:
            - sms
    DeliveryReportCallbackPayload:
      oneOf:
      - "$ref": "#/components/schemas/DeliveryReportSummaryCallbackPayload"
      - "$ref": "#/components/schemas/DeliveryReportDetailedCallbackPayload"
      - "$ref": "#/components/schemas/DeliveryReportPerRecipientFinalPayload"
      - "$ref": "#/components/schemas/DeliveryReportPerRecipientPayload"
    DeliveryReportCallbackCommon:
      type: object
      properties:
        tstamp:
          type: string
          description: The time at which the message was received
          format: date-time
          examples:
          - '2024-06-03T10:05:22Z'
        message_type:
          type: string
          description: The type of the message
          examples:
          - sms
        ref:
          type: string
          description: Client reference
          examples:
          - d93b9ec9-4e0d-42b8-80c0-ef3036acdafc
        messageID:
          type: integer
          description: The Id of the message
          examples:
          - 923934
        balance_used:
          type: integer
          description: Total number of credits used to send all messages
          examples:
          - 2
    DeliveryReportSummaryCallbackPayload:
      allOf:
      - "$ref": "#/components/schemas/DeliveryReportCallbackCommon"
      - type: object
        properties:
          statuses:
            type: object
            description: The status of the individual messages
            properties:
              pending:
                type: integer
                description: The number of messages pending delivery
                examples:
                - 0
              submitted:
                type: integer
                description: The number of messages submitted for delivery
                examples:
                - 0
              sent:
                type: integer
                description: The number of messages sent
                examples:
                - 0
              delivered:
                type: integer
                description: The number of messages delivered
                examples:
                - 2
              cancelled:
                type: integer
                description: The number of messages cancelled
                examples:
                - 0
              expired:
                type: integer
                description: The number of messages which have expired
                examples:
                - 0
              aborted:
                type: integer
                description: The number of messages aborted
                examples:
                - 0
              rejected:
                type: integer
                description: The number of messages rejected
                examples:
                - 0
              failed:
                type: integer
                description: The number of messages failed to deliver
                examples:
                - 1
              deleted:
                type: integer
                description: The number of messages deleted
                examples:
                - 0
              unknown:
                type: integer
                description: The number of messages in an unknown state
                examples:
                - 0
          callback_type:
            type: string
            description: The type of the callback
            examples:
            - summary_delivery_report
    DeliveryReportDetailedCallbackPayload:
      allOf:
      - "$ref": "#/components/schemas/DeliveryReportCallbackCommon"
      - type: object
        properties:
          statuses:
            type: object
            description: The status of the individual messages
            additionalProperties:
              type: object
              description: status code, eg "200"
              properties:
                status:
                  type: string
                  enum:
                  - pending
                  - submitted
                  - sent
                  - delivered
                  - cancelled
                  - expired
                  - aborted
                  - rejected
                  - failed
                  - deleted
                  - unknown
                  examples:
                  - delivered
                recipients:
                  type: array
                  description: Array of msisdns of the recipients
                  items:
                    type: string
                    description: The msisdn of the recipient
                    examples:
                    - "+447700900998"
          callback_type:
            type: string
            description: The type of the callback
            examples:
            - summary_delivery_report
    DeliveryReportPerRecipientFinalPayload:
      allOf:
      - "$ref": "#/components/schemas/DeliveryReportCallbackCommon"
      - type: object
        properties:
          status:
            type: string
            description: The status of the message
            examples:
            - delivered
            enum:
            - pending
            - submitted
            - sent
            - delivered
            - cancelled
            - expired
            - aborted
            - rejected
            - failed
            - deleted
            - unknown
          status_code:
            type: integer
            description: The statu code for the message
            examples:
            - 200
          recipients:
            type: string
            description: The recipient of the message
            examples:
            - "+447700900999"
          callback_type:
            type: string
            description: The type of the callback
            examples:
            - recipient_delivery_report
    DeliveryReportPerRecipientPayload:
      allOf:
      - "$ref": "#/components/schemas/DeliveryReportCallbackCommon"
      - type: object
        properties:
          status:
            type: string
            description: The status of the message
            examples:
            - delivered
            enum:
            - pending
            - submitted
            - sent
            - delivered
            - cancelled
            - expired
            - aborted
            - rejected
            - failed
            - deleted
            - unknown
          status_code:
            type: integer
            description: The status code for the message
            examples:
            - 200
          recipients:
            type: string
            description: The recipient of the message
            examples:
            - "+447700900999"
          callback_type:
            type: string
            description: The type of the callback
            examples:
            - recipient_delivery_report
    Error400Response:
      type: object
      properties:
        status_code:
          type: integer
          description: Status code 400
          examples:
          - 400
        status_msg:
          type: string
          description: Error message text
          examples:
          - Bad Request
        error:
          type: string
          description: Validation error text
          examples:
          - Argument not supplied
        type:
          type: string
          description: Type of the validation error
          examples:
          - ARG_MISSING
        arguement:
          type: string
          description: The arguement the validation error applies to
          examples:
          - to
    Error401Response:
      type: object
      properties:
        status_code:
          type: integer
          description: Status code 401
          examples:
          - 401
        status_msg:
          type: string
          description: Error message text
          examples:
          - Unauthorized
    Error403Response:
      type: object
      properties:
        status_code:
          type: integer
          description: Status code 403
          examples:
          - 403
        status_msg:
          type: string
          description: Error message text
          examples:
          - Forbidden
        error:
          type: string
          description: Validation error text
          examples:
          - Argument has disallowed value
        type:
          type: string
          description: Type of the validation error
          examples:
          - VAL_ILLEGAL
        arguement:
          type: string
          description: The arguement the error applies to
          examples:
          - from
        bad_value:
          type: string
          description: The value which the error is for
          examples:
          - "+443480047819"
        info:
          type: string
          description: additional information
          examples:
          - Number must be validated against your account
    Error404Response:
      type: object
      properties:
        status_code:
          type: integer
          description: Status code 404
          examples:
          - 404
        status_msg:
          type: string
          description: Error message text
          examples:
          - Not Found
        info:
          type: string
          description: Additional information
        examples:
        - no message with messageID "2348"
    Error405Response:
      type: object
      properties:
        status_code:
          type: integer
          description: Status code 405
          examples:
          - 405
        status_msg:
          type: string
          description: Error message text
          examples:
          - Method Not Allowed
        Allow:
          type: array
          description: Array of methods
          items:
            type: string
            description: HTTP Method
            examples:
            - POST
  securitySchemes:
    api_key:
      type: apiKey
      name: Authorization
      in: header
