Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
186 changes: 101 additions & 85 deletions .speakeasy/gen.lock

Large diffs are not rendered by default.

16 changes: 8 additions & 8 deletions .speakeasy/workflow.lock
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
speakeasyVersion: 1.691.0
speakeasyVersion: 1.700.2
sources:
converge-source:
sourceNamespace: converge-source
sourceRevisionDigest: sha256:921e943ec014cc1b8ab35a109ec052b30e1c4c30126e88e72b592fcd275e0e87
sourceBlobDigest: sha256:ebf605a4da74b201214ffd90386798dcc36a8e73da11bd1035ab4aacbc187e76
sourceRevisionDigest: sha256:7b3f780b817d3434a2d2aeb310cf8987d91c3d3a493f1b73bcf32ec3e877d56a
sourceBlobDigest: sha256:c82ea45eb541f2b2bd01aea26cd7a561098f9326ed7163df172c5ead3787bf44
tags:
- latest
- speakeasy-sdk-regen-1767832222
- 1.0.65
- speakeasy-sdk-regen-1769214570
- 1.0.71
targets:
censys-sdk-python:
source: converge-source
sourceNamespace: converge-source
sourceRevisionDigest: sha256:921e943ec014cc1b8ab35a109ec052b30e1c4c30126e88e72b592fcd275e0e87
sourceBlobDigest: sha256:ebf605a4da74b201214ffd90386798dcc36a8e73da11bd1035ab4aacbc187e76
sourceRevisionDigest: sha256:7b3f780b817d3434a2d2aeb310cf8987d91c3d3a493f1b73bcf32ec3e877d56a
sourceBlobDigest: sha256:c82ea45eb541f2b2bd01aea26cd7a561098f9326ed7163df172c5ead3787bf44
codeSamplesNamespace: converge-source-python-code-samples
codeSamplesRevisionDigest: sha256:29a2377d4a9b0ef7ce9f8c207efae22e3d21be7b11fd5a26606f85dabe436fb9
codeSamplesRevisionDigest: sha256:46f0471c3f518d7e1db3d3de0440503636ca49c3fa2d444e8e82b9a532835db1
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest
Expand Down
12 changes: 11 additions & 1 deletion RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -186,4 +186,14 @@ Based on:
### Generated
- [python v0.12.2] .
### Releases
- [PyPI v0.12.2] https://pypi.org/project/censys-platform/0.12.2 - .
- [PyPI v0.12.2] https://pypi.org/project/censys-platform/0.12.2 - .

## 2026-01-29 19:03:29
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.700.2 (2.801.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v0.12.4] .
### Releases
- [PyPI v0.12.4] https://pypi.org/project/censys-platform/0.12.4 - .
1 change: 1 addition & 0 deletions docs/models/http.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
| `headers` | Dict[str, [models.HTTPRepeatedHeaders](../models/httprepeatedheaders.md)] | :heavy_minus_sign: | The key-value header pairs included in the response. |
| `html_tags` | List[*str*] | :heavy_minus_sign: | A list of the <title> and <meta> tags from services.http.response.body. |
| `html_title` | *Optional[str]* | :heavy_minus_sign: | The title of the HTML page: the inner contents of the <title> tag in the response body, if present. |
| `network_log` | [Optional[models.NetworkLog]](../models/networklog.md) | :heavy_minus_sign: | N/A |
| `protocol` | *Optional[str]* | :heavy_minus_sign: | The protocol field of the response, which includes the claimed HTTP version number. |
| `redirect_chain` | List[[models.HTTPRedirectChainLink](../models/httpredirectchainlink.md)] | :heavy_minus_sign: | If the scan redirects, the list of followup scans performed |
| `status_code` | *Optional[int]* | :heavy_minus_sign: | A 3-digit integer result code indicating the result of the services.http.request. |
Expand Down
9 changes: 9 additions & 0 deletions docs/models/networklog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# NetworkLog


## Fields

| Field | Type | Required | Description |
| -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| `har_handle` | *Optional[str]* | :heavy_minus_sign: | Storage handle for the full HAR network log. |
| `resources` | List[[models.NetworkLogResourceInfo](../models/networklogresourceinfo.md)] | :heavy_minus_sign: | Resources fetched during page load. |
17 changes: 17 additions & 0 deletions docs/models/networklogresourceinfo.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# NetworkLogResourceInfo


## Fields

| Field | Type | Required | Description |
| ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- |
| `host` | *Optional[str]* | :heavy_minus_sign: | Hostname from the URL. |
| `md5` | *Optional[str]* | :heavy_minus_sign: | MD5 hash of the resource content. |
| `mime_type` | *Optional[str]* | :heavy_minus_sign: | MIME type of the resource. |
| `path` | *Optional[str]* | :heavy_minus_sign: | Path from the URL. |
| `port` | *Optional[str]* | :heavy_minus_sign: | Port from the URL. |
| `scheme` | *Optional[str]* | :heavy_minus_sign: | URL scheme (e.g., http, https). |
| `sha1` | *Optional[str]* | :heavy_minus_sign: | SHA-1 hash of the resource content. |
| `sha256` | *Optional[str]* | :heavy_minus_sign: | SHA-256 hash of the resource content. |
| `size` | *Optional[int]* | :heavy_minus_sign: | Size of the resource in bytes. |
| `url` | *Optional[str]* | :heavy_minus_sign: | Full URL of the resource. |
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

