{"id":"c1b90f5d-15c2-4e62-8fa7-857c5d5473e3","shortId":"wURGZA","kind":"skill","title":"telnyx-video-go","tagline":">-","description":"<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->\n\n# Telnyx Video - Go\n\n## Installation\n\n```bash\ngo get github.com/team-telnyx/telnyx-go\n```\n\n## Setup\n\n```go\nimport (\n  \"context\"\n  \"fmt\"\n  \"os\"\n\n  \"github.com/team-telnyx/telnyx-go\"\n  \"github.com/team-telnyx/telnyx-go/option\"\n)\n\nclient := telnyx.NewClient(\n  option.WithAPIKey(os.Getenv(\"TELNYX_API_KEY\")),\n)\n```\n\nAll examples below assume `client` is already initialized as shown above.\n\n## Error Handling\n\nAll API calls can fail with network errors, rate limits (429), validation errors (422),\nor authentication errors (401). Always handle errors in production code:\n\n```go\nimport \"errors\"\n\nresult, err := client.Messages.Send(ctx, params)\nif err != nil {\n  var apiErr *telnyx.Error\n  if errors.As(err, &apiErr) {\n    switch apiErr.StatusCode {\n    case 422:\n      fmt.Println(\"Validation error — check required fields and formats\")\n    case 429:\n      // Rate limited — wait and retry with exponential backoff\n      fmt.Println(\"Rate limited, retrying...\")\n    default:\n      fmt.Printf(\"API error %d: %s\\n\", apiErr.StatusCode, apiErr.Error())\n    }\n  } else {\n    fmt.Println(\"Network error — check connectivity and retry\")\n  }\n}\n```\n\nCommon error codes: `401` invalid API key, `403` insufficient permissions,\n`404` resource not found, `422` validation error (check field formats),\n`429` rate limited (retry with exponential backoff).\n\n## View a list of room compositions.\n\n`GET /room_compositions`\n\n```go\n\tpage, err := client.RoomCompositions.List(context.Background(), telnyx.RoomCompositionListParams{})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", page)\n```\n\nReturns: `completed_at` (date-time), `created_at` (date-time), `download_url` (string), `duration_secs` (integer), `ended_at` (date-time), `format` (enum: mp4), `id` (uuid), `record_type` (string), `resolution` (string), `room_id` (uuid), `session_id` (uuid), `size_mb` (float), `started_at` (date-time), `status` (enum: completed, enqueued, processing), `updated_at` (date-time), `user_id` (uuid), `video_layout` (object), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n## Create a room composition.\n\nAsynchronously create a room composition.\n\n`POST /room_compositions`\n\nOptional: `format` (string), `resolution` (string), `session_id` (uuid), `video_layout` (object), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n```go\n\troomComposition, err := client.RoomCompositions.New(context.Background(), telnyx.RoomCompositionNewParams{})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", roomComposition.Data)\n```\n\nReturns: `completed_at` (date-time), `created_at` (date-time), `download_url` (string), `duration_secs` (integer), `ended_at` (date-time), `format` (enum: mp4), `id` (uuid), `record_type` (string), `resolution` (string), `room_id` (uuid), `session_id` (uuid), `size_mb` (float), `started_at` (date-time), `status` (enum: completed, enqueued, processing), `updated_at` (date-time), `user_id` (uuid), `video_layout` (object), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n## View a room composition.\n\n`GET /room_compositions/{room_composition_id}`\n\n```go\n\troomComposition, err := client.RoomCompositions.Get(context.Background(), \"5219b3af-87c6-4c08-9b58-5a533d893e21\")\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", roomComposition.Data)\n```\n\nReturns: `completed_at` (date-time), `created_at` (date-time), `download_url` (string), `duration_secs` (integer), `ended_at` (date-time), `format` (enum: mp4), `id` (uuid), `record_type` (string), `resolution` (string), `room_id` (uuid), `session_id` (uuid), `size_mb` (float), `started_at` (date-time), `status` (enum: completed, enqueued, processing), `updated_at` (date-time), `user_id` (uuid), `video_layout` (object), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n## Delete a room composition.\n\nSynchronously delete a room composition.\n\n`DELETE /room_compositions/{room_composition_id}`\n\n```go\n\terr := client.RoomCompositions.Delete(context.Background(), \"5219b3af-87c6-4c08-9b58-5a533d893e21\")\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n```\n\n## View a list of room participants.\n\n`GET /room_participants`\n\n```go\n\tpage, err := client.RoomParticipants.List(context.Background(), telnyx.RoomParticipantListParams{})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", page)\n```\n\nReturns: `context` (string), `id` (uuid), `joined_at` (date-time), `left_at` (date-time), `record_type` (string), `session_id` (uuid), `updated_at` (date-time)\n\n## View a room participant.\n\n`GET /room_participants/{room_participant_id}`\n\n```go\n\troomParticipant, err := client.RoomParticipants.Get(context.Background(), \"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\")\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", roomParticipant.Data)\n```\n\nReturns: `context` (string), `id` (uuid), `joined_at` (date-time), `left_at` (date-time), `record_type` (string), `session_id` (uuid), `updated_at` (date-time)\n\n## View a list of room recordings.\n\n`GET /room_recordings`\n\n```go\n\tpage, err := client.RoomRecordings.List(context.Background(), telnyx.RoomRecordingListParams{})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", page)\n```\n\nReturns: `codec` (string), `completed_at` (date-time), `created_at` (date-time), `download_url` (string), `duration_secs` (integer), `ended_at` (date-time), `id` (uuid), `participant_id` (uuid), `record_type` (string), `room_id` (uuid), `session_id` (uuid), `size_mb` (float), `started_at` (date-time), `status` (enum: completed, processing), `type` (enum: audio, video), `updated_at` (date-time)\n\n## Delete several room recordings in a bulk.\n\n`DELETE /room_recordings`\n\n```go\n\tresponse, err := client.RoomRecordings.DeleteBulk(context.Background(), telnyx.RoomRecordingDeleteBulkParams{})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", response.Data)\n```\n\nReturns: `room_recordings` (integer)\n\n## View a room recording.\n\n`GET /room_recordings/{room_recording_id}`\n\n```go\n\troomRecording, err := client.RoomRecordings.Get(context.Background(), \"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\")\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", roomRecording.Data)\n```\n\nReturns: `codec` (string), `completed_at` (date-time), `created_at` (date-time), `download_url` (string), `duration_secs` (integer), `ended_at` (date-time), `id` (uuid), `participant_id` (uuid), `record_type` (string), `room_id` (uuid), `session_id` (uuid), `size_mb` (float), `started_at` (date-time), `status` (enum: completed, processing), `type` (enum: audio, video), `updated_at` (date-time)\n\n## Delete a room recording.\n\nSynchronously delete a Room Recording.\n\n`DELETE /room_recordings/{room_recording_id}`\n\n```go\n\terr := client.RoomRecordings.Delete(context.Background(), \"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\")\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n```\n\n## View a list of room sessions.\n\n`GET /room_sessions`\n\n```go\n\tpage, err := client.Rooms.Sessions.List0(context.Background(), telnyx.RoomSessionList0Params{})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", page)\n```\n\nReturns: `active` (boolean), `created_at` (date-time), `ended_at` (date-time), `id` (uuid), `participants` (array[object]), `record_type` (string), `room_id` (uuid), `updated_at` (date-time)\n\n## View a room session.\n\n`GET /room_sessions/{room_session_id}`\n\n```go\n\tsession, err := client.Rooms.Sessions.Get(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomSessionGetParams{},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", session.Data)\n```\n\nReturns: `active` (boolean), `created_at` (date-time), `ended_at` (date-time), `id` (uuid), `participants` (array[object]), `record_type` (string), `room_id` (uuid), `updated_at` (date-time)\n\n## End a room session.\n\nNote: this will also kick all participants currently present in the room\n\n`POST /room_sessions/{room_session_id}/actions/end`\n\n```go\n\tresponse, err := client.Rooms.Sessions.Actions.End(context.Background(), \"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\")\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", response.Data)\n```\n\nReturns: `result` (string)\n\n## Kick participants from a room session.\n\n`POST /room_sessions/{room_session_id}/actions/kick`\n\nOptional: `exclude` (array[string]), `participants` (object)\n\n```go\n\tresponse, err := client.Rooms.Sessions.Actions.Kick(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomSessionActionKickParams{\n\t\t\tActionsParticipantsRequest: telnyx.ActionsParticipantsRequestParam{},\n\t\t},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", response.Data)\n```\n\nReturns: `result` (string)\n\n## Mute participants in room session.\n\n`POST /room_sessions/{room_session_id}/actions/mute`\n\nOptional: `exclude` (array[string]), `participants` (object)\n\n```go\n\tresponse, err := client.Rooms.Sessions.Actions.Mute(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomSessionActionMuteParams{\n\t\t\tActionsParticipantsRequest: telnyx.ActionsParticipantsRequestParam{},\n\t\t},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", response.Data)\n```\n\nReturns: `result` (string)\n\n## Unmute participants in room session.\n\n`POST /room_sessions/{room_session_id}/actions/unmute`\n\nOptional: `exclude` (array[string]), `participants` (object)\n\n```go\n\tresponse, err := client.Rooms.Sessions.Actions.Unmute(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomSessionActionUnmuteParams{\n\t\t\tActionsParticipantsRequest: telnyx.ActionsParticipantsRequestParam{},\n\t\t},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", response.Data)\n```\n\nReturns: `result` (string)\n\n## View a list of room participants.\n\n`GET /room_sessions/{room_session_id}/participants`\n\n```go\n\tpage, err := client.Rooms.Sessions.GetParticipants(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomSessionGetParticipantsParams{},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", page)\n```\n\nReturns: `context` (string), `id` (uuid), `joined_at` (date-time), `left_at` (date-time), `record_type` (string), `session_id` (uuid), `updated_at` (date-time)\n\n## View a list of rooms.\n\n`GET /rooms`\n\n```go\n\tpage, err := client.Rooms.List(context.Background(), telnyx.RoomListParams{})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", page)\n```\n\nReturns: `active_session_id` (uuid), `created_at` (date-time), `enable_recording` (boolean), `id` (uuid), `max_participants` (integer), `record_type` (string), `sessions` (array[object]), `unique_name` (string), `updated_at` (date-time), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n## Create a room.\n\nSynchronously create a Room.\n\n`POST /rooms`\n\nOptional: `enable_recording` (boolean), `max_participants` (integer), `unique_name` (string), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n```go\n\troom, err := client.Rooms.New(context.Background(), telnyx.RoomNewParams{\n\t\tUniqueName: \"my-meeting-room\",\n\t\tMaxParticipants: 10,\n\t})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", room.Data)\n```\n\nReturns: `active_session_id` (uuid), `created_at` (date-time), `enable_recording` (boolean), `id` (uuid), `max_participants` (integer), `record_type` (string), `sessions` (array[object]), `unique_name` (string), `updated_at` (date-time), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n## View a room.\n\n`GET /rooms/{room_id}`\n\n```go\n\troom, err := client.Rooms.Get(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomGetParams{},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", room.Data)\n```\n\nReturns: `active_session_id` (uuid), `created_at` (date-time), `enable_recording` (boolean), `id` (uuid), `max_participants` (integer), `record_type` (string), `sessions` (array[object]), `unique_name` (string), `updated_at` (date-time), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n## Update a room.\n\nSynchronously update a Room.\n\n`PATCH /rooms/{room_id}`\n\nOptional: `enable_recording` (boolean), `max_participants` (integer), `unique_name` (string), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n```go\n\troom, err := client.Rooms.Update(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomUpdateParams{},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", room.Data)\n```\n\nReturns: `active_session_id` (uuid), `created_at` (date-time), `enable_recording` (boolean), `id` (uuid), `max_participants` (integer), `record_type` (string), `sessions` (array[object]), `unique_name` (string), `updated_at` (date-time), `webhook_event_failover_url` (uri), `webhook_event_url` (uri), `webhook_timeout_secs` (integer)\n\n## Delete a room.\n\nSynchronously delete a Room. Participants from that room will be kicked out, they won't be able to join that room anymore, and you won't be charged anymore for that room.\n\n`DELETE /rooms/{room_id}`\n\n```go\n\terr := client.Rooms.Delete(context.Background(), \"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\")\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n```\n\n## Create Client Token to join a room.\n\nSynchronously create an Client Token to join a Room. Client Token is necessary to join a Telnyx Room. Client Token will expire after `token_ttl_secs`, a Refresh Token is also provided to refresh a Client Token, the Refresh Token expires after `refresh_token_ttl_secs`.\n\n`POST /rooms/{room_id}/actions/generate_join_client_token`\n\nOptional: `refresh_token_ttl_secs` (integer), `token_ttl_secs` (integer)\n\n```go\n\tresponse, err := client.Rooms.Actions.GenerateJoinClientToken(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomActionGenerateJoinClientTokenParams{},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", response.Data)\n```\n\nReturns: `refresh_token` (string), `refresh_token_expires_at` (date-time), `token` (string), `token_expires_at` (date-time)\n\n## Refresh Client Token to join a room.\n\nSynchronously refresh an Client Token to join a Room. Client Token is necessary to join a Telnyx Room. Client Token will expire after `token_ttl_secs`.\n\n`POST /rooms/{room_id}/actions/refresh_client_token` — Required: `refresh_token`\n\nOptional: `token_ttl_secs` (integer)\n\n```go\n\tresponse, err := client.Rooms.Actions.RefreshClientToken(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomActionRefreshClientTokenParams{\n\t\t\tRefreshToken: \"eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJ0ZWxueXhfdGVsZXBob255IiwiZXhwIjoxNTkwMDEwMTQzLCJpYXQiOjE1ODc1OTA5NDMsImlzcyI6InRlbG55eF90ZWxlcGhvbnkiLCJqdGkiOiJiOGM3NDgzNy1kODllLTRhNjUtOWNmMi0zNGM3YTZmYTYwYzgiLCJuYmYiOjE1ODc1OTA5NDIsInN1YiI6IjVjN2FjN2QwLWRiNjUtNGYxMS05OGUxLWVlYzBkMWQ1YzZhZSIsInRlbF90b2tlbiI6InJqX1pra1pVT1pNeFpPZk9tTHBFVUIzc2lVN3U2UmpaRmVNOXMtZ2JfeENSNTZXRktGQUppTXlGMlQ2Q0JSbWxoX1N5MGlfbGZ5VDlBSThzRWlmOE1USUlzenl6U2xfYURuRzQ4YU81MHlhSEd1UlNZYlViU1ltOVdJaVEwZz09IiwidHlwIjoiYWNjZXNzIn0.gNEwzTow5MLLPLQENytca7pUN79PmPj6FyqZWW06ZeEmesxYpwKh0xRtA0TzLh6CDYIRHrI8seofOO0YFGDhpQ\",\n\t\t},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", response.Data)\n```\n\nReturns: `token` (string), `token_expires_at` (date-time)\n\n## View a list of room sessions.\n\n`GET /rooms/{room_id}/sessions`\n\n```go\n\tpage, err := client.Rooms.Sessions.List1(\n\t\tcontext.Background(),\n\t\t\"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0\",\n\t\ttelnyx.RoomSessionList1Params{},\n\t)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", page)\n```\n\nReturns: `active` (boolean), `created_at` (date-time), `ended_at` (date-time), `id` (uuid), `participants` (array[object]), `record_type` (string), `room_id` (uuid), `updated_at` (date-time)","tags":["telnyx","video","team-telnyx","agent-skills","ai-coding-agent","claude-code","cpaas","cursor","iot","llm","sdk","sip"],"capabilities":["skill","source-team-telnyx","skill-telnyx-video-go","topic-agent-skills","topic-ai-coding-agent","topic-claude-code","topic-cpaas","topic-cursor","topic-iot","topic-llm","topic-sdk","topic-sip","topic-sms","topic-speech-to-text","topic-telephony"],"categories":["ai"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/team-telnyx/ai/telnyx-video-go","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add team-telnyx/ai","source_repo":"https://github.com/team-telnyx/ai","install_from":"skills.sh"}},"qualityScore":"0.533","qualityRationale":"deterministic score 0.53 from registry signals: · indexed on github topic:agent-skills · 167 github stars · SKILL.md body (15,933 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T00:54:50.181Z","embedding":null,"createdAt":"2026-04-18T22:08:08.852Z","updatedAt":"2026-04-22T00:54:50.181Z","lastSeenAt":"2026-04-22T00:54:50.181Z","tsv":"'/actions/end':979 '/actions/generate_join_client_token':1642 '/actions/kick':1014 '/actions/mute':1057 '/actions/refresh_client_token':1730 '/actions/unmute':1100 '/participants':1144 '/room_compositions':166,267,387,496 '/room_participants':522,569 '/room_recordings':626,709,734,827 '/room_sessions':853,904,975,1010,1053,1096,1140 '/rooms':1198,1267,1362,1439,1567,1639,1727,1778 '/sessions':1781 '/team-telnyx/telnyx-go':14,23 '/team-telnyx/telnyx-go/option':26 '0ccc7b54':579,744,836,914,986,1027,1070,1113,1151,1371,1471,1575,1659,1745,1789 '0ccc7b54-4df3-4bca-a65a-3da1ecc777f0':578,743,835,913,985,1026,1069,1112,1150,1370,1470,1574,1658,1744,1788 '10':1303 '3da1ecc777f0':583,748,840,918,990,1031,1074,1117,1155,1375,1475,1579,1663,1749,1793 '401':64,135 '403':139 '404':142 '422':60,92,146 '429':57,102,152 '4bca':581,746,838,916,988,1029,1072,1115,1153,1373,1473,1577,1661,1747,1791 '4c08':399,507 '4df3':580,745,837,915,987,1028,1071,1114,1152,1372,1472,1576,1660,1746,1790 '5219b3af':397,505 '5219b3af-87c6-4c08-9b58-5a533d893e21':396,504 '5a533d893e21':401,509 '87c6':398,506 '9b58':400,508 'a65a':582,747,839,917,989,1030,1073,1116,1154,1374,1474,1578,1662,1748,1792 'abl':1550 'actionsparticipantsrequest':1033,1076,1119 'activ':871,930,1215,1314,1387,1487,1805 'alreadi':40 'also':965,1622 'alway':65 'anymor':1555,1562 'api':32,48,117,137 'apierr':83,88 'apierr.error':123 'apierr.statuscode':90,122 'array':886,945,1017,1060,1103,1236,1335,1408,1508,1820 'assum':37 'asynchron':261 'audio':694,810 'authent':62 'backoff':110,158 'bash':9 'boolean':872,931,1226,1271,1325,1398,1445,1498,1806 'bulk':707 'call':49 'case':91,101 'charg':1561 'check':96,128,149 'client':27,38,1586,1595,1601,1610,1627,1694,1703,1709,1718 'client.messages.send':76 'client.roomcompositions.delete':502 'client.roomcompositions.get':394 'client.roomcompositions.list':170 'client.roomcompositions.new':295 'client.roomparticipants.get':576 'client.roomparticipants.list':526 'client.roomrecordings.delete':833 'client.roomrecordings.deletebulk':713 'client.roomrecordings.get':741 'client.roomrecordings.list':630 'client.rooms.actions.generatejoinclienttoken':1656 'client.rooms.actions.refreshclienttoken':1742 'client.rooms.delete':1572 'client.rooms.get':1368 'client.rooms.list':1202 'client.rooms.new':1294 'client.rooms.sessions':857,1785 'client.rooms.sessions.actions.end':983 'client.rooms.sessions.actions.kick':1024 'client.rooms.sessions.actions.mute':1067 'client.rooms.sessions.actions.unmute':1110 'client.rooms.sessions.get':911 'client.rooms.sessions.getparticipants':1148 'client.rooms.update':1468 'code':70,134 'codec':643,759 'common':132 'complet':183,230,308,355,412,459,645,690,761,806 'composit':164,260,265,385,389,489,494,498 'connect':129 'context':18,539,594,1167 'context.background':171,296,395,503,527,577,631,714,742,834,859,912,984,1025,1068,1111,1149,1203,1295,1369,1469,1573,1657,1743,1787 'creat':188,257,262,313,417,650,766,873,932,1219,1259,1263,1318,1391,1491,1585,1593,1807 'ctx':77 'current':969 'd':119 'date':186,191,202,226,236,311,316,327,351,361,415,420,431,455,465,546,551,562,601,606,617,648,653,664,686,699,764,769,780,802,815,876,881,897,935,940,956,1174,1179,1190,1222,1244,1321,1343,1394,1416,1494,1516,1683,1691,1769,1810,1815,1831 'date-tim':185,190,201,225,235,310,315,326,350,360,414,419,430,454,464,545,550,561,600,605,616,647,652,663,685,698,763,768,779,801,814,875,880,896,934,939,955,1173,1178,1189,1221,1243,1320,1342,1393,1415,1493,1515,1682,1690,1768,1809,1814,1830 'default':115 'delet':486,491,495,701,708,817,822,826,1531,1535,1566 'download':193,318,422,655,771 'durat':196,321,425,658,774 'els':124 'enabl':1224,1269,1323,1396,1443,1496 'end':199,324,428,661,777,878,937,958,1812 'enqueu':231,356,460 'enum':205,229,330,354,434,458,689,693,805,809 'err':75,80,87,169,174,177,294,299,302,393,403,406,501,511,514,525,530,533,575,585,588,629,634,637,712,717,720,740,750,753,832,842,845,856,862,865,910,921,924,982,992,995,1023,1036,1039,1066,1079,1082,1109,1122,1125,1147,1158,1161,1201,1206,1209,1293,1305,1308,1367,1378,1381,1467,1478,1481,1571,1581,1584,1655,1666,1669,1741,1754,1757,1784,1796,1799 'error':45,54,59,63,67,73,95,118,127,133,148 'errors.as':86 'event':245,250,280,285,370,375,474,479,1247,1252,1279,1284,1346,1351,1419,1424,1453,1458,1519,1524 'exampl':35 'exclud':1016,1059,1102 'expir':1613,1632,1680,1688,1721,1766 'exponenti':109,157 'eyjhbgcioijiuzuxmiisinr5cci6ikpxvcj9.eyjhdwqioij0zwxuexhfdgvszxbob255iiwizxhwijoxntkwmdewmtqzlcjpyxqioje1odc1ota5ndmsimlzcyi6inrlbg55ef90zwxlcghvbnkilcjqdgkioijiogm3ndgzny1kodllltrhnjutownmmi0zngm3ytzmytywyzgilcjuymyioje1odc1ota5ndisinn1yii6ijvjn2fjn2qwlwrinjutngyxms05oguxlwvlyzbkmwq1yzzhzsisinrlbf90b2tlbii6injqx1pra1pvt1pnefppzk9tthbfvuizc2lvn3u2umparmvnoxmtz2jfeensntzxrktgqupptxlgmlq2q0jsbwxox1n5mglfbgz5vdlbsthzrwlmoe1usulzenl6u2xfyururzq4yu81mhlhsed1ulnzylviu1ltovdjavewzz09iiwidhlwijoiywnjzxnzin0.gnewztow5mllplqenytca7pun79pmpj6fyqzww06zeemesxypwkh0xrta0tzlh6cdyirhri8seofoo0yfgdhpq':1752 'fail':51 'failov':246,281,371,475,1248,1280,1347,1420,1454,1520 'field':98,150 'float':222,347,451,682,798 'fmt':19 'fmt.printf':116,178,303,407,534,589,638,721,754,866,925,996,1040,1083,1126,1162,1210,1309,1382,1482,1670,1758,1800 'fmt.println':93,111,125 'format':100,151,204,269,329,433 'found':145 'get':11,165,386,521,568,625,733,852,903,1139,1197,1361,1777 'github.com':13,22,25 'github.com/team-telnyx/telnyx-go':12,21 'github.com/team-telnyx/telnyx-go/option':24 'go':4,7,10,16,71,167,292,391,500,523,573,627,710,738,831,854,908,980,1021,1064,1107,1145,1199,1291,1365,1465,1570,1653,1739,1782 'handl':46,66 'id':207,215,218,239,274,332,340,343,364,390,436,444,447,468,499,541,557,572,596,612,666,669,675,678,737,782,785,791,794,830,883,892,907,942,951,978,1013,1056,1099,1143,1169,1185,1217,1227,1316,1326,1364,1389,1399,1441,1489,1499,1569,1641,1729,1780,1817,1826 'import':17,72 'initi':41 'instal':8 'insuffici':140 'integ':198,256,291,323,381,427,485,660,728,776,1231,1258,1274,1290,1330,1357,1403,1430,1448,1464,1503,1530,1648,1652,1738 'invalid':136 'join':543,598,1171,1552,1589,1598,1606,1697,1706,1714 'key':33,138 'kick':966,1003,1544 'layout':242,277,367,471 'left':548,603,1176 'limit':56,104,113,154 'list':161,517,621,848,1135,1194,1773 'list0':858 'list1':1786 'log.fatal':176,301,405,513,532,587,636,719,752,844,864,923,994,1038,1081,1124,1160,1208,1307,1380,1480,1583,1668,1756,1798 'max':1229,1272,1328,1401,1446,1501 'maxparticip':1302 'mb':221,346,450,681,797 'meet':1300 'mp4':206,331,435 'mute':1047 'my-meeting-room':1298 'n':121,180,305,409,536,591,640,723,756,868,927,998,1042,1085,1128,1164,1212,1311,1384,1484,1672,1760,1802 'name':1239,1276,1338,1411,1450,1511 'necessari':1604,1712 'network':53,126 'nil':81,175,300,404,512,531,586,635,718,751,843,863,922,993,1037,1080,1123,1159,1207,1306,1379,1479,1582,1667,1755,1797 'note':962 'object':243,278,368,472,887,946,1020,1063,1106,1237,1336,1409,1509,1821 'option':268,1015,1058,1101,1268,1442,1643,1734 'option.withapikey':29 'os':20 'os.getenv':30 'page':168,181,524,537,628,641,855,869,1146,1165,1200,1213,1783,1803 'param':78 'particip':520,567,571,668,784,885,944,968,1004,1019,1048,1062,1091,1105,1138,1230,1273,1329,1402,1447,1502,1538,1819 'patch':1438 'permiss':141 'post':266,974,1009,1052,1095,1266,1638,1726 'present':970 'process':232,357,461,691,807 'product':69 'provid':1623 'rate':55,103,112,153 'record':209,334,438,553,608,624,671,704,727,732,736,787,820,825,829,888,947,1181,1225,1232,1270,1324,1331,1397,1404,1444,1497,1504,1822 'refresh':1619,1625,1630,1634,1644,1675,1678,1693,1701,1732 'refreshtoken':1751 'requir':97,1731 'resolut':212,271,337,441 'resourc':143 'respons':711,981,1022,1065,1108,1654,1740 'response.data':724,999,1043,1086,1129,1673,1761 'result':74,1001,1045,1088,1131 'retri':107,114,131,155 'return':182,307,411,538,593,642,725,758,870,929,1000,1044,1087,1130,1166,1214,1313,1386,1486,1674,1762,1804 'room':163,214,259,264,339,384,388,443,488,493,497,519,566,570,623,674,703,726,731,735,790,819,824,828,850,891,901,905,950,960,973,976,1007,1011,1050,1054,1093,1097,1137,1141,1196,1261,1265,1292,1301,1360,1363,1366,1433,1437,1440,1466,1533,1537,1541,1554,1565,1568,1591,1600,1609,1640,1699,1708,1717,1728,1775,1779,1825 'room.data':1312,1385,1485 'roomcomposit':293,392 'roomcomposition.data':306,410 'roomparticip':574 'roomparticipant.data':592 'roomrecord':739 'roomrecording.data':757 'sec':197,255,290,322,380,426,484,659,775,1257,1289,1356,1429,1463,1529,1617,1637,1647,1651,1725,1737 'session':217,273,342,446,556,611,677,793,851,902,906,909,961,977,1008,1012,1051,1055,1094,1098,1142,1184,1216,1235,1315,1334,1388,1407,1488,1507,1776 'session.data':928 'setup':15 'sever':702 'shown':43 'size':220,345,449,680,796 'skill' 'skill-telnyx-video-go' 'source-team-telnyx' 'start':223,348,452,683,799 'status':228,353,457,688,804 'string':195,211,213,270,272,320,336,338,424,440,442,540,555,595,610,644,657,673,760,773,789,890,949,1002,1018,1046,1061,1089,1104,1132,1168,1183,1234,1240,1277,1333,1339,1406,1412,1451,1506,1512,1677,1686,1764,1824 'switch':89 'synchron':490,821,1262,1434,1534,1592,1700 'telnyx':2,5,31,1608,1716 'telnyx-video-go':1 'telnyx.actionsparticipantsrequestparam':1034,1077,1120 'telnyx.error':84 'telnyx.newclient':28 'telnyx.roomactiongeneratejoinclienttokenparams':1664 'telnyx.roomactionrefreshclienttokenparams':1750 'telnyx.roomcompositionlistparams':172 'telnyx.roomcompositionnewparams':297 'telnyx.roomgetparams':1376 'telnyx.roomlistparams':1204 'telnyx.roomnewparams':1296 'telnyx.roomparticipantlistparams':528 'telnyx.roomrecordingdeletebulkparams':715 'telnyx.roomrecordinglistparams':632 'telnyx.roomsessionactionkickparams':1032 'telnyx.roomsessionactionmuteparams':1075 'telnyx.roomsessionactionunmuteparams':1118 'telnyx.roomsessiongetparams':919 'telnyx.roomsessiongetparticipantsparams':1156 'telnyx.roomsessionlist0params':860 'telnyx.roomsessionlist1params':1794 'telnyx.roomupdateparams':1476 'time':187,192,203,227,237,312,317,328,352,362,416,421,432,456,466,547,552,563,602,607,618,649,654,665,687,700,765,770,781,803,816,877,882,898,936,941,957,1175,1180,1191,1223,1245,1322,1344,1395,1417,1495,1517,1684,1692,1770,1811,1816,1832 'timeout':254,289,379,483,1256,1288,1355,1428,1462,1528 'token':1587,1596,1602,1611,1615,1620,1628,1631,1635,1645,1649,1676,1679,1685,1687,1695,1704,1710,1719,1723,1733,1735,1763,1765 'topic-agent-skills' 'topic-ai-coding-agent' 'topic-claude-code' 'topic-cpaas' 'topic-cursor' 'topic-iot' 'topic-llm' 'topic-sdk' 'topic-sip' 'topic-sms' 'topic-speech-to-text' 'topic-telephony' 'ttl':1616,1636,1646,1650,1724,1736 'type':210,335,439,554,609,672,692,788,808,889,948,1182,1233,1332,1405,1505,1823 'uniqu':1238,1275,1337,1410,1449,1510 'uniquenam':1297 'unmut':1090 'updat':233,358,462,559,614,696,812,894,953,1187,1241,1340,1413,1431,1435,1513,1828 'uri':248,252,283,287,373,377,477,481,1250,1254,1282,1286,1349,1353,1422,1426,1456,1460,1522,1526 'url':194,247,251,282,286,319,372,376,423,476,480,656,772,1249,1253,1281,1285,1348,1352,1421,1425,1455,1459,1521,1525 'user':238,363,467 'uuid':208,216,219,240,275,333,341,344,365,437,445,448,469,542,558,597,613,667,670,676,679,783,786,792,795,884,893,943,952,1170,1186,1218,1228,1317,1327,1390,1400,1490,1500,1818,1827 'v':179,304,408,535,590,639,722,755,867,926,997,1041,1084,1127,1163,1211,1310,1383,1483,1671,1759,1801 'valid':58,94,147 'var':82 'video':3,6,241,276,366,470,695,811 'view':159,382,515,564,619,729,846,899,1133,1192,1358,1771 'wait':105 'webhook':244,249,253,279,284,288,369,374,378,473,478,482,1246,1251,1255,1278,1283,1287,1345,1350,1354,1418,1423,1427,1452,1457,1461,1518,1523,1527 'won':1547,1558","prices":[{"id":"15cc3365-3264-4f98-8368-50e77ccb526d","listingId":"c1b90f5d-15c2-4e62-8fa7-857c5d5473e3","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"team-telnyx","category":"ai","install_from":"skills.sh"},"createdAt":"2026-04-18T22:08:08.852Z"}],"sources":[{"listingId":"c1b90f5d-15c2-4e62-8fa7-857c5d5473e3","source":"github","sourceId":"team-telnyx/ai/telnyx-video-go","sourceUrl":"https://github.com/team-telnyx/ai/tree/main/skills/telnyx-video-go","isPrimary":false,"firstSeenAt":"2026-04-18T22:08:08.852Z","lastSeenAt":"2026-04-22T00:54:50.181Z"}],"details":{"listingId":"c1b90f5d-15c2-4e62-8fa7-857c5d5473e3","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"team-telnyx","slug":"telnyx-video-go","github":{"repo":"team-telnyx/ai","stars":167,"topics":["agent-skills","ai","ai-coding-agent","claude-code","cpaas","cursor","iot","llm","sdk","sip","sms","speech-to-text","telephony","telnyx","tts","twilio-migration","voice-agents","voice-ai","webrtc","windsurf"],"license":"mit","html_url":"https://github.com/team-telnyx/ai","pushed_at":"2026-04-21T22:09:49Z","description":"Official one-stop shop for AI Agents and developers building with Telnyx.","skill_md_sha":"09b370041dcc3b39a9765d2df1b3bf17e427236d","skill_md_path":"skills/telnyx-video-go/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/team-telnyx/ai/tree/main/skills/telnyx-video-go"},"layout":"multi","source":"github","category":"ai","frontmatter":{"name":"telnyx-video-go","description":">-"},"skills_sh_url":"https://skills.sh/team-telnyx/ai/telnyx-video-go"},"updatedAt":"2026-04-22T00:54:50.181Z"}}