atomic

package module
v1.1.10-beta.49 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 22, 2025 License: GPL-3.0 Imports: 17 Imported by: 1

README

atomic-go

The official Atomic Go client library for interacting with the Atomic API.

Installation

go get github.com/libatomic/atomic-go

Quick Start

package main

import (
    "context"
    "log"
    
    "github.com/libatomic/atomic-go"
)

func main() {
    // Create a client with your access token
    client := atomic.New(
        atomic.WithHost("api.atomic.com"),
        atomic.WithToken("your-access-token"),
    )
    
    // Get a user
    user, err := client.UserGet(context.Background(), &atomic.UserGetInput{
        UserID: atomic.String("user-id"),
    })
    if err != nil {
        log.Fatal(err)
    }
    
    log.Printf("User: %s", user.Email)
}

Authentication

The Atomic API uses OAuth2 for authentication. You can configure authentication in several ways:

Access Token Authentication
client := atomic.New(
    atomic.WithHost("api.atomic.com"),
    atomic.WithToken("your-access-token"),
)
Client Credentials Flow
client := atomic.New(
    atomic.WithHost("api.atomic.com"),
    atomic.WithClientCredentials("client-id", "client-secret", "instance:read", "instance:write"),
)
Custom HTTP Client
customClient := &http.Client{
    Timeout: 30 * time.Second,
}

client := atomic.New(
    atomic.WithHost("api.atomic.com"),
    atomic.WithToken("your-access-token"),
    atomic.WithHTTPClient(customClient),
)

API Endpoints

The atomic-go library provides access to all major Atomic API endpoints:

Users

Manage user accounts and profiles.

// Get a user
user, err := client.UserGet(ctx, &atomic.UserGetInput{
    UserID: atomic.String("user-id"),
})

// Create a user
user, err := client.UserCreate(ctx, &atomic.UserCreateInput{
    Email:    atomic.String("user@example.com"),
    Password: atomic.String("secure-password"),
    Name:     atomic.String("John Doe"),
})

// Update a user
user, err := client.UserUpdate(ctx, &atomic.UserUpdateInput{
    UserID: atomic.String("user-id"),
    Name:   atomic.String("Jane Doe"),
})

// Delete a user
err := client.UserDelete(ctx, &atomic.UserDeleteInput{
    UserID: atomic.String("user-id"),
})

// List users
users, err := client.UserList(ctx, &atomic.UserListInput{
    Limit: atomic.Int(10),
    Offset: atomic.Int(0),
})
Applications

Manage OAuth applications.

// Create an application
app, err := client.ApplicationCreate(ctx, &atomic.ApplicationCreateInput{
    Name:        atomic.String("My App"),
    Description: atomic.String("My application description"),
    RedirectURI: atomic.String("https://myapp.com/callback"),
})

// Get an application
app, err := client.ApplicationGet(ctx, &atomic.ApplicationGetInput{
    ApplicationID: atomic.String("app-id"),
})

// Update an application
app, err := client.ApplicationUpdate(ctx, &atomic.ApplicationUpdateInput{
    ApplicationID: atomic.String("app-id"),
    Name:          atomic.String("Updated App Name"),
})

// Delete an application
err := client.ApplicationDelete(ctx, &atomic.ApplicationDeleteInput{
    ApplicationID: atomic.String("app-id"),
})