[project]
name = "censys-platform"
version = "0.12.2"
version = "0.12.4"
description = "Python Client SDK Generated by Speakeasy."
authors = [{ name = "Speakeasy" },]
readme = "README-PYPI.md"
Expand Down
8 changes: 4 additions & 4 deletions src/censys_platform/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
import importlib.metadata

__title__: str = "censys-platform"
__version__: str = "0.12.2"
__openapi_doc_version__: str = "1.0.65"
__gen_version__: str = "2.797.1"
__user_agent__: str = "speakeasy-sdk/python 0.12.2 2.797.1 1.0.65 censys-platform"
__version__: str = "0.12.4"
__openapi_doc_version__: str = "1.0.71"
__gen_version__: str = "2.801.2"
__user_agent__: str = "speakeasy-sdk/python 0.12.4 2.801.2 1.0.71 censys-platform"

try:
if __package__ is not None:
Expand Down
13 changes: 13 additions & 0 deletions src/censys_platform/models/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -602,6 +602,11 @@
from .nbd import Nbd, NbdTypedDict
from .network import Network, NetworkTypedDict
from .networkcapabilities import NetworkCapabilities, NetworkCapabilitiesTypedDict
from .networklog import NetworkLog, NetworkLogTypedDict
from .networklog_resourceinfo import (
NetworkLogResourceInfo,
NetworkLogResourceInfoTypedDict,
)
from .nfsmountd import NfsMountd, NfsMountdTypedDict
from .nmea import Nmea, NmeaTypedDict
from .nmea_nmeamessage import NmeaNmeaMessage, NmeaNmeaMessageTypedDict
Expand Down Expand Up @@ -1962,6 +1967,10 @@
"Network",
"NetworkCapabilities",
"NetworkCapabilitiesTypedDict",
"NetworkLog",
"NetworkLogResourceInfo",
"NetworkLogResourceInfoTypedDict",
"NetworkLogTypedDict",
"NetworkTypedDict",
"NewStatus",
"NfsMountd",
Expand Down Expand Up @@ -3337,6 +3346,10 @@
"NetworkTypedDict": ".network",
"NetworkCapabilities": ".networkcapabilities",
"NetworkCapabilitiesTypedDict": ".networkcapabilities",
"NetworkLog": ".networklog",
"NetworkLogTypedDict": ".networklog",
"NetworkLogResourceInfo": ".networklog_resourceinfo",
"NetworkLogResourceInfoTypedDict": ".networklog_resourceinfo",
"NfsMountd": ".nfsmountd",
"NfsMountdTypedDict": ".nfsmountd",
"Nmea": ".nmea",
Expand Down
3 changes: 2 additions & 1 deletion src/censys_platform/models/alternativequery.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from censys_platform import utils
from censys_platform.types import BaseModel, Nullable, UNSET_SENTINEL
from enum import Enum
from pydantic import model_serializer
from typing import List
from typing_extensions import TypedDict


class Targets(str, Enum):
class Targets(str, Enum, metaclass=utils.OpenEnumMeta):
HOST = "host"
WEB = "web"
CERT = "cert"
Expand Down
14 changes: 12 additions & 2 deletions src/censys_platform/models/attribute.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
from .cpe import Cpe, CpeTypedDict
from .cpe_lifecycle import CPELifeCycle, CPELifeCycleTypedDict
from .evidence import Evidence, EvidenceTypedDict
from censys_platform import models, utils
from censys_platform.types import (
BaseModel,
Nullable,
Expand All @@ -12,12 +13,12 @@
UNSET_SENTINEL,
)
from enum import Enum
from pydantic import model_serializer
from pydantic import field_serializer, model_serializer
from typing import List, Optional
from typing_extensions import NotRequired, TypedDict


class Source(str, Enum):
class Source(str, Enum, metaclass=utils.OpenEnumMeta):
UNKNOWN = ""
CENSYS = "censys"
RECOG = "recog"
Expand Down Expand Up @@ -69,6 +70,15 @@ class Attribute(BaseModel):

version: Optional[str] = None

@field_serializer("source")
def serialize_source(self, value):
if isinstance(value, str):
try:
return models.Source(value)
except ValueError:
return value
return value

