Sonetel Internal API

The Internal API from Sonetel — 2 operation(s) for internal.

Operations 2

POST /internal/filemgr/upload-url Create upload URL (Internal) #
POST /internal/filemgr/file Add a file #

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-account-get-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-account-put-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-account-data-mgr-call-rec-settings-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-user-get-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-user-call-settings-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-user-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-single-phone-number-subscription-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-list-phnum-subscriptions-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-call-recording-list-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-call-recording-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-voiceapp-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-create-prompt-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-requested-by-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-file-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-write-to-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-account-context-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-file-input-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sonetel/refs/heads/main/json-schema/sonetel-file-with-id-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sonetel:sonetel-internal-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sonetel-internal-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Sonetel Internal API
  version: 1.0.0
  contact:
    name: Sonetel API Support
    url: https://sonetel.com/en/developer/help/
    email: api.support@sonetel.com
  termsOfService: https://sonetel.com/en/help/help-topics/terms-conditions/terms-conditions/
  description: 'Operations tagged Internal across 2 of this provider''s published API definitions: 15_ai_filemanager.yaml, sonetel-ai-file-manager-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://public-api.sonetel.com
  description: Production
security:
- {}
tags:
- name: Internal
paths:
  /internal/filemgr/upload-url:
    post:
      summary: Create upload URL (Internal)
      description: Create an upload URL. Used by internal Sonetel services only.
      operationId: post-internal-filemgr-upload-url
      requestBody:
        $ref: '#/components/requestBodies/post-upload-url-INTERNAL'
      responses:
        '200':
          $ref: '#/components/responses/post-upload-url-rsp'
      security:
      - Sonetel: []
      servers:
      - url: https://public-api.sonetel.com
        description: Production
      x-internal: true
      tags:
      - Internal
    servers:
    - url: https://public-api.sonetel.com
      description: Production
  /internal/filemgr/file:
    post:
      summary: Add a file
      description: 'Add a file to file manager

        This endpoint is used by Sonetel services to provide a reference of a file to the file manager, to allow file manager to view and manage that file. File manager allocates a unique `file_id` to the file.'
      operationId: post-internal-filemgr-file
      requestBody:
        $ref: '#/components/requestBodies/post-internal-file'
      responses:
        '200':
          $ref: '#/components/responses/FileWithId'
      security:
      - Sonetel: []
      servers:
      - url: https://public-api.sonetel.com
        description: Production
      x-internal: true
      tags:
      - Internal
    servers:
    - url: https://public-api.sonetel.com
      description: Production
