# Twilio - Iam API

> Twilio - Iam API on Apizie: 10 endpoints (Retrieve a list of all Keys for a account., Create a new Signing Key for the account making the request., Fetch a specific Key., Update a specific Key., …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://zieapi.vercel.app/v1/communication:twilio-iam-v1/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `communication:twilio-iam-v1`
- Category: Communication
- Status: byok
- Source: https://support.twilio.com
- Page: https://zieapi.vercel.app/api/communication/twilio-iam-v1
- OpenAPI: https://zieapi.vercel.app/api/communication/twilio-iam-v1/openapi.json

This is the public Twilio REST API.

## Endpoints

### Retrieve a list of all Keys for a account.
`GET https://zieapi.vercel.app/v1/communication:twilio-iam-v1/list-get-keys` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| AccountSid | string | yes | The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Payments resource. |
| PageSize | integer | no | How many resources to return in each list page. The default is 50, and the maximum is 1000. |
| Page | integer | no | The page index. This value is simply for client state. |
| PageToken | string | no | The page token. This is provided by the API. |

### Create a new Signing Key for the account making the request.
`POST https://zieapi.vercel.app/v1/communication:twilio-iam-v1/create-new-key` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | Form fields as a JSON object |

### Fetch a specific Key.
`GET https://zieapi.vercel.app/v1/communication:twilio-iam-v1/fetch-key` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Sid | string | yes | The Twilio-provided string that uniquely identifies the Key resource to fetch. |

### Update a specific Key.
`POST https://zieapi.vercel.app/v1/communication:twilio-iam-v1/update-key` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Sid | string | yes | The Twilio-provided string that uniquely identifies the Key resource to update. |
| body | object | no | Form fields as a JSON object |

### Delete a specific Key.
`POST https://zieapi.vercel.app/v1/communication:twilio-iam-v1/delete-key` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Sid | string | yes | The Twilio-provided string that uniquely identifies the Key resource to delete. |

### List resolved permissions for a role
`GET https://zieapi.vercel.app/v1/communication:twilio-iam-v1/list-role-permission` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| RoleSid | string | yes | The SID of the Role for which Permissions will be fetched. |
| PageSize | integer | no | How many resources to return in each list page. The default is 50, and the maximum is 100. |
| Page | integer | no | The page index. This value is simply for client state. |
| PageToken | string | no | The page token. This is provided by the API. |

### Issues a new Access token (optionally identity_token & refresh_token) in exchange of Oauth grant
`POST https://zieapi.vercel.app/v1/communication:twilio-iam-v1/create-token` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | Form fields as a JSON object |

### Updates an existing OAuth app for the given OauthAppSid
`POST https://zieapi.vercel.app/v1/communication:twilio-iam-v1/update-oauth-app-account` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| sid | string | yes | Unique ID (sid) of the OAuth app |
| body | object | yes | JSON request body |

### Deletes an oauth app for the given AccountSid
`POST https://zieapi.vercel.app/v1/communication:twilio-iam-v1/delete-oauth-app-account` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| sid | string | yes | Unique ID (sid) of the OAuth app |

### Creates an oauth app for the given AccountSid
`POST https://zieapi.vercel.app/v1/communication:twilio-iam-v1/create-oauth-app-account` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

## Example
```
curl "https://zieapi.vercel.app/v1/communication:twilio-iam-v1/list-get-keys" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Twilio - Iam API?
Create a free Apizie key, then send GET https://zieapi.vercel.app/v1/communication:twilio-iam-v1/list-get-keys with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Twilio - Iam API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Twilio - Iam itself also needs your own key from twilio.

### Can AI agents use the Twilio - Iam API?
Yes. Add the Apizie MCP server (https://zieapi.vercel.app/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key communication:twilio-iam-v1.

### What is the status of the Twilio - Iam API?
Needs your own provider key (bring your own key)
