Telnyx Data Migration API
Migrate data from an external provider into Telnyx Cloud Storage
Migrate data from an external provider into Telnyx Cloud Storage
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/telnyx-data-migration-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
contact:
email: support@telnyx.com
description: Telnyx provides global communications and connectivity APIs for developers — including SIP trunking, programmable voice, SMS, MMS, WhatsApp Business Messaging, Call Control, Fax, Wireless (IoT & eSIM), Phone Numbers (DID provisioning & porting), Emergency Services, and Network APIs for private interconnects and edge connectivity. Build, scale, and manage voice, messaging, and data networks with Telnyx's carrier-grade global infrastructure and API-first platform.
title: Telnyx Data Migration API
version: 2.0.0
x-endpoint-cost: light
servers:
- description: Version 2.0.0 of the Telnyx API
url: https://api.telnyx.com/v2
security:
- bearerAuth: []
tags:
- description: Migrate data from an external provider into Telnyx Cloud Storage
name: Data Migration
paths:
/storage/migration_source_coverage:
get:
deprecated: false
description: ''
operationId: ListMigrationSourceCoverage
parameters: []
responses:
'200':
content:
application/json:
schema:
properties:
data:
items:
$ref: '#/components/schemas/MigrationSourceCoverageParams'
type: array
meta:
$ref: '#/components/schemas/PaginationMetaSimple'
type: object
description: List Migrations Source Coverage Response
headers: {}
'401':
description: Unauthorized
'422':
description: Unprocessable Entity
summary: List Migration Source coverage
tags:
- Data Migration
x-latency-category: responsive
/storage/migration_sources:
get:
deprecated: false
description: ''
operationId: ListMigrationSources
parameters: []
responses:
'200':
content:
application/json:
schema:
properties:
data:
items:
$ref: '#/components/schemas/MigrationSourceParams'
type: array
meta:
$ref: '#/components/schemas/PaginationMetaSimple'
type: object
description: List Migration Sources Response
headers: {}
'401':
description: Unauthorized
'422':
description: Unprocessable Entity
summary: List all Migration Sources
tags:
- Data Migration
x-latency-category: responsive
post:
deprecated: false
description: Create a source from which data can be migrated from.
operationId: CreateMigrationSource
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MigrationSourceParams'
responses:
'200':
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/MigrationSourceParams'
type: object
description: Create Migration Source Response
headers: {}
'401':
description: Unauthorized
'422':
description: Unprocessable Entity
summary: Create a Migration Source
tags:
- Data Migration
x-latency-category: responsive
/storage/migration_sources/{id}:
delete:
deprecated: false
description: ''
operationId: DeleteMigrationSource
parameters:
- description: Unique identifier for the data migration source.
example: ''
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/MigrationSourceParams'
type: object
description: Create Migration Source Response
headers: {}
'401':
description: Unauthorized
'404':
description: Migration source not found
'422':
description: Unprocessable Entity
summary: Delete a Migration Source
tags:
- Data Migration
x-latency-category: responsive
get:
deprecated: false
description: ''
operationId: GetMigrationSource
parameters:
- description: Unique identifier for the data migration source.
example: ''
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/MigrationSourceParams'
type: object
description: Create Migration Source Response
headers: {}
'401':
description: Unauthorized
'404':
description: Migration source not found
'422':
description: Unprocessable Entity
summary: Get a Migration Source
tags:
- Data Migration
x-latency-category: responsive
/storage/migrations:
get:
deprecated: false
description: ''
operationId: ListMigrations
parameters: []
responses:
'200':
content:
application/json:
schema:
properties:
data:
items:
$ref: '#/components/schemas/MigrationParams'
type: array
meta:
$ref: '#/components/schemas/PaginationMetaSimple'
type: object
description: List Migrations Response
headers: {}
'401':
description: Unauthorized
'422':
description: Unprocessable Entity
summary: List all Migrations
tags:
- Data Migration
x-latency-category: responsive
post:
deprecated: false
description: Initiate a migration of data from an external provider into Telnyx Cloud Storage. Currently, only S3 is supported.
operationId: CreateMigration
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MigrationParams'
responses:
'200':
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/MigrationParams'
type: object
description: Create Migration Response
headers: {}
'401':
description: Unauthorized
'422':
description: Unprocessable Entity
summary: Create a Migration
tags:
- Data Migration
x-latency-category: responsive
/storage/migrations/{id}:
get:
deprecated: false
description: ''
operationId: GetMigration
parameters:
- description: Unique identifier for the data migration.
example: ''
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/MigrationParams'
type: object
description: Create Migration Response
headers: {}
'401':
description: Unauthorized
'404':
description: Migration not found
'422':
description: Unprocessable Entity
summary: Get a Migration
tags:
- Data Migration
x-latency-category: responsive
/storage/migrations/{id}/actions/stop:
post:
deprecated: false
description: ''
operationId: StopMigration
parameters:
- description: Unique identifier for the data migration.
example: ''
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/MigrationParams'
type: object
description: Create Migration Response
headers: {}
'401':
description: Unauthorized
'404':
description: Migration not found
'422':
description: Unprocessable Entity
summary: Stop a Migration
tags:
- Data Migration
x-latency-category: responsive
components:
schemas:
MigrationSourceCoverageParams:
properties:
provider:
description: Cloud provider from which to migrate data.
enum:
- aws
type: string
source_region:
description: Provider region from which to migrate data.
type: string
type: object
MigrationParams:
properties:
bytes_migrated:
description: Total amount of data that has been succesfully migrated.
readOnly: true
type: integer
bytes_to_migrate:
description: Total amount of data found in source bucket to migrate.
readOnly: true
type: integer
created_at:
description: Time when data migration was created
example: '2020-01-01T00:00:00Z'
format: date-time
readOnly: true
type: string
eta:
description: Estimated time the migration will complete.
example: '2020-01-01T00:00:00Z'
format: date-time
readOnly: true
type: string
id:
description: Unique identifier for the data migration.
readOnly: true
type: string
last_copy:
description: Time when data migration was last copied from the source.
example: '2020-01-01T00:00:00Z'
format: date-time
readOnly: true
type: string
refresh:
description: If true, will continue to poll the source bucket to ensure new data is continually migrated over.
type: boolean
source_id:
description: ID of the Migration Source from which to migrate data.
type: string
speed:
description: Current speed of the migration.
readOnly: true
type: integer
status:
description: Status of the migration.
enum:
- pending
- checking
- migrating
- complete
- error
- stopped
readOnly: true
type: string
target_bucket_name:
description: Bucket name to migrate the data into. Will default to the same name as the `source_bucket_name`.
type: string
target_region:
description: Telnyx Cloud Storage region to migrate the data to.
type: string
required:
- source_id
- target_bucket_name
- target_region
type: object
PaginationMetaSimple:
properties:
page_number:
example: 2
type: integer
page_size:
example: 25
type: integer
total_pages:
example: 3
type: integer
total_results:
example: 55
type: integer
type: object
MigrationSourceParams:
properties:
bucket_name:
description: Bucket name to migrate the data from.
type: string
id:
description: Unique identifier for the data migration source.
readOnly: true
type: string
provider:
description: Cloud provider from which to migrate data. Use 'telnyx' if you want to migrate data from one Telnyx bucket to another.
enum:
- aws
- telnyx
type: string
provider_auth:
properties:
access_key:
description: AWS Access Key. For Telnyx-to-Telnyx migrations, use your Telnyx API key here.
type: string
secret_access_key:
description: AWS Secret Access Key. For Telnyx-to-Telnyx migrations, use your Telnyx API key here as well.
type: string
type: object
source_region:
description: For intra-Telnyx buckets migration, specify the source bucket region in this field.
type: string
required:
- provider
- provider_auth
- bucket_name
type: object
securitySchemes:
bearerAuth:
scheme: bearer
type: http
branded-calling_bearerAuth:
description: API key passed as a Bearer token in the Authorization header
scheme: bearer
type: http
oauthClientAuth:
description: OAuth 2.0 authentication for Telnyx API and MCP integrations
flows:
authorizationCode:
authorizationUrl: https://api.telnyx.com/v2/oauth/authorize
refreshUrl: https://api.telnyx.com/v2/oauth/token
scopes:
admin: Administrative access to Telnyx resources
tokenUrl: https://api.telnyx.com/v2/oauth/token
clientCredentials:
scopes:
admin: Administrative access to Telnyx resources
tokenUrl: https://api.telnyx.com/v2/oauth/token
type: oauth2
outbound-voice-profiles_bearerAuth:
bearerFormat: JWT
scheme: bearer
type: http
pronunciation-dicts_bearerAuth:
description: Telnyx API v2 key. Obtain from https://portal.telnyx.com
scheme: bearer
type: http
stored-payment-transactions_bearerAuth:
bearerFormat: JWT
scheme: bearer
type: http