pub struct Customer {
pub capabilities: CapabilitiesMap,
pub created_at: Option<DateTime<Utc>>,
pub customer_id: CustomerId,
pub individual: Option<Individual>,
pub project_ids: Vec<ProjectId>,
pub requirements: RequirementsMap,
pub tos_acceptances: Vec<TosAcceptance>,
pub type_: CustomerType,
pub updated_at: Option<DateTime<Utc>>,
}Expand description
A customer record returned on read (Get / Create / Update Customer).
JSON schema
{
"description": "A customer record returned on read (Get / Create / Update Customer).",
"type": "object",
"required": [
"capabilities",
"customerId",
"requirements",
"type"
],
"properties": {
"capabilities": {
"description": "Current state of each capability for this customer. Each capability\nshows whether it has been requested and its current status.\n",
"readOnly": true,
"examples": [
{}
],
"allOf": [
{
"$ref": "#/components/schemas/CapabilitiesMap"
}
]
},
"createdAt": {
"description": "Timestamp when the customer was created.",
"readOnly": true,
"examples": [
"2026-01-10T14:25:00Z"
],
"type": "string",
"format": "date-time"
},
"customerId": {
"$ref": "#/components/schemas/CustomerId"
},
"individual": {
"$ref": "#/components/schemas/Individual"
},
"projectIds": {
"description": "The project IDs that this customer is associated with.",
"examples": [
[]
],
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectId"
}
},
"requirements": {
"description": "Map of requirements to be submitted. Each key is the field name, with\nvalues to describe its state. Requirements are only shown for requested\ncapabilities. When a requirement is fulfilled, it disappears from this map.\n",
"readOnly": true,
"examples": [
{}
],
"allOf": [
{
"$ref": "#/components/schemas/RequirementsMap"
}
]
},
"tosAcceptances": {
"description": "Terms of Service acceptances recorded for the customer.\n",
"examples": [
[
{
"acceptedAt": "2026-04-10T12:00:00Z",
"language": "en",
"versionId": "us_individual_2026-05-29"
}
]
],
"type": "array",
"items": {
"$ref": "#/components/schemas/TosAcceptance"
}
},
"type": {
"$ref": "#/components/schemas/CustomerType"
},
"updatedAt": {
"description": "Timestamp when the customer was last updated.",
"readOnly": true,
"examples": [
"2026-01-10T14:30:00Z"
],
"type": "string",
"format": "date-time"
}
}
}Fields§
§capabilities: CapabilitiesMapCurrent state of each capability for this customer. Each capability shows whether it has been requested and its current status.
created_at: Option<DateTime<Utc>>Timestamp when the customer was created.
customer_id: CustomerId§individual: Option<Individual>§project_ids: Vec<ProjectId>The project IDs that this customer is associated with.
requirements: RequirementsMapMap of requirements to be submitted. Each key is the field name, with values to describe its state. Requirements are only shown for requested capabilities. When a requirement is fulfilled, it disappears from this map.
tos_acceptances: Vec<TosAcceptance>Terms of Service acceptances recorded for the customer.
type_: CustomerType§updated_at: Option<DateTime<Utc>>Timestamp when the customer was last updated.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Customer
impl<'de> Deserialize<'de> for Customer
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Customer
impl RefUnwindSafe for Customer
impl Send for Customer
impl Sync for Customer
impl Unpin for Customer
impl UnsafeUnpin for Customer
impl UnwindSafe for Customer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more