Accounts
Create an account pair
POST to /v1/accountsCreate a pair of live and test accounts. The accounts are linked via the sibling_id property.Request body
namestringrequired
The account name.
currencystringrequired
The account's currency.
ISO 4217 3 character currency code.
Note: Lune does not support all currency codes.
GBPEURUSDSEKCHFbeneficiarystring
The account beneficiary. Leading and trailing spaces are removed.
handlestring
Pattern: ^[a-z0-9-_]+$
handle is a client defined URL-friendly string that identifies the account.
The handle is unique per organisation and account type.
external_pages_visibilitystring
Controls the visibility of external pages such as sustainability and analytics pages.
public pages are visible to everyone.
private pages are only visible through a verified JWT.
hidden pages not visible.
Defaults to hidden.
publichiddenprivateResponse
liveobjectrequired
An Account represents the entity which performs API operations.
Each API operation like creating an order or creating an emission estimate is ring-fenced within an Account.
idstringrequired
The Account's unique identifier
namestringrequired
The Account's name
organisation_idstringrequired
The unique identifier of the organisation this account belongs to
handlestringrequirednullable
Pattern: ^[a-z0-9-_]+$
handle is a client defined URL-friendly string that identifies the account.
The handle is unique per organisation and account type.
currencystringrequired
The account's currency.
ISO 4217 3 character currency code.
Note: Lune does not support all currency codes.
GBPEURUSDSEKCHFtypestringrequired
The account's type.
livetestlogostringrequirednullable
The account logo
beneficiarystringrequirednullable
Retirement beneficiary
This is the name that appears on future retirements that are made in this account. If none is present, the organisation beneficiary will be used instead.
bundle_portfolio_idstringrequirednullable
Bundle portfolio id tied to the account.
external_pages_visibilitystringrequired
Controls the visibility of external pages such as sustainability and analytics pages.
public pages are visible to everyone.
private pages are only visible through a verified JWT.
hidden pages not visible.
Defaults to hidden.
publichiddenprivatetestobjectrequired
An Account represents the entity which performs API operations.
Each API operation like creating an order or creating an emission estimate is ring-fenced within an Account.
idstringrequired
The Account's unique identifier
namestringrequired
The Account's name
organisation_idstringrequired
The unique identifier of the organisation this account belongs to
handlestringrequirednullable
Pattern: ^[a-z0-9-_]+$
handle is a client defined URL-friendly string that identifies the account.
The handle is unique per organisation and account type.
currencystringrequired
The account's currency.
ISO 4217 3 character currency code.
Note: Lune does not support all currency codes.
GBPEURUSDSEKCHFtypestringrequired
The account's type.
livetestlogostringrequirednullable
The account logo
beneficiarystringrequirednullable
Retirement beneficiary
This is the name that appears on future retirements that are made in this account. If none is present, the organisation beneficiary will be used instead.
bundle_portfolio_idstringrequirednullable
Bundle portfolio id tied to the account.
external_pages_visibilitystringrequired
Controls the visibility of external pages such as sustainability and analytics pages.
public pages are visible to everyone.
private pages are only visible through a verified JWT.
hidden pages not visible.
Defaults to hidden.
publichiddenprivateErrors
This API operation can return the following errors:400api_version_invalid400bundle_selection_ratios_invalid400bundle_selection_bundle_invalid400order_value_invalid400bundle_id_invalid400id_invalid400distance_invalid400test_account_name_update_disallowed400bundle_selection_ratios_invalid_format400address_not_foundList accounts
GET to /v1/accountsQuery parameters
limitstring
Pattern: ^\d+$
Maximum number of resources to return, between 1 and 100.
afterstring
A cursor for use in pagination.
The cursor that points to the starting item of the next page of results. If not provided, the first page of results is returned.
namestring
Pattern: ^[a-zA-Z0-9_]{3,}$
Filter accounts based on name (case insensitive). The value can appear at the beggining, middle or end on the actual account name.
Response
has_morebooleanrequired
Whether or not there are more elements available after this set.
If false, this set comprises the end of the array.
Part of a paginated response.
next_cursorstringrequirednullable
The cursor value to be used as the after parameter for fetching the next page of results.
null if has_more is false.
dataarrayrequired
An array of Account objects
Part of a paginated response.
object
An Account represents the entity which performs API operations.
Each API operation like creating an order or creating an emission estimate is ring-fenced within an Account.
idstringrequired
The Account's unique identifier
namestringrequired
The Account's name
organisation_idstringrequired
The unique identifier of the organisation this account belongs to
handlestringrequirednullable
Pattern: ^[a-z0-9-_]+$
handle is a client defined URL-friendly string that identifies the account.
The handle is unique per organisation and account type.
currencystringrequired
The account's currency.
ISO 4217 3 character currency code.
Note: Lune does not support all currency codes.
GBPEURUSDSEKCHFtypestringrequired
The account's type.
livetestlogostringrequirednullable
The account logo
beneficiarystringrequirednullable
Retirement beneficiary
This is the name that appears on future retirements that are made in this account. If none is present, the organisation beneficiary will be used instead.
bundle_portfolio_idstringrequirednullable
Bundle portfolio id tied to the account.
external_pages_visibilitystringrequired
Controls the visibility of external pages such as sustainability and analytics pages.
public pages are visible to everyone.
private pages are only visible through a verified JWT.
hidden pages not visible.
Defaults to hidden.
publichiddenprivateErrors
This API operation can return the following errors:400api_version_invalid400bundle_selection_ratios_invalid400bundle_selection_bundle_invalid400order_value_invalid400bundle_id_invalid400id_invalid400distance_invalid400test_account_name_update_disallowed400bundle_selection_ratios_invalid_format400address_not_foundGet an account
GET to /v1/accounts/meResponse
An Account represents the entity which performs API operations.
Each API operation like creating an order or creating an emission estimate is ring-fenced within an Account.
idstringrequired
The Account's unique identifier
namestringrequired
The Account's name
organisation_idstringrequired
The unique identifier of the organisation this account belongs to
handlestringrequirednullable
Pattern: ^[a-z0-9-_]+$
handle is a client defined URL-friendly string that identifies the account.
The handle is unique per organisation and account type.
currencystringrequired
The account's currency.
ISO 4217 3 character currency code.
Note: Lune does not support all currency codes.
GBPEURUSDSEKCHFtypestringrequired
The account's type.
livetestlogostringrequirednullable
The account logo
beneficiarystringrequirednullable
Retirement beneficiary
This is the name that appears on future retirements that are made in this account. If none is present, the organisation beneficiary will be used instead.
bundle_portfolio_idstringrequirednullable
Bundle portfolio id tied to the account.
external_pages_visibilitystringrequired
Controls the visibility of external pages such as sustainability and analytics pages.
public pages are visible to everyone.
private pages are only visible through a verified JWT.
hidden pages not visible.
Defaults to hidden.
publichiddenprivateErrors
This API operation can return the following errors:400api_version_invalid400bundle_selection_ratios_invalid400bundle_selection_bundle_invalid400order_value_invalid400bundle_id_invalid400id_invalid400distance_invalid400test_account_name_update_disallowed400bundle_selection_ratios_invalid_format400address_not_foundUpdate an account
PUT to /v1/accounts/{id}Update an account. Live accounts will replicate a name change to its sibling account. Test accounts name updates are disallowed (name property must match the current account name).Query parameters
idstringrequired
The account's unique identifier
Request body
It's only possible to edit the name and beneficiary of an account.
Not providing the beneficiary property will result in clearing the existing value (if present).
namestringrequired
The account name.
beneficiarystring
The account beneficiary. Leading and trailing spaces are removed.
bundle_portfolio_idstring
The bundle portfolio unique identifier.
handlestring
Pattern: ^[a-z0-9-_]+$
handle is a client defined URL-friendly string that identifies the account.
The handle is unique per organisation and account type.
external_pages_visibilitystring
Controls the visibility of external pages such as sustainability and analytics pages.
public pages are visible to everyone.
private pages are only visible through a verified JWT.
hidden pages not visible.
Defaults to hidden.
publichiddenprivateResponse
An Account represents the entity which performs API operations.
Each API operation like creating an order or creating an emission estimate is ring-fenced within an Account.
idstringrequired
The Account's unique identifier
namestringrequired
The Account's name
organisation_idstringrequired
The unique identifier of the organisation this account belongs to
handlestringrequirednullable
Pattern: ^[a-z0-9-_]+$
handle is a client defined URL-friendly string that identifies the account.
The handle is unique per organisation and account type.
currencystringrequired
The account's currency.
ISO 4217 3 character currency code.
Note: Lune does not support all currency codes.
GBPEURUSDSEKCHFtypestringrequired
The account's type.
livetestlogostringrequirednullable
The account logo
beneficiarystringrequirednullable
Retirement beneficiary
This is the name that appears on future retirements that are made in this account. If none is present, the organisation beneficiary will be used instead.
bundle_portfolio_idstringrequirednullable
Bundle portfolio id tied to the account.
external_pages_visibilitystringrequired
Controls the visibility of external pages such as sustainability and analytics pages.
public pages are visible to everyone.
private pages are only visible through a verified JWT.
hidden pages not visible.
Defaults to hidden.
publichiddenprivateErrors
This API operation can return the following errors:400api_version_invalid400bundle_selection_ratios_invalid400bundle_selection_bundle_invalid400order_value_invalid400bundle_id_invalid400id_invalid400distance_invalid400test_account_name_update_disallowed400bundle_selection_ratios_invalid_format400address_not_foundPartially update an account
PATCH to /v1/accounts/{id}Partially update an account. Live accounts will replicate a name change to its sibling account. Test accounts name updates are disallowed (name property must match the current account name).Query parameters
idstringrequired
The account's unique identifier
Request body
Providing null on a property will result in clearing the existing value (if present).
namestring
The account name.
beneficiarystringnullable
The account beneficiary. Leading and trailing spaces are removed.
bundle_portfolio_idstringnullable
The bundle portfolio unique identifier.
handlestring
Pattern: ^[a-z0-9-_]+$
handle is a client defined URL-friendly string that identifies the account.
The handle is unique per organisation and account type.
external_pages_visibilitystring
Controls the visibility of external pages such as sustainability and analytics pages.
public pages are visible to everyone.
private pages are only visible through a verified JWT.
hidden pages not visible.
Defaults to hidden.
publichiddenprivateidempotency_keystring
A unique identifier provided by the client.
idempotency_key is unique per account type.
The property ensures Accounts created with an existing idempotency_key are not created.
Response
An Account represents the entity which performs API operations.
Each API operation like creating an order or creating an emission estimate is ring-fenced within an Account.
idstringrequired
The Account's unique identifier
namestringrequired
The Account's name
organisation_idstringrequired
The unique identifier of the organisation this account belongs to
handlestringrequirednullable
Pattern: ^[a-z0-9-_]+$
handle is a client defined URL-friendly string that identifies the account.
The handle is unique per organisation and account type.
currencystringrequired
The account's currency.
ISO 4217 3 character currency code.
Note: Lune does not support all currency codes.
GBPEURUSDSEKCHFtypestringrequired
The account's type.
livetestlogostringrequirednullable
The account logo
beneficiarystringrequirednullable
Retirement beneficiary
This is the name that appears on future retirements that are made in this account. If none is present, the organisation beneficiary will be used instead.
bundle_portfolio_idstringrequirednullable
Bundle portfolio id tied to the account.
external_pages_visibilitystringrequired
Controls the visibility of external pages such as sustainability and analytics pages.
public pages are visible to everyone.
private pages are only visible through a verified JWT.
hidden pages not visible.
Defaults to hidden.
publichiddenprivateErrors
This API operation can return the following errors:400api_version_invalid400bundle_selection_ratios_invalid400bundle_selection_bundle_invalid400order_value_invalid400bundle_id_invalid400id_invalid400distance_invalid400test_account_name_update_disallowed400bundle_selection_ratios_invalid_format400address_not_foundUpdate an account logo
POST to /v1/accounts/{id}/logoQuery parameters
idstringrequired
The account's unique identifier
Request body
multipart/form-datalogostring (binary)required
Response
urlstring (https-url)
Uploaded account logo URL
Errors
This API operation can return the following errors:400api_version_invalid400bundle_selection_ratios_invalid400bundle_selection_bundle_invalid400order_value_invalid400bundle_id_invalid400id_invalid400distance_invalid400test_account_name_update_disallowed400bundle_selection_ratios_invalid_format400address_not_found