> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ugatext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Upload and Attach Regulatory Verification Document (PDF/PNG/JPG max 5MB)



## OpenAPI

````yaml https://ugatext.com/api/v1/openapi.json post /sender-ids/requests/{id}/documents
openapi: 3.0.3
info:
  title: UgaText Developer Communications API
  version: 1.0.0
  description: >-
    Official REST API for UgaText (https://ugatext.com/api/v1). Supports single
    and bulk SMS dispatch across Uganda (+256 via Pandora), Kenya (+254 via Ping
    Africa), and DR Congo (+243 via Coussema SMS Gateway), real-time queued →
    sent → delivered status polling, wallet balance queries, UCC 21-rule
    compliance inspection, and OTP verification. Rate limit: 600 requests/minute
    (10 req/sec). Free sandbox numbers: +256700000000, +254700000000, or
    +243810000000.
  contact:
    name: UgaText Developer Support
    url: https://ugatext.com/api-docs
    email: support@ugatext.com
servers:
  - url: https://ugatext.com/api/v1
    description: UgaText Production API Gateway
security:
  - ClientIdHeader: []
    ClientSecretHeader: []
paths:
  /sender-ids/requests/{id}/documents:
    post:
      summary: Upload and Attach Regulatory Verification Document (PDF/PNG/JPG max 5MB)
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - kind
                - file_base64
              properties:
                kind:
                  type: string
                  enum:
                    - mtn_letter
                    - airtel_letter
                    - certificate_of_incorporation
                    - tin_certificate
                    - other
                filename:
                  type: string
                  example: authorization_letter.pdf
                file_base64:
                  type: string
                  description: Base64 encoded file content
                mime_type:
                  type: string
                  example: application/pdf
      responses:
        '201':
          description: Document uploaded and attached securely
        '400':
          description: Invalid file format or exceeds 5MB limit
components:
  securitySchemes:
    ClientIdHeader:
      type: apiKey
      in: header
      name: Client-ID
      description: >-
        Your UgaText Client-ID (e.g. uga_...). Accepted header aliases:
        X-Client-ID, or combined in Authorization: Bearer
        <Client-ID>:<Client-Secret> / X-API-Key: <Client-ID>:<Client-Secret>.
    ClientSecretHeader:
      type: apiKey
      in: header
      name: Client-Secret
      description: >-
        Your UgaText Client-Secret (e.g. sk_live_...). Accepted header alias:
        X-Client-Secret.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.