// List applications
apps, err := client.ApplicationList(ctx, &atomic.ApplicationListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Access Tokens

Manage OAuth access tokens.

// Create an access token for a user
token, err := client.AccessTokenCreate(ctx, &atomic.AccessTokenCreateInput{
    UserID: atomic.String("user-id"),
    Scopes: []string{"read", "write"},
})

// Create an access token for an application
token, err := client.AccessTokenCreate(ctx, &atomic.AccessTokenCreateInput{
    ApplicationID: atomic.String("app-id"),
    Scopes:        []string{"read", "write"},
})

// Get an access token
token, err := client.AccessTokenGet(ctx, &atomic.AccessTokenGetInput{
    AccessTokenID: atomic.String("token-id"),
})

// Revoke an access token
err := client.AccessTokenRevoke(ctx, &atomic.AccessTokenRevokeInput{
    AccessTokenID: atomic.String("token-id"),
})

// Delete an access token
err := client.AccessTokenDelete(ctx, &atomic.AccessTokenDeleteInput{
    AccessTokenID: atomic.String("token-id"),
})
Articles

Manage content articles.

// Get an article
article, err := client.ArticleGet(ctx, &atomic.ArticleGetInput{
    ArticleID: atomic.String("article-id"),
})

// Create an article
article, err := client.ArticleCreate(ctx, &atomic.ArticleCreateInput{
    Title:   atomic.String("My Article"),
    Content: atomic.String("Article content..."),
    Status:  atomic.String("draft"),
})

// Update an article
article, err := client.ArticleUpdate(ctx, &atomic.ArticleUpdateInput{
    ArticleID: atomic.String("article-id"),
    Title:     atomic.String("Updated Title"),
    Status:    atomic.String("published"),
})

// Delete an article
err := client.ArticleDelete(ctx, &atomic.ArticleDeleteInput{
    ArticleID: atomic.String("article-id"),
})

// List articles
articles, err := client.ArticleList(ctx, &atomic.ArticleListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Assets

Manage media assets.

// Get an asset
asset, err := client.AssetGet(ctx, &atomic.AssetGetInput{
    AssetID: atomic.String("asset-id"),
})

// Create an asset
asset, err := client.AssetCreate(ctx, &atomic.AssetCreateInput{
    Name: atomic.String("image.jpg"),
    Type: atomic.String("image"),
    URL:  atomic.String("https://example.com/image.jpg"),
})

// Update an asset
asset, err := client.AssetUpdate(ctx, &atomic.AssetUpdateInput{
    AssetID: atomic.String("asset-id"),
    Name:    atomic.String("updated-name.jpg"),
})

// Delete an asset
err := client.AssetDelete(ctx, &atomic.AssetDeleteInput{
    AssetID: atomic.String("asset-id"),
})

// List assets
assets, err := client.AssetList(ctx, &atomic.AssetListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Templates

Manage email and notification templates.

// Get a template
template, err := client.TemplateGet(ctx, &atomic.TemplateGetInput{
    TemplateID: atomic.String("template-id"),
})

// Create a template
template, err := client.TemplateCreate(ctx, &atomic.TemplateCreateInput{
    Name:    atomic.String("Welcome Email"),
    Subject: atomic.String("Welcome to our platform"),
    Body:    atomic.String("Hello {{name}}, welcome!"),
    Type:    atomic.String("email"),
})

// Update a template
template, err := client.TemplateUpdate(ctx, &atomic.TemplateUpdateInput{
    TemplateID: atomic.String("template-id"),
    Subject:    atomic.String("Updated Subject"),
})

// Delete a template
err := client.TemplateDelete(ctx, &atomic.TemplateDeleteInput{
    TemplateID: atomic.String("template-id"),
})

// List templates
templates, err := client.TemplateList(ctx, &atomic.TemplateListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Subscriptions

Manage user subscriptions and billing.

// Get a subscription
subscription, err := client.SubscriptionGet(ctx, &atomic.SubscriptionGetInput{
    SubscriptionID: atomic.String("subscription-id"),
})

// Create a subscription
subscription, err := client.SubscriptionCreate(ctx, &atomic.SubscriptionCreateInput{
    UserID:  atomic.String("user-id"),
    PlanID:  atomic.String("plan-id"),
    Status:  atomic.String("active"),
})

// Update a subscription
subscription, err := client.SubscriptionUpdate(ctx, &atomic.SubscriptionUpdateInput{
    SubscriptionID: atomic.String("subscription-id"),
    Status:         atomic.String("cancelled"),
})

// Delete a subscription
err := client.SubscriptionDelete(ctx, &atomic.SubscriptionDeleteInput{
    SubscriptionID: atomic.String("subscription-id"),
})

// List subscriptions
subscriptions, err := client.SubscriptionList(ctx, &atomic.SubscriptionListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Plans

Manage subscription plans and pricing.

// Get a plan
plan, err := client.PlanGet(ctx, &atomic.PlanGetInput{
    PlanID: atomic.String("plan-id"),
})

// Create a plan
plan, err := client.PlanCreate(ctx, &atomic.PlanCreateInput{
    Name:        atomic.String("Pro Plan"),
    Description: atomic.String("Professional features"),
    Price:       atomic.Float64(29.99),
    Interval:    atomic.String("monthly"),
})

// Update a plan
plan, err := client.PlanUpdate(ctx, &atomic.PlanUpdateInput{
    PlanID:      atomic.String("plan-id"),
    Name:        atomic.String("Updated Plan Name"),
    Price:       atomic.Float64(39.99),
})

// Delete a plan
err := client.PlanDelete(ctx, &atomic.PlanDeleteInput{
    PlanID: atomic.String("plan-id"),
})

// List plans
plans, err := client.PlanList(ctx, &atomic.PlanListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Prices

Manage pricing tiers and billing.

// Get a price
price, err := client.PriceGet(ctx, &atomic.PriceGetInput{
    PriceID: atomic.String("price-id"),
})

// Create a price
price, err := client.PriceCreate(ctx, &atomic.PriceCreateInput{
    PlanID:  atomic.String("plan-id"),
    Amount:  atomic.Float64(2999), // $29.99 in cents
    Currency: atomic.String("usd"),
    Interval: atomic.String("monthly"),
})

// Update a price
price, err := client.PriceUpdate(ctx, &atomic.PriceUpdateInput{
    PriceID: atomic.String("price-id"),
    Amount:  atomic.Float64(3999), // $39.99 in cents
})

// Delete a price
err := client.PriceDelete(ctx, &atomic.PriceDeleteInput{
    PriceID: atomic.String("price-id"),
})

// List prices
prices, err := client.PriceList(ctx, &atomic.PriceListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Audiences

Manage user audiences and segments.

// Get an audience
audience, err := client.AudienceGet(ctx, &atomic.AudienceGetInput{
    AudienceID: atomic.String("audience-id"),
})

// Create an audience
audience, err := client.AudienceCreate(ctx, &atomic.AudienceCreateInput{
    Name:        atomic.String("Premium Users"),
    Description: atomic.String("Users with premium subscriptions"),
    Filter:      atomic.String("subscription.status = 'active'"),
})

// Update an audience
audience, err := client.AudienceUpdate(ctx, &atomic.AudienceUpdateInput{
    AudienceID:  atomic.String("audience-id"),
    Name:        atomic.String("Updated Audience Name"),
    Description: atomic.String("Updated description"),
})

// Delete an audience
err := client.AudienceDelete(ctx, &atomic.AudienceDeleteInput{
    AudienceID: atomic.String("audience-id"),
})

// List audiences
audiences, err := client.AudienceList(ctx, &atomic.AudienceListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Publishers

Manage content publishers and channels.

// Get a publisher
publisher, err := client.PublisherGet(ctx, &atomic.PublisherGetInput{
    PublisherID: atomic.String("publisher-id"),
})

// Create a publisher
publisher, err := client.PublisherCreate(ctx, &atomic.PublisherCreateInput{
    Name:        atomic.String("My Publisher"),
    Description: atomic.String("My publishing channel"),
    URL:         atomic.String("https://mypublisher.com"),
})

// Update a publisher
publisher, err := client.PublisherUpdate(ctx, &atomic.PublisherUpdateInput{
    PublisherID: atomic.String("publisher-id"),
    Name:        atomic.String("Updated Publisher Name"),
})

// Delete a publisher
err := client.PublisherDelete(ctx, &atomic.PublisherDeleteInput{
    PublisherID: atomic.String("publisher-id"),
})

// List publishers
publishers, err := client.PublisherList(ctx, &atomic.PublisherListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Distributions

Manage content distribution and syndication.

// Get a distribution
distribution, err := client.DistributionGet(ctx, &atomic.DistributionGetInput{
    DistributionID: atomic.String("distribution-id"),
})

// Create a distribution
distribution, err := client.DistributionCreate(ctx, &atomic.DistributionCreateInput{
    ArticleID:   atomic.String("article-id"),
    PublisherID: atomic.String("publisher-id"),
    Status:      atomic.String("scheduled"),
})

// Update a distribution
distribution, err := client.DistributionUpdate(ctx, &atomic.DistributionUpdateInput{
    DistributionID: atomic.String("distribution-id"),
    Status:         atomic.String("published"),
})

// Delete a distribution
err := client.DistributionDelete(ctx, &atomic.DistributionDeleteInput{
    DistributionID: atomic.String("distribution-id"),
})

// List distributions
distributions, err := client.DistributionList(ctx, &atomic.DistributionListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Instances

Manage multi-tenant instances.

// Get an instance
instance, err := client.InstanceGet(ctx, &atomic.InstanceGetInput{
    InstanceID: atomic.String("instance-id"),
})

// Create an instance
instance, err := client.InstanceCreate(ctx, &atomic.InstanceCreateInput{
    Name:        atomic.String("My Instance"),
    Description: atomic.String("My tenant instance"),
    Domain:      atomic.String("myinstance.atomic.com"),
})

// Update an instance
instance, err := client.InstanceUpdate(ctx, &atomic.InstanceUpdateInput{
    InstanceID:  atomic.String("instance-id"),
    Name:        atomic.String("Updated Instance Name"),
    Description: atomic.String("Updated description"),
})

// Delete an instance
err := client.InstanceDelete(ctx, &atomic.InstanceDeleteInput{
    InstanceID: atomic.String("instance-id"),
})

// List instances
instances, err := client.InstanceList(ctx, &atomic.InstanceListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Options

Manage configuration options and settings.

// Get an option
option, err := client.OptionGet(ctx, &atomic.OptionGetInput{
    Name: atomic.String("site_name"),
})

// Update an option
option, err := client.OptionUpdate(ctx, &atomic.OptionUpdateInput{
    Name:  atomic.String("site_name"),
    Value: atomic.String("My Site"),
})

// Remove an option
err := client.OptionRemove(ctx, &atomic.OptionRemoveInput{
    Name: atomic.String("site_name"),
})

// List options
options, err := client.OptionList(ctx, &atomic.OptionListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})
Communication

Send emails and SMS messages.

// Send an email
messages, err := client.SendMail(ctx, &atomic.SendMailInput{
    To:      []string{"user@example.com"},
    Subject: atomic.String("Welcome!"),
    Body:    atomic.String("Welcome to our platform!"),
    TemplateID: atomic.String("template-id"), // Optional
})

// Send an SMS
messages, err := client.SendSMS(ctx, &atomic.SendSMSInput{
    To:   []string{"+1234567890"},
    Body: atomic.String("Your verification code is 123456"),
})

Error Handling

The library provides detailed error information:

user, err := client.UserGet(ctx, &atomic.UserGetInput{
    UserID: atomic.String("invalid-id"),
})
if err != nil {
    if apiErr, ok := err.(atomic.Error); ok {
        log.Printf("API Error: %s (Code: %s)", apiErr.Message, apiErr.Code)
    } else {
        log.Printf("Network Error: %v", err)
    }
}

Response Handling

All API responses are wrapped in a Resource type that provides access to the response data and metadata:

user, err := client.UserGet(ctx, &atomic.UserGetInput{
    UserID: atomic.String("user-id"),
})
if err != nil {
    log.Fatal(err)
}

// Access the user data
fmt.Printf("User: %s\n", user.Email)

// Access response metadata (if available)
if user.LastResponse != nil {
    fmt.Printf("Status: %s\n", user.LastResponse.Status)
    fmt.Printf("Headers: %v\n", user.LastResponse.Headers)
}

Pagination

For list endpoints, use the Limit and Offset parameters for pagination:

// Get first page
users, err := client.UserList(ctx, &atomic.UserListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(0),
})

// Get second page
users, err := client.UserList(ctx, &atomic.UserListInput{
    Limit:  atomic.Int(10),
    Offset: atomic.Int(10),
})

Context Support

All API methods accept a context.Context for cancellation and timeouts:

ctx, cancel := context.WithTimeout(context.Background(), 30*time.Second)
defer cancel()

user, err := client.UserGet(ctx, &atomic.UserGetInput{
    UserID: atomic.String("user-id"),
})

Instance Support

For multi-tenant applications, you can specify an instance ID in the context:

ctx := atomic.ContextWithInstance(context.Background(), "instance-id")

user, err := client.UserGet(ctx, &atomic.UserGetInput{
    UserID: atomic.String("user-id"),
})

Dependencies

The library depends on the following packages:

  • github.com/libatomic/atomic - Core Atomic types and models
  • github.com/google/go-querystring - Query string encoding
  • golang.org/x/oauth2 - OAuth2 authentication
  • github.com/go-ozzo/ozzo-validation/v4 - Input validation

License

This library is licensed under the GNU General Public License v3.0. See the LICENSE file for details.

Documentation

Index

Constants

View Source
const (
	UserTokenCreatePath   = "/api/1.0.0/users/%s/tokens"
	AppTokenCreatePath    = "/api/1.0.0/applications/%s/tokens"
	AccessTokenGetPath    = "/api/1.0.0/tokens/%s"
	AccessTokenRevokePath = "/api/1.0.0/tokens/%s"
	AccessTokenDeletePath = "/api/1.0.0/tokens/%s"
)
View Source
const (
	ApplicationGetPath    = "/api/1.0.0/applications/%s"
	ApplicationCreatePath = "/api/1.0.0/applications"
	ApplicationUpdatePath = "/api/1.0.0/applications/%s"
	ApplicationDeletePath = "/api/1.0.0/applications/%s"
	ApplicationListPath   = "/api/1.0.0/applications"
)
View Source
const (
	ArticleCreatePath = "/api/1.0.0/articles"
	ArticleUpdatePath = "/api/1.0.0/articles/%s"
	ArticleDeletePath = "/api/1.0.0/articles/%s"
	ArticleListPath   = "/api/1.0.0/articles"
	ArticleGetPath    = "/api/1.0.0/articles/%s"
)
View Source
const (
	AssetCreatePath = "/api/1.0.0/assets"
	AssetGetPath    = "/api/1.0.0/assets/%s"
	AssetUpdatePath = "/api/1.0.0/assets/%s"
	AssetDeletePath = "/api/1.0.0/assets/%s"
	AssetListPath   = "/api/1.0.0/assets"
)
View Source
const (
	AudienceGetPath    = "/api/1.0.0/audiences/%s"
	AudienceCreatePath = "/api/1.0.0/audiences"
	AudienceUpdatePath = "/api/1.0.0/audiences/%s"
	AudienceDeletePath = "/api/1.0.0/audiences/%s"
	AudienceListPath   = "/api/1.0.0/audiences"
)
View Source
const (
	DistributionGetPath    = "/api/1.0.0/distributions/%s"
	DistributionCreatePath = "/api/1.0.0/distributions"
	DistributionUpdatePath = "/api/1.0.0/distributions/%s"
	DistributionDeletePath = "/api/1.0.0/distributions/%s"
	DistributionListPath   = "/api/1.0.0/distributions"
)
View Source
const (
	InstanceCreatePath = "/api/1.0.0/instances"
	InstanceGetPath    = "/api/1.0.0/instances/%s"
	InstanceListPath   = "/api/1.0.0/instances"
	InstanceUpdatePath = "/api/1.0.0/instances/%s"
	InstanceDeletePath = "/api/1.0.0/instances/%s"
)
View Source
const (
	JobGetPath     = "/api/1.0.0/jobs/%s"
	JobCreatePath  = "/api/1.0.0/jobs"
	JobRestartPath = "/api/1.0.0/jobs/%s"
	JobUpdatePath  = "/api/1.0.0/jobs/%s"
	JobCancelPath  = "/api/1.0.0/jobs/%s"
	JobListPath    = "/api/1.0.0/jobs"
)
View Source
const (
	OptionGetPath    = "/api/1.0.0/options/%s"
	OptionListPath   = "/api/1.0.0/options"
	OptionUpdatePath = "/api/1.0.0/options/%s"
	OptionRemovePath = "/api/1.0.0/options/%s"
)
View Source
const (
	PartnerGetPath              = "/api/1.0.0/partners/%s"
	PartnerCreatePath           = "/api/1.0.0/partners"
	PartnerUpdatePath           = "/api/1.0.0/partners/%s"
	PartnerDeletePath           = "/api/1.0.0/partners/%s"
	PartnerListPath             = "/api/1.0.0/partners"
	PartnerCredentialCreatePath = "/api/1.0.0/partners/%s/credentials"
	PartnerCredentialGetPath    = "/api/1.0.0/partners/%s/credentials/%s"
	PartnerCredentialDeletePath = "/api/1.0.0/partners/%s/credentials/%s"
	PartnerTokenCreatePath      = "/api/1.0.0/partners/%s/tokens"
	PartnerTokenGetPath         = "/api/1.0.0/partners/%s/tokens/%s"
	PartnerTokenRevokePath      = "/api/1.0.0/partners/%s/tokens/%s"
)
View Source
const (
	PlanGetPath       = "/api/1.0.0/plans/%s"
	PlanCreatePath    = "/api/1.0.0/plans"
	PlanUpdatePath    = "/api/1.0.0/plans/%s"
	PlanDeletePath    = "/api/1.0.0/plans/%s"
	PlanListPath      = "/api/1.0.0/plans"
	PlanSubscribePath = "/api/1.0.0/plans/%s/subscribe"
)
View Source
const (
	PriceGetPath    = "/api/1.0.0/prices/%s"
	PriceCreatePath = "/api/1.0.0/prices"
	PriceUpdatePath = "/api/1.0.0/prices/%s"
	PriceDeletePath = "/api/1.0.0/prices/%s"
	PriceListPath   = "/api/1.0.0/prices"
)
View Source
const (
	PublisherCreatePath = "/api/1.0.0/publishers"
	PublisherUpdatePath = "/api/1.0.0/publishers/%s"
	PublisherGetPath    = "/api/1.0.0/publishers/%s"
	PublisherListPath   = "/api/1.0.0/publishers"
	PublisherDeletePath = "/api/1.0.0/publishers/%s"
)
View Source
const (
	SubscriptionGetPath    = "/api/1.0.0/subscriptions/%s"
	SubscriptionListPath   = "/api/1.0.0/subscriptions"
	SubscriptionCreatePath = "/api/1.0.0/subscriptions"
	SubscriptionUpdatePath = "/api/1.0.0/subscriptions/%s"
	SubscriptionDeletePath = "/api/1.0.0/subscriptions/%s"
)
View Source
const (
	TemplateGetPath    = "/api/1.0.0/templates/%s"
	TemplateListPath   = "/api/1.0.0/templates"
	TemplateCreatePath = "/api/1.0.0/templates"
	TemplateUpdatePath = "/api/1.0.0/templates/%s"
	TemplateDeletePath = "/api/1.0.0/templates/%s"
)
View Source
const (
	UserGetPath    = "/api/1.0.0/users/%s"
	UserCreatePath = "/api/1.0.0/users"
	UserUpdatePath = "/api/1.0.0/users/%s"
	UserDeletePath = "/api/1.0.0/users/%s"
	UserListPath   = "/api/1.0.0/users"
	UserImportPath = "/api/1.0.0/users/import"
)
View Source
const (
	DefaultAPIHost = "localhost:9000"
)
View Source
const (
	SMSSendPath = "/api/1.0.0/sms"
)
View Source
const (
	SendMailPath = "/api/1.0.0/mail"
)

Variables

This section is empty.

Functions

func ContextWithParams

func ContextWithParams(ctx context.Context, params Params) context.Context

Types

type AccessToken

type AccessToken = atomic.AccessToken

type AccessTokenCreateInput

type AccessTokenCreateInput = atomic.AccessTokenCreateInput

type AccessTokenGetInput

type AccessTokenGetInput = atomic.AccessTokenGetInput

type AccessTokenRevokeInput

type AccessTokenRevokeInput = atomic.AccessTokenRevokeInput

type ApiBackend

type ApiBackend struct {
	// contains filtered or unexported fields
}

func (*ApiBackend) ExecContext

func (b *ApiBackend) ExecContext(ctx context.Context, params RequestContainer, result Responder) error

func (*ApiBackend) NewRequest

func (b *ApiBackend) NewRequest(ctx context.Context, params RequestContainer) (*http.Request, error)

type ApiConfig

type ApiConfig struct {
	AccessToken string
	Host        string
	// contains filtered or unexported fields
}

type ApiOption

type ApiOption func(*ApiConfig)

func WithClientCredentials

func WithClientCredentials(clientID, clientSecret string, scopes ...string) ApiOption

func WithHTTPClient

func WithHTTPClient(http *http.Client) ApiOption

func WithHost

func WithHost(host string) ApiOption

func WithToken

func WithToken(token string) ApiOption

type Application

type Application = atomic.Application

type ApplicationCreateInput

type ApplicationCreateInput = atomic.ApplicationCreateInput

type ApplicationDeleteInput

type ApplicationDeleteInput = atomic.ApplicationDeleteInput

type ApplicationGetInput

type ApplicationGetInput = atomic.ApplicationGetInput

type ApplicationListInput

type ApplicationListInput = atomic.ApplicationListInput

type ApplicationUpdateInput

type ApplicationUpdateInput = atomic.ApplicationUpdateInput

type Article

type Article = atomic.Article

type ArticleCreateInput

type ArticleCreateInput = atomic.ArticleCreateInput

type ArticleDeleteInput

type ArticleDeleteInput = atomic.ArticleDeleteInput

type ArticleGetInput

type ArticleGetInput = atomic.ArticleGetInput

type ArticleListInput

type ArticleListInput = atomic.ArticleListInput

type ArticleUpdateInput

type ArticleUpdateInput = atomic.ArticleUpdateInput

type Asset

type Asset = atomic.Asset

type AssetCreateInput

type AssetCreateInput = atomic.AssetCreateInput

type AssetDeleteInput

type AssetDeleteInput = atomic.AssetDeleteInput

type AssetGetInput

type AssetGetInput = atomic.AssetGetInput

type AssetListInput

type AssetListInput = atomic.AssetListInput

type AssetUpdateInput

type AssetUpdateInput = atomic.AssetUpdateInput

type Audience

type Audience = atomic.Audience

type AudienceCreateInput

type AudienceCreateInput = atomic.AudienceCreateInput

type AudienceDeleteInput

type AudienceDeleteInput = atomic.AudienceDeleteInput

type AudienceGetInput

type AudienceGetInput = atomic.AudienceGetInput

type AudienceListInput

type AudienceListInput = atomic.AudienceListInput

type AudienceUpdateInput

type AudienceUpdateInput = atomic.AudienceUpdateInput

type Backend

type Backend interface {
	ExecContext(ctx context.Context, params RequestContainer, result Responder) error
}

type Client

type Client struct {
	Backend Backend
}

func New

func New(opts ...ApiOption) *Client

func NewClient

func NewClient(backend Backend) *Client

func (*Client) AccessTokenCreate

func (c *Client) AccessTokenCreate(ctx context.Context, params *AccessTokenCreateInput) (*AccessToken, error)

func (*Client) AccessTokenGet

func (c *Client) AccessTokenGet(ctx context.Context, params *AccessTokenGetInput) (*AccessToken, error)

func (*Client) AccessTokenRevoke

func (c *Client) AccessTokenRevoke(ctx context.Context, params *AccessTokenRevokeInput) error

func (*Client) ApplicationCreate

func (c *Client) ApplicationCreate(ctx context.Context, params *ApplicationCreateInput) (*Application, error)

func (*Client) ApplicationDelete

func (c *Client) ApplicationDelete(ctx context.Context, params *ApplicationDeleteInput) error

func (*Client) ApplicationGet

func (c *Client) ApplicationGet(ctx context.Context, params *ApplicationGetInput) (*Application, error)

func (*Client) ApplicationList

func (c *Client) ApplicationList(ctx context.Context, params *atomic.ApplicationListInput) ([]*atomic.Application, error)

func (*Client) ApplicationUpdate

func (c *Client) ApplicationUpdate(ctx context.Context, params *ApplicationUpdateInput) (*Application, error)

func (*Client) ArticleCreate

func (c *Client) ArticleCreate(ctx context.Context, params *ArticleCreateInput) (*Article, error)

func (*Client) ArticleDelete

func (c *Client) ArticleDelete(ctx context.Context, params *ArticleDeleteInput) error

func (*Client) ArticleGet

func (c *Client) ArticleGet(ctx context.Context, params *ArticleGetInput) (*Article, error)

func (*Client) ArticleList

func (c *Client) ArticleList(ctx context.Context, params *ArticleListInput) ([]*Article, error)

func (*Client) ArticleUpdate

func (c *Client) ArticleUpdate(ctx context.Context, params *ArticleUpdateInput) (*Article, error)

func (*Client) AssetCreate

func (c *Client) AssetCreate(ctx context.Context, params *AssetCreateInput) (*Asset, error)

func (*Client) AssetDelete

func (c *Client) AssetDelete(ctx context.Context, params *AssetDeleteInput) error

func (*Client) AssetGet

func (c *Client) AssetGet(ctx context.Context, params *AssetGetInput) (*Asset, error)

func (*Client) AssetList

func (c *Client) AssetList(ctx context.Context, params *AssetListInput) ([]*Asset, error)

func (*Client) AssetUpdate

func (c *Client) AssetUpdate(ctx context.Context, params *AssetUpdateInput) (*Asset, error)

func (*Client) AudienceCreate

func (c *Client) AudienceCreate(ctx context.Context, params *AudienceCreateInput) (*Audience, error)

func (*Client) AudienceDelete

func (c *Client) AudienceDelete(ctx context.Context, params *AudienceDeleteInput) error

func (*Client) AudienceGet

func (c *Client) AudienceGet(ctx context.Context, params *AudienceGetInput) (*Audience, error)

func (*Client) AudienceList

func (c *Client) AudienceList(ctx context.Context, params *AudienceListInput) ([]*Audience, error)

func (*Client) AudienceUpdate

func (c *Client) AudienceUpdate(ctx context.Context, params *AudienceUpdateInput) (*Audience, error)

func (*Client) DistributionCreate

func (c *Client) DistributionCreate(ctx context.Context, params *DistributionCreateInput) (*Distribution, error)

func (*Client) DistributionDelete

func (c *Client) DistributionDelete(ctx context.Context, params *DistributionDeleteInput) error

func (*Client) DistributionGet

func (c *Client) DistributionGet(ctx context.Context, params *DistributionGetInput) (*Distribution, error)

func (*Client) DistributionList

func (c *Client) DistributionList(ctx context.Context, params *DistributionListInput) ([]*Distribution, error)

func (*Client) DistributionUpdate

func (c *Client) DistributionUpdate(ctx context.Context, params *DistributionUpdateInput) (*Distribution, error)

func (*Client) InstanceCreate

func (c *Client) InstanceCreate(ctx context.Context, params *InstanceCreateInput) (*Instance, error)

func (*Client) InstanceDelete

func (c *Client) InstanceDelete(ctx context.Context, params *InstanceDeleteInput) error

func (*Client) InstanceGet

func (c *Client) InstanceGet(ctx context.Context, params *InstanceGetInput) (*Instance, error)

func (*Client) InstanceList

func (c *Client) InstanceList(ctx context.Context, params *InstanceListInput) ([]*Instance, error)

func (*Client) InstanceUpdate

func (c *Client) InstanceUpdate(ctx context.Context, params *InstanceUpdateInput) (*Instance, error)

func (*Client) JobCancel

func (c *Client) JobCancel(ctx context.Context, params *JobCancelInput) error

func (*Client) JobCreate

func (c *Client) JobCreate(ctx context.Context, params *JobCreateInput) (*Job, error)

func (*Client) JobGet

func (c *Client) JobGet(ctx context.Context, params *JobGetInput) (*Job, error)

func (*Client) JobList

func (c *Client) JobList(ctx context.Context, params *JobListInput) ([]*Job, error)

func (*Client) JobRestart

func (c *Client) JobRestart(ctx context.Context, params *JobRestartInput) (*Job, error)

func (*Client) JobUpdate

func (c *Client) JobUpdate(ctx context.Context, params *JobUpdateInput) (*Job, error)

func (*Client) OptionGet

func (c *Client) OptionGet(ctx context.Context, params *OptionGetInput) (*Option, error)

func (*Client) OptionList

func (c *Client) OptionList(ctx context.Context, params *OptionListInput) ([]*Option, error)

func (*Client) OptionRemove

func (c *Client) OptionRemove(ctx context.Context, params *OptionRemoveInput) error

func (*Client) OptionUpdate

func (c *Client) OptionUpdate(ctx context.Context, params *OptionUpdateInput) (*Option, error)

func (*Client) PartnerCreate

func (c *Client) PartnerCreate(ctx context.Context, params *PartnerCreateInput) (*Partner, error)

func (*Client) PartnerCredentialCreate

func (c *Client) PartnerCredentialCreate(ctx context.Context, params *PartnerCredentialCreateInput) (*PartnerCredential, error)

func (*Client) PartnerCredentialDelete

func (c *Client) PartnerCredentialDelete(ctx context.Context, params *PartnerCredentialDeleteInput) error

func (*Client) PartnerCredentialGet

func (c *Client) PartnerCredentialGet(ctx context.Context, params *PartnerCredentialGetInput) (*PartnerCredential, error)

func (*Client) PartnerDelete

func (c *Client) PartnerDelete(ctx context.Context, params *PartnerDeleteInput) error

func (*Client) PartnerGet

func (c *Client) PartnerGet(ctx context.Context, params *PartnerGetInput) (*Partner, error)

func (*Client) PartnerList

func (c *Client) PartnerList(ctx context.Context, params *PartnerListInput) ([]*Partner, error)

func (*Client) PartnerTokenCreate

func (c *Client) PartnerTokenCreate(ctx context.Context, params *PartnerTokenCreateInput) (*PartnerAccessToken, error)

func (*Client) PartnerTokenGet

func (c *Client) PartnerTokenGet(ctx context.Context, params *PartnerTokenGetInput) (*PartnerAccessToken, error)

func (*Client) PartnerTokenRevoke

func (c *Client) PartnerTokenRevoke(ctx context.Context, params *PartnerTokenRevokeInput) error

func (*Client) PartnerUpdate

func (c *Client) PartnerUpdate(ctx context.Context, params *PartnerUpdateInput) (*Partner, error)

func (*Client) PlanCreate

func (c *Client) PlanCreate(ctx context.Context, params *PlanCreateInput) (*Plan, error)

func (*Client) PlanDelete

func (c *Client) PlanDelete(ctx context.Context, params *PlanDeleteInput) error

func (*Client) PlanGet

func (c *Client) PlanGet(ctx context.Context, params *PlanGetInput) (*Plan, error)

func (*Client) PlanList

func (c *Client) PlanList(ctx context.Context, params *PlanListInput) ([]*Plan, error)

func (*Client) PlanSubscribe

func (c *Client) PlanSubscribe(ctx context.Context, params *PlanSubscribeInput) (*Subscription, error)

func (*Client) PlanUpdate

func (c *Client) PlanUpdate(ctx context.Context, params *PlanUpdateInput) (*Plan, error)

func (*Client) PriceCreate

func (c *Client) PriceCreate(ctx context.Context, params *PriceCreateInput) (*Price, error)

func (*Client) PriceDelete

func (c *Client) PriceDelete(ctx context.Context, params *PriceDeleteInput) error

func (*Client) PriceGet

func (c *Client) PriceGet(ctx context.Context, params *PriceGetInput) (*Price, error)

func (*Client) PriceList

func (c *Client) PriceList(ctx context.Context, params *PriceListInput) ([]*Price, error)

func (*Client) PriceUpdate

func (c *Client) PriceUpdate(ctx context.Context, params *PriceUpdateInput) (*Price, error)

func (*Client) PublisherCreate

func (c *Client) PublisherCreate(ctx context.Context, params *PublisherCreateInput) (*Publisher, error)

func (*Client) PublisherDelete

func (c *Client) PublisherDelete(ctx context.Context, params *PublisherDeleteInput) error

func (*Client) PublisherGet

func (c *Client) PublisherGet(ctx context.Context, params *PublisherGetInput) (*Publisher, error)

func (*Client) PublisherList

func (c *Client) PublisherList(ctx context.Context, params *PublisherListInput) (*PublisherListOutput, error)

func (*Client) PublisherUpdate

func (c *Client) PublisherUpdate(ctx context.Context, params *PublisherUpdateInput) (*Publisher, error)

func (*Client) SendMail

func (c *Client) SendMail(ctx context.Context, params *SendMailInput) ([]*EmailMessage, error)

func (*Client) SendSMS

func (c *Client) SendSMS(ctx context.Context, params *atomic.SendSMSInput) ([]*atomic.SMS, error)

func (*Client) SubscriptionCreate

func (c *Client) SubscriptionCreate(ctx context.Context, params *SubscriptionCreateInput) (*Subscription, error)

func (*Client) SubscriptionDelete

func (c *Client) SubscriptionDelete(ctx context.Context, params *SubscriptionDeleteInput) error

func (*Client) SubscriptionGet

func (c *Client) SubscriptionGet(ctx context.Context, params *SubscriptionGetInput) (*Subscription, error)

func (*Client) SubscriptionList

func (c *Client) SubscriptionList(ctx context.Context, params *SubscriptionListInput) ([]*Subscription, error)

func (*Client) SubscriptionUpdate

func (c *Client) SubscriptionUpdate(ctx context.Context, params *SubscriptionUpdateInput) (*Subscription, error)

func (*Client) TemplateCreate

func (c *Client) TemplateCreate(ctx context.Context, params *TemplateCreateInput) (*Template, error)

func (*Client) TemplateDelete

func (c *Client) TemplateDelete(ctx context.Context, params *TemplateDeleteInput) error

func (*Client) TemplateGet

func (c *Client) TemplateGet(ctx context.Context, params *TemplateGetInput) (*Template, error)

func (*Client) TemplateList

func (c *Client) TemplateList(ctx context.Context, params *TemplateListInput) ([]*Template, error)

func (*Client) TemplateUpdate

func (c *Client) TemplateUpdate(ctx context.Context, params *TemplateUpdateInput) (*Template, error)

func (*Client) UserCreate

func (c *Client) UserCreate(ctx context.Context, params *UserCreateInput) (*User, error)

func (*Client) UserDelete

func (c *Client) UserDelete(ctx context.Context, params *UserDeleteInput) error

func (*Client) UserGet

func (c *Client) UserGet(ctx context.Context, params *UserGetInput) (*User, error)

func (*Client) UserImport

func (c *Client) UserImport(ctx context.Context, params *UserImportInput) (*Job, error)

func (*Client) UserList

func (c *Client) UserList(ctx context.Context, params *UserListInput) ([]*User, error)

func (*Client) UserUpdate

func (c *Client) UserUpdate(ctx context.Context, params *UserUpdateInput) (*User, error)

type ClientParamsKey

type ClientParamsKey string

type Distribution

type Distribution = atomic.Distribution

type DistributionCreateInput

type DistributionCreateInput = atomic.DistributionCreateInput

type DistributionDeleteInput

type DistributionDeleteInput = atomic.DistributionDeleteInput

type DistributionGetInput

type DistributionGetInput = atomic.DistributionGetInput

type DistributionListInput

type DistributionListInput = atomic.DistributionListInput

type DistributionUpdateInput

type DistributionUpdateInput = atomic.DistributionUpdateInput

type EmailMessage

type EmailMessage = email.Message

type Error

type Error struct {
	Code    string `json:"code,omitempty"`
	Message string `json:"message,omitempty"`
}

func (Error) Error

func (e Error) Error() string

type Instance

type Instance = atomic.Instance

type InstanceCreateInput

type InstanceCreateInput = atomic.InstanceCreateInput

type InstanceDeleteInput

type InstanceDeleteInput = atomic.InstanceDeleteInput

type InstanceGetInput

type InstanceGetInput = atomic.InstanceGetInput

type InstanceListInput

type InstanceListInput = atomic.InstanceListInput

type InstanceUpdateInput

type InstanceUpdateInput = atomic.InstanceUpdateInput

type Iter

type Iter[P any, T any] struct {
	// contains filtered or unexported fields
}

func NewIter

func NewIter[P any, T any](params P, n NextFunc[P, T]) *Iter[P, T]

type Job

type Job = atomic.Job

type JobCancelInput

type JobCancelInput = atomic.JobCancelInput

type JobCreateInput

type JobCreateInput = atomic.JobCreateInput

type JobGetInput

type JobGetInput = atomic.JobGetInput

type JobListInput

type JobListInput = atomic.JobListInput

type JobRestartInput

type JobRestartInput = atomic.JobRestartInput

type JobUpdateInput

type JobUpdateInput = atomic.JobUpdateInput

type ListParams

type ListParams struct {
	Params
	Limit  *int64 `schema:"limit,omitempty"`
	Offset *int64 `schema:"offset,omitempty"`
}

type NextFunc

type NextFunc[P any, T any] func(P) (T, bool)

type Option

type Option = atomic.Option

type OptionGetInput

type OptionGetInput = atomic.OptionGetInput

type OptionListInput

type OptionListInput = atomic.OptionListInput

type OptionRemoveInput

type OptionRemoveInput = atomic.OptionRemoveInput

type OptionUpdateInput

type OptionUpdateInput = atomic.OptionUpdateInput

type Params

type Params struct {
	Context  context.Context `schema:"-" json:"-"`
	Headers  http.Header     `schema:"-" json:"-"`
	NoAuth   bool            `schema:"-" json:"-"`
	Expand   []string        `schema:"expand,omitempty" json:"expand,omitempty"`
	Fields   []string        `schema:"fields,omitempty" json:"fields,omitempty"`
	Instance *string         `schema:"instance,omitempty" json:"-"`
}

func ParamsFromContext

func ParamsFromContext(ctx context.Context) Params

type ParamsEncoding

type ParamsEncoding string
const (
	ParamsEncodingJSON      ParamsEncoding = "json"
	ParamsEncodingMultipart ParamsEncoding = "multipart"
	ParamsEncodingQuery     ParamsEncoding = "query"
)

type Partner

type Partner = atomic.Partner

type PartnerAccessToken

type PartnerAccessToken = atomic.PartnerAccessToken

type PartnerCreateInput

type PartnerCreateInput = atomic.PartnerCreateInput

type PartnerCredential

type PartnerCredential = atomic.PartnerCredential

type PartnerCredentialCreateInput

type PartnerCredentialCreateInput = atomic.PartnerCredentialCreateInput

type PartnerCredentialDeleteInput

type PartnerCredentialDeleteInput = atomic.PartnerCredentialDeleteInput

type PartnerCredentialGetInput

type PartnerCredentialGetInput = atomic.PartnerCredentialGetInput

type PartnerDeleteInput

type PartnerDeleteInput = atomic.PartnerDeleteInput

type PartnerGetInput

type PartnerGetInput = atomic.PartnerGetInput

type PartnerListInput

type PartnerListInput = atomic.PartnerListInput

type PartnerTokenCreateInput

type PartnerTokenCreateInput = atomic.PartnerTokenCreateInput

type PartnerTokenGetInput

type PartnerTokenGetInput = atomic.PartnerTokenGetInput

type PartnerTokenRevokeInput

type PartnerTokenRevokeInput = atomic.PartnerTokenRevokeInput

type PartnerUpdateInput

type PartnerUpdateInput = atomic.PartnerUpdateInput

type Plan

type Plan = atomic.Plan

type PlanCreateInput

type PlanCreateInput = atomic.PlanCreateInput

type PlanDeleteInput

type PlanDeleteInput = atomic.PlanDeleteInput

type PlanGetInput

type PlanGetInput = atomic.PlanGetInput

type PlanListInput

type PlanListInput = atomic.PlanListInput

type PlanSubscribeInput

type PlanSubscribeInput = atomic.PlanSubscribeInput

type PlanUpdateInput

type PlanUpdateInput = atomic.PlanUpdateInput

type Price

type Price = atomic.Price

type PriceCreateInput

type PriceCreateInput = atomic.PriceCreateInput

type PriceDeleteInput

type PriceDeleteInput = atomic.PriceDeleteInput

type PriceGetInput

type PriceGetInput = atomic.PriceGetInput

type PriceListInput

type PriceListInput = atomic.PriceListInput

type PriceUpdateInput

type PriceUpdateInput = atomic.PriceUpdateInput

type Publisher

type Publisher = atomic.Publisher

type PublisherCreateInput

type PublisherCreateInput = atomic.PublisherCreateInput

type PublisherDeleteInput

type PublisherDeleteInput = atomic.PublisherDeleteInput

type PublisherGetInput

type PublisherGetInput = atomic.PublisherGetInput

type PublisherListInput

type PublisherListInput = atomic.PublisherListInput

type PublisherListOutput

type PublisherListOutput = atomic.PublisherListOutput

type PublisherUpdateInput

type PublisherUpdateInput = atomic.PublisherUpdateInput

type RequestContainer

type RequestContainer interface {
	MethodParams() validation.Validatable
	RequestParams() Params
	ParamsEncoding() ParamsEncoding
	ContentType() string
	Method() string
	Path() string
	Body() io.Reader
}

type RequestProxy

type RequestProxy[T validation.Validatable] struct {
	// contains filtered or unexported fields
}

func NewRequest

func NewRequest[T validation.Validatable](ctx context.Context, path string, methodParams T) *RequestProxy[T]

func (*RequestProxy[T]) Body

func (p *RequestProxy[T]) Body() io.Reader

func (*RequestProxy[T]) ContentType

func (p *RequestProxy[T]) ContentType() string

func (*RequestProxy[T]) Delete

func (p *RequestProxy[T]) Delete() *RequestProxy[T]

func (*RequestProxy[T]) Get

func (p *RequestProxy[T]) Get() *RequestProxy[T]

func (*RequestProxy[T]) MarshalJSON

func (p *RequestProxy[T]) MarshalJSON() ([]byte, error)

func (*RequestProxy[T]) Method

func (p *RequestProxy[T]) Method() string

func (*RequestProxy[T]) MethodParams

func (p *RequestProxy[T]) MethodParams() validation.Validatable

func (*RequestProxy[T]) ParamsEncoding

func (p *RequestProxy[T]) ParamsEncoding() ParamsEncoding

func (*RequestProxy[T]) Patch

func (p *RequestProxy[T]) Patch() *RequestProxy[T]

func (*RequestProxy[T]) Path

func (p *RequestProxy[T]) Path() string

func (*RequestProxy[T]) Post

func (p *RequestProxy[T]) Post() *RequestProxy[T]

func (*RequestProxy[T]) Put

func (p *RequestProxy[T]) Put() *RequestProxy[T]

func (*RequestProxy[T]) RequestParams

func (p *RequestProxy[T]) RequestParams() Params

func (*RequestProxy[T]) WithBody

func (p *RequestProxy[T]) WithBody(body io.Reader) *RequestProxy[T]

func (*RequestProxy[T]) WithContentType

func (p *RequestProxy[T]) WithContentType(contentType string) *RequestProxy[T]

func (*RequestProxy[T]) WithEncoding

func (p *RequestProxy[T]) WithEncoding(encoding ParamsEncoding) *RequestProxy[T]

func (*RequestProxy[T]) WithMethod

func (p *RequestProxy[T]) WithMethod(method string) *RequestProxy[T]

type Resource

type Resource[T any] struct {
	LastResponse *Response `json:"-"`
	// contains filtered or unexported fields
}

func (*Resource[T]) Pointer

func (r *Resource[T]) Pointer() *T

func (*Resource[T]) Response

func (r *Resource[T]) Response() any

func (*Resource[T]) SetLastResponse

func (r *Resource[T]) SetLastResponse(resp *Response)

func (*Resource[T]) Value

func (r *Resource[T]) Value() T

type Responder

type Responder interface {
	SetLastResponse(resp *Response)
	Response() any
}

type Response

type Response struct {
	Headers    http.Header     `json:"-"`
	Body       json.RawMessage `json:"-"`
	Status     string          `json:"-"`
	StatusCode int             `json:"-"`
}

type ResponseProxy

type ResponseProxy[T any] struct {
	Resource[T]
}

type ResponseSliceProxy

type ResponseSliceProxy[T any] struct {
	Resource[[]T]
}

type SendMailInput

type SendMailInput = atomic.SendMailInput

type Subscription

type Subscription = atomic.Subscription

type SubscriptionCreateInput

type SubscriptionCreateInput = atomic.SubscriptionCreateInput

type SubscriptionDeleteInput

type SubscriptionDeleteInput = atomic.SubscriptionDeleteInput

type SubscriptionGetInput

type SubscriptionGetInput = atomic.SubscriptionGetInput

type SubscriptionListInput

type SubscriptionListInput = atomic.SubscriptionListInput

type SubscriptionUpdateInput

type SubscriptionUpdateInput = atomic.SubscriptionUpdateInput

type Template

type Template = atomic.Template

type TemplateCreateInput

type TemplateCreateInput = atomic.TemplateCreateInput

type TemplateDeleteInput

type TemplateDeleteInput = atomic.TemplateDeleteInput

type TemplateGetInput

type TemplateGetInput = atomic.TemplateGetInput

type TemplateListInput

type TemplateListInput = atomic.TemplateListInput

type TemplateUpdateInput

type TemplateUpdateInput = atomic.TemplateUpdateInput

type User

type User = atomic.User

type UserCreateInput

type UserCreateInput = atomic.UserCreateInput

type UserDeleteInput

type UserDeleteInput = atomic.UserDeleteInput

type UserGetInput

type UserGetInput = atomic.UserGetInput

type UserImportInput

type UserImportInput = atomic.UserImportInput

type UserListInput

type UserListInput = atomic.UserListInput

type UserUpdateInput

type UserUpdateInput = atomic.UserUpdateInput

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL