Account

Smarter API Account Manifest Constants

Smarter API Manifest - Account.metadata

pydantic model smarter.apps.account.manifest.models.account.metadata.SAMAccountMetadata[source]

Bases: AbstractSAMMetadataBase

Smarter API Account Manifest - Metadata class.

Show JSON schema
{
   "title": "SAMAccountMetadata",
   "description": "Smarter API Account Manifest - Metadata class.",
   "type": "object",
   "properties": {
      "name": {
         "description": "The camelCase name of the manifest resource",
         "title": "Name",
         "type": "string"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "description": "The description for this resource. Be brief. Keep it under 255 characters.",
         "title": "Description"
      },
      "version": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "description": "The semantic version of the manifest. Example: 0.1.0",
         "title": "Version"
      },
      "tags": {
         "anyOf": [
            {
               "items": {
                  "type": "string"
               },
               "type": "array"
            },
            {
               "type": "null"
            }
         ],
         "description": "The tags of the manifest. Used for generic resource categorization and search. Example: ['tag1', 'tag2']",
         "title": "Tags"
      },
      "annotations": {
         "anyOf": [
            {
               "items": {
                  "additionalProperties": {
                     "anyOf": [
                        {
                           "type": "string"
                        },
                        {
                           "type": "integer"
                        },
                        {
                           "type": "number"
                        },
                        {
                           "type": "boolean"
                        },
                        {
                           "format": "date",
                           "type": "string"
                        },
                        {
                           "format": "date-time",
                           "type": "string"
                        },
                        {
                           "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
                           "type": "string"
                        },
                        {
                           "format": "uuid",
                           "type": "string"
                        },
                        {
                           "format": "binary",
                           "type": "string"
                        },
                        {
                           "items": {},
                           "type": "array"
                        },
                        {
                           "additionalProperties": true,
                           "type": "object"
                        }
                     ]
                  },
                  "type": "object"
               },
               "type": "array"
            },
            {
               "type": "null"
            }
         ],
         "description": "The manifest annotations. Used for storing arbitrary metadata as\n            key-value pairs. Example: [{'smarter.sh/test-manifest/project-name': 'Scooby dooby do'}]. The\n            key should be a valid url-friendly string. The value accepts\n            multi-line string values (YAML block scalars) and various scalar types including\n            str, int, float, bool, datetime.date, datetime.datetime, decimal.Decimal, uuid.UUID, bytes, list, dict.\n            ",
         "title": "Annotations"
      },
      "accountNumber": {
         "description": "Account.metadata.accountNumber[str]. Your preassigned 12-digit account number for your Smarter Account in the format '####-####-####'. Read only.",
         "title": "Accountnumber",
         "type": "string"
      }
   },
   "required": [
      "name",
      "description",
      "version",
      "accountNumber"
   ]
}

Config:
  • from_attributes: bool = True

  • arbitrary_types_allowed: bool = True

  • frozen: bool = True

Fields:
Validators:

field accountNumber: str [Required]

Account.metadata.accountNumber[str]. Your preassigned 12-digit account number for your Smarter Account in the format ‘####-####-####’. Read only.

Validated by:
class_identifier: ClassVar[str] = 'Account.metadata'

Smarter API Manifest - Plugin.spec

pydantic model smarter.apps.account.manifest.models.account.spec.SAMAccountSpec[source]

Bases: AbstractSAMSpecBase

Smarter API Account Manifest Account.spec

