Attestation Service Upgrades [Version 1.4.0]

cLabs has identified several areas for improvement of the attestation service SMS deliverability. This post outlines details up to the most recent release of attestation version 1.2.2 and instructions for 10DLC requirements. Please refer to the list below to check for recent updates and features coming soon.

  • :white_check_mark: MessageBird Support and Country Specific SMS Provider Configurations
  • :white_check_mark: 10DLC
  • :white_check_mark:Twilio VerifyAPIs
  • Local signing - COMING SOON
  • Phone Number Type Reporting - COMING SOON

MessageBird Support and Country Specific SMS Provider Configurations

Date: June 22, 2021 :white_check_mark:
Service Version Upgrade: None

We have been monitoring success rates of attestation services among providers and countries and have some new insights. There are several regions where MessageBird is performing significantly better than alternative SMS providers, one being Brazil which is our current highest usage country.
We strongly encourage you to add MessageBird SMS support. See details in previous forum post here.


Date: July 9th, 2021
Service Version Upgrade: (Necessary for Nexmo only) Version 1.2.2
Release Notes: Attestation Service 1.2.2, Attestation Service 1.2.1

Please follow upgrade instructions here: 10DLC Guidance

Please fill out this 2-minute form once you’ve completed the steps for all SMS providers.

Changes Included

  • Toll-free number support
    This US toll-free number can only be used within US and Canada and therefore we should default the sending phone number to a non-US number if we don’t have a country code match. This is only important for Nexmo since Twilio and MessageBird have intelligent routing.

  • More data from /status endpoint
    Adds new parameters to Attestation Service status endpoint and pick up these new params in the metadata crawler logger. Specifically the status endpoint adds the value smsProvidersRandomized since this lets us remove bias when evaluating the efficacy of SMS Providers.

  • Nexmo application filter bug fix
    The application filter wasn’t honored previously and would send SMS from any phone number in the Nexmo account. This bug fix ensures that only the phone numbers associated with the provided application NEXMO_APPLICATION will be used (if specified).

Twilio VerifyAPIs

Date: 7/21/21
Service Version Upgrade: Version 1.3.0
Instructions: Celo Docs: Verify Service
Release Notes: Attestation Service 1.3.0

The Twilio Verify Service is a managed service for sending N-digit codes globally. Because there’s no risk of sending marketing material, Twilio can automatically manage regulations for each recipient geography on behalf of the sender. The service also manages localization for select markets. We chose Twilio as the first SMS provider to measure the impact of switching to a Verify Service since it 1) is heavily used by many operators 2) supports sending custom codes which minimizes Valora-side changes.

:new: :star2:Local Signing :star2::new:

Date: 2021-09-29
Service Version Upgrade: Version 1.4.0
Instructions: Celo Docs: Attestation Service | Celo Docs
Release Notes: Release Attestation Service 1.4.0 · celo-org/celo-monorepo · GitHub

Local signing will enable attestation services to have their attestation signer key stored in a local keystore file. This enables pointing the service to one’s validator proxy or local light node for submitting transactions, and reduces the need to run a redundant full node. Additionally, this allows for providing a fallback node to be used in case the primary node is syncing or down, so this is anticipated to reduce maintenance overhead and request failures.

Phone Number Type Reporting


Phone number type reporting will let clients know if a VOIP number is used. This is useful in combating sybil abuse for use cases such as fund dispersement.