Skip to content
Scalekit Docs
Talk to an EngineerDashboard

M2M clients

Machine-to-machine clients and tokens

Use the M2M client on scalekit_client to create and manage machine-to-machine OAuth clients and secrets for service-to-service auth.

Create an M2M client, store the secret securely, then obtain tokens with client credentials.

clientM2MClienthttps://github.com/scalekit-inc/scalekit-sdk-python/blob/main/scalekit/m2m_client.py
#asynclist_organization_clients

Method to list organization clients

paramorganization_idstr

Organization id to list clients for

parampage_sizeOptional[int]

Optional. Page size for pagination (between 10 and 100)

parampage_tokenOptional[str]

Optional. Page token for pagination

returnsListOrganizationClientsResponse

List Organization Clients Response

response = scalekit_client.m2m_client.list_organization_clients(
'org_123456',
page_size=50
)
for client in response[0].clients:
print(f'Client: {client.id}')
clientM2MClienthttps://github.com/scalekit-inc/scalekit-sdk-python/blob/main/scalekit/m2m_client.py
#asyncget_organization_client

Method to get organization client

paramorganization_idstr

organization id

paramclient_idstr

client id

returnsGetOrganizationClientResponse

The response payload for this operation.

response = scalekit_client.m2m_client.get_organization_client(
'org_123456',
'client_123456'
)
clientM2MClienthttps://github.com/scalekit-inc/scalekit-sdk-python/blob/main/scalekit/m2m_client.py
#asynccreate_organization_client

Method to create organization client

paramorganization_idstr

Organization Id to create client for

paramm2m_clientOrganizationClient

OrganizationClient obj with desired client properties.

returnsCreateOrganizationClientResponse

Create Organization Client Response

from scalekit.v1.clients.clients_pb2 import OrganizationClient
client = OrganizationClient()
client.name = "My M2M Client"
response = scalekit_client.m2m_client.create_organization_client(
'org_123456',
client
)
clientM2MClienthttps://github.com/scalekit-inc/scalekit-sdk-python/blob/main/scalekit/m2m_client.py
#asyncupdate_organization_client

Method to update organization client

paramorganization_idstr

organization id

paramclient_idstr

client id

paramm2m_clientOrganizationClient

Organization Client

returnsUpdateOrganizationClientResponse

Update Organization Client Response

from scalekit.v1.clients.clients_pb2 import OrganizationClient
client = OrganizationClient()
client.name = "Updated M2M Client"
response = scalekit_client.m2m_client.update_organization_client(
'org_123456',
'client_123456',
client
)
clientM2MClienthttps://github.com/scalekit-inc/scalekit-sdk-python/blob/main/scalekit/m2m_client.py
#asyncdelete_organization_client

Method to delete organization client

paramorganization_idstr

organization id

paramclient_idstr

client id

returnsNone

Empty on success.

scalekit_client.m2m_client.delete_organization_client(
'org_123456',
'client_123456'
)
clientM2MClienthttps://github.com/scalekit-inc/scalekit-sdk-python/blob/main/scalekit/m2m_client.py
#asyncadd_organization_client_secret

Method to add organization client secret

paramorganization_idstr

organization id

paramclient_idstr

client id

returnsCreateOrganizationClientSecretResponse

Create Organization Client Secret Response

response = scalekit_client.m2m_client.add_organization_client_secret(
'org_123456',
'client_123456'
)
clientM2MClienthttps://github.com/scalekit-inc/scalekit-sdk-python/blob/main/scalekit/m2m_client.py
#asyncremove_organization_client_secret

Method to remove organization client secret

paramorganization_idstr

organization id

paramclient_idstr

client id

paramsecret_idstr

secret id

returnsNone

Empty on success.

scalekit_client.m2m_client.remove_organization_client_secret(
'org_123456',
'client_123456',
'secret_123456'
)