components:
  requestBodies:
    post-internal-file:
      description: Add file request
      content:
        application/json:
          schema:
            type: object
            properties:
              storage:
                type: string
                enum:
                - sonetel-call-recording
                - sonetel-voicemail
                - google-drive
                - one-drive
                - dropbox
                description: 'The storage type of the file.

                  Storage type other than `file-mgr` applies to files stored by Sonetel services in their own storage'
              store_obj_id:
                type: string
                description: An identifier of the file in the storage system which can be used by the file manager to access the file
              in_use_with:
                $ref: '#/components/schemas/InUseWith'
              account_id:
                type: string
                description: Account Id for which this file is added
                examples:
                - Yhty234
              user_id:
                type: string
                description: Sonetel User_id for which this file is added
                examples:
                - km5yht3
              business_id:
                type: string
                description: Business_id for which this file is added
                examples:
                - 3jhpoi
            required:
            - storage
            - store_obj_id
    post-upload-url-INTERNAL:
      description: Request to get upload URLs by Sonetel internal services
      content:
        application/json:
          schema:
            type: object
            properties:
              count:
                type: string
              visibility:
                type: string
              account_id:
                type: string
              user_id:
                type: string
              business_id:
                type: string
              description:
                type: string
              created_by:
                type: string
              in_use_with:
                $ref: '#/components/schemas/InUseWith'
  schemas:
    AudioMetaData:
      type: object
      title: AudioMetaData
      description: Meta data for audio files
      properties:
        duration:
          type: integer
          description: The audio length in seconds
          format: int32
          examples:
          - 32
        codec:
          type: string
          description: The [audio codec](https://www.iana.org/assignments/media-types/media-types.xhtml#audio) used
          examples:
          - pcma
        bitrate:
          type: integer
          description: The audio bitrate in kbps
          examples:
          - 128
        sampling_rate:
          enum:
          - 44.1
          - 48
          - 22.05
          - 32
          - 88.2
          - 96
          description: Sampling rate of the audio
          examples:
          - 48
    FileWithID:
      type: object
      description: File meta data
      properties:
        file_id:
          type: string
          description: The unique ID of the file
          readOnly: true
        name:
          type: string
          description: The file name with extension
          examples:
          - my-file.txt
        type:
          type: string
          enum:
          - audio
          - video
          - image
          - text
          - other
          description: The type of file - audio, video, image, text or other. The file type is automatically detected during upload by the file manager
          readOnly: true
        size:
          type: integer
          description: The size of the file in bytes
          format: int64
          readOnly: true
          examples:
          - 7565
        storage:
          type: string
          enum:
          - file-mgr
          - sonetel-call-recording
          - sonetel-voicemail
          - google-drive
          - one-drive
          - dropbox
          description: The storage type of the file. A file may be stored in storage managed by file manager, or storage managed by other services such as Sonetel's call recording, or external cloud storage services such as Google or Microsoft one-drive or dropbox.
          readOnly: true
          examples:
          - file-mgr
        extension:
          type: string
          description: The file name extension such as `jpg`, `mp4` etc.
          readOnly: true
        mime_type:
          type: string
          description: The [standard IANA mime type](https://www.iana.org/assignments/media-types/media-types.xhtml) of the file
          readOnly: true
        public_url:
          type: string
          description: The public URL of the file for files that have visibility set to `public`
          format: uri-reference
          readOnly: true
        description:
          type: string
          description: Textual description of the file
        create_date:
          type: string
          description: The create date/time of the file
          format: date-time
          readOnly: true
        modify_date:
          type: string
          description: The last modified date of the file meta data. File content cannot be modified
          format: date-time
          readOnly: true
        visibility:
          type: string
        image_meta_data:
          $ref: '#/components/schemas/ImageMetaData'
          description: Image specific meta data for image files
        video_meta_data:
          $ref: '#/components/schemas/VideoMetaData'
          description: Video specific meta data for video files
        audio_meta_data:
          $ref: '#/components/schemas/AudioMetaData'
          description: Audio specific meta data for audio files
        account_id:
          type: string
          description: The Sonetel account Id that owns the file
          readOnly: true
          examples:
          - ty4653
        user_id:
          type: string
          description: The Sonetel user Id that owns the file
          readOnly: true
          examples:
          - H64yut
        business_id:
          type: string
          description: The Sonetel business Id to which the file is associated
          examples:
          - rhY4563
        in_use_with:
          $ref: '#/components/schemas/InUseWith'
          description: List of services the file is in use with and expiry timestamp for each
        temp_url:
          type: string
          description: A secure temporary URL that expires in 180 seconds.
          format: uri
          examples:
          - https://files.sonetel.com/yh4yth208656Hn5uj3876ki3jj2j
        created_by:
          type: string
          enum:
          - ai-meeting-mins
          - user
          - ai-photo-finder
          - sonetel-call-recording
          description: 'The service that created this file. In case a user has created this, this value is set to `user` and the `user_id` field carries the `user_id `of the user that created this '
          examples:
          - user
        store_obj_id:
          type: string
          description: Reference Id of the file in the object storage
    VideoMetaData:
      type: object
      title: VideoMetaData
      description: Meta data for video files
      properties:
        duration:
          type: integer
          description: The length in seconds of the video file
          examples:
          - 32
        codec:
          type: string
          description: The [video codec](https://www.iana.org/assignments/media-types/media-types.xhtml#video) used
        resolution:
          type: string
          enum:
          - 480p
          - 576p
          - 720p
          - 1080p
          - 1440p
          - 4K
          - 8K
          description: The video resolution
        bitrate:
          type: integer
          description: The video bitrate in kbps
          format: int32
          examples:
          - 8000
        frame_rate:
          type: integer
          description: The frame rate in frames per second (fps)
          format: int32
          examples:
          - 60
        audio_codec:
          type: string
          description: The [audio code](https://www.iana.org/assignments/media-types/media-types.xhtml#audio) used
          examples:
          - pcma
        audio_channels:
          type: integer
          description: The number of audio channels in the video
          format: int32
        language:
          type: string
          description: The language of the audio. [2 char ISO](https://en.wikipedia.org/wiki/ISO_639-1) or [IETF language tags](https://en.wikipedia.org/wiki/IETF_language_tag)
          examples:
          - en
    ImageMetaData:
      type: object
      title: ImageMetaData
      description: Meta data for image files
      properties:
        resolution:
          type: string
          description: The image resolution
          format: regex
          pattern: ^\d{3,4}x\d{3,4}$
          examples:
          - 1920x1080
        color_space:
          type: string
          description: The color space of the image such as `RGB` or `CMYK`
          examples:
          - RGB
        image_format:
          type: string
          enum:
          - jpg
          - png
          - gif
          - bmp
          - tiff
          - svg
          description: The image format such as `jpg`, `png`
          examples:
          - jpg
        bit_depth:
          type: integer
          description: The bit depth of the image
          format: int32
          examples:
          - 32
    InUseWith:
      type: array
      title: InUseWith
      description: Information about services file is in use with
      items:
        type: object
        properties:
          service:
            type: string
            enum:
            - ai-meeting-minutes
            - ai-call-summary
            - ai-vmail-summary
            description: The service the file is in use with
            examples:
            - ai-meeting-minutes
          auto_expire:
            type: string
            description: 'Automatic expiry timestamp when the file is no longer required by the service

              An empty value implies that the file is never automatically deleted'
            format: date-time
  responses:
    FileWithId:
      description: File meta data
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FileWithID'
    post-upload-url-rsp:
      description: List of file Ids and upload URLs
      content:
        application/json:
          schema:
            type: array
            items:
              type: object
              properties:
                file_id:
                  type: string
                  description: The file Id of the file to be uploaded
                upload_url:
                  type: string
                  description: The upload URL where the file should be uploaded. The URL is valid for 90 secs
                  format: uri-reference
                name:
                  type: string
                  description: The file name
                upload_id:
                  type: string
                  description: 'Unique upload Id used in the case of multi-part uploads.

                    For single file uploads, this field is not sent'
                  examples:
                  - thy3tyi
                upload_urls:
                  type: array
                  description: 'A list of upload URLs where the file should be uploaded.

                    Each URL is valid for 10 mins

                    A single URL is returned for a single part '
                  items:
                    type: string
                    format: uri
  securitySchemes:
    Sonetel:
      type: oauth2
      flows:
        password:
          refreshUrl: https://api.sonetel.com/SonetelAuth/beta
          tokenUrl: https://api.sonetel.com/SonetelAuth/beta
          scopes: {}
x-refined-from:
- 15_ai_filemanager.yaml
- sonetel-ai-file-manager-openapi.yml