openapi: 3.0.1 info: title: Textmagic REST Bulk Sender IDs API description: The Textmagic REST API (v2) provides programmatic access to the Textmagic business text-messaging platform. Send and receive SMS, manage contacts and lists, schedule and template messages, run two-way chats, and administer sender IDs and dedicated numbers. All requests are authenticated with the X-TM-Username and X-TM-Key headers. termsOfService: https://www.textmagic.com/terms-of-service/ contact: name: Textmagic Support email: support@textmagic.com url: https://docs.textmagic.com/ version: '2.0' servers: - url: https://rest.textmagic.com/api/v2 security: - TmUsername: [] TmKey: [] tags: - name: Sender IDs description: Apply for and manage alphanumeric sender IDs. paths: /senderids: get: operationId: getSenderIds tags: - Sender IDs summary: Get all your approved Sender IDs parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/Limit' responses: '200': description: A paginated list of sender IDs. content: application/json: schema: $ref: '#/components/schemas/SenderIdList' post: operationId: createSenderId tags: - Sender IDs summary: Apply for a new Sender ID requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SenderIdRequest' responses: '201': description: The sender ID application was submitted. content: application/json: schema: $ref: '#/components/schemas/ResourceLink' /senderids/{id}: get: operationId: getSenderId tags: - Sender IDs summary: Get the details of a specific Sender ID parameters: - $ref: '#/components/parameters/IdPath' responses: '200': description: A single sender ID. content: application/json: schema: $ref: '#/components/schemas/SenderId' '404': $ref: '#/components/responses/NotFound' delete: operationId: deleteSenderId tags: - Sender IDs summary: Delete a Sender ID parameters: - $ref: '#/components/parameters/IdPath' responses: '204': description: The sender ID was deleted. components: parameters: Limit: name: limit in: query schema: type: integer default: 10 description: Number of items per page. Page: name: page in: query schema: type: integer default: 1 description: Page number for pagination. IdPath: name: id in: path required: true schema: type: integer description: The resource identifier. schemas: SenderIdList: type: object properties: page: type: integer limit: type: integer pageCount: type: integer resources: type: array items: $ref: '#/components/schemas/SenderId' SenderIdRequest: type: object properties: senderId: type: string explanation: type: string required: - senderId - explanation ResourceLink: type: object properties: id: type: integer href: type: string SenderId: type: object properties: id: type: integer senderId: type: string user: type: integer status: type: string Error: type: object properties: message: type: string code: type: integer errors: type: object responses: NotFound: description: The requested resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: TmUsername: type: apiKey in: header name: X-TM-Username description: Your Textmagic account username. TmKey: type: apiKey in: header name: X-TM-Key description: Your Textmagic API key, generated in the account settings.