# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from typing import Optional

from pydantic import Field as FieldInfo

from ..._models import BaseModel

__all__ = ["PartnerCampaignListSharedByMeResponse"]


class PartnerCampaignListSharedByMeResponse(BaseModel):
    """
    Campaign is generated by the 10DLC registry once the corresponding campaign request is approved. Each campaign is assigned a unique identifier - **campaignId**. Once a campaign is activated, limited information is published to the NetNumber OSR service for consumption by members of the ecosystem. When a campaign is suspended(reversible) or expired(non-reversible), campaign data is deleted from the OSR service. Most attributes of campaignare immutable, including **usecase**, **vertical**, **brandId** and **cspId**.
    """

    brand_id: str = FieldInfo(alias="brandId")
    """Alphanumeric identifier of the brand associated with this campaign."""

    campaign_id: str = FieldInfo(alias="campaignId")
    """Alphanumeric identifier assigned by the registry for a campaign.

    This identifier is required by the NetNumber OSR SMS enabling process of 10DLC.
    """

    usecase: str
    """Campaign usecase.

    Must be of defined valid types. Use `/10dlc/enum/usecase` operation to retrieve
    usecases available for given brand.
    """

    create_date: Optional[str] = FieldInfo(alias="createDate", default=None)
    """Unix timestamp when campaign was created."""

    status: Optional[str] = None
    """Current campaign status.

    Possible values: ACTIVE, EXPIRED. A newly created campaign defaults to ACTIVE
    status.
    """
