Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Yoobic Missions API

Missions are the basic campaign type. The store users will receive missions with fields to complete, for example send a photo of their display or change the location of the new collection in store. The mission creator will define its content from the dashboard, then he will publish it to the appropriate stores. Once the users have completed the mission they will be able to submit it. The managers responsible for the store will then be able to define the mission as compliant (if they deem the answers acceptable) or non compliant (if they believe there is room for improvement). If a mission is evaluated as non compliant, the manager can choose for the user to retake the mission entirely or he can specify which parts of the mission need improving and republish the mission to the store with the rest of the answers already filled in.Tips: a mission is an entity of a campaign published on a store.A mission is either available, ongoing or finished.A finished mission is either "to validate", "compliant" or "not compliant".- **Available** : a mission is available as soon as it has been published on a store, and hasn't been started yet by a user.- **Ongoing**: as soon as a user starts or loads a mission, the status of the mission goes from "available" to "ongoing" (known as `booked` under the status field of a mission)- **Finished** : once the mission has been submitted, it is finished. - **To validate**: if the mission hasn't been validated yet and marked as "compliant" or "not compliant", or isn't configured to be automatically marked as compliant. - **Compliant** - **Not compliant**- **Scheduled**: a mission is scheduled as soon as it has been published on a store and if `valid_from` date did not reach the current date yet.- **Archived**: a mission gets status archived as soon as it’s archived### Fields| Field | Type | Required | Readonly | OrderBy | Description ||--------------------------------|--------------|:--------:|:--------:|:-------:|-----------------||`mission_id` | string | x | x | | Unique id of the mission ||`title` | string | | | | The title of the mission ||`type` | string | | | x | Mission type ||`campaign_id` | string | | x | x | Unique id of the mission's parent campaign ||`user_id` | string | | x | x | Unique id of the user who performs the mission ||`creator_id` | string | | | x | Unique id of the mission creator ||`store_id` | string | | x | x | Unique id of associated store ||`status` | string | | x | x | Current status of the mission if set: `"scheduled"`, `"booked"`, `"finished"`, `"archived"` ||`valid_from` | timestamp | | x | | Mission available from ||`republish_count` | number | | | | The number of times the mission was republished ||`available_on_book` | boolean | | x | | If `true`, a new copy of this mission would be created when the mission is started ||`available_on_finished` | boolean | | x | | If `true`, a new copy of this mission would be created on finish ||`booked_date` | timestamp | | x | | The date on which the mission was booked to a user ||`due_date` | timestamp | | x | | The date by which the mission must be completed ||`duration` | number | | x | | Time spent on the mission (in minutes) ||`finished_date` | timestamp | | x | x | The date on which the mission was finished ||`score` | object | | | | The score of the mission as a JSON object `{"title": "my score", "value": 10}` ||`extra_scores` | object | | | | The extra scores of the mission as a JSON object `{"score1": { "title": "my score", "value": 10}}` ||`compliant` | boolean | | x | | The compliance of the mission as marked by an area manager: `true` if marked compliant, `false` if marked noncompliant. If nothing is specified and if the mission is finished, `status` will be "to validate" ||`compliant_by_default` | boolean | | | | If `true` the mission is automatically marked compliant on finish ||`validated_date` | timestamp | | x | | The date on which the mission was validated ||`reason_noncompliant` | string | | | | The reason provided by the area manager to explain why the mission was marked noncompliant ||`republished_with_answers` | boolean | | x | | Has the mission been repulished with the previous answers after being marked noncompliant ||`original_mission_id` | string | | x | | If present, the `mission_id` of the mission that this mission was republished from ||`original_reason_noncompliant` | string | | x | | The `reason_noncompliant` from the original mission that was republished. ||`updated_date` | timestamp | | x | x | Mission's last update date ||`created_date` | timestamp | | x | | Mission's creation date ||`answers` | array | | | | Mission's questions and answers, if misssion is finished (see below) ||`group_ids` | array | | | | Group ids that can see this mission ||`user_ids` | array | | | | User ids that can see this mission ||`action_plan_progress` | number | | x | | Completion rate of an action plan. ||`task_number` | number | | x | | Auto generated when a new mission is created. The value is unique within a campaign |**Important**: Please note that to retrieve the value of the answers for a specific mission, you will need to use the single mission endpoint.The `answers` field is defined as an array of:| Field | Type | Description ||----------------------|----------------|---------------------------||`question_id` | string | Unique id of the question ||`question_type` | string | The type of the question ||`question` | string | The title of the question ||`page_number` | number | The number of the page the question appears in ||`question_number` | number | The number of the question on the page ||`answer` | string | The value of the answer |

Yoobic Missions API is one of 41 APIs that Yoobic publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Missions. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and a changelog.

This API exposes 17 operations across 14 paths, and defines 1 schema. It is described by OpenAPI 3.0.0.

Requests are made against a single base URL, https:///.

17 operations 14 paths 1 schemas 1 DELETE6 GET1 PATCH8 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.0
Base URL
https://api.yoobic.com/public/api
Authentication
OAuth 2.0
Resource Areas
1

Authentication & Security 1

Yoobic Missions API declares 1 security scheme for authenticating requests. It supports OAuth 2.0 (oauth2) using the authorizationCode flow.

Paths & Operations 17

Across 14 paths, the API surfaces 17 operations — 1 DELETE, 6 GET, 1 PATCH, 8 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

Missions 17

Missions are the basic campaign type. The store users will receive missions with fields to complete, for example send a photo of their display or change the location of the new co…

GET
/public/api/missions/{id}
Get
Get 2 params → 200
DELETE
/public/api/missions/{id}
Delete
Delete 1 param → 204
PATCH
/public/api/missions/{id}
Partial Update
Partial Update 2 params body → 200
GET
/public/api/missions/{id}/tasks
Find mission's tasks
Find mission's tasks 1 param → 200
PUT
/public/api/missions/{id}/tasks
Replace mission's tasks
Replace mission's tasks 1 param → 200
POST
/public/api/missions/{id}/book
Book
Book 1 param → 200
POST
/public/api/missions/{id}/unbook
Unbook
Unbook 1 param → 200
POST
/public/api/missions/{id}/assign
Assign
Assign 1 param → 200
POST
/public/api/missions/{id}/unassign
Unassign
Unassign 1 param → 200
POST
/public/api/missions/{id}/finish
Finish
Finish 1 param → 200
POST
/public/api/missions/{id}/validate
Validate
Validate 1 param → 200
POST
/public/api/missions/{id}/archive
Archive
Archive 1 param → 200
GET
/public/api/missions/{id}/workflow
Find mission's workflow
Find mission's workflow 1 param → 200
GET
/public/api/missions?filter={filter}
Get All
Get All 2 params body → 200
GET
/public/api/missions/count?where={where}
Count
Count 2 params body → 200
GET
/public/api/missions/export?type={type}&filter={filter}
Export
Export 3 params body → 200
POST
/public/api/missions/import?type={type}
Import
Import 2 params body → 200

Schemas 1

The contract defines 1 schema that model the data the API accepts and returns. The most detailed is Default_Header (1 property). Each schema is shown below with its type and property counts.

Default_Header
object
1 property 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

yoobic-missions-api-openapi.yml Raw ↑

Other APIs Yoobic publishes across the network.

Yoobic Answers API
Yoobic Badges API
Yoobic Bot Messages API
Yoobic Bots API
Yoobic Business KPIs data - salesdata API
Yoobic Campaigns API
Yoobic Catalogs API
Yoobic Chats API
Yoobic Comments API
Yoobic Communities API
Yoobic Community Posts API
Yoobic Competencies API