Show JSON schema
{
   "title": "SAMAccountSpec",
   "description": "Smarter API Account Manifest Account.spec",
   "type": "object",
   "properties": {
      "config": {
         "$ref": "#/$defs/SAMAccountSpecConfig",
         "description": "Account.spec.config[object]. The configuration for the Account."
      }
   },
   "$defs": {
      "SAMAccountSpecConfig": {
         "description": "Smarter API Account Manifest Account.spec.config",
         "properties": {
            "companyName": {
               "description": "Account.spec.configuration.companyName[str]. The legal entity of your Smarter Account for invoicing and legal correspondence.",
               "title": "Companyname",
               "type": "string"
            },
            "phoneNumber": {
               "description": "Account.spec.configuration.phoneNumber[str]. The primary phone number for the Account.",
               "title": "Phonenumber",
               "type": "string"
            },
            "address1": {
               "description": "Account.spec.configuration.address1[str]. The primary address for the Account.",
               "title": "Address1",
               "type": "string"
            },
            "address2": {
               "anyOf": [
                  {
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Account.spec.configuration.address2[str]. Optional. The secondary address for the Account.",
               "title": "Address2"
            },
            "city": {
               "description": "Account.spec.configuration.city[str]. The city for the Account.",
               "title": "City",
               "type": "string"
            },
            "state": {
               "description": "Account.spec.configuration.state[str]. The state for the Account.",
               "title": "State",
               "type": "string"
            },
            "postalCode": {
               "description": "Account.spec.configuration.postalCode[str]. The postal code for the Account.",
               "title": "Postalcode",
               "type": "string"
            },
            "country": {
               "default": "US",
               "description": "Account.spec.configuration.country[str]. The ISO 3166 country code for the Account. Default: USA.",
               "title": "Country",
               "type": "string"
            },
            "language": {
               "default": "en-US",
               "description": "Account.spec.configuration.language[str]. The primary BCP 47 language tag for the Account. Default: en-US.",
               "title": "Language",
               "type": "string"
            },
            "timezone": {
               "default": "America/New_York",
               "description": "Account.spec.configuration.timezone[str]. The primary IANA timezone for the Account. Default: America/New_York.",
               "title": "Timezone",
               "type": "string"
            },
            "currency": {
               "default": "USD",
               "description": "Account.spec.configuration.currency[str]. The primary ISO 4217 currency for the Account. Default: USD.",
               "title": "Currency",
               "type": "string"
            }
         },
         "required": [
            "companyName",
            "phoneNumber",
            "address1",
            "city",
            "state",
            "postalCode"
         ],
         "title": "SAMAccountSpecConfig",
         "type": "object"
      }
   },
   "required": [
      "config"
   ]
}

Config:
  • from_attributes: bool = True

  • arbitrary_types_allowed: bool = True

  • frozen: bool = True

Fields:
Validators:

field config: SAMAccountSpecConfig [Required]

Account.spec.config[object]. The configuration for the Account.

Validated by:
class_identifier: ClassVar[str] = 'Account.spec'
pydantic model smarter.apps.account.manifest.models.account.spec.SAMAccountSpecConfig[source]

Bases: AbstractSAMSpecBase

Smarter API Account Manifest Account.spec.config

Show JSON schema
{
   "title": "SAMAccountSpecConfig",
   "description": "Smarter API Account Manifest Account.spec.config",
   "type": "object",
   "properties": {
      "companyName": {
         "description": "Account.spec.configuration.companyName[str]. The legal entity of your Smarter Account for invoicing and legal correspondence.",
         "title": "Companyname",
         "type": "string"
      },
      "phoneNumber": {
         "description": "Account.spec.configuration.phoneNumber[str]. The primary phone number for the Account.",
         "title": "Phonenumber",
         "type": "string"
      },
      "address1": {
         "description": "Account.spec.configuration.address1[str]. The primary address for the Account.",
         "title": "Address1",
         "type": "string"
      },
      "address2": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "Account.spec.configuration.address2[str]. Optional. The secondary address for the Account.",
         "title": "Address2"
      },
      "city": {
         "description": "Account.spec.configuration.city[str]. The city for the Account.",
         "title": "City",
         "type": "string"
      },
      "state": {
         "description": "Account.spec.configuration.state[str]. The state for the Account.",
         "title": "State",
         "type": "string"
      },
      "postalCode": {
         "description": "Account.spec.configuration.postalCode[str]. The postal code for the Account.",
         "title": "Postalcode",
         "type": "string"
      },
      "country": {
         "default": "US",
         "description": "Account.spec.configuration.country[str]. The ISO 3166 country code for the Account. Default: USA.",
         "title": "Country",
         "type": "string"
      },
      "language": {
         "default": "en-US",
         "description": "Account.spec.configuration.language[str]. The primary BCP 47 language tag for the Account. Default: en-US.",
         "title": "Language",
         "type": "string"
      },
      "timezone": {
         "default": "America/New_York",
         "description": "Account.spec.configuration.timezone[str]. The primary IANA timezone for the Account. Default: America/New_York.",
         "title": "Timezone",
         "type": "string"
      },
      "currency": {
         "default": "USD",
         "description": "Account.spec.configuration.currency[str]. The primary ISO 4217 currency for the Account. Default: USD.",
         "title": "Currency",
         "type": "string"
      }
   },
   "required": [
      "companyName",
      "phoneNumber",
      "address1",
      "city",
      "state",
      "postalCode"
   ]
}

Config:
  • from_attributes: bool = True

  • arbitrary_types_allowed: bool = True

  • frozen: bool = True

Fields:
Validators:
field address1: str [Required]

Account.spec.configuration.address1[str]. The primary address for the Account.

Validated by:
field address2: Optional[str] = None

Account.spec.configuration.address2[str]. Optional. The secondary address for the Account.

Validated by:
field city: str [Required]

Account.spec.configuration.city[str]. The city for the Account.

Validated by:
field companyName: str [Required]

Account.spec.configuration.companyName[str]. The legal entity of your Smarter Account for invoicing and legal correspondence.

Validated by:
field country: str = 'US'

Account.spec.configuration.country[str]. The ISO 3166 country code for the Account. Default: USA.

Validated by:
field currency: str = 'USD'

Account.spec.configuration.currency[str]. The primary ISO 4217 currency for the Account. Default: USD.

Validated by:
field language: str = 'en-US'

Account.spec.configuration.language[str]. The primary BCP 47 language tag for the Account. Default: en-US.

Validated by:
field phoneNumber: str [Required]

Account.spec.configuration.phoneNumber[str]. The primary phone number for the Account.

Validated by:
field postalCode: str [Required]

Account.spec.configuration.postalCode[str]. The postal code for the Account.

Validated by:
field state: str [Required]

Account.spec.configuration.state[str]. The state for the Account.

Validated by:
field timezone: str = 'America/New_York'

Account.spec.configuration.timezone[str]. The primary IANA timezone for the Account. Default: America/New_York.

Validated by:
validator validate_country  »  country[source]
validator validate_currency  »  currency[source]
validator validate_language  »  language[source]
validator validate_timezone  »  timezone[source]
class_identifier: ClassVar[str] = 'Account.spec.configuration'

Smarter API Manifest - Account.status

pydantic model smarter.apps.account.manifest.models.account.status.SAMAccountStatus[source]

Bases: AbstractSAMStatusBase

Smarter API Account Manifest - Status class.

Show JSON schema
{
   "title": "SAMAccountStatus",
   "description": "Smarter API Account Manifest - Status class.",
   "type": "object",
   "properties": {
      "recordLocator": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "recordLocator[String]: An optional identifier used to locate the resource record associated with this manifest. Read only.",
         "title": "Recordlocator"
      },
      "created": {
         "description": "The date in which this resource was created. Read only.",
         "format": "date-time",
         "title": "Created",
         "type": "string"
      },
      "modified": {
         "description": "The date in which this resource was most recently changed. Read only.",
         "format": "date-time",
         "title": "Modified",
         "type": "string"
      },
      "adminAccount": {
         "description": "Account.status.adminAccount: The designated Smarter admin user for this Account. Read only.",
         "title": "Adminaccount",
         "type": "string"
      }
   },
   "required": [
      "created",
      "modified",
      "adminAccount"
   ]
}

