openapi: 3.0.1 info: title: Shareworks Admin REST Authentication Token Authorized Capital API description: Shareworks Admin REST API version: 1.0.0 servers: - url: https://shareworks.solium.com/rest/admin description: Production - url: https://sum-qa02.shareworks.com/rest/admin description: Sandbox security: - accessToken: [] tags: - name: Authorized Capital paths: /v1/company/{companyId}/authorized-capital: get: tags: - Authorized Capital summary: GET Authorized Capital description: Retrieve the top-level calculated cap table information for the company operationId: getCompanyEquityDetails parameters: - name: companyId in: path required: true schema: type: integer format: int32 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/AuthorizedCapitalDetails' '400': description: The request was unacceptable, often due to missing a required parameter, malformed query, or malformed request body. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '401': description: You request was successful and valid but you do not have access to this resource. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '403': description: When a request tries to access a resource that doesn't belong to them. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '422': description: There was a validation error. Check the error message to see what values caused the error. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '500': description: Servers are not working as expected. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json /v1/company/{companyId}/authorized-capital/plan/{planId}: get: tags: - Authorized Capital summary: GET Authorized Capital Plan description: Retrieve an in-depth calculated summary for the specified plan operationId: getCompanyPlanDetails parameters: - name: companyId in: path required: true schema: type: integer format: int32 - name: planId in: path required: true schema: type: integer format: int32 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PlanSummaryDetailsWithGrants' '400': description: The request was unacceptable, often due to missing a required parameter, malformed query, or malformed request body. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '401': description: You request was successful and valid but you do not have access to this resource. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '403': description: When a request tries to access a resource that doesn't belong to them. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '422': description: There was a validation error. Check the error message to see what values caused the error. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '500': description: Servers are not working as expected. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json /v1/company/{companyId}/authorized-capital/securities/{classOfSecurities}: get: tags: - Authorized Capital summary: GET Authorized Capital Class description: Retrieve an in-depth calculated summary for the specified class of securities operationId: getCompanySecuritiesDetails parameters: - name: companyId in: path required: true schema: type: integer format: int32 - name: classOfSecurities in: path required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ClassOfSecuritiesDetails' '400': description: The request was unacceptable, often due to missing a required parameter, malformed query, or malformed request body. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '401': description: You request was successful and valid but you do not have access to this resource. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '403': description: When a request tries to access a resource that doesn't belong to them. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '422': description: There was a validation error. Check the error message to see what values caused the error. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '500': description: Servers are not working as expected. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json /v1/company/{companyId}/authorized-capital/409a: get: tags: - Authorized Capital summary: GET 409A Valuations description: Retrieve a list of the 409A valuations for all funds within a company operationId: getFundDetails parameters: - name: companyId in: path required: true schema: type: integer format: int32 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FundDetails' '400': description: The request was unacceptable, often due to missing a required parameter, malformed query, or malformed request body. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '401': description: You request was successful and valid but you do not have access to this resource. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '403': description: When a request tries to access a resource that doesn't belong to them. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '422': description: There was a validation error. Check the error message to see what values caused the error. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '500': description: Servers are not working as expected. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json /v1/company/{companyId}/authorized-capital/designations: get: tags: - Authorized Capital summary: GET Stock Designations (All) description: Retrieve a list of all stock designations within a company operationId: getStockDesignations parameters: - name: companyId in: path required: true schema: type: integer format: int32 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SecuritiesDesignationDetails' '400': description: The request was unacceptable, often due to missing a required parameter, malformed query, or malformed request body. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '401': description: You request was successful and valid but you do not have access to this resource. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '403': description: When a request tries to access a resource that doesn't belong to them. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '422': description: There was a validation error. Check the error message to see what values caused the error. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json '500': description: Servers are not working as expected. content: application/json: schema: $ref: '#/components/schemas/RestApiErrorResponse' encoding: ? '' : contentType: application/json components: schemas: SecuritiesDesignationDetails: title: Designation Summary Response required: - amountRaisedCurrency - dollarAmountRaised - numberOfCertificates - parValue - percentDiluted - percentOutstanding - percentOwnership - stockDesignationId - stockDesignationName - totalAuthorizedShares - totalAvailableShares - totalCommonStockEquivalentShares - totalOutstandingShares type: object properties: stockDesignationId: type: integer description: Identifier for the stock designation format: int32 stockDesignationName: type: string description: Name for the stock designation numberOfCertificates: type: integer description: The number of certificates associated to a specific stock designation format: int32 dollarAmountRaised: type: number description: The stock designation total dollar amount raised derived from the number of certificates issued multiplied by the price of each certificate. format: double amountRaisedCurrency: type: string description: The three letter currency code of the currency used in the calculation of the amount raised parValue: type: number description: Par value for the stock designation format: double pricePerShare: type: number description: Price per share for the stock designation format: double pricePerShareCurrency: type: string description: The three letter currency code of the price per share currency filingDate: type: string description: The date of the stock filing format: date conversionRatio: type: string description: When the stock designation is convertible, this ratio represents number of converted shares to each original share rounding: type: string description: Rounding type used when converting shares from the stock designation enum: - NORMAL - UP - DOWN convertsToStockDesignationName: type: string description: Name for the stock designation which the stock designation converts to convertsToStockDesignationId: type: integer description: Identifier for the stock designation which the stock designation converts to format: int32 totalAuthorizedShares: type: number description: Total number of authorized shares for the stock designation format: double totalAvailableShares: type: number description: Total available shares across the stock designations for the class format: double totalOutstandingShares: type: number description: Total outstanding shares across the stock designations for the class format: double totalCommonStockEquivalentShares: type: number description: Total common equivalent (a.k.a. fully diluted) shares across the stock designations for the class format: double percentOwnership: type: number description: Percentage representing the fraction of total common equivalent (a.k.a. fully diluted) shares for the stock designation format: double percentDiluted: type: number description: Percentage representing the fraction of total common equivalent (a.k.a fully diluted) and available shares for the stock designation format: double percentOutstanding: type: number description: Percentage of fully diluted outstanding shares across all types of securities format: double PlanSummaryDetailsWithGrants: title: Plan Summary Detailed Response required: - approved - governingLaw - grants - numberOfGrants - planApprovalDate - planId - planName - totalCancelledShares - totalExercisedShares - totalGrantedShares - totalOutstandingShares - totalRepurchasedShares - totalReservedShares - totalSharesRemainingForIssuance type: object properties: planId: type: integer description: Identifier for the company plan format: int32 planName: type: string description: Name for the company plan planApprovalDate: type: string description: Approval date for the plan format: date totalReservedShares: type: number description: Total number of shares reserved for the plan format: double totalGrantedShares: type: number description: Total number of shares granted to stakeholders under the plan format: double totalExercisedShares: type: number description: Total number of granted shares exercised by the stakeholders format: double totalRepurchasedShares: type: number description: Total number of exercised shares repurchased back format: double totalCancelledShares: type: number description: Total number of shares cancelled for the plan format: double totalOutstandingShares: type: number description: Total number of shares outstanding for the plan format: double totalSharesRemainingForIssuance: type: number description: Total number of shares for the plan that are remaining to be issued to stakeholders format: double numberOfGrants: type: integer description: The total number of grants issued under the plan format: int32 governingLaw: type: string description: Governing law for the plan enum: - CA_AB - CA_BC - CA_MB - CA_NB - CA_NL - CA_NS - CA_NT - CA_NU - CA_ON - CA_PE - CA_QC - CA_SK - CA_YT - US_AK - US_AL - US_AR - US_AZ - US_CA - US_CO - US_CT - US_DC - US_DE - US_FL - US_GA - US_HI - US_IA - US_ID - US_IL - US_IN - US_KS - US_KY - US_LA - US_MA - US_MD - US_ME - US_MI - US_MN - US_MO - US_MS - US_MT - US_NC - US_ND - US_NE - US_NH - US_NJ - US_NM - US_NV - US_NY - US_OH - US_OK - US_OR - US_PA - US_RI - US_SC - US_SD - US_TN - US_TX - US_UT - US_VA - US_VT - US_WA - US_WI - US_WV - US_WY - US_AA - US_AE - US_AP - AS - GU - MP - PR - VI - AU_ACT - AU_NSW - AU_NT - AU_QLD - AU_SA - AU_TAS - AU_VIC - AU_WA - DE_BW - DE_BY - DE_BE - DE_BB - DE_HB - DE_HH - DE_HE - DE_MV - DE_NI - DE_NW - DE_RP - DE_SL - DE_SN - DE_ST - DE_SH - DE_TH - CH_ZH - CH_BE - CH_LU - CH_UR - CH_SZ - CH_OW - CH_NW - CH_GL - CH_ZG - CH_FR - CH_SO - CH_BS - CH_BL - CH_SH - CH_AR - CH_AI - CH_SG - CH_GR - CH_AG - CH_TG - CH_TI - CH_VD - CH_VS - CH_NE - CH_GE - CH_JU - IT_21 - IT_23 - IT_25 - IT_32 - IT_34 - IT_36 - IT_42 - IT_45 - IT_52 - IT_55 - IT_57 - IT_62 - IT_65 - IT_67 - IT_72 - IT_75 - IT_77 - IT_78 - IT_82 - IT_88 approved: type: boolean description: Approval status of the plan grants: type: array description: List of all grants under the plan items: $ref: '#/components/schemas/StakeholderGrantSummaryDetails' ErrorWithCode: title: Validation Error required: - code - message type: object properties: message: type: string description: Message describing the error code: type: integer description: Unique code for the validation error format: int32 StakeholderGrantAcceleratedVestingDetails: title: Accelerated Vesting Response required: - accelerationPercent - accelerationPeriod - accelerationTrigger type: object properties: accelerationTrigger: type: string description: 'The name of the event that will trigger vesting acceleration: TERMINATION_WITHOUT_CAUSE, RESIGNATION_FOR_GOOD_REASON, or CHANGE_OF_CONTROL' accelerationPeriod: type: integer description: The number of months after the trigger event that vesting acceleration will occur (0 to 60). A value > 0 defines a double-trigger acceleration format: int32 accelerationPercent: type: integer description: The percent of the unvested shares that will be accelerated (1 to 100) format: int32 description: List of the vesting acceleration stipulations of the grant. May be empty. DesignatedSharesSummaryDetails: title: Class Designated Share Summary Response required: - totalAvailableShares - totalCommonStockEquivalentShares - totalOutstandingShares type: object properties: totalAvailableShares: type: number description: Total available shares across the stock designations for the class format: double totalOutstandingShares: type: number description: Total outstanding shares across the stock designations for the class format: double totalCommonStockEquivalentShares: type: number description: Total common equivalent (a.k.a. fully diluted) shares across the stock designations for the class format: double description: Summary of all shares across the stock designations for the class FundDetails: title: Fund Details Response type: object properties: fundName: type: string description: Full name of the fund fmv: type: number description: Fair market value of the fund format: double effectiveDate: type: string description: The effective date of the fund format: date expirationDate: type: string description: The expiration date of the fund format: date ClassOfSecuritiesDetails: title: Authorized Capital Class Detailed Response required: - classOfSecurities - stockDesignations - totalAuthorizedShares - totalCommonStockEquivalentShares - totalDesignatedShares - totalOutstandingShares type: object properties: classOfSecurities: type: string description: Whether the class is common or preferred stock enum: - COMMON - PREFERRED - COMMON_STOCK - PREFERRED_STOCK parValue: type: number description: Par value for the class of securities format: double totalAuthorizedShares: type: number description: Total number of authorized shares for the class of securities format: double totalDesignatedShares: type: number description: Total shares designated to one or more stock designations for the class format: double totalOutstandingShares: type: number description: Total outstanding shares from all stock designations for the class format: double totalCommonStockEquivalentShares: type: number description: Total fully diluted shares from all stock designations for the class format: double stockDesignations: type: array description: List of all stock designations for the class of securities items: $ref: '#/components/schemas/SecuritiesDesignationDetails' RestApiErrorResponse: title: Error Response required: - code - errorId - message type: object properties: code: type: string description: Code representing the type of error message: type: string description: Message describing the error errors: type: array description: List of all further error details, usually due to validation checks items: $ref: '#/components/schemas/ErrorWithCode' errorId: type: string description: Identifier for the error StakeholderGrantSummaryDetails: title: Grant Summary Response required: - allowEarlyExercise - awardTypeId - awardTypeName - cancelledShares - exercisedShares - expiryDate - grantCurrency - grantDate - grantId - grantName - grantNumber - grantPrice - grantedShares - marketPriceAtTimeOfGrant - outstandingShares - planId - stakeholderId - underRule701 - vestingScheduleId - vestingScheduleName - vestingStartDate type: object properties: grantId: type: integer description: Identifier for the grant format: int32 stakeholderId: type: integer description: Identifier for the stakeholder format: int32 planId: type: integer description: Identifier for the company plan format: int32 awardTypeId: type: integer description: Identifier for the company award type format: int32 awardTypeName: type: string description: Name for the company award type grantName: type: string description: Name for the grant, typically generated grantNumber: type: string description: Number for the grant, typically generated grantPrice: type: number description: Price at which the shares are granted format: double marketPriceAtTimeOfGrant: type: number description: The fair market value (or latest 409A valuation for private companies) at the time of grant (this is typically auto-populated from the most recent quote, but can also be specified if desired) format: double grantCurrency: type: string description: Currency for the grant price / market price at time of grant enum: - USD - CAD - GBP - EUR - JPY - AUD - KRW - DZD - AOA - ARS - AMD - AWG - BSD - BHD - BDT - BBD - BOB - BWP - BRL - BND - BGN - BZD - KYD - CLP - CNY - COP - CRC - HRK - CZK - DKK - DOP - XCD - EGP - ETB - FJD - XAF - GMD - GHS - GIP - GTQ - HNL - HKD - HUF - ISK - INR - IDR - IQD - ILS - JMD - JOD - KZT - KES - KWD - LSL - MOP - MWK - MYR - MUR - MXN - MAD - MZN - MMK - NAD - ANG - NZD - NGN - NOK - OMR - PKR - PAB - PGK - PYG - PEN - PHP - PLN - QAR - RON - RUB - SAR - RSD - SCR - SGD - ZAR - SDG - LKR - SZL - SEK - CHF - TWD - TZS - THB - TTD - TND - TRY - UGX - UAH - AED - UYU - UZS - VEF - VES - VND - XOF - ZWL - ZMW grantDate: type: string description: Date on which the shares are granted format: date expiryDate: type: string description: Expiry date for the grant format: date allowEarlyExercise: type: boolean description: Whether early exercises are allowed for the grant underRule701: type: boolean description: Whether rule 701 applies to the grant vestingScheduleId: type: integer description: Identifier for the vesting schedule format: int32 vestingScheduleName: type: string description: Name for the vesting schedule vestingStartDate: type: string description: Vesting base or commencement date for the vesting schedule format: date manualVestingRows: type: array description: List of all manual vesting rows for the grant, specified when using a manual vesting schedule items: $ref: '#/components/schemas/ManualVestingRowDetails' grantedShares: type: number description: Quantity of shares for the grant format: double cancelledShares: type: number description: Number of shares cancelled for the grant format: double exercisedShares: type: number description: Number of shares exercised for the grant format: double outstandingShares: type: number description: Number of shares outstanding for the grant format: double vestingAcceleration: type: array description: List of the vesting acceleration stipulations of the grant. May be empty. items: $ref: '#/components/schemas/StakeholderGrantAcceleratedVestingDetails' description: List of grants held by the stakeholder WarrantsSummaryDetails: title: Warrant Details Response required: - numberOfWarrants - percentageFullyDiluted - totalCommonStockEquivalentShares type: object properties: numberOfWarrants: type: integer description: Total number of warrants format: int32 totalCommonStockEquivalentShares: type: number description: Total Common Stock Equivalent shares represented by warrants format: double percentageFullyDiluted: type: number description: Percentage of fully diluted shares outstanding across all warrants format: double description: Summary information on warrants for the company AuthorizedCapitalDetails: title: Authorized Capital Response required: - certificatedShares - classesOfSecurities - companyId - percentageOfFullyDilutedAvailableShares - percentageOfFullyDilutedOutstandingShares - plans - totalAuthorizedShares - totalCommonStockEquivalentShares - totalOutstandingShares - warrants type: object properties: companyId: type: integer description: Identifier for the company format: int32 totalAuthorizedShares: type: number description: Total shares authorized across all types of securities format: double totalOutstandingShares: type: number description: Total outstanding shares across all types of securities format: double totalCommonStockEquivalentShares: type: number description: Total common equivalent (a.k.a. fully diluted) shares across all types of securities format: double percentageOfFullyDilutedOutstandingShares: type: number description: Percentage of fully diluted outstanding shares across all types of securities format: double percentageOfFullyDilutedAvailableShares: type: number description: Percentage of fully diluted available shares across all types of securities format: double currentFMV: type: number description: The fair market value for the company per share (usually the latest 409A valuation for private companies) format: double classesOfSecurities: type: array description: List of summary information for all classes of securities for the company items: $ref: '#/components/schemas/ClassOfSecuritiesSummaryDetails' warrants: $ref: '#/components/schemas/WarrantsSummaryDetails' plans: type: array description: List of summary information for all plans for the company items: $ref: '#/components/schemas/PlanSummaryDetails' certificatedShares: type: boolean description: Whether the stock certificates are paper (value 'false' indicates they are digital) ClassOfSecuritiesSummaryDetails: title: Class Summary Response required: - classOfSecurities - designationSummary - totalAuthorizedShares - totalAvailableToDesignate type: object properties: classOfSecurities: type: string description: Whether the class is common or preferred stock enum: - COMMON - PREFERRED - COMMON_STOCK - PREFERRED_STOCK parValue: type: number description: Par value for the class of securities format: double totalAuthorizedShares: type: number description: Total number of authorized shares for the class of securities format: double totalAvailableToDesignate: type: number description: Total shares remaining to designate to stock designations for the class format: double designationSummary: $ref: '#/components/schemas/DesignatedSharesSummaryDetails' description: List of summary information for all classes of securities for the company PlanSummaryDetails: title: Plan Summary Response required: - approved - governingLaw - numberOfGrants - planApprovalDate - planId - planName - totalCancelledShares - totalExercisedShares - totalGrantedShares - totalOutstandingShares - totalRepurchasedShares - totalReservedShares - totalSharesRemainingForIssuance type: object properties: planId: type: integer description: Identifier for the company plan format: int32 planName: type: string description: Name for the company plan planApprovalDate: type: string description: Approval date for the plan format: date totalReservedShares: type: number description: Total number of shares reserved for the plan format: double totalGrantedShares: type: number description: Total number of shares granted to stakeholders under the plan format: double totalExercisedShares: type: number description: Total number of granted shares exercised by the stakeholders format: double totalRepurchasedShares: type: number description: Total number of exercised shares repurchased back format: double totalCancelledShares: type: number description: Total number of shares cancelled for the plan format: double totalOutstandingShares: type: number description: Total number of shares outstanding for the plan format: double totalSharesRemainingForIssuance: type: number description: Total number of shares for the plan that are remaining to be issued to stakeholders format: double governingLaw: type: string description: Governing law for the plan enum: - CA_AB - CA_BC - CA_MB - CA_NB - CA_NL - CA_NS - CA_NT - CA_NU - CA_ON - CA_PE - CA_QC - CA_SK - CA_YT - US_AK - US_AL - US_AR - US_AZ - US_CA - US_CO - US_CT - US_DC - US_DE - US_FL - US_GA - US_HI - US_IA - US_ID - US_IL - US_IN - US_KS - US_KY - US_LA - US_MA - US_MD - US_ME - US_MI - US_MN - US_MO - US_MS - US_MT - US_NC - US_ND - US_NE - US_NH - US_NJ - US_NM - US_NV - US_NY - US_OH - US_OK - US_OR - US_PA - US_RI - US_SC - US_SD - US_TN - US_TX - US_UT - US_VA - US_VT - US_WA - US_WI - US_WV - US_WY - US_AA - US_AE - US_AP - AS - GU - MP - PR - VI - AU_ACT - AU_NSW - AU_NT - AU_QLD - AU_SA - AU_TAS - AU_VIC - AU_WA - DE_BW - DE_BY - DE_BE - DE_BB - DE_HB - DE_HH - DE_HE - DE_MV - DE_NI - DE_NW - DE_RP - DE_SL - DE_SN - DE_ST - DE_SH - DE_TH - CH_ZH - CH_BE - CH_LU - CH_UR - CH_SZ - CH_OW - CH_NW - CH_GL - CH_ZG - CH_FR - CH_SO - CH_BS - CH_BL - CH_SH - CH_AR - CH_AI - CH_SG - CH_GR - CH_AG - CH_TG - CH_TI - CH_VD - CH_VS - CH_NE - CH_GE - CH_JU - IT_21 - IT_23 - IT_25 - IT_32 - IT_34 - IT_36 - IT_42 - IT_45 - IT_52 - IT_55 - IT_57 - IT_62 - IT_65 - IT_67 - IT_72 - IT_75 - IT_77 - IT_78 - IT_82 - IT_88 approved: type: boolean description: Approval status of the plan numberOfGrants: type: integer description: The total number of grants issued under the plan format: int32 description: List of summary information for all plans for the company ManualVestingRowDetails: title: Manual Vesting Row Response required: - vestQuantity type: object properties: vestDate: type: string description: Date on which the vesting occurs for the row/tranche format: date vestQuantity: type: number description: Quantity of shares to vest for the row/tranche format: double description: List of all manual vesting rows for the grant, specified when using a manual vesting schedule securitySchemes: accessToken: type: http scheme: bearer bearerFormat: JWT