@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(
Expand Down
25 changes: 22 additions & 3 deletions src/censys_platform/models/certificate.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
from .ct import Ct, CtTypedDict
from .validation import Validation, ValidationTypedDict
from .zlint import ZLint, ZLintTypedDict
from censys_platform import models, utils
from censys_platform.types import (
BaseModel,
Nullable,
Expand All @@ -14,19 +15,19 @@
UNSET_SENTINEL,
)
from enum import Enum
from pydantic import model_serializer
from pydantic import field_serializer, model_serializer
from typing import List, Optional
from typing_extensions import NotRequired, TypedDict


class ParseStatus(str, Enum):
class ParseStatus(str, Enum, metaclass=utils.OpenEnumMeta):
UNKNOWN = ""
SUCCESS = "success"
FAIL = "fail"
CORRUPTED = "corrupted"


class ValidationLevel(str, Enum):
class ValidationLevel(str, Enum, metaclass=utils.OpenEnumMeta):
r"""The extent to which the certificate's issuer validated the identity of the entity requesting the certificate. Options include Domain validated (DV), Organization Validated (OV), or Extended Validation (EV)."""

UNKNOWN = ""
Expand Down Expand Up @@ -142,6 +143,24 @@ class Certificate(BaseModel):

zlint: Optional[ZLint] = None

@field_serializer("parse_status")
def serialize_parse_status(self, value):
if isinstance(value, str):
try:
return models.ParseStatus(value)
except ValueError:
return value
return value

@field_serializer("validation_level")
def serialize_validation_level(self, value):
if isinstance(value, str):
try:
return models.ValidationLevel(value)
except ValueError:
return value
return value

@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(
Expand Down
14 changes: 12 additions & 2 deletions src/censys_platform/models/certificaterevocation_revocationinfo.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from censys_platform import models, utils
from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
from pydantic import model_serializer
from pydantic import field_serializer, model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class Reason(str, Enum):
class Reason(str, Enum, metaclass=utils.OpenEnumMeta):
r"""An enumerated value indicating the issuer-supplied reason for the revocation."""

UNKNOWN = ""
Expand Down Expand Up @@ -46,6 +47,15 @@ class CertificateRevocationRevocationInfo(BaseModel):
revoked: Optional[bool] = None
r"""Whether the certificate has been revoked before its expiry date by the issuer."""

@field_serializer("reason")
def serialize_reason(self, value):
if isinstance(value, str):
try:
return models.Reason(value)
except ValueError:
return value
return value

@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["next_update", "reason", "revocation_time", "revoked"])
Expand Down
25 changes: 22 additions & 3 deletions src/censys_platform/models/collection.py
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from censys_platform import models, utils
from censys_platform.types import BaseModel, Nullable, UNSET_SENTINEL
from datetime import datetime
from enum import Enum
from pydantic import model_serializer
from pydantic import field_serializer, model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class CollectionStatus(str, Enum):
class CollectionStatus(str, Enum, metaclass=utils.OpenEnumMeta):
UNSPECIFIED = "unspecified"
POPULATING = "populating"
ACTIVE = "active"
PAUSED = "paused"
ARCHIVED = "archived"


class StatusReason(str, Enum):
class StatusReason(str, Enum, metaclass=utils.OpenEnumMeta):
UNSPECIFIED = "unspecified"
NOT_ENOUGH_CREDITS = "not_enough_credits"
NOT_ENTITLED = "not_entitled"
Expand Down Expand Up @@ -66,6 +67,24 @@ class Collection(BaseModel):
created_by: Optional[str] = None
r"""The ID of a Censys user who created the collection."""

@field_serializer("status")
def serialize_status(self, value):
if isinstance(value, str):
try:
return models.CollectionStatus(value)
except ValueError:
return value
return value

@field_serializer("status_reason")
def serialize_status_reason(self, value):
if isinstance(value, str):
try:
return models.StatusReason(value)
except ValueError:
return value
return value

@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["created_by"])
Expand Down
14 changes: 12 additions & 2 deletions src/censys_platform/models/creditusagereport.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,16 @@
CreditUsageReportPeriodTypedDict,
)
from .sourceusagebreakdown import SourceUsageBreakdown, SourceUsageBreakdownTypedDict
from censys_platform import models, utils
from censys_platform.types import BaseModel, Nullable, UNSET_SENTINEL
from datetime import datetime
from enum import Enum
from pydantic import model_serializer
from pydantic import field_serializer, model_serializer
from typing import List, Optional
from typing_extensions import NotRequired, TypedDict


class Granularity(str, Enum):
class Granularity(str, Enum, metaclass=utils.OpenEnumMeta):
r"""The granularity of the report."""

DAILY = "daily"
Expand Down Expand Up @@ -73,6 +74,15 @@ class CreditUsageReport(BaseModel):
granularity: Optional[Granularity] = Granularity.DAILY
r"""The granularity of the report."""

@field_serializer("granularity")
def serialize_granularity(self, value):
if isinstance(value, str):
try:
return models.Granularity(value)
except ValueError:
return value
return value

@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["credits_consumed_by_consumer", "granularity"])
Expand Down
Loading
Loading