Config:
  • from_attributes: bool = True

  • arbitrary_types_allowed: bool = True

  • frozen: bool = True

Fields:
Validators:

field adminAccount: str [Required]

Account.status.adminAccount: The designated Smarter admin user for this Account. Read only.

Validated by:
class_identifier: ClassVar[str] = 'Account.status'

Smarter API Account Manifest

pydantic model smarter.apps.account.manifest.models.account.model.SAMAccount[source]

Bases: AbstractSAMBase

Smarter API Manifest - Account

Show JSON schema
{
   "title": "SAMAccount",
   "description": "Smarter API Manifest - Account",
   "type": "object",
   "properties": {
      "apiVersion": {
         "description": "apiVersion[String]: Required. The API version of the AbstractSAMBase.",
         "title": "Apiversion",
         "type": "string"
      },
      "kind": {
         "description": "kind[String]: Required. The kind of resource described by the manifest.",
         "title": "Kind",
         "type": "string"
      },
      "metadata": {
         "$ref": "#/$defs/SAMAccountMetadata",
         "description": "Account.metadata[obj]: Required, the Account metadata."
      },
      "spec": {
         "$ref": "#/$defs/SAMAccountSpec",
         "description": "Account.spec[obj]: Required, the Account specification."
      },
      "status": {
         "anyOf": [
            {
               "$ref": "#/$defs/SAMAccountStatus"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "Account.status[obj]: Optional, Read-only. Stateful status information about the Account."
      }
   },
   "$defs": {
      "SAMAccountMetadata": {
         "description": "Smarter API Account Manifest - Metadata class.",
         "properties": {
            "name": {
               "description": "The camelCase name of the manifest resource",
               "title": "Name",
               "type": "string"
            },
            "description": {
               "anyOf": [
                  {
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "description": "The description for this resource. Be brief. Keep it under 255 characters.",
               "title": "Description"
            },
            "version": {
               "anyOf": [
                  {
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "description": "The semantic version of the manifest. Example: 0.1.0",
               "title": "Version"
            },
            "tags": {
               "anyOf": [
                  {
                     "items": {
                        "type": "string"
                     },
                     "type": "array"
                  },
                  {
                     "type": "null"
                  }
               ],
               "description": "The tags of the manifest. Used for generic resource categorization and search. Example: ['tag1', 'tag2']",
               "title": "Tags"
            },
            "annotations": {
               "anyOf": [
                  {
                     "items": {
                        "additionalProperties": {
                           "anyOf": [
                              {
                                 "type": "string"
                              },
                              {
                                 "type": "integer"
                              },
                              {
                                 "type": "number"
                              },
                              {
                                 "type": "boolean"
                              },
                              {
                                 "format": "date",
                                 "type": "string"
                              },
                              {
                                 "format": "date-time",
                                 "type": "string"
                              },
                              {
                                 "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
                                 "type": "string"
                              },
                              {
                                 "format": "uuid",
                                 "type": "string"
                              },
                              {
                                 "format": "binary",
                                 "type": "string"
                              },
                              {
                                 "items": {},
                                 "type": "array"
                              },
                              {
                                 "additionalProperties": true,
                                 "type": "object"
                              }
                           ]
                        },
                        "type": "object"
                     },
                     "type": "array"
                  },
                  {
                     "type": "null"
                  }
               ],
               "description": "The manifest annotations. Used for storing arbitrary metadata as\n            key-value pairs. Example: [{'smarter.sh/test-manifest/project-name': 'Scooby dooby do'}]. The\n            key should be a valid url-friendly string. The value accepts\n            multi-line string values (YAML block scalars) and various scalar types including\n            str, int, float, bool, datetime.date, datetime.datetime, decimal.Decimal, uuid.UUID, bytes, list, dict.\n            ",
               "title": "Annotations"
            },
            "accountNumber": {
               "description": "Account.metadata.accountNumber[str]. Your preassigned 12-digit account number for your Smarter Account in the format '####-####-####'. Read only.",
               "title": "Accountnumber",
               "type": "string"
            }
         },
         "required": [
            "name",
            "description",
            "version",
            "accountNumber"
         ],
         "title": "SAMAccountMetadata",
         "type": "object"
      },
      "SAMAccountSpec": {
         "description": "Smarter API Account Manifest Account.spec",
         "properties": {
            "config": {
               "$ref": "#/$defs/SAMAccountSpecConfig",
               "description": "Account.spec.config[object]. The configuration for the Account."
            }
         },
         "required": [
            "config"
         ],
         "title": "SAMAccountSpec",
         "type": "object"
      },
      "SAMAccountSpecConfig": {
         "description": "Smarter API Account Manifest Account.spec.config",
         "properties": {
            "companyName": {
               "description": "Account.spec.configuration.companyName[str]. The legal entity of your Smarter Account for invoicing and legal correspondence.",
               "title": "Companyname",
               "type": "string"
            },
            "phoneNumber": {
               "description": "Account.spec.configuration.phoneNumber[str]. The primary phone number for the Account.",
               "title": "Phonenumber",
               "type": "string"
            },
            "address1": {
               "description": "Account.spec.configuration.address1[str]. The primary address for the Account.",
               "title": "Address1",
               "type": "string"
            },
            "address2": {
               "anyOf": [
                  {
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Account.spec.configuration.address2[str]. Optional. The secondary address for the Account.",
               "title": "Address2"
            },
            "city": {
               "description": "Account.spec.configuration.city[str]. The city for the Account.",
               "title": "City",
               "type": "string"
            },
            "state": {
               "description": "Account.spec.configuration.state[str]. The state for the Account.",
               "title": "State",
               "type": "string"
            },
            "postalCode": {
               "description": "Account.spec.configuration.postalCode[str]. The postal code for the Account.",
               "title": "Postalcode",
               "type": "string"
            },
            "country": {
               "default": "US",
               "description": "Account.spec.configuration.country[str]. The ISO 3166 country code for the Account. Default: USA.",
               "title": "Country",
               "type": "string"
            },
            "language": {
               "default": "en-US",
               "description": "Account.spec.configuration.language[str]. The primary BCP 47 language tag for the Account. Default: en-US.",
               "title": "Language",
               "type": "string"
            },
            "timezone": {
               "default": "America/New_York",
               "description": "Account.spec.configuration.timezone[str]. The primary IANA timezone for the Account. Default: America/New_York.",
               "title": "Timezone",
               "type": "string"
            },
            "currency": {
               "default": "USD",
               "description": "Account.spec.configuration.currency[str]. The primary ISO 4217 currency for the Account. Default: USD.",
               "title": "Currency",
               "type": "string"
            }
         },
         "required": [
            "companyName",
            "phoneNumber",
            "address1",
            "city",
            "state",
            "postalCode"
         ],
         "title": "SAMAccountSpecConfig",
         "type": "object"
      },
      "SAMAccountStatus": {
         "description": "Smarter API Account Manifest - Status class.",
         "properties": {
            "recordLocator": {
               "anyOf": [
                  {
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "recordLocator[String]: An optional identifier used to locate the resource record associated with this manifest. Read only.",
               "title": "Recordlocator"
            },
            "created": {
               "description": "The date in which this resource was created. Read only.",
               "format": "date-time",
               "title": "Created",
               "type": "string"
            },
            "modified": {
               "description": "The date in which this resource was most recently changed. Read only.",
               "format": "date-time",
               "title": "Modified",
               "type": "string"
            },
            "adminAccount": {
               "description": "Account.status.adminAccount: The designated Smarter admin user for this Account. Read only.",
               "title": "Adminaccount",
               "type": "string"
            }
         },
         "required": [
            "created",
            "modified",
            "adminAccount"
         ],
         "title": "SAMAccountStatus",
         "type": "object"
      }
   },
   "required": [
      "apiVersion",
      "kind",
      "metadata",
      "spec"
   ]
}

Config:
  • from_attributes: bool = True

  • arbitrary_types_allowed: bool = True

  • frozen: bool = True

Fields:
Validators:
field metadata: SAMAccountMetadata [Required]

Account.metadata[obj]: Required, the Account metadata.

Validated by:
field spec: SAMAccountSpec [Required]

Account.spec[obj]: Required, the Account specification.

Validated by:
field status: Optional[SAMAccountStatus] = None

Account.status[obj]: Optional, Read-only. Stateful status information about the Account.

Validated by:
class_identifier: ClassVar[str] = 'Account'