Update an eSIM
/v1/esim/sims/{esim_id}bird esim update <esim-id> --tags category=welcomecurl -X PATCH "https://us1.platform.bird.com/v1/esim/sims/{esim_id}" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"tags": [
{
"name": "category",
"value": "welcome"
}
]
}'{
"subscriber_id": "esub_01krdgeqcxet5s7t44vh8rt9mg",
"id": "esm_01krdgeqcxet5s7t44vh8rt9mg",
"status": "provisioning",
"mode": "live",
"iccid": "8944500212345678912",
"phone_number": "+31612345678",
"capabilities": {
"data": "yes",
"sms_inbound": "yes",
"sms_outbound": "yes",
"voice_inbound": "yes",
"voice_outbound": "yes"
},
"order_id": "eor_01krdgeqcxet5s7t44vh8rt9mg",
"display_name": "Amsterdam trip, order 8812",
"installation": {
"state": "pending"
},
"packages": [
{
"id": "epk_01krdgeqcxet5s7t44vh8rt9mg",
"order_id": "eor_01krdgeqcxet5s7t44vh8rt9mg",
"offer_id": "eof_01krdgeqcxet5s7t44vh8rt9mg",
"zone_id": "ezn_01krdgeqcxet5s7t44vh8rt9mg",
"zone_name": "Europe",
"countries": [
"US"
],
"status": "provisioning",
"speed": "full",
"price": {
"amount": "0.00995",
"currency_code": "USD"
}
}
],
"zone_balances": [
{
"zone_id": "ezn_01krdgeqcxet5s7t44vh8rt9mg"
}
],
"available_actions": [
{
"action": "suspend",
"operation": "suspendEsim",
"reason": "permission_denied",
"requires": [
"acknowledge_balance_forfeit"
]
}
],
"package_limit": 3,
"usage_available": true,
"balance_reporting": "available",
"last_attachment": {
"country_code": "US"
},
"tags": [
{
"name": "category",
"value": "welcome"
}
],
"created_at": "2026-05-20T09:14:52Z",
"updated_at": "2026-05-25T16:42:01Z"
}
Updates the eSIM's display name, tags, or metadata. Lifecycle and connectivity are managed through the dedicated endpoints.
Parameters
esim_idstringeSIM ID.
Request Payload
display_nameFree-text label for your own reference. Null clears it.
metadataReplaces the eSIM's metadata. Maximum 2 KB serialized.
Response Payload
subscriber_idThe assigned service user, or null when the eSIM has no person assignment.
idstatusmodeiccidICCID of the eSIM profile. Null while no profile is allocated yet, for example when provisioning failed before allocation.
phone_numberPhone number attached to this eSIM, in E.164 format, as the supplier reports it. Null while none is on record: a data-only plan comes with no number, and a plan that includes one reports it after provisioning.
capabilitiesorder_idThe order that created this eSIM.
display_nameFree-text label for your own reference, for example a traveler or order reference.
installationzone_balancesRemaining data per coverage zone, combined across the zone's packages. Derived; the packages are the source of truth.
available_actionsActions currently available to you on this eSIM, with reasons for unavailable actions. Returned by the individual eSIM read. Use this to display controls and explain restrictions. Each action rechecks permissions and state when submitted, so availability is not a guarantee of success.
Show child attributes
available_actions.actionavailable_actions.operationOperation to call for this action. Consult that operation’s reference for its request and response.
available_actions.availableWhether the action is available given your permissions and the current eSIM state. The action checks these again when submitted; a later request can be refused if conditions change.
available_actions.reasonWhy the action is unavailable. Null while available is true.
available_actions.requiresAdditional parameters required by the current state, such as acknowledge_balance_forfeit when releasing an eSIM with remaining data. Absent when no additional parameters apply or when permissions, network support, or profile state prevent the action.
package_limitMaximum number of concurrent data packages this eSIM can hold, counted across all zones; several packages may share one zone. Enforced when packages are added.
usage_availableWhether daily usage history is supported for this eSIM. The daily usage endpoint is currently unavailable; read package balances for reported consumption.
balance_reportingWhether ongoing package consumption reporting is available. Separate from daily usage history. Null package consumption values mean no measurement is available.
ready_untilActivate (first network use) before this moment or the eSIM expires. Null once activated.
activated_atWhen the eSIM first used a mobile network. Null until then.
active_untilWhen the eSIM's service period ends. The period starts at activation and data packages cannot outlive it. Null until activated.
last_attachmentMost recent network attachment, or null before first attach.
tagsTags for routing, filtering, and stats grouping, echoed on webhook events for the eSIM.
metadataYour own key-value data, echoed on webhook events for the eSIM. Maximum 2 KB serialized.
created_atupdated_atRelated resources
Continue with the documentation, guides and examples for this topic.